WARNING Lumiko contains some hardcore platforming.
NOTE: v1.1.2 - Fixed minor bugs. v1.1.1 - Fixed show-stopper bug. If you already downloaded Lumiko, you should download the installer again, and reinstall the game.
It’s never too late to join an interesting game challenge! To start off, this is the cart I picked:
Story
There’s no story of course! How can I build a story in such a short development time? You’re a little cure creature named Lumiko, lost in a random world!
Inspiration
“You chose such a boring cart, man!”. I know it’s not the best cart of the archive, but it’s the only one that inspired me to work on something. When I first looked at it I had to turn my head. Jackpot! I want to reproduce this feeling, I want to put the brain in that awkward situation similar to when you try to read something upside down.
“Why?” you ask. “Because” I reply.
Development
I’m building the game using Game Maker: Studio. I’m not a programmer, and GML is the most comfortable programming language for me. Now, my goal is to recreate that strange feeling I presented few lines before. How to do that?
I think I can obtain that feeling trough the game controls.
The first idea was to create a game that required you to use your laptop tilted of 90°. The idea was cool, but gameplay-wise it was unable to find something interesting enough.
I decided to go for something less particular but effective: a lot of 2D games are based on the change of gravity direction. The point is that the controls change depending on the gravity direction in order to make the experience more comfortable to the player and less confusing. I’m going in the opposite direction. I’m building a game in which you can change the gravity direction, but the controls remain the same: in this way the brain needs to process more information in order to provide good hand-eye coordination. Confusing? Good!
The project is still evolving, and thanks to the control scheme I already captured the feeling I wanted to express.
In these past two days I mainly worked on the collisions (I’m not a programmer, and considering the gravity shifting mechanic, it’s not easy to make everything work correctly). Now the collisions work quite smoothly, I only have some problems when precisely hitting the corners, but I don’t think I can do much about it.
The Game
The main goal is to open doors. Lumiko only needs to touch a door to open it, and the objective, at the moment, is to open all the doors. Since there is no real challenge at the moment, I need to choose if making it a time attack game (open all the doors in less than x time), or if making it a puzzle game (putting blocks that move according to the gravity and that can block the player’s movement).
In the meantime, i figured out that such a simple game could have nicely worked in multiplayer, so I implemented two more players in the game. For the multiplayer component I think I would push for the time attack formula: One round is 3 minutes, and the players rush to open as many doors as possible. The player with the higher number of open doors at the end of the round wins.
After perfecting collisions and figuring out in which direction I’d like to bring Lumiko, I decided to implement some basic spikes to make the platforming a bit more challenging.
And what do spikes mean? Lumiko can die, exploding in a bath of blood! Poor Lumiko!
Some more effort went into graphics and design: I gave some variation to the tiles and I shaped the level differently, in order to create a possible award system based on opening all the doors with as few gravity twists as possible.
Today I spent most of the time working on the art and on the main menu. Useless? Kinda, but I really love main menus!
I decided to shape it as a game level, using tiles to create the Lumiko logo. I put four different elements to select (Single Player, Multiplayer Coop, Multiplayer VS, Credits) even though I don’t think they’ll all be ready.
I put some moving grass here and there to give some life to the level, and I added some elements that change randomly when the level starts.
Wanna see the main menu? Look at it but don’t make too much noise, Lumiko is sleepy!
These two day have been the most productive since the beginning of the project (only 4 days ago!).
For the first time I didn’t care about the art and I actually coded like a real programmer. For realz. (well, of course my code is probably sh*t, but who cares!)
Game Formula
I finally decided to structure Lumiko as an action platformer more than a puzzle game. GOAL: open all the doors before the time expires, otherwise Lumiko will die. I will find an explanation for that only if I’ve got time!
Developent
I implemented a countdown for each level, and this made me think about the possibility to build more game difficulties (with less strict timers)…so…I did it! When the player starts, she can choose between Normal, Hard and Extreme, with the latter being really really difficult. I also implemented the game over and - just because I also like working on little details, now the grass animates a bit when Lumiko steps on it. Oh, and I also put some nice particles when a door is unlocked. Sweet, right?
I also built the Pause menu: it was quite a pain in the ass, but in the end I managed to make it work together with the countdowns and everything.
The biggest thing that I accomplished was to implement a Stats system that stores a lot of info about the game. All these info are saved after leaving the game, and are loaded back when starting it. It feels to me like I hacked the Matrix. Plans
The game evolves very nicely, and I will spend the next few days building new levels and making them interesting to play.
The last few days weren’t as productive as I expected. I improved the game quite a lot, but the deadline is very very close, so I need to cut stuff off from the “To Do” list and get sh*t done.
Level Design
To be fair, I did some good job with the level design: i built 8 new levels that will help the player understand how the game works. Not the best tutorial ever, but it’s still a game built from 0, all by myself, in two weeks!
At the moment, this is the list of the levels:
- Left ‘n Right - Try to Jump - First Twist - Invert - The Dog - Spiky Roof - room0 - East to West - The Alien
The Alien is the one that I like the most, being really close to the initial inspiration. The level is mostly built to be played sideways….quite annoying, right?
The other levels are quite short, and they explore the basic twisting mechanic without challenging too much the player.
I put the biggest effort in putting interesting time limits for each level: i started from the Extreme difficulty level, in which there’s almost no space for error. I actually think Lumiko gives its best if played at the Extreme difficulty. You’ll need to finish the Hard difficulty first to unlock the Extreme one.
I think I will build new levels in the next few days, but the biggest problem is that I’m not using the twisting mechanic in new interesting ways due to the fact that I need to close the project in 4 days… now the risk is to make the experience a bit boring.
Nemesis
I also decided to put super little effort in building a minimal plot for the game. There’s no dialogue and no text to skip; just a short intro that show Lumiko’s nemesis using a strange device to teleport Lumiko and activate a bomb in her body. I hope I’ll find time to build a nice ending, but at the moment I’m more focused on building new levels.
If you want to give a look at Lumiko’s nemesis, there you go: he’s a nervous guy!
He has no name, so if you have some nice suggestion, feel free to write a comment! I don’t know why this guy is bitching on Lumiko, but I’ll try to come up with some interesting ideas.
To close this project update, here’s another GIF showing a part of the intro, a basic tutorial level, and The Alien level. I’m damn tired and I need to get some rest before getting back on the project. Night night from me and Lumiko.
WARNING Lumiko contains some hardcore platforming.
NOTE: v1.1.2 - Fixed minor bugs. v1.1.1 - Fixed show-stopper bug. If you already downloaded Lumiko, you should download the installer again, and reinstall the game.