The Vault Open indie game development

Articles with the games tag

the name of the game is grab

This is my Ludum Dare 32 entry. The theme was An Unconventional Weapon.

For a while, I've been trying to bring some League of Legends mechanics into smaller games, and Ludum Dare seemed like the ideal opportunity to do so. One of the funniest characters to play in LOL is Blitzcrank, so I knew the mechanics were solid: hooking things is fun. There's also the counter side of having to stand still while hooking which makes one vulnerable if the hook misses.

After the core mechanic was chosen, most of the work went on the enemies. Each enemy has a slightly different AI. Pink rotates its bullet around itself, so it tries to always stay the same distance from you; Yellow always tries to stay as far from you as possible, shooting from time to time; Purple throws a bullet in your direction, and moves there to grab it back; Blue just tries to dodge the hooks and counter-shoots you.

Another interesting part of the game is how every time you kill a ghost, you stay with the other three ghosts (and the BG changes), as if each set of 3 ghosts is kinda a different game. I think this could be explored further in other games.

Done using ugl. Full source code.

Tin Can Internet

This is my Ludum Dare 30 entry. The theme was Connected Worlds.

This is the first game I made since I moved from Zurich to Montreal. The whole games was made in a day or so. Most of the time I spent cleaning up the old infrastructure and making sure everything worked fine.

I've spent some time making sure the controllers were working fine and improving the rope mechanic. I think they turned out pretty well and it is super fun to circle around planets.

The hard part was finding a challenging mechanic after the basic mechanic was in place. I tried a bunch of strategies here (running to the top, infinite size world, etc). I settled with a time-based level mechanic. It isn't the deepest one, but it's pretty ok for a small game.

Done using ugl. Full source code.

Orbit

This game started as a follow up from Super Hot Asteroid and Hypermania. I was also looking for super simple control schemes.

After deciding on the control scheme (just switching direction, auto move and auto shooting), it was just a matter of finding an interesting balance. In the end I decided to prioritize trying to destroy as little as possible while surviving the turret attacks.

Code-wise, it's nice to notice the AI for the turret. It tries to be smart and predict your movement patterns. It became too good, which made me add a shield to the player. The shield, on other hand, made the game a bit longer, which allowed me to add a score very strongly biased towards not destroying things.

Visually, we kept the minimalistic color/black/white theme, which I think works great.

Done using ugl. Full source code.

You are a metro car

This is my Ludum Dare 29 entry. The theme was Beneath the Surface.

I didn't have too much time for this, so the whole game was fully done (from idea to submission) in close to 10 hours. I don't think this impacted the implementation a lot, but it meant I had to go forward with the first idea that we had. (Which was, in fact, my girlfriend's).

Interesting implementation point here was using a Voronoi diagram to decide which station connects to each other (all rails are, in fact, perpendicular to edges of the Voronoi cells of the station).

I've spend most of the time trying to get some user input that didn't suck. I experimented with the car automatically running, with break only mode, with different speeds, etc. Ultimately, being able to fully control forward/backwards was the most fulfilling choice.

I also had implemented some passenger mode, where you could see little passengers on the train and deliver them to each station, but it was just very distracting and not fun. Finally, I also had plans for different types of missions, but then I realized they are all variations of "go to a particular station", so I cut those out too.

Done using ugl. Full source code.

Gather

In this game, you have to group boxes of different colors. A group disappears when each color in it has the same number of pieces. The game is over if you reach the bottom of the screen.

This game's idea came to me when I was looking for 8-bit pixel art and it has some inspiration from Aba's sum10.

It still has a minimalistic theme, but different from previous games. I really enjoy the top score bar on this one and I think it really adds a nice effect.

Done using ugl. Full source code.

Hypermania

This is my take on Atari's Megamania.

It has some of the enemy patterns found on the original game, but the latter levels are somewhat harder. Also, not having lifes makes the game much harder than the original version. I may revisit that. It has also a nice minimalistic theme.

One interesting part of coding this was trying to find a minimal data structure to support all different enemy patterns. In the end they can all be described by a spawn pattern (for horizontal and vertical waves), functions for x and y movement and frequency of shooting.

It also contains a Space Invaders generator that has nice results for such a simple idea. It's based on Invader.Fractal.

During the development, I ended up improving a lot some of ugl: better timers, game delay, input reset, sound caching and nicer particles.

Done in 20 hours, using ugl.

Full source code.

Super Hot Asteroid

One more on the minimalistic theme. This game is a mix of Asteroids (the Atari classic) and the amazing SUPERHOT.

I've added a nice screen shake when something explodes. I've learned this with two talks that are totally worth watching: The Art of Screenshake by Vlambeer's Jan Willem Nijman and Juice it or lose it by Grapefrukt's Martin Jonasson and Petri Purho.

Also, tunning the mechanic was pretty interesting: how fast can the ships fly, fire rates, bot AI. Overall, it was a lot of fun.

Done in 1 day, using ugl.

Full source code.

Amaze

I enjoyed this minimalistic style scheme with full background color and B&W foreground. I will do more of that.

The maze generation algorithm is different than usual. It's a variant of Prim's algorithm that tries to make the maze a bit circular (so we have longer corridors on the outskirts). This is done by picking a prefered direction of expansion depending on the tile we are expanding.

The bots walk semi-randomly. They try to get closer to you, but not optimally. If they directly see you, they will run for you.

Based on Ryleigh Kostash's mazing.

Done in 1 day, using ugl.

Full source code.