Hello, diehard Ludosity fans who spend most of your time walking about our offices asking for autographs. In this post I’ll explain the game’s direction and overall design. If you’ve played the original Ittle Dew, you may or may not be glad to hear that things will be a bit different this time around.
Ittle Dew 1: so many puzzles
The original game was centered on The Castle, and the three items you could purchase from Itan Carver in any order. To beat the game, you needed two of the three items, but most players obtained all three before facing the final boss. The overworld was more of an afterthought – to be honest, the entire game besides The Castle was an afterthought, being designed during the game’s production.
The focus on puzzles meant that designing the dungeons, in particular The Castle, took a really long time. Players could also get stuck on puzzles that were required for progress, and it wasn’t always obvious whether you could solve a particular puzzle with your current items or not – some players thought that getting the items in certain orders was impossible, since the shortcuts could be rather sneaky.
The combat was also not the focus of the game, with simple enemies and virtually no penalty for death.
Ittle Dew 2: opening it up
Ittle 2 takes place on an overworld divided into eight progressively harder areas, each of which holds a dungeon. The dungeons can be tackled in whatever order you find them, except for the final one. In case the player doesn’t want to explore the world themselves, completing a dungeon will reveal the location of the next recommended one on the overworld map.
The warp garden is a place located in the center of the overworld. Finding a warp on the overworld will link it to the warp garden, so backtracking is never much of an issue. Warps are located near dungeons and other important places.
There are four “active items”, mapped to four different buttons, so there’s no need to switch out your gear. The remaining equipment is passive, and can be inspected on the pause screen. Finding another copy of an item you already have will instead upgrade it, making it more powerful or granting it new abilities. Everything Ittle finds is immediately useful for either combat, exploration, or both. Additional copies of the items you’ll find in the dungeons can be also found in secret locations on the overworld, and some shortcuts in the dungeons require items from later dungeons.
Speaking of, Ittle 2 has a bigger focus on exploration and combat. The puzzles are still a big part of the game, and will still get pretty tough, but they won’t be in each and every room anymore.
Making the player feel fairly treated
Every secret on the overworld can be found using only the starting Stick, so you won’t be wandering past obvious metaphorical keyholes, having to remember their locations while looking for the metaphorical key. That’s not to say that finding the secrets will be easy – discovering how the world works is part of the game.
If the enemies beat you up, you’ll keep all your progress but wake up at the entrance to the current dungeon, or the latest warp you went through. You’ll be opening up shortcuts and mini-warps in the process though, and dungeons are designed to avoid dead-ends. Once you enter a dungeon, you can solve it with everything you already have or what is found inside.
There’s also a pause menu option to instantly return you to the start of the dungeon (or the latest warp) while refilling your health, since it’s essentially the same thing as intentionally walking into enemies to run out of health and respawn there. Beside each warp and dungeon entrance is also a gadget that refills your health to maximum, for the same reason.
While there are some humorous cutscenes, mostly involving the bosses, there are no “mini-cutscenes” interrupting the regular gameplay. If you find a chest, you simple whack it into debris in one swing and collect the contents while a small explanatory popup appears. Control is never taken from the player during this time, nor while solving puzzles or opening doors. You can also skip cutscenes or turn them off completely.
The most interesting details about how the game world works are written on secret signs in the dungeons. The signs are not that well hidden, but if you discover something like this by yourself, rather than being told about it in some sort of tutorial, you’ll be more likely to read and remember it.
You should have some sort of conclusion or closing comment here.
You’re probably right.
Hello, Ittle Dew main artist here. Let’s talk about the move to 3D for a bit.
There’s a lot of great celshaded games recently (Guilty Gear Xrd, Jojo All Star Battle to name a few) that look amazing.
Celshading has always intrigued me – one of my favorite games of all time is Jet Set Radio, one of the first celshaded games i believe, a game that still looks so good. So when we discusssed Ittle Dew 2 being made in 3D, I saw this as a really fun challenge. Ittle Dew had a very particular style, with heavy black outlines and a wobbly style of animation (that wobbly style was actually selected because it makes animating so much easier! hah). We had previously experimented with Ittles style in 3D, with a dungeon crawler idea, and it had looked pretty good. However, in that test I used a lot of “billboards”(flat “sprite” objects that always look at the camera, think of the barrels in DOOM or items in Minecraft), while Ittle 2 went on to be a lot more “real” 3D.
Picture of said dungeon crawler:
(The Card City Nights faces are just placeholder, since it’s just a little prototype)
The first thing we did was have one of our wizard programmers make something do we could have wobbly outlines even in 3D, since by now we felt that was a big part of the Ittle Dew style. But just like in Ittle Dew it will only be used on things that are alive or interactive, kinda. To make them stand out. Using it on everything all the time would probably be really annoying to look at.
Here’s the process of a recently created enemy, Safety Jenny, with wobbly outlines:
(Animation is work in progress)
The outlines on both characters and props are not automatically created by an outline shader or such.
I find that to get decent looking outlines you need to create them manually so you can tweak problematic areas by hand.
There’s not much more to say about the surroundings, but let’s look at a picture.
The most important thing is to not lose too much of Ittle Dew’s charm when moving to 3D, and I dare say it’s going fairly well.
Having a (mostly) fixed camera helps a lot here!
And that’s pretty much it for me. Not a lot of informative text, but a bunch of pictures at least!
Hello everyone! Today we will learn how to make lava, and also how to make water.
“But this is blasphemy!” you say. “Only gods may do such things.” While that is a fact, sometimes you have to take the good with the evil.
We start off examining the basic ingredients of molten lava: A greyscale noise and a gradient map. Something like this perhaps:
Now if we just applied that map to the noise we would get a nice boring static lava-like thing, which wouldn’t do at all. It needs to move. Also I don’t know if you’ve ever seen lava, but it’s thick like the slime of a slug and moves faster in the center of a stream than it does close to the edges. We can solve this problem by having the above noise move in a certain direction with a certain speed, and having a different noise texture move in the same direction with a different speed (and don’t cheat by using the same noise texture; you’ll get artifacts and then cry when they happen to overlap). We then blend these two textures based on how close to the center they are (preferably using another texture to determine blend the factor). Now we have a noise that moves at different rates, and this is what we want to apply the gradient map to. With a really simple blend texture, it will look a little something like this:
Making water is a bit more complicated deal, but it starts with two parts. A big old plane mesh with lots of subdivisions, for waves; and everything else that’s going to be affected by these waves. The waves are fairly straightforward; just move them up and down in a vertex program based on some sine function. However you will want to make sure whatever position-based arguments to pass are based on the world-position of the vertices, because we will have to recreate this function in the wave-affected objects later. For convenience, let’s say our wave function is
sin(P.x + t*2π)
where P is our vertex’ world position and t is the time offset of the waves. We apply this function to the vertices of the plane mesh and we obviously get waves moving in the x-direction only. That’s fine for now, but the advanced reader would want to do something about that.
Anyway, now that we have waves, we switch to the other objects. We want to create foam or something at the intersection with the wave mesh. To do this, we first use the same function to calculate the current wave height in their vertex programs, then use this to create a gradient from 1 at the wave height, to 0 at a certain height above the wave height. For extra fancy, apply a noise to this gradient, using the gradient value as a threshold. Maybe move the noise around for a more dynamic look.
Sadly we are not finished yet. It may look okay at this point, but we also want whatever it is to look a bit wet after the waves have rolled by, and also for this wetness to slowly creep down towards the water. We can’t simply use the wave function for this because that will make the wetness move in a sine wave, which looks terrible. We need a function that moves up with the wave function, but goes down linearly, until it goes up with the next wave, and so on. How to do that? Well it’s pretty simple, just make a sawtooth function with the same period as the wave function, offset it in height and phase so the top coincides with the top of the wave function and tweak the slope to your liking. Using the above wave function, our “wetness” function could look something like this:
1 – frac((P.x + t) – 0.25) * x
where x is the slope multiplier value.
Then just take the maximum of these two functions to get the current height of the wetness. Use the resulting value to shade the fragments below darker.
Go all that? You should now be able to make something like this:
The Earth is counting on you!! Good luck!
The music in Ittle Dew was generally positively received, but didn’t really stand out. We did have a pretty cool system for fading between different instrumentations of the same theme on the overworld, but that’s nothing new – I first remember hearing that in Diddy Kong Racing on the Nintendo 64.
Ittle Dew was Mattias’ first score – normally he’s on coding duties – but I think he did a very good job, especially with so little experience. For Card City Nights he really came into his own with a score much closer to his (and mine) tastes, and a strong theme that went through the entire game. All locations have a jazz song as base, and the combat in each zone is a hiphop remix of respective jazz song. This came out great and we got loads of praise for the CCN soundtrack. It’s actually selling a little bit on it’s own in iTunes and Spotify =)
So for Ittle Dew 2 we want to step it up again and do something new and fresh. And not just find a fresh genre, but to do music in a new way. Reconsider the use of music in a game at a more basic level.
This a first, very rough prototype of what we initially came up with. We simply put the musical elements on objects in the world, and let them play only as they enter the current view of the screen.
Steer with WASD. Start by going up, and then go left until you get to the blue area.
The squares represent different elements of a spooky forest; Trees, Frogs, Stars, Flowers and Plants. See the screenshot below for an idea of what it could look like ingame:
We didn’t spend more than a couple of hours on this prototype, but hopefully it’ll come out great in the actual game. As the different elements play they should probably animate a little. We’ll also try putting the music on enemies instead of level elements, or both. Lot’s of experimentation left to do!