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.
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).
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.
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.
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?
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)