跳到正文
itch.io Devlogs·· 3 小时前AI 评分12

某独立推箱子游戏:我能记得的开发过程

As Much Of Development As I Can Remember

AI 导读

某独立开发者回顾了其在Gamemaker中以“Evolution”为原型的推箱子游戏开发过程,最终耗时约两个月完成含20关的demo并曾付费创建Steam页面。该demo原计划登陆Steam与Armor Games但未正式发售,页面后被改作“Alien Home Invasion”使用。游戏灵感来自Baba Is You与Infinifactory,关卡数由原定30关降至20关。

正文

INTRO TYPE SHIT

Hi! I kinda feel like dog buns but whatever, I hope you're doing well. I figured I may as well write about some of the things that I thought about or happened while I was making the game since I managed to find a lot of the things I was working on in some old DMs so I'm going to share those things here. I'll try and go chronologically where it's convenient.

Origins

The game initially started out as a game jam project and instead of pushing conveyors, you would kill yourself by jumping into the water and different things would happen each time you died on a cycle. If I recall correctly this would work where you would have a limited number of lives and on each life a different thing would happen like creating a box or an explosion. This was still a sokoban game but this idea quickly became difficult to figure out so I pivoted more in the direction that the game eventually became. I wouldn't have remembered the jam it was for had the name of the project in Gamemaker not been "Evolution". (this jam: https://itch.io/jam/mini-jam-186-evolution)

The Plan

I gave up on making the game for the jam and decided to make it within one month and managed to finish it in about two. This was probably the best development cycle I've ever had on a project of this length, I was working fairly consistently and making good progress which is something I continuously struggle with. I had planned on this being a demo to be able to expand on and eventually release as a nice little thing on steam and I was going to make this small demo to put up on Armor Games to get a good amount of feedback before working on it further since much more people would end up playing it there than just on my itch.io (I do not get a lot of people playing my itch.io games). 

I did not end up releasing the game on steam but I did pay the fee to be able to create a page for the game. I made several very rushed pieces of art to use for the games page and uploaded the current build that I was able to play through steam. I even planned on commissioning someone I knew for the store art but ended up deciding against it because I didn't have a lot of money and wasn't feeling much excitement towards the project anymore. I later reworked that steam page into being for another game I'm working on called Alien Home Invasion which I have not worked on in several months (the steam page: https://store.steampowered.com/app/3922220/Alien_Home_Invasion/)

I did have a couple more things planned out like achievements and more polished menu's which I found on my old Trello board. Most of these things did not make it into the game.

Inspiration

The primary inspirations for the game were Infinifactory and Baba Is You. I think one or two people commented on that it was obvious that Baba Is You was an inspiration. I had also been playing a lot of Patricks Parabox at the time which along with Baba Is You, influenced me to make it a sokoban game and Infinifactory inspired the conveyers and even the useless little detail of the number on the jelly eater (I'm thinking now that maybe I should have had the pink jelly circle get bigger with each jelly that got put into it and then the level would be won whenever it covered the whole screen. Maybe.). I am proud of the game in retrospect but partially the reason for not taking the game further was that I think I was comparing the game to its inspirations and I felt that the mechanics had nowhere near the longevity that those games mechanics did.

World Map and Levels

Making the levels was a huge slog at times and I really struggled to reach the 20 levels that I ended up with, I had originally wanted to hit 30 but I was finding it way too difficult. Making levels was quite fun at times though, I especially enjoyed making new mechanics but I was also quite hesitant to add too many because I felt a need to keep every mechanic grounded to what felt like "the game" which I'm not sure I agree with in retrospect and might have held me back from some more interesting ideas. I do like most of the mechanics I landed on but am a little disappointed in some of their executions, mainly the 90 degree rotator thingies which sometimes required you to repeatedly push the same block over multiple times which I found tedious but managed to justify because I knew players wouldn't be replaying those levels as much as I was. Fun little thing though, the rotateys that spin the blocks 180 degrees came from a bug that caused the 90 degree ones to trigger twice at the same time.

In regard to the actual process of making the levels, something I really enjoyed was the process of making a level and being completely clueless as to whether or not it was actually possible, that was probably the closest I got to playing the game as a player would but I would often have to make tweaks to make the level actually possible which sometimes I found quite disappointing because figuring out the impossible puzzle felt quite fun to me but the tweaks I had to make to have the level be possible at all would often make the level way easier than I wanted it to. That's something I wish I had managed to do more of, to make levels that were genuinely challenging.

Only one level concept was cut from the game and that was one where you had to die to beat the level. I think it was the final level where with a minor change it would require you to push the boxes by stepping onto a crumbling platform to win. I'm not sure if this was a good decision or not, maybe it would have been good as an optional level because I do think that this would have been interesting especially because something I really liked about Baba Is You is how sometimes there would be 2 levels that look almost identical but with a small change that would drastically change the solution.

There are two other mechanics I'd like to mention here as well: The wall which I'm pretty sure only appears in level 0 which I made so that the tutorial would be impossible to fail because if the wall wasn't there then you would have been able to push the box into the water which I didn't want; there was also a cut spikes mechanic which would have worked where you can push boxes over it but be unable to step on it which I think actually could have made some good levels but I think I decided that I didn't want to let you die in levels which ended up not really mattering I'm realising now since I made the crumbling platforms, so that's a regret I've just now developed. 

The world map was something I contemplated on a lot, on how levels would be ordered in difficulty and when mechanics would be introduced. My main idea for this was that I would have some kind of a "graph" for how hard levels would be laid out on the map, harder levels being higher up in the world map and easier levels being lower down but both getting progressively harder as they go from the left to the right.

The levels on the map was something I thought so much about and had so many ideas for (that I really don't remember aside from the one I just mentioned) I wanted to make a youtube video about it, one where I would experiment with all these ideas and look at what other similar games do, but I decided that it would be too much of a time commitment considering that I wanted to get the game finished quickly and this would add potentially months onto the project. I did record a video of myself explaining some ideas though in hopes that I could use it somehow in that video; it's terrible quality and I don't like it. 

I think in the end I decided that the intended order of the levels would be in the order that they're numbered because this was the simplest for me to design but I still kept the branching paths because I wanted people to be able to try a different level if they ended up getting stuck. I'm not sure that anyone did get stuck though given how simple the game is.

My Videos

I did make a few videos about the game as I was developing it though. They were very short and very rushed but my main priority for them was to have fun making them, which I did. Despite them being very stupid and getting very little attention, I found them to be a big help in motivating me to make progress on the game because I would have fun making the videos which would make me want to make more videos so I would make more progress on the game so that I could have more things to talk about in the videos! This is a loop that I've failed to recreate when making devlogs for Alien Home Invasion.

I made 4 videos in total and they were all unscripted rambles about whatever progress I'd made.

I don't remember much about the process of making the videos aside from that I would mostly do whatever I found the most fun with them. Something I do remember though is that the reason behind my microphone audio being so terrible is because I really didn't like listening to myself talk in the recordings so to mitigate that discomfort I compressed the hell out of the audio. This is a problem that has somewhat lessened over time as I got used to hearing myself, though I don't exactly feel very fondly towards how I sound. 

I am also somewhat upset that "GAME DONE PLAY IT NOW" got more views than "The Artists Toil(et)" because I put significantly more effort into that one in almost every aspect.

Art and Sound (and some other stuff)

The style of the game wasn't something I spent a lot of time deliberating on and very few things had more than one or two iterations before being what's in the final game. The main two things that took a bit more experimentation than the rest of the game were the sound effects and the way the water in the levels looked. 

At first the sound effects I used were made with BFXR which I wasn't too fond of the result because the sounds that I ended up with were kind of annoying and I eventually pivoted to using the sound tools in Pico-8, I have no idea how to use Pico-8 except for the sound editor which I find a lot of joy in using because of how intuitive it is and because I feel that I'm capable of making things in it that are slightly more than serviceable. The main thing that inspired me to start doing this was Punkcake Délicieux who I'm fairly certain does the same thing with a lot of their games. Something I learned though is that not every sound had to fit exactly into that style and it was okay to sometimes use sounds I got from elsewhere if I wasn't capable of making whatever I was going for in Pico-8 (this applied to other areas too, the confetti effect for example doesn't adhere to the games colour pallete). I don't remember exactly which sound effects but I know at least one or two were from an asset pack (I've realised that one of these sounds that was from an asset pack was a squeaky sound I used for when the jellies got put into the number block, which I replaced with something less annoying sounding). I'm not sure how well it read to people because nobody ever commented on it but in the opening cutscene there are two characters who talk (the ships computer and the alien you play as) and I tried to differentiate them by having different sound effects, speech bubbles and fonts for each of them. Anyway, at one point the sound effect for the alien talking was me gargling a drink.

Side note about the intro cutscene: the alerts that come from the ship make the shape of loss. Initially I messed it up though because I didn't look at a reference and put 2 lines where the first single line should go. I was inspired to do this because I had recently watched an Ultrakill developer commentary live stream where they showed that the side of the earthmover had loss on the side of it. While I'm writing about the intro cutscene I may as well also add that the requirement to press SPACE and all the arrow keys at the start is something I copied from some games by Stuffed Wombat who I've drawn a fair amount of inspiration from in the past. It's just such an elegant way to communicate the controls to the player because it required them to actually press them all. It probably wouldn't work with games that have a more complex control scheme but for my purposes it worked perfectly. 

I'm quite happy with the way the water turned out in the final game. What I ended up with was just the outline around the level that flows in and out like a wave which was made using an animated tileset. The way I wanted the waves to look though was something I spent a long time unsure of; initially I had just put some wave looking sprites around in the water which stayed for quite a while until I started to actively experiment with what I wanted it to look like. I tried making the water look more wavey all over it with some of the built in effects in Gamemaker but I thought it was too distracting from the visuals of the actual gameplay elements and it didn't look like the level was in the water but rather floating above it. (Also the fart noises are there because when I sent this to some friends I said something like "I forgot to pause my music, just ignore it" because I thought it would be funny. Nobody mentioned it.)

The final tileset for the water:

You know, I never actually figured out a design for the thing you put the jellies into, I called it the 'Jelly Eater' and just left it as is because I had no clue what else it could be because another mouth thing would probably be confusing next to the one that the jellies come out of. Anyway, here's a video of what the game looked like at some point. 

Friends

Throughout development I'd frequently share my progress with some friends to get their thoughts and because sometimes it's nice to share what you're up to and it's nice when creativity isn't being done in a vacuum. One of these friends is Michael (Hi Michael👋) who was very cool and helpful and who is still very cool and helpful! I don't remember this but apparently the level that had a million breakable floor tiles was their idea so that's cool! The other friend I sent a lot of things to isn't my friend anymore because they blocked me half way through making the game but in retrospect I'm pretty glad they did that because they were a shit friend, and I was pretty shit too but I figure that's something that can happen with relationships that go on for a long time, getting complacent with how you treat each other even though you don't act that way with other people. 

Getting Lazy With It

There were a couple of decisions I made out of laziness and the two main ones I remember are the games ending and the games credits. The credits are just a single sprite that appears on screen when you hold down the right mouse button in the world map. I don't know to what extent I regret doing it this way, a proper credits menu would have been nice or I suppose thinking about it now I could have just put my name in the main menu before you start the cutscene. The ending was something I had very few ideas for and I really didn't feel like making a new cutscene so I just made a couple of quick sprites for that final room once you beat the final level. I suppose as well I would have liked the ending to be triggered by something other than just completing the final level, maybe completing a certain number of levels but it wasn't something I was willing to put more effort into at the time.

Feedback

If you're curious to read the bulk of the feedback I got on the game then go look at the comments on the version on Armor Games (https://armorgames.com/gelation-game/19610). I'm fairly happy about the reception and I'm pretty sure its my highest rated game on there with an 87% positive rating. 

One thing I regret when responding to some of the comments was that I said I would add things like saving your progress and being able to navigate the world map with the keyboard. Both of these things I knew would have been better to have when I released the game but I never realised just how much people would miss those features, and I never expected anyone to play the game over multiple sessions.

Outro

So yeah, that's everything I could find or remember about the development of the game. Thanks for reading :)

Now for some insights into the development of this devlog! It took me ages to write because I'm a very unproductive person at this point in my life which I hope to be able to change soon. I feel pretty good right now and apparently I didn't whenever I started writing this. I'm not sure what music I was listening to as a whole at the time (probably Ween honestly, I've been on my Ween shit for fucking ages) but in two of the videos I managed to find of the game I had Pantera and Royal Republic playing in them. I hope this devlog is nice to read, I want to start writing more things. Sometimes I think about writing a story or something but then I think that I should probably actually read books first which is something that I would also like to do that I am very inconsistent about; I've had Metro 2033 for probably 2 years and I've made very little progress in reading it (I bought it because I liked one of the games).

I might write another thing about the implementation of certain features or mechanics but I'm gonna leave it for now because I want this thing DONE!!!

Okay Bye <3

来源:itch.io Devlogs · inarsy.itch.io