Grid Based "Physics" Woes, and Fixes


Like many puzzle games, Abysm is is played on a grid, but, unlike most block pushing games, it has also has a simple physics system which determine how objects move within the grid:


Even a simple physic system like this can be remarkably hard to get right, with a lot of opportunity for unintended side effects. Behold the fantastic surfing ice boulders:


Within the physics rules which I had created before introducing the ice boulders, this behavior made perfect sense: each ice boulder gains momentum when it falls sideways off of the stationary boulder in the top left corner. It then continues sliding on the surface it is situated on, which in this case just happens to be the boulder below and slightly ahead of it. This is ultimately a direct consequence of the limitations of grid based physics: the objects can only move in straight lines, and only a single object can ever occupy a single grid cell.

While this made some kind of sense, and does look sort of cool, I quickly decided that with the semi-realistic style I'm going for with Abysm, this was not the way I wanted my ice boulders to behave. The problem was then to figure out how the rules could be tweaked so that this behavior is eliminated, but without destroying other behaviors that my puzzles rely on, which is a very real risk whenever I change the physics of the game. Ultimately I decided that the problem was that the boulders are sliding on objects that are themselves moving, and by adding a rule to forbid that I ended up with this behavior:


I think this makes a lot more sense for my game! Does it make sense to you? Try the Abysm demo, available for Windows and Linux from the Itch.io game page, and give your feedback. It would be very much appreciated!

Get Abysm

Leave a comment

Log in with itch.io to leave a comment.