Testing the island generator

Finished implementing the island generator, made some assets and built a testing module to view the results. Here are results for four different seeds composed from actual screenshots:

By the way, the island in the middle is the island generated in the last blog post.

Next step is to generate neighboured island and connect them to create a game world.

Generating an Island

Not much to show of yet but there is some progress on the procedural generation of the game world. So far you can put in a seed and with that size as well as buildings, npcs and decorations are generated with their individual type and position on the island. For testing purposes I write some information into the console which looks like this:

Island size: 12
Number of Buildings: 7
Number of NPCs: 1
Number of decorations: 2
Deco type 1 position 1
Building type 3 position 2
Building type 4 position 3
Deco type 3 position 4
Building type 3 position 5
Building type 3 position 6
Building type 2 position 7
Building type 2 position 8
Building type 1 position 9
Npc type 0 position 10

Just noticed I didn’t had two blocks wide buildings in my mind. Looks like I have to put in some additional work for that. Also the randomly generated look of the island’s bottomside is not yet implemented.

Experimental Gameplay Project – INFINITE WORLD

Today I start with my one week development cycle for the experimental gameplay project February challenge. The theme is “Infinite World” and I have an idea for an 1.5D exploration game. Here is a quick mockup of the main gameplay screen:

The game world will be randomly generated, persistent and practically infinite in two directions (left/right). Floating islands make the explorable content with different buildings and NPCs. Most probably I will make a fixed seed for the challenge version so every player gets the same world with optional reseeding.

For the record: My personal deadline will be 21st of February at 22:00 CET (UTC+1).

Progress with the editor user interface

Still not fuctional but the look of the editor’s UI is shaping up:

So what do we have here:

  • Create new level
  • Load level
  • Save level
  • Place kittens start area
  • Place obstacle
  • Place goal area
  • Level settings
  • Delete object
  • Place wall

I will try to keep this editor convenient to use. For example, if one wants to place an obstacle, the mousewheel switches through the variants. Also the unplaced objects is shown at the mouse position to have full control over the placement.

Bitmapfont is there, ideas are shaping up

Below you can see a screenshot in which I’ve beaten the test level (which is not that easy) by rescuing 52 kittens. It is necessary to save at least 50 and you start with 100. So that was really close. Somehow the scale2x algorithm of pygame doesn’t work as intended. Looks like I have to do it differently, maybe even scale the bitmap font beforehand.

For the level design a new idea is shaping up. For a campaign mode I would like to connect separate levels with entry/exit-areas to have some Metroid-like world of single screens connected. With that approach I can place “powerups” for changing swarm density, refresh time of bait, speed, etc to make later parts of the world solvable.

Nevertheless, next step for me is to make a level editor. Planning how it will work at the moment.

Creating a Palette

Actually I’m not that happy with the look of my game. As this is interferring with my motivation I invested some time thinking about the graphical presentation. Basic challenge was that the choice of the colour palette isn’t as consistent as I wanted it to be. So I remembered a nice tool I found once to help making up a colour scheme. I created a nice one with three analogic and one accent colour and made a quick mockup how the colours could be used in the game. Here is what this looked like:

To my surprise I really dig the abstract look of the rectangles in this proof of concept and I’m thinking about using exactly that for my game with kittens as sprites like before. What do you think?

Animations, Colours, Scale

Just a quick update cause I’m quite tired:

  • Figured out that 2x scale wasn’t active until today. Everything looks a lot bigger now and I had to resize the screen to keep the game playable.
  • Animation is implemented but really difficult to see in the buzzing kittenswarm.
  • Still trying to find a nice background colour.
  • Next to do is implement some status information (kittens alive, time left until next fish is placable)

Screenshot:

Good night.

Animated Kittens

I’ve made a task list with subtasks for the further development of Kittenswarm. First task to do is the animation stuff. For that I’ve created a simple animation of the kitten sprite and two colour variations of the kittens:

 

 

 

These are scaled 4x. The original in-game sprite will be 16×16 pixels. Quite small, so I don’t need that precise animation and am quite happy with these. So have a look at my task list:

  • Animations
    • Animated sprite (done)
    • Different colours (done)
    • Implement loading spritesheets
    • Implement animation
    • Implement facing of kittens
    • Implement random coloured kittens

Still some subtasks to do to finish the animations task.

Ruleofindiegames – Compilation

@dogbomb started this on twitter (#ruleofindiegames) and these rules are just true (with a wink) and important to save somewhere. So I decided to make this compilation. Will be updated in the future.

  1. you must talk about indiegames. (@dogbomb)
  2. you MUST talk about indiegames. Seriously (@dogbomb)
  3. The indie game takes as long as it needs (@elkoino)
  4. If you build it. They will come. Then they will build something similar.(@dogbomb)
  5. Everyone will try. But few will succeed (@elkoino)
  6. Keep going, just keep going (@elkoino)
  7. Making money isn’t a bad thing. (@dogbomb)
  8. Actually being able to eat and pay rent is usually seen as a positive. (@lefishy)
  9. It doesn’t HAVE to be on Steam/Desura/XBLIG/Etc to be successful… it does however, need YOU. (@dogbomb)
  10. Make games you want to play. There will be others like you. (@dogbomb)
  11. Make games not engines (@elcoino)
  12. You want this to be your job? Treat it like a job! Set times to work and stick to it. (@dogbomb)
  13. The best way to learn the skillset is to attend competitions and game jams. Do it (@elcoino)
  14. Don’t try to copy success stories, make your own (@elcoino)
  15. OBEY THE TENTH RULE!!! And don’t spend your day on tweeter, it helps =] (@jiem_)
  16. Do collaborate. There is always awesome people around who want to do awesome things (@elcoino)
  17. People WILL kick you in the teeth and scar your hard work. Keep smiling. Missing teeth and scars are cool. (@dogbomb)
  18. There is ALWAYS something to learn. Never close your eyes, your ears or your mind. (@dogbomb)
  19. Developing indie games is 90% hard work. Polish is the other 90% (@elcoino)
  20. Play less games for inspiration. Go outside. Visit art galleries. Watch movies. Talk to people. Seek original. (@dogbomb)
  21. Don’t be afraid of failure. A failed attempt is better than no attempt at all – and you will overcome it by learning. (@dogbomb)
  22. – missing –
  23. When looking for honest feedback on your game, look outside of your sycophantic friends and family circle. They suck. (@dogbomb)
  24. If you blame your tools then YOU are the tool. If your tools are bad: change tools, you tool! (@dogbomb)
  25. Yes, you ARE awesome and know everything there is to know about everything… but you’re still allowed to ask for help (@dogbomb)
  26. Go to global game jam if you can. Meet people, collaborate, make awesome games, learn a ton (@elcoino)

(Additional important rule: 0.  not to listen to gits trying to tell you what the rules are – @DarkAcreJack)

More most probably to come…

Devlog is open – Kittenswarm

My plan for the next weeks/month is to expand my Ludum Dare 22 warmup game “Kittenswarm”. My main competition entry was rated as quite innovative but not that fun to play, so I decided to do a post-compo version of the warmup game instead. Personally I see a lot more potential in the swarm guiding puzzle concept of this game. So here is what at least to add:

Guide the kittens to the goal by placing fish

  • Visuals like animation, nicer sprites
  • Some status information how many kittens are alive and how many need to survive a level
  • Multiple levels / level editor
  • Bitmap font
  • Sound

So with this blog I will post development updates and other gaming stuff, especially Indie related.