Developer's Journal: Designing Linden's Metroidvania Caves 2D

   

     
Hey everyone...this is the first of what I hope will be a continuing series on designing levels in Atmosphir. Hopefully this gives a little background info, along with a few tips and tricks that will help you make your own adventures.
 
The level starts outside of the cave.
Today I'll be writing about Linden's Metroidvania Caves 2D, a new level I uploaded a couple of days ago, but have been working on for the past week or so (I'd guess about 18 hours of designing/playtesting total). With last Friday’s Update 14, the new Camera and Force Area tools were added in the Interactives category, and I immediately knew I wanted to make a 2D “ Metroidvania” style level. Super Metroid was one of my favorite games growing up in the 16-bit era, and although I’m not able to make something that big in Atmosphir (well, not yet - level linking is scheduled for early next year), I wanted to test out the general premise and see how far I could go.
 
To be honest, I didn’t do much pre-planning. I just built it up section by section, letting the design sort of grow organically and trying out new ideas when they came to me. I knew I wanted the character to fall into a cave at the beginning, taking a cue from the awesome Shadow Complex. I also knew I wanted a big fight at the end, and I thought a little about what the collectables would be to unlock new areas - in this case, it was mainly keys and bombs. There are also some timed run and jump powerups thrown in there for good measure.
 
One thing I like about 2D levels (having only designed 3D levels before in Atmosphir up until now) is how much more accessible and streamlined they are. I remember the learning curve I first had to go through to understand a WASD + mouse setup...controlling two things at once - the character and the camera - did not come naturally. But here, you’ve got the Mario formula that everyone understands: just worry about the character. Move left or right, jump or climb, and use a weapon every once in a while. Actually, I’m thinking that I’ll even make my future 3D levels completely designer-camera-directed, as they are in Super Mario Galaxy.
 
 The full level, as seen from the "map room" area
My favorite part of the whole thing really is the map room, where the camera zooms out for a complete shot of the entire level. It was kind of a cool "a-ha" moment when I added it in, and it’s a perfect example of how cameras can be used to do much more than just follow the character around. From cutscenes to security cameras to whatever, this is a powerful little tool. Another highlight for me is the gravity room, because I wasn’t quite sure how gravity puzzles and platforming would work in 2D. Turns out they’re pretty sweet, and I must have re-made that section 5 times before I was happy with the layout. I also thought a lot about the foreground/background elements, so you see a lot of slightly-blurry items in the foreground and distant mountains and trees in the background. They’re cheap but effective ways to give a 2D level like this a little more dimension.
 
Playtesting this level probably took just as much time as designing it. I had to think a lot about backtracking and making sure you could get back to every section if you needed to so the player was never trapped. For example, in the final boss room, a block falls down behind you, blocking your way out and making the final fight more confined. But if you run back through the level and get back to the other side of that wall, you would actually be stuck and have no way out. So I hid a teleporter under the ground, and had it trigger on only after the final boss is defeated. I’m always anxious to push a level out as soon as it’s ready, but it’s worth it to play through everything multiple times and make 100% sure it’s not broken. Now I don’t upload a level unless I can play through it 2-3 times perfectly. I’m constantly pressing F2 to jump back and forth between play and design, making small tweaks here and there.
 
 The final boss fight has Muka Shaman shooting at you from the foreground
In the end, there’s always stuff I wish I had added or improved upon. I wish I had added some unlockable achievements/treasures like Linden’s Stratosphere for collecting all the bombs or jewels or something, to make the completionists happy. The box-pushing puzzle didn't translate that well into 2D, or maybe I should have made the box bigger. I also wish I had thought up of more ways to unlock areas instead of just bombs and keys - gradual increased run/jump powers would have been a really cool addition. But maybe I can save that stuff for a sequel, if enough people like this one.
 
The level is edit-unlocked if you want to go in there to look under the hood and see how things were made (just click the edit button on the level detail page). Some quick design tips and techniques for looking through the level:
 
1. Check out how many Force Area objects are used. In some areas, I wanted to restrict the player to a 2D plane only, but in others I wanted them to be able to go a block or two deep into the background. So instead of just using one big 2D plane, I cut it up into several sections to make sure players could reach the correct areas.
 
2. The hidden puzzle room (in the far right corner, under the final ladder) is a nice case study for triggers and moving platforms. You step on two "pressure plates", which are essentially just moving platforms that drop down when you touch them to reveal an invisible area trigger, which in turn sets off the flying wooden discs that push the soccer ball around. I modified this puzzle a lot to prevent glitches, such as the moving platforms pushing the ball through the wall or off the course...that's why the moving platforms rise from the floor and slide into the background, instead of just going up and down.

3.Shift + WASD (fast pan) and Shift + Q/E (10 floor jump) were the best shortcuts ever with this level, which required a lot of bouncing around between sections.
 
4. There are a lot of invisible info stickers attached to timer triggers. Instead of having the same info sticker message show up over and over again when you entered an area, I had it set to only show up once for 5 seconds or so. This helped it feel a little less repetitive and not feel out of place (like a hint about bombing a block showing up even after you've already blown it up).
 
5. I tried to squeeze every ounce of performance I could in the level, so I used area triggers to spawn enemies, move platforms, and light torches only when you've entered that particular section. The level has to keep track of all "interactive" objects that move around at all times, even if they're off screen, so it's helpful to have these guys hidden until they're really needed. A little extra boring grunt work, but hopefully it helps the level play a little smoother.

Well, that's it for this entry. Hope you enjoy playing it, and please let me know what you think!
http://www.atmosphir.com/atmosphir/level/show?id=128474
-dave ( okaysamurai)
8 Comments