Kodama – A quick update

Hey everyone.

Thought I’d give a little information on how Kodama is going at the moment.

The concept art is all complete, I’ve since touched up one of the concepts myself as Dani’s idea of the stage was a little more ‘volcano like’ than my own.
The stage is here, its Yomi, or hell/Jigoku.. Yomi or 黄泉 or 黄泉の国 (for those of you who wish to know the kanji) Is the Japanese word for whats best described as ‘land of the dead/world of darkness’. Here’s a small Wikipedia entry on it.

According to Shinto mythology as related in Kojiki, this is where the dead go to dwell and apparently rot indefinitely. Once one has eaten at the hearth of Yomi it is impossible to return to the land of the living. Yomi is comparable to Hades or hell and is most commonly known for Izanami‘s retreat to that place after her death. Izanagi followed her there and upon his return he washed himself, creating Amaterasu, Susanoo, and Tsukuyomi-no-Mikoto in the process.

 

And here’s Dani’s (and my edits) take on the place (It’s not as good as the ones Dani did of course).Other recent Kodama improvements have been on the more technical side, I’ve been designing a new editor for Abel to create. So I’m creating the layout and tools for it and he’s actually making it all work so its not a bunch of pretty pictures. I use Photoshop a LOT so I’ve become quite attached to the interface, so I’ve been designing the new which we will call Mori 2.0, to look slightly closer to Photoshop to accommodate myself and Dani’s photoshop experience.

I’ve no snapshots of Mori 2.0 just yet,, so instead I’ll show a shot of the old editor that I’m currently using. The background, sun and fog as of yet don’t animate, neither do the reeds, the ground dirt is temporary, it does NOT belong to us, I’m not entirely sure where I found it, but I believe it was on a forum somewhere and I’ve been using it whilst I test things because I like it.
Dani is still working on some floor tiles for this area to fit the background and be similar to the concept art.

Sorry for blurring some of the text out, but we’ve named them with some really obvious names that would spoil the surprise of the game before we release the trailer.

*Update*
I thought I’d put this in here to show this same area in polygon mode in the editor, i cropped it down so its easier to see though.

Kodama is still going strong, in fact we’re hoping to showcase the came in a gameshow sometime soon, I’ll bring more news about that closer to the due date.

It’s now almost midnight and I have to be up for my dayjob in 6 hours and 17 minutes, so goodnight and please comment if you have any questions or opinions.

Thanks
Dan

Yet another engine change

As some of you may know, Kodama initially began as a desktop flash game. Later, it evolved onto a native game using haXe, this way we’d have more power. Then, we decided haXe was too limiting so we moved onto XNA.

Now we’ve decided XNA is… a bit too general purpose. Let me expand myself. What I mean is, XNA just gives you the basic stuff you need to make your game: rendering functions and the like. But then you need to build state management, sprite management, collision management (unless you use a physics engine like we do), etc.

And I built that. But I felt it was too primitive and that it could be improved performance-wise and usage-wise. That’s why I decided to stop reinventing the wheel and look for something which already implements all this stuff.

Kodama hasn’t moved from XNA. It still is XNA. But now we use an engine which works on top of XNA and makes things easier for me. It’s like what FlashPunk does on top of AS3. I’m talking about FlatRedBall. So now we’re going to use FlatRedBall, which, despite of the name, can do very powerful things. I mean, have you seen A.R.E.S.?

What does this mean? To Kodama as a game, this means we’ll get more performance and eye-candy: awesome particles, some post-process effects, and 3D like camera with parallax, zooming and rotating (although I’m not sure we’ll use the rotating feature :P ). To Kodama as a project, this means I can do stuff more comfortably from now on, which will mean increased productivity from me (honestly, my productivity in Kodama and in everything as well left a lot to desire). Yay! I’m excited.

Hopefully that’s the final change. If everything goes as expected, Kodama should be released using the FlatRedBall engine. We’re still using Farseer as the physics engine though.

Can’t wait to show you more mechanics and technical stuff from Kodama apart than constant engine things!

May the odds be ever in your favor!

Kodama has more progress

Hey everyone.

I’ll start of this post with my usual ‘I really need to post more, sorry about that’ opening. ^_____^

So, Kodama news:

Kodama has recently acquired a new artist, something that took a while & quite a few difficult choices. As some of you may know, we had an artist, we lost the artist, we got a new artist, the new artist had no time, and now we’re on our third artist who resides in London and I’m actually able to meet with and discuss things as they happen. This is pretty refreshing as the previous artist was abroad and it means I’m a little ‘cautious’ when it comes to any sort of monetary discussions due to foreign taxes, sending money etc etc.

Less artistic but just as great news:

We moved Kodama from HaXe to XNA 2 days ago, the reason for this was that whilst we were using HaXe, it didn’t quite ‘gel’ with Abel, and its disheartening if you aren’t enjoying your coding at all. This wasn’t an issue until we hit an axis problem, unfortunately Haxe is limited  to a single value for scaling instead of having separate X & Y scaling and this was a big issue for us. So we moved, it only took us a day in total and everything’s working fine again.

It’s not yet 100% as you can see in the screenshot below, but by the end of today it’ll be perfect, with new stuff.

The screenshot using a combination of older and newer graphics, this doesn’t represent the final game graphics however (especially as the design for Kodama himself has changed).

For Physics we’re using the Farseer Physics Engine and everything else is purely Kodama custom code. Now we have a new artist (I feel like I’ve said this before) we’re moving along, we got a little disheartened without anything pretty to look at, we’ve been on this project a long time and want to make it the best it is, which is taking a little longer than we had anticipated.

I may also have another small surprise, I’ll let you all know if it works out.

Dan

Code Evolution

In the last post, Dan talked about the evolution of the concept and art of the game. He left the technical details to me, the evolution of the code of the game, from the prototype to the current build. How we’ve had to change the editor over and over again as we decided which technique was better to build the stages of the game.

First, the game was a little pixelart platformer, maybe something like the Orton and The Princess game by my friend Chman, but with different graphics and the special secret mechanics of Kodama.

The prototype was built using FlashPunk (as some clever readers may have noticed because of the flashPunk debug overlay), and it consisted of a simple tile-based platformer game, with the water you can see there. The water was a bit special, though, I made it dynamic with a celular-automata technique, but we decided to scrap this feature later.

The editor of this version was accessible by the simple press of the key. In the editor, you could place the tiles and objects like the player with the mouse, and press the key again to test the level instantly.

We had a talk later on about the graphics route of the game. At this point, Kodama was just a prototype name we gave to the game, so we could refer to it internally, but this same name was what made us decide to go with a japanese style on the game. We also decided to have the hand-crafted, high-res graphics to make gorgeous stages.

This was what Dan made, with a pixelarty style:

But Dan was not happy with his work. We decided we wanted something more. So he hired Chris…

So the next route we took, was that the artist would draw ALL the stage in a graphics edition program (he used photoshop). He drew some test stages we liked really much. For the collisions, I built a pixelmask system combined with the platformer, so Kodama could go up and down the slopes.

The editor was completely redone. Now, it asked for the images and pixelmask of the level. Then, you could also place water and other objects on the editor directly, in a tile-based fashion. We also placed a grid-system (with automatic pixelmask detection so we hadn’t to place EVERY solid place) for special systems of the game, like rays with mirror reflections.

But then, we decided that wasn’t what we wanted. This made completely impossible to tweak the level, as Chris would have had to redraw the whole stage. It was also hard to prototype levels and design new ideas. We had to draw the levels on paper and then give them to the artist so he could draw them. Then we had to import them to the game, build the level, and see if we liked. If we didn’t, we had to ask the artist for a complete redraw. What a waste of time. Moreover, it would have encouraged the laziness of not tweaking little bits to make the stage perfect, as a lot of work was required to move a platform 20 pixels.

So, after a bit of deliberation, we took another route. Have you seen Braid or Aquaria editor? How they work is, the person who’s designing the levels has got a huge collection of different stamps (little images), which can be placed, scaled, rotated and tinted. Thus, allowing to create gorgeous looking levels with a lot of possible layouts. We decided to go on the same route.

I spent a few days to get an editor ready which would allow us exactly that. It has layer management, stamps, objects, polygons for the collisions (more on that later), particles, can test the game with the click of a button, etc. Now it’s really cool and fun to design a level.

I also redid completely the engine of the game. I scrapped FlashPunk and got ND2D, which is a 2D engine which uses the new GPU features from FlashPlayer 11. I also incorpored Nape for the physics of the game, so the game featured real physics now, which allows us a lot more freedom on designing the puzzles of the stages. For the collision masks of the level, we use polygons now, that’s why the editor needed them.

We also got a level designer on our team, Javier, who’s doing all the stages. He plans the stages with some pictures, builds them with the editor… then we see if they work fine. After that, he works hand in hand with the artist so there’s special stamps crafted for that level to look even more pretty. Then it’s time for particles, eye-candy, etc. and the level is done. After that, we play the level over and over and over and over to make sure everything’s perfect, tweaking every little bit of it.

So that’s the whole evolution of Kodama code. I hope you liked it :D

Clarifications about the game platform

Hello,

As the programmer, I would like to clarify a few things about the platform Kodama will run on, as well as some technical details for the interested.

First of all, we’re prototyping the whole game in an AS3 engine. It uses GPU accelerated graphics thanks to the new Stage3D API from FlashPlayer 11, so the game can handle the enormous stages and sprites it needs.

The problem is, we are not sure if flash will be able to handle the game AND all the fancy effects, eye-candy and all those things which make the game more pretty, but consume a lot of computer power. Therefore, if we see the game is too slow on normal computers, we will switch to another platform.

Let’s talk about what systems will the game run on now. We are firstly aiming for a computer release. PC + Mac + Linux is the ideal plan. Hopefully we can get to the three. Flash would allow us to do exactly that, but as I explained before, we’re not sure if flash is going to be enough. If it isn’t, we may use XNA or something else. XNA doesn’t allow mac nor linux, so we would have to investigate on ways to port it. Maybe we’ll even hire someone else to do it if I don’t feel capable.

EDIT: We’ve been informed by someone that we can also use HAXE and export to C++/OpenGL, so we could have multiplatform with that. Worth a look :D

So basically, we’re aiming for PC + Max + Linux, and the game is currently being prototyped in flash. If flash can handle the final version, great. If it can’t, we will port it, which is easier for me than coding it directly on a foreign platform, and we’ll try our best to make it available to the three platforms.

We will also try to do a possible web demo for marketing purposes, more or less like VVVVVV did, but we are not sure about that. Depends on the necessity. But that will definitely be in flash, so that we’re prototyping the game in flash will greatly help on that.

On top of that, as Dan said on the previous post, we will look into an iOs release (probably iPad only, as the game might be bad if it’s too small), and maybe also an Android tablet release but the first one is much more probable. We’re not sure if this will be on the release day or not, but hopefully some chinese hackers don’t steal our game for iOs if we do it later! :P

To sum up:

  • Game will be available for PC, Mac and Linux.
  • Currently being developed and prototyped in Flash. We will port if Flash isn’t powerful enough.
  • We MAY do a web demo for marketing purposes.
  • We MAY port the game to iOs (probably only iPad) – we could even port to Android tablets but that’s unlikely.

Hopefully this helped on clarificating the game platform.

Abel Toy, the code

Hello :D

I am Abel Toy, also known around the Internet as Rolpege, and I’m in charge of writing the code that brings Kodama to life.

I’m also the one who’s coding Mori, the Kodama editor, from scratch in AIR, so the level designer and the artist can work together to create some wonderful, beautiful, gorgeous, fun and entertaining levels.

Moreover, I’m also kinda the founder of the project together with Dan, the manager and game designer, as we both built an initial platformer prototype and developed the idea into this. We both were in the very initial team, and then we looked for the other members.

So, about myself… I’ve been programming for some years now. I mainly do games, and I am very experienced in AS3, which is what we’re using for Kodama at the moment (mainly as an extensive prototype. If Flash can’t handle it, we’ll port the code, which is a very easy task, to a more powerful platform). I also know other languages though.

Here I am, that’s the introduction! I will be posting here about the editor or maybe I’ll talk about the technical aspects of the game engine, the physics and everything…

See you around!