A 'proper intro':
hi everyone, i'm seagaia. started gaming with super mario world, then the disease continued to spread! my favorites arenumerous, and i dont have a lot of time to play nowadays, working on my own games now, which is a lot of fun.
Throughout development of Anodyne, one of the largest challenges I've faced is the task of developing a number of "Old Zelda-like" dungeons for the player to explore.
What are "Old Zelda-like" Dungeons?
At a very high level, an Old (for the Zelda fans, I define this as everything up to and including the Oracles, excluding Zelda II of course) Zelda-like dungeon (we'll refer to this as just "dungeon" from now on) is a game mechanic that takes place in a grid of interconnected rooms, where the player starts in one designated room (think the entrance to your house - A), and ends up at some final room (think your bedroom - B). This journey from A to B must have a few additional details to bring it from some abstract definition to the more "Old Zelda-like" category:
1. Going from A to B involves defeating enemies which exist to kill you - example - killing a bat that gets in your way.
2. solving puzzles, which are just sets of entities which need to be manipulated in some fashion to progress - example - pushing a block that triggers a door opening.
3. finding items in order to progress, or serve some more game-specific goal - example - finding keys to open locked doors.
In the context of Anodyne and *most* old Zelda games, the interconnected rooms are just a grid of equal-sized rectangular rooms. Very much like grid paper, with each cell being a "room". In the context of only Anodyne, dungeon rooms are fixed at 10x10 tile dimensions. The choice of a fixed size for tiles was based in hardware for the old Zeldas, but in Anodyne's case is just a design choice - 10x10 is easy to deal with mentally, and usually offers wiggle room of 8x8 tiles for room design. (where the border can serve as walls for the room.) This is an example of a dungeon, this is the tutorial dungeon from Anodyne, as of 8/10/12 (very prone to tweaking, being the intro dungeon and all - where design matters a GREAT deal)
The tutorial dungeon from Anodyne.
Designing and implementing a dungeon comes in a few steps: (At any point:)
1a. Entity design - enemy and puzzle entities
1b. Scale choice - how many rooms
1c. Flow design - abstracting out sections of the dungeon, pacing through those sections, complexity of sections..
Then, when those are roughly finished
2. Chunking up the map and concurrently implementing rooms or outlines of room
3. Finishing up room designs
4. Playtesting to iron out bugs and other imbalances.
With my workflow, it works best for me if I solidly have 1b and 1c down, and at least 1a partially done before I get started in the later steps. This order isn't definitive, they can come in any order and often do interweave as you iterate on ideas or need to tweak. It's a ton to talk about, so we'll just touch on a few points this time around. In this case, I want to discuss 1b (Scale) and 1c (flow, or structure of the player's route through the dungeon) a bit, and a little specific to Anodyne as well, in order for me to get a more solid understanding of what I've been trying to do, and also to give you some stuff to think about if you'd like to go try designing dungeons as well.
Scale Turtle Rock is...big. Image credit from VGMaps!
Is your dungeon tiny, like the picture of the Anodyne tutorial dungeon? (or, for the familiar, Maku Path (OoA), that other intro in OoS)? Or is it monolithic (Turtle Rock (LA) - see picture, Ganon's Tower (LTTP))?
Scale correlates to the number of rooms - the game boy zeldas usually cap out around the high 40s and low 50s - , but obviously whether or not this even matters depends on the structure of the dungeon. (More on that in a bit). But it's a good rule of thumb to be aware of how many rooms you're planning to implement. You want to be very aware of the size of your dungeon and where it comes into play in the timeline of the game - it's a good idea to keep the size of your dungeon in mind depending on how much the player has experienced too far. Give a large dungeon early, and you risk frustrating the player by unfairly expecting skills out of the player that haven't been developed through a logical progression of dungeon difficulty, give a small dungeon late, and you risk the perception of both being a lazy game designer and boring the player. That much seems obvious, but it's useful to keep in mind.
In the case of Anodyne, my smallest dungeon is a mere 10 rooms, only 5 of which actually require some sort of meaningful interaction. On the other hand, the largest dungeon so far is a little over 60 rooms, although a handful are deliberately not very content-filled, and an entire part must be completely finished before going into the rest of the dungeon. Once you have some sense of scale pinned down (which you might still come back to, nothing really gets set in stone), you can think a bit about
Dungeon Flow Structure Okay, that's a lot of buzzwords...this is the high-level "flow" of the player through the dungeon - a overview of "how does the player get from A to B, and what are the main sections of this travel?" In Anodyne and the Zeldas, locked doors are used to help segregate sections of the dungeon, and give a sense of pacing - rather than making the player sprint through 25 action-packed rooms, maybe the designer chooses to have finishing 5 rooms open a door that lets you come back to that point quickly. A basic example:
The player first travels through these 6 rooms (section A). There is a key.
Player opens a door in section B, which leads to 6 more rooms (section B), and another key.
Key opens another door inside of section B, which leads to a large enemy.
Killing the large enemy leads to a treasure room.
These sections don't necessarily need to be physically separate rooms. Perhaps the environment of a room changes so that you can only go through certain exits, maybe the room changes itself, maybe there is overlap in the sections based on some item you get that lets you move. Etc. When I design the structure, I generally do have a few rough mechanics or events related to the dungeon in my head - it's hard to go off of absolutely nothing when you just have "a big dungeon".
For example, one dungeon I decided that I wanted to have some big triggered events that open up new parts of the dungeon, and went from there. With these mechanics, I think of a segregation of the dungeon that makes sense for the necessary complexity at that stage in the game, roughly decide what keys go where, and then move on from there. The tutorial dungeon in Anodyne (pictured above) is incredibly deliberate in each room's design - it has a short latency for death in terms of returning to where you die, and object placement is intended to make the desired action very difficult to not do, in order to show the player what to do. More on those mechanics later and why this is important (basically, because it's the tutorial), but the structure is:
Player solves easy puzzle.
Player gets weapon.
Player kills enemy for key.
Player opens door, solves easy puzzle.
How you teach the player how to do these things in a nonintrusive way is an entirely different ordeal, but that's for a later post. Two other points:
It's important to also take into account for player choice moving through the dungeon, if you have a lot of locked doors, absolutely be sure that you don't have a possibility where the player becomes permanently stuck! There's some easy-ish graph theory ways to think about this if you split sections that are lock-segregated (or event-segregated...or whatever your dungeon does) into vertices in a graph, and making sure each vertices has as many keys as it has outgoing edges (locks)...etc.
Through designing dungeons I've been forgetting a bit how difficult it is at time to keep a picture of the dungeon in my head as I play it for the first time. When I say "complexity", I mean how much the player needs to passively keep in their head to avoid being totally lost and confused. In real life, navigating a one way street isn't very complex if you know where you need to go on the street. Navigating, say, Manhattan, is a tad more difficult - you need to maintain your bearings, for one, as well as be aware of the convention of increasing street and avenue numbers. In games, a dungeon can be very large in scale, but not have a "complex" structure, if it's one linear romp (note that doesn't necessarily make a BAD dungeon, it could be action packed, etc...). Or, a slightly smaller dungeon could be very complex if it has intertwining paths that are sometimes one-way depending on the dungeon state.
Scale and structure build off of one another. Most of these words don't have super strict meaning, and there really aren't rules so much as guidelines that strive to help create a sane experience for the player, but hopefully this will give you some things to think about if you want to design a level like this in a some Zelda-like of yours (or maybe it helps in other sorts of level designs!)
welcome to the 2nd edition of Anodyne status updates, brought to you by me.
Today, we discuss a few things. The overall structure of Intra, gameplay-wise, a short discussion on health, and then a blurb on Dungeon design with respect to zelda-likes.
Overall Structure of Intra, i.e., ‘what the hell is Anodyne?’
For the marketing pitch:
“Anodyne is a top-down, 2D adventure game through a boy’s mind, with a focus on exploration of surreal landscapes and dungeons”.
Cutting the bullshit attempt at summarizing a game in a couple of characters, Intra has:
Zelda-like dungeon exploration – grid of rooms with their own separate challenges, but also an overlying challenge and structure to the dungeon.
Focus on fewer-items-do-more – one item allows you to interact with most entities in the game, the other two are for aiding movement, and one other is…a secret! To aid combat, there are a few (like, 4) passive effects you can equip one-at-a-time that change combat in a small way.
Interaction and immersion through exploration outside of those dungeons – beaches, quiet fields, etc – via interacting with environmental objects, exploring the areas, talking briefly to NPCs, you get a gist of the world but still leaving room for some thinking on your part. Think, “Yume Nikki” in terms of sometimes-surreal, sometimes-realistic areas, but with some added guidance.
Aesthetics are definitely tied to gameplay, so Jon (the artist) and I are trying to create art/music/gameplay for each area that go “well” together, and in a sense tie to the overarching “story”. The game is set in a kid’s mind. I’ll leave that…at that!
It’s not intended that everyone will “get” the story, that’s definitely not necessary. If people like, they can interpret the NPCs and whatnot, play through and get they want out of it. For the more casual, boom you can just kind of beat the dungeons, be amused by the areas, and get to the “ending”. I hope opening up areas will be a reward in itself, to “see what’s on the other side”. Admittedly, that idea is a little bit blatently game-like, but hopefully that will be overlooked. It’s also not as bad for me, as it makes sense with the story.
There’s not a huge focus on dialogue. We don’t want to stuff the story down people’s throats. As a result, NPCs only comment on their situation, their context…rather than ask you questions and so forth.
That’s the run down.
Health was a pretty annoying issue through the initial design of Intra. Keep it, or don’t? Zelda games are plagued by what feels like “oh, another unnecessary heart container”. When you DO die, you usually get sent back a fair (and frustrating) amount, forced to repeat a set of boring trials again. Pre-pillar-breaking-Eagle’s-Tower, I’m looking at you.
I tried thinking of ways to remove health, asked for help – but couldn’t find anything that I thought I would be able to make work. So, health still stays. But I’m keeping in mind the frustration inherent with dying all the time, so hopefully that avoids some of the problems…
As a plus, health adds a sense of resource management to dungeons. Which is a good thing. I just don’t want people getting too frustrated after repeated deaths.
my goal is to introduce a base set of elements of the dungeon. Some are specific to that dungeon since they’re all themed around something, some are more generic. There’s one item, the broom, the player uses for the majority of interactions. As a base one, he can use it to move dust around and block things. Or, push enemies…or kill enemies! And so forth. This lets the player focus more on just experiencing the dungeon, rather than having to think “Oh, right, now I have to equip my dust broom, not my attacking broom…” and so forth.
I’ll usually introduce one element at a time. An element being an enemy, or some interactive object (like dust). I try to make it blaringly obvious that you have to interact with this thing to proceed – for example, when trying to show that dust blocks lasers, for the first few times that idea is used, I have two lasers, one shooting into the dust, one not – hopefully the player notices what happens when lasers hit dust! If they try to walk through the lasers they’ll die, and they only have one item to play with, so it’s likely they’ll attack the dust, notice “Holy shit, it poofed!” , attack again and see that they can move it.
And so forth. Slowly I then couple elements together so I can increase the complexity of rooms
A cool thing Zelda games do is hinting at future areas – showing out-of-reach items. This helps give a sense of “Conquering the dungeon”, and proceeding towards a goal. I try to do that either visually or with progress that happens through the dungeon.
A helpful technique
I forgot where I first saw this, but something that has helped me to brainstorm room ideas is to make a matrix, where the rows are elements of the dungeon, and columns are the rooms themselves. As a stupidly basic example
Room 1 Room 2 Room 3
Bat - X ?
Slime X – ?
Say I have two rooms. One has a slime, the other has a bat. Great! Combat! But now You’re out of ideas. “What the heck do I put in room 3?” Well, look at your matrix! You’ve never combined a bat and slime. So brainstorm a bit, and you’ve got a room that seems fresh.
It works pretty well, actually, and I’m glad I stumbled upon that technique.
i'm seagaia (sean), except when the seagaia sea resort has taken the name first like in the case of twitter (my handle is @seagaia2 meh)
i don't recall where the name came from. well, my sister apparently does, and it had something to do with golden sun (what a great little jrpg, by the way. shame the ds one wasn't the most awesome). it's like, water and earth. that was what I considered "deep" when I was 9.
music has sort of been with me forever. my family to a degree all did music stuff at some point. i took piano lessons for a year, and then kinda played violin in the school orchestra for 8-9 years. throughout that time i would arrange little video game songs using that gimped finale notepad thing, and mess around with whatever (i liiked to collect midi files at some point). i finally got around to actually writing stuff in early 2011, so i'm working at getting better at that as well. i like attempting to play drums and guitar as well although i wouldnt place my skill at those very high (i can like, keep a basic beat, and read tabs and whatever)
I didn't really start making full games until about late last summer when I started messing around with flixel. Nothing really significant came from it, until I did ludum dare 23. or 24. or 22? I don't know. the one in december 2011. I made this terrible awful flash game for it, enslaving davement. Over the next few months that evolved into a full platforming game, inspiration dave , which was released in like april or early may but mostly finished by the end of march (sponsorship was tediously long) . it's a pretty vanilla platformer. about an hour long. if you're interested you can play it on Newgrounds. anyways in between i had made a bunch of tiny one-off things - http://seancom.nfshost.com/games.html
my current project is a game called "Anodyne".it's a top-down exploration game through a kid's dream-world, with a focus on zelda-like-dungeon crawls and more pure exploration/interaction with the environment. it'll be on flash player. - there's a devlog on TIGSource , and you can even play a short demo. (also i write stuff on it at a wordpress. seagaia.wordpress.com )
I guess i'll leave you all with this picture from Intra.