My first attempt at a city sim


#1

Very low fi for all of the minimalists

I call it “Inner Demons: The 5-bit City Builder”

I based this game around the idea that people are a lot like grapes. If you have a good strong vine, plenty of water and light, good soil, you’ll get a bunch of sour grapes. But if you make them struggle a bit, you get a few really delicious grapes.

The simulation begins with a city on the edge of a ley line. You soak up the ley energy and transform it into fear, hunger, and loneliness, then just sit back and watch the side effects.

The highlight of this game is 5 really awesome tracks I found on freemusicarchive that are free for commercial use (don’t get confused, this is still a free project)

It’s currently been built for html, windows, and linux. I’ll get a version up for android as soon as my build limit expires.

I uploaded it to gdevelop if anyone wants to try

You can also download it on itch.io

And here’s some delicious low fi pics to get your imagination going:

innDemons

innerDemons1

innerDemons1

I don’t know how much more I’ll do to this - depends largely on user feedback. I wouldn’t mind making some minor changes to the growth rates, or fine tuning the controls, but beyond that I want to keep it as simple as possible. One thing I might be likely to do is put in some more tunes and make it a nice free music showcase.


#2

Maybe some labels on the buttons would be nice, because I felt a bit lost :slight_smile:


#3

I’ve got a few days off coming up, I should be able to fiddle with it a bit. Thank you for your input.


#4

Okay well I got distracted by some other things but I’m starting to work on an update for this one. It’s still very rough around the edges and I’m feeling some ideas out, so any feedback is encouraged.

This isn’t really so much an update as I rewrote it entirely from scratch. At heart, it’s the same game, but made by a person with 4 months practice instead of 1 month practice.

I rewrote the formulas that modify the stats every turn
Added in some really cool public domain graphics: by Hansjörg Malthaner, http://opengameart.org/users/varkalandar
Several buttons (with labels) :slight_smile: and a couple extra status windows (because a game like this is largely about stats).
The game is much larger: 1000 100x100 tiles.
Increased screen resolution.

I still need to refine it a bit and add some extra feels, add music and sound effects, name the buildings and add some unique effects for each one. I might add some more buildings. Currently there are 3 classes of buildings with 7 types in each class for a total of 21 different building types.

I have one or two bugs to squash still but I think they won’t be too hard to fix.
Here is a screenshot of what I’m working on. I plan to have something playable to share soon.

Also, in the spirit of the public domain graphics and sound, I’ll try and come up with a well commented example to share.


#5

Hi Fitkoh!
Interressant idea you had.
Sim city game concept if i well understood.

Don’t hesitate to give us news of your game. It’s always with pleasure i can see original projects.

Good continuation and good luck for your creating game work.


#6

Here’s a little sample of progress on the remake: https://dancewiththedevil.net/download/idcbrm-zip/

If I did this correctly, the zip file contains the json file and images necessary to run the game in the GDevelop editor.

Most of the core functionality is working, although it’s still spare on the bells and whistles and feels.

Here’s a image to help assist with gameflow…

1: status display - tells you about progress and what’s going on in game
2: inspire selection - shows your selected “inspiration” to build
3: use the arrows to scroll through available inspirations
4: tells you about the selected inspiration
5: Harvest button - used to gather resources. You need to gather energy to build your inspirations
6: harvest display - tells you what’s available in the current tile
7: player cursor - this shows your location on the map.

Controls:

keyboard Arrow keys - up, down, left, right to move around the map
click harvest button - gather energy in available map tile
click inspire button - load inspiration for building
click player icon - build loaded inspiration
click inspire arrows - scroll through available inspirations
s key - save
L key - load

Gameflow/how to play:

At the start of the game, a loop will run to create the map. The map is composed of a 50x50 grid of 100px by 100px tiles. That’s 2500 hundred tiles to be created so it will take a few moments. I recommend waiting until this process is finished before doing anything else or strange things might happen.

Once the map is created, you can use the arrows to move around the map and harvest some resources so you can get to building.

As you collect more resources, different levels of inspirations will become available to you.

Build inspirations anywhere you see fit. Wait a few minutes and they will change the way the tiles grow, producing some different color and shading effects.

Every minute the game pauses the timer and rolls over a turn. At the turn, all your resources are increased by a percentage.

The save/load function is a big task for the engine. It has to save/load the location of each of 2500 tiles as well as the object variables that control the stats for each tile. The game will pause the timer on save/load and resume the timer after it’s finished. It will take a few moments for this operation to complete. Just be patient :slight_smile:

That’s basically what I have going now. I tried my best to keep the code neat and well commented, although I’m not a professional programmer so I’m sure there’s lots of room for improvement. It’s as simple as I could make it, so hopefully it can be a useful tool to someone who wants to make a city builder sim but doesn’t know where to start. Would love to see this added to the examples, or a customized version of it. The images are CC0 and the source is unlicensed, so anyone is free to use it in any way they want.

Feel free to add to it/share back or leave suggestions.

Current bugs:

Save/load should display the progress of the action it’s taking, in the same way progress is displayed when the map is being created… but for some reason it doesn’t work.

There’s a display bug which I don’t quite understand, but it produces some neat effects:
Every turn, the resources available in a tile are calculated to shade/color each tile. In theory, your resources grow every turn, and the tiles should only get bright/more colorful as they age. But every now and again, a tile will go dark, only to come back brighter and more colorful in another turn or few. I’m totally at a loss to understand what’s causing this, but like I said, it makes some interesting looking colors :slight_smile:

Room for improvements:

No sound yet: will need to find some good free background music and sound effects for it.
The growth formula is very simple… I just did round(variable*1.01) each turn, for a 1% increase. I’d love to hear some input from any math wizards out there about a way to design a better growth formula. As it stands, growth starts out really slow, and as you get bigger growth hits astronomical proportions. I’d like it to be sort of reversed, so you start out faster and grow slower as you get larger, but I don’t have any idea of how to do this mathematically… if I were to attempt it, I’d do it with a bunch of conditions and it’d be an ugly mess to read.

I also want to add some random positive and negative effects that will depend on the condition of various resources to make the game more interesting, and improve descriptions for everything.