Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
0

Happiness = Puzzles + Retro + Narrative!

A topic by nubitoad created Jul 14, 2020 Views: 255
Viewing posts 1 to 1
(1 edit)

Alice is a short but wholesome game where you play as a robot that can control other robots. Join Alice in taking her morning walk and make friends.

Retrospective

I've done around 5 game jams so far, and this was by far my best. Here are some reflections about what I did differently that I hope I can stick to, and also things I could have improved..

What I did well

The idea:
  • I jotted down 5 ideas, made a quick sketch of each.
  • My two favorite ones were grid based: a strategy game, and a puzzle game.
  • I thought to myself, "if both are grid based, let me start making a grid in Game Maker and see how I feel."
  • Once I had a grid, I knew immediately I wanted to do a puzzle, for some reason.
  • I also remember hearing anecdotal advice that strategy games and fighting games are best be avoided in jams; they're a lot of work just to get the basics in place.
The prototypes:
  • Every time I make a game, I end up doing polish early, like REALLY early. This time however, I started with solid colored boxes and kept it that way until I designed ALL the levels.
  • I knew it was a puzzle about controlling other entities, but I didn't know exactly how. 
    • I started with a cascading system, where if you control an entity, it can go ahead and control more entities for you. That one did not feel right especially because of the screen real-estate I expected to be working with. The game is a puzzle, so no moving camera. And is grid based, so a very small area.
    • Then I thought what if you have to keep the chain of controlled entities connected to maintain control. But that required some character switching system that had to handle an entity getting out of the control range. Not very predictable, so I thought not fun.
    • So I settled on one central entity that has an area of control, and whatever is in that area moved. And immediately when I started playing that, some entities + some walls were enough to let some puzzle emerge. That's when I knew that is the idea.
The theme:
  • Once I designed all the levels and the game was practically shippable as an abstract puzzle, I started thinking about theme.
  • I thought of a lot of places where control is a theme: hypnosis, necromancy, government, etc... But with walls and doors involved in my game, robots just stood out as making most sense.
  • Also robots would allow me to indirectly explore deeper concepts like consciousness, free will, slavery, and technology.
The polish:
  • Once I settled on robots, I jumped on Google Images and searched "robot pixel art."
  • And I'm so glad I did! I'm really not great at making something from scratch. I'm better at taking something that someone put their personality into already, and then tweak that to my liking.
  • I've also referenced other images for what colors and shapes to use so that I can make one robot look like relatable and harmless, and another sophisticated and sinister.
  • While doing all of this, I had to keep in mind that this is a puzzle game, and nothing in the presentation should make the puzzles harder.
    • Everything still had to feel blocky and fit into a grid.
    • Types of robots should be easy to distinguish just from their overall colors.
    • Walls, doors, the background, and switches were eventually designed to work with what I picked for the robots.
  • I then added some screen effects to give an extra feel of polish. The effects eventually ended up serving me well with the story when I wanted to convey suspense or danger.
The story [SPOILERS]:
  • At this point I had no story planned. All I knew is:
    • Theme is out of control.
    • You are playing a robot controlling other robots.
    • The robot is trying to get somewhere while overcoming obstacles/puzzles that were  put in its way.
  • Given those, I immediately though: what if when you get to your destination, YOU get controlled. "That would be a cool ending, I thought."
  • But giving the player that feeling of surprise at the end is not easy. I needed to plant the seeds. So I wrote down the main concepts I'll be relying on in the story:
    • The robot you're playing has charm and personality.
    • The robots around it feel more like objects.
    • There are hints about a smarter robot.
  • Using those principles, the story flowed so naturally and nicely.
The code:
  • I have done puzzles before and I have done narrative before, so I was very aware of the technical foundation from hour 0.
  • I was able to tread the line between simplicity and specify because I knew what I was doing. I wish life was as simple as that :P
The stress:
  • I managed time well since I knew how much I needed to allocate to each stage: prototype, graphics, story, polish, and audio.

What I could have improved

The idea:
  • Puzzle + narrative is an idea I've done almost too many times. It felt like I was cheating when I resorted to that. Hopefully next time I'll try  to do something out of my comfort zone.
The story:
  • I was trying to communicate the player robot's personality and view of the world in a subjective way, and I succeeded for the most part. 
  • But there are places where it said something like, "I'm much more intelligent than robot X." I think that could have been improved by saying something like, "One time, this X robot was following and it fell right into a pit. Can you imagine? Does it have no sensors?"
    • I like the second version better because it communicates more personality, and is less info-dumpy.
The audio:
  • I'll admit, I don't have an ear for audio. I have never been into music whether listening or composing.  I really don't know how to solve that problem, so if y'all have recommendations about how to start on theory, or how to build a sense for "good sounds," I'd be grateful.
  • I was relying on a feature in Game Maker that allows you to change the pitch of a sound during runtime, but turns out that feature does not work in the browser. This meant that the robot sounds were very repetitive, and all types of robots sounded the same. Really sad about that one.

I just realized this is REALLY long! BUT, I did enjoy writing it, and I hope it helps someone else, so here!

Thanks for reading!