Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

So I extracted the Windows build with gdsdecomp and used it to make a Linux executable, being sure to untick "Export with Debug". You can extract this to the same folder as the base game and play as long as the name matches the .pck file.

This alone did not fix the lag, but now I can open the project in Godot and view the colliders via the debug settings. 

This revealed that instead of the player having one magnet collider, every collectable has its own magnet colliders.



Every collider is an object, and every object inherits all the features (and overhead) of its parent classes. Much more all those colliders are also tracking everything they collide with (like other magnets colliders) even if they don't do anything with the data. No wonder why there's so much lag. If you move the magnet code to the player, you can get rid of the extra area 2D nodes and reduce the number of collisions. You don't need CharacterBody2d since they carry tons of functions intended for platformer games. move_and_slide() for example checks for friction and sliding between colliding objects. Complete overkill. The simpler move_toward() which comes with the Area2D node is plenty for this case.

Sorry if I'm mean here.  Insomnia makes me cranky.

On a related note, I've fiddled with a few things, like making mimics rewards scale with your multiplier.

Above uses 1000 * ((Multi + 5)/5) where Multi = 30.  At higher multipliers the text spills out and overlaps in ugly ways. This could potentially be an upgrade, though I'm not sure if to have this higher or lower than normal chests.

 I also have an idea for a slime girl enemy that still grants semen if you fail, but success gives a higher amount plus reduces you multiplier decay for a few seconds (because her slime lubricates you.)

Wow, you've been working on a lot of things lately. The first thing I realize is that I need to add some security to my code so it's not so easy to manipulate. Don’t get me wrong—I’m not upset that you did it, especially since it was meant to help, but it’s definitely something I need to keep in mind for the future.

The translation isn't very accurate, especially when it comes to more technical stuff, but if I understood correctly, you're suggesting that I stop using a CharacterBody2D and instead use an Area2D as the parent node to optimize things?

As for Mimi giving more points based on luck, that’s actually an idea I’ve had for a while but haven’t implemented yet. Regarding the slime girl, the original idea was that she'd move from one side of the map to the other, absorbing objects, and if you caught her, you’d earn what she had collected multiplied, and if you missed, you’d lose some coins. That said, I really like the idea that whether you win or lose, since she's a slime, she could "lubricate" you and make it easier to raise the multiplier for a few seconds.