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

Hi, thanks for playing! I'm glad that you enjoyed it! The slowdown feature was added after a playtester pointed out that the game was too fast paced and might be inaccessible. I added the feature by, yes, literally effecting the framerate, I'm going to admit that this was definitely not the best way to implement the feature, I'm not the most talented developer, I can make some interesting stuff with what I know and what I can learn, but I didn't quite know how to slow the game down in a way that didn't actually break the gameplay, it probably comes down to math, so I just took the quick and easy approach, if you know any way to make a better slowdown feature I'd love to know because I would like this game to be buttery smooth at all times!

Again, thanks for playing!

Which game engine did you use?

If you only need to slow the ice cube down, a good way would be to use a "speed" variable that you would multiply to a normalized direction Vector. I'm using Godot, so it goes like this in Gdscript:

var speed = 8
var direction = Vector2(1,0)   //it means that it goes right. You would check for input controls to see if you're holding left or right
move_and_slide(direction * speed)  //this would be run every frames and it moves the block in the physics of my game


It would give a Vector2(8,0) which means 8 pixels every frames to the right (X axis). If you want to move the ice cube faster, you only need to change the speed value to something bigger, for instance 16 which would change the speed to 16 pixels every frame.  That would not slowdown the enemies, the backgrounds animations, etc! just the movement. 

Basically, that's how I handle movement in my games. It's also useful if you want to implement a dash for example, you can change the speed for 1 second exactly (so you're faster for 1 second and then it drops back to the normal speed) without having to recode your movement just for this mechanic.

Oh! I see!

I use gamemaker studio but I can understand this pretty well, the only problem about my situation is that I have to make my own physics and movement and collisions and stuff without built in physics.

The problem is that I can easily divide my speed in half or something, but multiplying for example 2 to a below 1 decimal causes it to get kinda' weird, it's hard to explain.

The way I set up friction (if only barely) is by multiplying my horizontal speed by a decimal (in my case it's 0.9) which causes it to slow down. But when multiplying this by 2 or something, it's above 1, which just accelerates the character instead of slowing it down.

I could just make it so that there's a cap to the friction, but I feel as though it will - if only slightly - change the game mechanics and could be abused, I could of course just make it so that you can only slow the game, it would mean you couldn't speed up the game but that's not really the point of the game-speed mechanic.

But still I like the way you do it as well, first you set a minimum speed of sorts, and then your able to just change it on the fly, I think that would work pretty well if that pesky DIY physics weren't in the way (for me at least)

Also, thank you for helping!