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.