ICastFist

joined 1 year ago
[–] ICastFist@programming.dev 2 points 4 days ago (1 children)

Neat, I might set up one of my older, currently unused phones to be my host. As soon as I figure something I want to share around

[–] ICastFist@programming.dev 6 points 5 days ago

Around here (Brazil), during manifestations, the police will search every bag they can see. While the clothes alone are obviously "nothing", I wouldn't be surprised if they came up with bullshit reasons to take you away or keep a very close eye on you, or if some damning evidence "magically" appeared.

[–] ICastFist@programming.dev 4 points 5 days ago

And considering Bethesda's track record, we will get a buggy mess 2 years from now. I mean, just compare the list of shit the Unofficial Skyrim Patch fixes that Bethesda hasn't addressed in 13 fucking years

[–] ICastFist@programming.dev 2 points 5 days ago

Their "open arms" has felt like a vampiric embrace for almost a decade now, because they would really, really, really prefer if modders released stuff via their club, where modders can get money and they also get a slice for free.

The bigger PC names of the 90s and early 2000s were all welcoming to modding, with some games shipping with the "official editor tools" for anyone to mess around with (UT99 and Warcraft 3 come to mind)

[–] ICastFist@programming.dev 2 points 5 days ago

Oblivion's leveling didn't change from Morrowind, it also had that flaw that could really fuck you up if you didn't optimize getting extra points in the minor skills before the major skills.

I enjoy that Skyrim made leveling up simply a matter of gaining X points across skills, but how they ditched the attributes and went for +10 on one of Health, Stamina or Magicka made it feel kinda dumb.

[–] ICastFist@programming.dev 2 points 5 days ago (1 children)

Congrats, we'll get nordic horse armor now

[–] ICastFist@programming.dev 4 points 5 days ago (1 children)

It’s all this bland uniform container of “content” with nothing making any of it stand out.

The big irony here is that they could damn well make weights for the procgen to create spots with dense "habitation" and others with zero points of interest. But nope, just generate a map, plop down 5-8 POI, call it a day. The "big cities" like New Atlantis stand out in the worst way possible, a small square of buildings surrounded by absolutely fucking nothing. They effectively copied the worst aspects of No Man's Sky

[–] ICastFist@programming.dev 5 points 5 days ago

Everything is just working

[–] ICastFist@programming.dev 12 points 5 days ago

Or tased and pepper sprayed, at the very least

[–] ICastFist@programming.dev 12 points 5 days ago (2 children)

But also you signified change. Trump signified change. I've said lately, Trump sounds more like you.

I'd feel seriously offended if I was AOC

[–] ICastFist@programming.dev 5 points 5 days ago (4 children)

You dress as black bloc, you get away, change clothes, but they're still in your backpack. Police searches and finds the black clothing. Now what?

[–] ICastFist@programming.dev 12 points 5 days ago

Police and the fucking army abused that a lot during those times, btw. There are a number of videos of police detaining, then releasing specific black blocs, or being suspiciously non-violent. Not to mention the many times cops were caught planting evidence, one I recall seeing was with 3 cops searching a backpack, one of them turned it upside down to see if anything would fall out of it, meanwhile another cop stealthily dropped a bunch of fireworks and used that as proof to arrest the person.

 

I've been looking into some tutorials, mainly this one - https://www.gotut.net/custom-key-bindings-in-godot-4/

My particular problem is that this and every other tutorial of key rebind only deals with 1 action = 1 keybind, while I want my actions to have 3 keybinds: 2 from the keyboard, 1 from a controller. Because of that, I can't simply empty the InputMap of a given action and add the newly pressed key.

After quite some time thinking and testing, I've managed to cobble together this code (based on the one from the link above) that works as I want: it removes the previous keybind and adds the new one, without messing any of the previous keys.

func _input(event):
	if !current_button:
		return
	if event is InputEventKey and $keypress.visible:
		var action: String
		match current_button.name:
			"rebind_jump":
				action = "game_jump"
		#Match repeat for each button/action, also "duplicated" for each of the alternative keys/buttons, as "alt_game_jump", etc
		#The following lines happen after the match defines the action 
		rebind(event,action, current_button.text)
		current_button.text = event.as_text()
		current_button = null


## The rebind function is called by sending the event, a string of the action proper and the button's current text as the "oldkey"
## rebind(event, "game_jump", $rebind_jump.text)
## After the event call, the button's text is set like this: $rebind_jump.text = event.as_text()

func rebind(event: InputEvent, action: String, oldkey:String):
	var existing : Dictionary = {}
	var key: String
	for ia in InputMap.action_get_events(action):
		#The split(" ") below happens because physical key presses are sent as "E (Phyisical)" or "Ctrl (Physical)"
		if ia.as_text().split(" ")[0] != "Joypad":
			key = ia.as_text().split(" ")[0]
		else:
			key = ia.as_text()
		existing[key] = ia
	for acts in InputMap.get_actions():
		#Removes the key from any other events 
		InputMap.action_erase_event(acts, event)
	InputMap.action_erase_event(action, existing[oldkey])
	InputMap.action_add_event(action, event)

While it works as is for keyboard rebind, I haven't tested it with a controller, as I don't have one around to test.

But my main question is: is this "ideal"? Is there a better/easier way to do this, rebind an action substituting only one key?

EDIT: Did a few tweaks on the code. One thing that I haven't figured out yet is a way to update a key that was already bound to another button. For example: if "Ctrl" is bound to jump, and I bind it to attack, it automatically unbinds from jump. If I then try to bind anything to that specific jump button, I'll get a Invalid Index error at the InputMap.action_erase_event(action, existing[oldkey])

 

Since I'm currently dealing with this problem, I'm gonna leave this info here, so anyone that comes across it knows what to do to fix it. Currently working on 4.1.1, should work on 3.x too

This is a problem that happens if you rename or delete files outside the Godot editor. Godot may warn you, or it may simply keep a cached copy and keep you completely unaware of it until you export the game and try to play it. It's always a good thing to check for these once in a while.

Related questions:

HOW TO FIX:

  • Create a dummy file, it can be a.PNG or whatever
  • Open the problematic scenes with a text editor
  • Change the path of the offending files to the dummy. They're usually at the top of the file, loaded as [ext_resource type="Texture" uid="" path=res://graphics/missing.png" id="10_0y2mn"
  • After saving, try to load the scene again. Be sure to run the Debug console version of Godot
  • If everything went well, it should open. Delete the dummy file from within the editor.

If that doesn't work, try this instead:

  • Open the problematic scenes with a text editor
  • Remove any lines that point to the offending files.
  • Run the Godot with the debug console
  • Attempt to open the scene in the editor. If it gives an error, check the debug console, the most likely error will be something like res://scenes/problemscene.tscn:3815 - Parse Error: Can't load cached ext-resource id: 10_0y2mn
  • Back in the text editor, look for that id within the scene. It'll likely be something similar to texture = ExtResource("10_0y2mn"). Delete it
  • Repeat the last 2 steps until the errors stop.
 

I'm making a platformer, so when the player is facing the opposite direction, I just want to mirror the graphics. I've set up a whole Skeleton2D with Bones, then set up InverseKinematics to help animate it.

The problem is that I can't find a way to make the thing work when mirrored. Scaling the target IK doesn't work. Multiplying the IK position by -1 also doesn't work properly. It does change the target bone rotation, but the bone rotates in the reverse direction (it "pushes" the bone away).

The closest I got to get it to work properly is by applying a negative scale to the affected bone after scaling the skeleton to -1, but even then, the image flips back to the right side.

Right now, I'm starting to think I'll have to use the IKs to create the animations only as the means to key the bone positions, as I can't figure out a way to make a flipped animation with IK targets. So, once all bones are keyed into the animations, I can safely delete the IKs

To reproduce:

  • Make a Skeleton2D node, make 3 children Bone2D nodes, one being the parent of the other (B1 -> B2 -> B3)
  • Create a Node2D to use as IK target
  • On the Skeleton2D Inspector, add a new SkeletonModification and enable it
  • Add a new Element to the SkeletonModification, of type TwoBoneIK (third option, from the bottom up)
  • Joint Bone One = B2 (uppermost bone); Joint Bone Two = B3 (farthest most); Target = IK_Target
  • Move the target around to see if it's working properly.
  • Attempt to mirror it in a way that it doesn't break

TLDR - How do I horizontally flip a skeleton2D with IK without breaking the animations?

 

I made a pause menu, but there seems to be a "dead square" in the middle of the screen, where it doesn't detect the mouse hovering. The deadzone seems fixed in size and place, moving the menu out of the center makes the problem stop. So, something invisible on top?

Video showing the problem - https://files.catbox.moe/92kr8z.mp4

How the node is set up

The "OptionsWin" opens a new UI element, but moving it around doesn't change the deadzone, even if none of its elements are anywhere near the original pause menu.

Any ideas on how to fix this without having to offset the pause menu?

EDIT: Fix is my comment below. Should've tested it as an isolate scene first, that led me to looking into the player node and finding the problem. Hopefully this will help someone else in the future.

 

Wasn't actually today, but it's an interesting etymology. Old Arabian speaks "majus" because they lack a hard G sound, similar to Japanese lacking L sound

Also, for anyone interested, that means that the Magi who came to Jesus' birth with gifts were Zoroastrian priests

 

Title. I plan on making something using vector graphics, to simulate the old Flash style, stretching to accommodate any screen size and zooming in and out without losing fidelity is something I'd like.

Now, I know that I can import a svg file into a TileMap node, but it'll be rasterized and act just like a png. Searching around YT and google aren't yielding many results about using vector graphics with Godot.

 
> Try to visit main web page
> Main web page gives error 403 Forbidden
> fucking wat
> google search site + 403 error
> all links open "this page doesn't exist" within their helpdesk site
> fucking jeeniuses
> manage to search from their helpdesk
> "403 error means you should try updating your browser"
> Ever thought about leaving a page saying that instead of a fucking 403 error?
> Why the fuck does your main web page needs a fuckign up to date browser??
> Page actually works on my actually up-to-date browser
> Oh, it's actually a shitty subscription, browser only thing
 

I've been thinking about putting some stuff that I can only find on direct download sites up as torrents, but most places I can access either have fake sign up/login links, or have very strict rules, like torrentgalaxy requiring at least 5 uploads per month for 3 months

 

For instance: age of sexual consent, age for legally drinking alcohol, age for driving, age for voting, age for participating in pornography

Depending on the place, each of those requires a different minimum age. Why is that? Are some activities "more adult" than others? Using USA as an example: legal drinking age is 21, legal driving age is 16, age of consent varies between 16-18.

Not asking about different countries/states having different ages, but any single place having different ages for different adult activities

 

Some things that make it very annoying to me:

  • She complains whenever she can't find certain movies
  • She usually searches using the complete video title in the search bar, it's usually something like: Movie name - Complete Movie - Dubbed - Pirate Site or Uploader - Genre
    • She has a list of saved movie/video titles in a .docx file, where she also writes whether she liked the movie or not. Whenever a YT search shows something she thinks she'll be interested, she copies the title to the doc.
    • Will usually use that same search on Netflix, or continue typing and adding more despite no search results showing already.
  • Complains about video/audio quality
  • Complains when there's no dubbed version
  • Complains when the "movie" is just a trailer repeating for 1 hour
  • Seems to willfully ignore my explanations to why searching for and watching full movies on YT sucks (it's pirate content on a platform that doesn't allow piracy)
  • Ignores some 🏴‍☠️ alternatives I've set up, because "there's nothing interesting there"
  • "Forgets" anything I teach her about searching and search terms in 5 minutes

To be fair, most of the movies she "wants" to watch aren't available on any streaming services. Feels like I'm dealing with the world's worst pirate.

 

From the page:

A curated list of references for development of DOS applications and learning about the system itself. This includes list of compilers, tutorials, videos, links to free and paid books and source code to DOS games. The goal of this list is to collect information and act as a starting point for someone who wants to start out retro-programming for the DOS platform.

view more: ‹ prev next ›