11 years ago

Level Design is Important! (Long)


The recent release of Argh taught me a lot about everything from movement mechanics to UI to cognitive feedback. One of the biggest things that I’m learning as a game developer though is that level design is real freakin important, like really important.

As many of you are aware, Argh is mostly an ironing process of the movement. For the most part I succeeded. The horizontal movement feels tight and responsive. HOWEVER, the jumping doesn’t. It floats, a lot. Honestly I’m surprised I never changed it, and never attempted to change it until now. Problem is, my level design is absolute trash and won’t let me do what I want to do.

Many of the gaps in Argh are literally a couple pixels of wiggle room. I’m not kidding; one of the jumps only works because there’s a clipping bug (coughfeaturecough) in the game that lets you phase through red blocks. In general, much of the game relies on these really tight windows to help illustrate how tight the mechanics are. So when you tweak those mechanics even slightly, everything goes out the window.

I wanted to make the jumping feel more responsive, feel faster, so naturally I made the whole process happen faster. Hit up, you get to the top faster, and come back down faster. Problem is though is changing that simple thing means that 90% of the jumps don’t work anymore even for the first level. The tutorial. COME ON REALLY? Since the jump finishes faster, the max distance you can run-jump is shorter. And since you fly upwards faster, it means that there has to be a wider berth given above the player when run-jumping (goodbye, level 2!)

I could still technically do it, but to accomplish it I would have to remake both the levels, give them the same level of challenge with the new system, and basically nix half of the second level, where the wrapping mechanic is learned. No? No thank you. I might as well just make Eugh, and finish the trilogy. Honestly I might do that anyway.

If you aren’t happy with the practicality viewpoint, consider that reducing the jump time also increases the speed of play. In Argh at the moment, the floaty jumping basically gives players long windows of little action where they can either plan out what to do next or regroup from a previous action. The latter is not really illustrated in Argh currently, but the former definitely exists. If I decrease this window, a lot of thought that happens in that window gets scrunched up, and the player has to process more in a shorter amount of time.

So I can’t (won’t) do that. Okay. One of the biggest offenders for Argh aside from jumping was that respawning would cause repeated deaths because the keys are still held down. There are a bunch of ways I could fix this; I could delay creation, ignore keypress for a window, give negative movement on spawn, all of which effectively solve the problem, but invariably create a new problem: we’re delaying respawning and thus delaying play. Well that’s an awful idea for a game all about being as fast as possible, right? Deaths right now don’t really add much to the time nor do they remove from flow at all, as many players helpfully pointed out.

Thankfully, my shit level design comes in again! This time in the form of having obstacles too fucking close to the spawn points. Like really, all my years playing Call of Duty should have told me that you don’t want danger around spawn zones. It leaves players feeling powerless and salty. No salt allowed here! So we solve this by changing where spawns are and where danger is so that players can still have that movement error on start, but don’t get punished for it.

The next big hitter is that jumping has too short of a window in some places. I had one person start suggesting to me that I implement an input queue system to basically allow the player to fudge the jump timing some, and I actually went with it. Wow was that a bad idea! If you’re reading this, person that suggested this to me, don’t be offended. In other situations it is very valid. Here? Complete and utter overkill. Why? Because again, the problem comes from you guessed it: my shit level design! Yay!

The section in question I’m sure all of you are familiar with if you reached it. You basically have to hit jump the moment you touch the wall in order to get past it. This is obviously a terrible idea as a designer, especially for the second freaking level in the game. What?! What the queue option and the revamped design address are the same thing: that section shouldn’t be that hard. One does it through rearranging some squares, while the other involves implementing a whole new system. I think you know which one to pick.

Then there’s the dangerous blocks. The clipping bug, the bug where you can “walk” on dangerous blocks, all are terrible, and all would require me doing stupid things in code that I don’t want to do. Instead, I can just make levels where the clipping can’t happen, and where walking on a dangerous block can’t happen. It’s so much simpler!

Basically, Level Design can be a pain in the ass. It can make minor details of the engine/code turn into horrible problems. It can also mask horrible problems, or even let you get things out the door much faster and with much less finicky tweaking! Pay attention to Level Design, because it’s a pretty powerful tool in your kit.



0 comments

Loading...

Next up

Back in my art school days I used to ride the 710 COPSA line from Parque Del Plata to Montevideo almost everyday. This is the Marcopolo Viaggio G4 Mercedes Benz model from the late 80s, one of the older bus models that was running on the line.

Shuiro Haname. #Commission

Commission for @ShuHaname

Spaaaace~

These are background sprites I've created for a game I'm working on at school ^w^ Click on the post to see how the sprites connect. You won't regret it! (personally, I think it's pretty heheh)

Drawn in Piskel using my mouse. Whaddya think?

brung back my old oc plus a new one

...they don`t have names yet tho

Alone Together....

Made my first ever animation.

Who's is this little cutey👸 here? Thanks🙏 for a gorgeous fanart @WheNa! Feel free to share your arts, screenshots, or videos with #playzelter or #zelter hashtags! #pixelart #animating #unity3d #animated #indiegames #unrealengine #animate #conceptart

I did this on my 3DS ^^ #Kirby

Our menu, gathered a huge feedback and positive comments among foreign audience, what you say? Game Steam: https://store.steampowered.com/app/1543090/LiBER/

Coming Soon...