Developing a (Probably) Metroidvania Sort of Game

Root / General / [.]

Hello everyone, it’s been a while! It’s been a minute since I’ve programmed on the 3DS, but a couple weeks ago I decided to start making a game! There isn’t much yet, but I’ve coded a little bit and will post updates and stuff here. The biggest thing really is that I’ve already written a couple of songs for it, but as a music nerd that’s the easy part ;) The main idea of the game has to do with exploring a huge cave, which has an ancient power inside the heart of it. However, as the player descends further into the cave, they also descend further into madness. I’m pretty excited to work on it when I have time!

sounds like a really cool concept! good luck!

So a few updates on this. I’m pretty busy and don’t have too much time to work on this, however I’ve made some pretty good progress! I’ve gotten most of physics working about where I want it (for the time being), and I’ve even built a map editor that works how I want it to (again for the time being—this will change a little bit as I add things like monsters and treasure chests and whatnot). Currently I’m trying to flesh out the player’s move set and experiment with things. One of the most prominent aspects of a metroidvania is collecting items in order to progress your character and overcome obstacles. In order for the game to be as big as I want it to be, there needs to be a solid amount of items to collect and each of them needs to feel useful. I want the progression of the game to be strong. So far I’ve gotten a double jump type mechanic in there, and on top of that another jump related mechanic that I might keep a secret unless I change my mind. It’s nothing super crazy but at the moment I think it’s cool. We’ll see where it goes. I’m also experimenting with ways the player can “attack”. I like how some games like cave island let the player use a sword, but personally I’m a big fan of shots and the different kinds of projectiles like in Metroid itself. It’s something I need to play around with more, it can go all sorts of different ways. As a kind of spontaneous idea, I’m suddenly thinking about ways shots and beams can be more interesting. Metroid has a lot of colored doors, and I don’t want to just copy that. It doesn’t seem like a super interesting way to show off beam types; it’s just like “oh this is different from the last one because it’s stronger or something I guess.” Maybe there’s a metal grate that only the melty beam can cut through. Maybe there’s water infested with millions of tiny fish that will kill the player, but the electric shot can take care of all of them at once. Just kind of a brain dump. Anther way that can go are things like bombs or that rod thing like in cave island. I love the variety of items and want to come up with things like that, that make the game interesting. I just also want to be careful that each item feels useful, maybe take an approach like Celeste tries to where each puzzle can be approached a number of different ways. Maybe some puzzles in this game could be solved with a variety of items, so that’s something I could experiment with too. Overall, I’m having a lot of fun. I’m not sure exactly how this will turn out but so far it’s looking great! My code now is much better than the messy stuff I wrote when I was in my early teens, and it’s becoming easier to work with myself. There’s no way I’m a great programmer yet, but I can see and feel my own progress! And it’s becoming easier to just have fun with it, I mean that’s what I love about getting good at anything! I feel more certain that I’m make it through this project, and that it’ll be good in the end. It just takes work!

Okay so I’m kind of using this as a brain dump space, but I think that’s good for me and specifically this sort of project. Metroidvania sorts of games are really interesting because they are rich with super cool mechanics and a literal digital world to explore. I think the best way to approach a metroidvania is as follows: step one is to make “Mario Maker” and then step 2 is to design and flesh out the world. Right now I’m making “Mario Maker.” What this really means to be more specific is that I’m laying down the foundations. First obviously I had to make some basic physics and objects, such as the world and the player, movement and controls plus gravity and basic collision. In a way, I had to create this “canvas” for me to work with. Next I had to give myself a couple of tools. SmileBASIC gives me a space to create code, tweak numbers, and overall create all the other tools I need. But it would be very tedious to manually create maps and levels, and art using just code. Luckily SmileBASIC comes with the SMILE tool, which gives me a nice pixel art editor. However, I didn’t find the SMILE map tool to be compatible with the way I decided to organize my map data. So, I created a map tool from scratch, which I will be continuously making changes to as development continues. So on to the thing I’m working on now: fleshing out the player’s abilities, the players item set, adding monsters and mechanics. Another thing I haven’t thought too much about: interface for dialog and menus. All of these things are essential elements in my vision for this game. These are what I need to add to my map tool, but only once I’ve actually created them. It’s an interesting process. In summary, right now I’m experimenting and creating the stage for this to play out on. I’m making “Mario Maker” in that I’m giving myself tools and elements to make the game. That’s part one, and of course part two is making the actual game, but we’re not there yet. Right now it’s very important just to experiment with ideas and come up with mechanics, making brain dumps a critical part of the process. So I might end up doing them a lot, either here or in my notes or on a paper. At the moment I’ve created 5 different types of shots the player can fire, and a few different things that can modify how the shots are fired. Those things aren’t too complicated, just like a charge shot or a rapid fire (that one will be late game). I want to create next just some things each of these can interact with, elements that can be found in each room. Maybe once I’ve added everything I can add some fancy particles too, we’ll see. But for now it’s about the base mechanic. I think a model I want to try to follow for developing items and mechanics is to create the thing, and then come up with ways the thing can be used. That seems like a good way to make sure everything feels cool, so the world isn’t boring. I’ll adopt this approach for now and see where it leads me.