Indierover: Indie game development and more

The monkeys are reading
crazy free box

Game characters of CO

July 23rd, 2007

Long time without posting… sorry! But I have good news: I will be full time for two months in order to finish the game. So the people of Devilish Games, Over and me will be working hard in order to finish this project and take part in the “Art Futura” contest.

I let you with a great drawing of Devilish Art, the game characters.



Iris Green

April 24th, 2007

I know, I know, I have lot of stuff of my game and I’m keeping it only for me… that’s not fair. Come on, let’s release one of the 11 characters of the game. With that you will have a clue about what’s the game about.

Iris Green (The Pacifist Green Peace Lover): She is a very extremist activist, and never hesitate at claiming about the rights of all kind of protected species, the reduction of pollution and the great danger that human beings impose upon Mother Earth. She is a vegetarian, she only has 100% natural products. She rarely has a shower, to save water. Makes her own soap and recycles everything, including her neighbours rubbish. She shares her flat with 6 hamsters, 2 dogs, 3 cats and a goose. The problem is the lack of a garden at home, so it has a very characteristic smell…

- Favorite items: juice, salad, water.
- ? Secret
- ? Secret
- ? Secret
- ? Secret

. . .

I’m not sure if it is properly written in English. Will you help me to correct the errors please?
Do you like the character?



The tedious part of game development

April 17th, 2007

To make a game it’s great, lot of stuff mixed: graphic art, music, fx, and story… Most of the times it’s really funny to produce it, but sometimes… there are some parts that are really tedious!

Now I have to fix 600 sprites to put a better shadow and resize them… and photoshop batch will help me but they are in lot of different folders so it will take time, and I will have to go one by one… and to verify if all the sequences are correct.

Boring!

But after doing that… more funny stuff again developing new backgrounds!



First background of my game project

April 16th, 2007

Wow! New stuff for the game!

I want all you to see something, just a little thing of my game “CO”. This is just the first background where the player will start the game. Of course in all this area inside the building that it’s now free there will be all the objects that the main character can play with. And I promise you that there are lot of objects. I know that this area of the left, where the palms are, seems to be really big, but this is because some of the logic of the game happens also in that area.

Both the water and the palms are animated and I tried to add quite a lot of small details to to the background, I hope you like it!

The area is just an old and dirty building near the sea.

The game play and the story of the game are still “top secret” :) And this is not the only background we have already finished.

And there are some news! All the animations of the characters and objects of the game are already finished (well done Devilish Art!), and now we just have to finish the backgrounds and some other stuff like the menus.

The programming part it’s going slowly but never stop.

When is the game going to be finished? Good question! I hope in less that 3 months. Fiu! How difficult is to finish a game! :)

So… do you like the background?



Nintendo haven’t bought my secret game project

April 2nd, 2007

Happy Fool’s Dayto everybody!

Of course the post of yesterday, 1th April, was a joke! Nintendo isn’t interested in any of my projects (may be in the future? :) )

But not everything that I said was a joke…

I’m making a project, together with Over and DevilishArt (Antonio Pastor & David Ferriz). We have been working hard from more than a year. The project it’s going slowly, but never stop. I prefer not to show you anything yet, only small sprites, but I promise to write something about it really soon… and maybe to show you some graphic stuff.

I can only tell you that it will be a shareware game for game portals like Big Fish Games, and it will be really addictive!

And yes… the characters I showed you were from the game!

Do you want to know more about it? Any questions? :)

CO


Nintendo have bought my secret game project

April 1st, 2007

Yes! I can believe this is happening but it is! Nintendo Spain have bought the game that Over and me have been working together with the talented artist Zwitter.

It will be distributed for DS in all the markets really soon.

I’m sorry I can not talk more about this because it is… top secret!

What about a little image about the main characters?

CO

PS: Happy F’D!



Making games together!

March 31st, 2007

Something great is being cooked at the Tig Source forums.

Balding’s Quest game it’s a initiative from some crazy game designers, developers, programmers and other type of strange monkeys that are working together having fun making a small and already playable little project. I really love this kind of indie stuff, it’s better than a chocolate banana!

The best thing it’s that the project it’s open to everybody, so… you can contribute! Come on! Stop doing internet-zombie-reading and be yourself a game developer!

What do you think? Should we do the same here at Indie Rover? What about taking Killer Teddy Bear game like the base for starting a little cooperative project?

Tig Source



Killer Teddy Bear Tutorials

March 22nd, 2007

These tutorials are related to Killer Teddy Bear Game (open source game in java). You can read more about this game here:

Killer Teddy Bear will be open source
Killer Teddy Bear release

Tutorials

KTB Tutorial 1: 2d randomly generated terrain for Worms style game



KTB Tutorial 1: 2d randomly generated terrain for Worms style game

March 22nd, 2007

Important note: this tutorial is the part 1 related to Killer Teddy Bear Game (open source game in java). You can read the rest of the tutorials here.

You can also download the full game for playing online against other player. It is completely free and you can use it like a base for your own game. Don’t expect anything incredible, it’s more an experiment than a finished game:

* Download Killer Teddy Bear game (.jar file, you need the JVM)
* Download Killer Teddy Bear source code (Eclipse project)

0. Introduction

In this first tutorial I will explain how to generate 2d terrains like the one we are used to see in Worms games. The explanation will not be in any programming language but in a general way of tackling the problem. But you have here the source code of KTB game that uses these ideas. The classes that implements the terrain generator are TerrainGenerator.java and MapGenerator.java.

KTB Tutorial 1

1. Generating a random terrain in black and white (TerrainGenerator.java)

If you have played any Worms games you would probably have designed some worlds with the terrain editor. Basically, what this editor allow you is to draw a black and white 2d map. Later, in the game, the black areas will be considered as terrain and will be properly textured. Of course, these worlds can be textured with different layouts: forest, desert, snow, etc.

Furthermore, in order to share these worlds between players in a net, you only have to send the seed that generated the terrain. So, if the seed it’s an integer one map will be encoded in 4 bytes!

So the first step is to generate this black and white terrain (you can use alpha = 0 instead of white in order to be able to put a sky layout in the background), but of course, it has to be generated randomly. There are thousands of algorithms for doing this, for sure lot of theme will be faster than the one I will propose here, you are free for trying the one that would fulfill your needs.

The first thing I wanted was to generate some mountains, so I called my friend Google and we found together this approach to a terrain generator solution in robot frog.

Terrain Generator

The algorithm was, clear, well explained and “render independent”, so I quickly decided to use it. Basically it generates a matrix of vertex as big as you need. It is up to you what will you do with these vertex’s than “describes” the mountains. So, the generator is not linked to any render.

The first fix I needed to implement, after easily moving the code from c++ to java, was to change it from 3d to a 2d space. That was an easy task because in fact I didn’t touch the code. I just generated a 640* 640 matrix terrain (640 = width in pixels of my black mountains) and I basically got a “mountain line vertex’s” from (0, 320) to (640, 320). 1D noise function should be faster than this, I mean, to calculate only one line of mountains, you can experiment with the code as you wish trying other procedures for generating these mountains.

Terrain Generator

Later I drew vertical columns of one pixel width using these vertex heights. Et voila!

Terrain Generator

Of course, having only mountains it’s a bit sad, so I implemented a function that draws groups of ovals of random radius in different positions of the screen. This, together with the base mountains, generated a nice result.

Terrain Generator


2. Texturing the black and white generated terrain (MapGenerator.java)

This was my favourite part of the implementation. I remember that it take me only 3 hours to have a rough approximation and it was a great pleasure to see that the result was really near to the one used in Worms game.

The first thing you need are three textures for texturing. The first one will be the base texture, the second will texture the upper areas and the last one the lower areas. Changing these textures the whole map will look different. I used grass, sand and stone.



Applying base texture

This was the easier part. You just have to check all the black pixels in the map image and to put on each of them the appropriate pixel from the base texture. Take care of starting again from the beginning of the base texture if you arrive to the end.

Applying upper and lower textures

And this was a bit tricky… but funny!

The algorithm for upper and lower texturing is the same. Basically, once you find an upper edge, you will draw a column of grass pixels in down direction, and you will do the same for the sand but in opposite direction. But there is an important thing can not forget: the height of that column will be in most of the cases the height of the grass texture… but not always! If you take a close look at the textured images, in the floating islands the grass is very shallow along the edges, producing a curve as it progresses towards the center. This is because the height of the grass column is getting lower and lower in these areas.

These are the steps you have to follow (in this case for the upper texture, but the procedure for the lower texture is the same):

* In a nested loop
* For each pixel in the map check if the above pixel is white (so it’s an upper edge pixel)
* Go down from this position increasing a counter until you reach a white pixel (lower edge)
* If this valour is bigger than the height of a column in the grass texture, we can directly draw it. If not, we can get the height of the grass column we have to draw dividing this valour by 1.4 (I tried 2, but this valour gave me better results).

Please check the source code, there are additional comments that should be useful.

And this is the final result, with a background and some funny killer teddy bears.

And now… what about having destructible terrain?

Well, depending of what you want to do, this can be really easy. For example, you can just draw an oval with alpha = 0 and erase this area of the terrain directly from the textured map. The trick for having better results is to have a second background terrain (with a different texture, for simulating some distance) and erase it with an oval of less radius.

In Killer Teddy Bear game, what I do it’s just to erase the terrain with that oval of alpha = 0. But you can implement new weapons that chomp the terrain in other way! Just user your imagination!

And soon… the second tutorial of the game: how to make an online game using java sockets! Tell me if you are interested in this tutorial writing some comments, please!




Killer Teddy Bear Release!

March 1st, 2007

Better late than never :)

Sorry for the delay but finally here it is my open-source-online-java-game “Killer Teddy Bear”, that you might have already read about in this post. You can play with it, see the sourcode and use it as you want. Maybe for some of you will be useful.

The game, is for playing online against other player (using java sockets TCP/IP). For playing, just create a game and give to your friend your IP, he only has to write it for connecting. Thats all!

I didn’t have so much time so the game dosen’t have all the things I was expecting to implement on it. For example it dosen’t have animations, and when you achive to hit your oponent you will see that your points increase but nothing else will happen (I should have implemented a “resetGame” function for creating a new game, but I let you this like exercise ;P). So, more than a finished game, is just the starting point for learning jave game programming for online games.

I hope to have some time for explaining you how I developed the terrain generator and the network. Tell me if you are interested in such these things or others!

Hope you like it!

Download Killer Teddy Bear game
Download Killer Teddy Bear source code (Eclipse project)

Killer Teddy Bear


« Previous Entries