Posted March 10, 2019 by abso1ution
#2d #push #pull #abso1ution #push pull #puzzle #sokoban #difficult #challenging #pixel #pixel art #indie
I wanted to share some general game design thoughts I had from the development of Push Pull. I hope it's helpful to some of you.
Push Pull is a puzzle game that I originally made for the GM48 game jam in October and continued development on, releasing on Steam this weekend. The Steam page is here if you want to know more.
Developing with Game Maker Studio 2:
Overall I'm a big fan of the software. It allows very rapid development, the inbuilt sprite editor is pretty solid (from a non artist's opinion) and for a game this size I didn't have any of the file management issues others have raised. Also, a one off fee is a great deal and only gets better the better your game sells.
One of the issues I had is that views/resolution isn't straight forward for novices and always causes some issues in every project I do. I find a lot of the video tutorials about this are incorrect which isn't helpful (the best one I have found is Pixelated Pope's but the way he sets the application surface causes scaling issues on rotated sprites for me). The other issue was around my discipline with creating groups to organise files and putting repeated sections of code into scripts, it takes a bit of time but saves more in the long run.
I did have one bug that I launched with. When quickly alt-tabbing when opening the game it fails to open fullscreen and the functions to change the view to fullscreen don't work. As this is a minor issue I launched with it and have yet to resolve it. I'm not sure if this is something any of you have experienced.
Puzzle Design
As this is a puzzle game, puzzle design was the primary struggle. I did research and have concluded that there aren't any easy answers, I have some "general principles" I found/developed that I'd like to share.
Development Mentality
I personally think too many developers spend too much time on their code so I sometimes code in a sloppy way to finish projects as quickly as possible. Sometimes this makes sense but occasionally it backfires. For example, the dialogue system in this game I did in a sloppy way but because I had to use it so many times it would have taken less time to develop a proper dialogue system to begin with, which also could have been used in later projects. The real mistake was not taking the few seconds to think whether this was a piece of code I'll write once and never look at it again, or will I be using this many times in this game, or even into future games (if you are in this for the long haul).
Also, I probably spent too much time on art I knew was going to get redone by an artist eventually. Spend as little time on art (and music/sound) you know will get replaced as you can tolerate.
Thanks for your time.