Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Advanced search

1373116 Posts in 64826 Topics- by 57011 Members - Latest Member: wannaparty

February 21, 2020, 01:49:27 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsALL TOO HUMAN: A procedural real time strategy game with memes
Pages: [1]
Author Topic: ALL TOO HUMAN: A procedural real time strategy game with memes  (Read 1726 times)
Disturbed Coder
Level 0

View Profile WWW
« on: August 03, 2018, 11:49:11 AM »

Under development!
All Too Human is a real time strategy game set in vasts wastelands.
It's essentially composed by two systems: city management and units control.
The game is targeted for Windows, Mac and Linux via Steam platform. Developed using Unity3D.



(Well, imagine something like Civilization's  settlements).

Settlements are the place to gather resources (food, water, scraps and a lot more), recruit units and construct buildings.
Also, every settlement has a meme pool which is used to calculate modifiers for recruiting, construction and efficiency.


The game introduces the concept of meme (as in Richard Dawkins theory) which in practice behaves as modifiers.
They live in meme pools and help/destroy each other for influence in a population (both settlements and units have pools).
Some example of memes are: literacy, faith, truculence and labor.
The summation of the modifiers provide by each meme in a pool results in the set of modifiers for that population.
Memes spreads from contact between units and settlements making populations learning new ideas.
In short, memes are "contagious" modifiers. You can inject memes into your city constructing buildings there.

The Memeverse: tool used to configure memes and their modifiers.
The distance between them indicates how they interact. Memes next to each other will have a constructive relation when in the same pool.


Buildings have several functions in the game. Here are some of them:
* Inject a meme into a settlement pool gradually;
* Allow the player to recruit specific units;
* Change/improve the supply chain of the settlement;
* Unlock special popups with information and reports.


Units are semi-autonomous groups of people. The mechanics is inspired by the Close Combat series.
Every unit has it own meme pool which is a copy of the pool from the settlement where the unit was recruited.
You can give orders to your units like: move, attack, work, explore, etc.
All units have a will-to-fight meter that shows how the unit is handling the current situation and if it is about to break and retreat.
When a unit retreats you lose control of it until the will to fight is restored.


The diplomacy system allows you to interact with other players. You can declare war, make peace, trade resources and embargo someone.
All other players are controlled by AI. The game won't support multiplayer.


King Of The Settlement is a kind of a demo (vertical slice would be better I guess) of the All Too Human project.
It has only the unit control part. All the rest (like memes, city management and etc) are not there.
The demo starts and gives 3 units to you and 3 to the AI. Your objective is quite simple, beat the AI and win the match.
The goal of this demo is to validate the unit control mechanics (which is complicated, sensible and demand a lot of effort).
If you are interested consider downloading the demo and give us your feedback.
Right now we are working on the project to enter in alpha stage in a near-ish future.

Note: all sounds, musics and some 3D assets are free content and I don't own them. They'll be replaced.



The future is a bit obscure. One thing only is certain: this game will be finished and shipped.
My next goal now is close the alpha version and release it.
After that we are going to the beta stage, which is launching the game on Steam's early access.
And then, finally, the full release takes place when the game leaves the early access phase.

« Last Edit: September 10, 2019, 07:53:57 AM by Disturbed Coder » Logged
Disturbed Coder
Level 0

View Profile WWW
« Reply #1 on: October 24, 2018, 07:14:04 AM »

Hey, Lucas here.
The behaviour of the units is driven by two different attributes: expertise and discipline.

Expertise measures how prepared the unit is to do what’s supposed to do. It includes working, fighting and exploring.
For example, in combat a unit with high expertise takes less time to reload, less time to shoot and have increased chances to hit the target.

Discipline measures how solid the unit is. High discipline makes the humans, which compose the unit, fight and move (as you can see in the GIF) in a more ordered fashion.
Also, it defines how long a unit can take fire before breaking and entering retreat mode (where the player/AI can’t control the unit temporarily).

Ultimately, both attributes are defined by the memes living in the pool of the unit (which will be better explained in a future post).
In short, each meme modifies the discipline and the expertise of the host unit. Thus, the final values are the summations of these modifiers for all memes in the pool.
For instance: memes like sloth, corruption and dread affects the attributes mostly negatively.
While in other hand, militarism and competitiveness will affect in a positive manner.
Level 0

View Profile
« Reply #2 on: October 24, 2018, 10:15:57 AM »

It’s a mix of Civilization, Close Combat and Constructor
That's strong Smiley

but I’ve passed the point of no return
We are all here paving our way into gaming valhalla. Gentleman

The memes idea looks interesting. I'd like to see where it goes. Though i'm not sure how to play this game from just seeing the screenshots. Will there be direct control over units? What's the goal of a level - to survive yourself or to destroy opponents?


My devlog - Aether Way
And Twitter
Level 1

Hi! First game-dev experience!

View Profile
« Reply #3 on: October 25, 2018, 06:14:13 AM »

empty spaces...

Favourite GM Game

View Profile
« Reply #4 on: October 25, 2018, 04:22:43 PM »


I'm the guy who's supposed to make this game look good.
Lately we've decided to actually show the player memes and their relations through a screen called the MEMEVERSE.

It is possibly the most important screen in the game, as it serves as a representation of an agglomerate's field of ideas. Be it an unit, a trade caravan, a city or a player (the player being the conjunction of everything in his control). Memes will interact with each other based on their position on the Memeverse. Far apart memes will increase tension in that pool and they will fight each other off, unless there's constant reinforcement of both ideas. This system is always trying to reach a state of balance, and the player will mold his civilization's behaviour by reinforcing specific ideas that suit his strategy.

A unit's pool of memes is called a... meme pool. Meme pools will interact with each other based on how approximate they are with one another, and pools independent of player will assimilate. This interaction can be used for good or for bad. It can serve as a pre-attack, or buffing an ally's capacity to do something, as the tension created of different ideas being inserted into a pool will reduce its ability to function.

(The memes in this gif are placeholders, obviously)

This graph is a shader I wrote and nodes are good ol' UI stuff.

/* sz = circle size, lsz = line segment size,
t = distance from center, a = angle,
t = thickness, f = wave frequency,
a = wave amplitude, tm = time multiplier */
float renderCircle(float sz, float lsz, float l, float a, float t, float f, float amp, float tm) {
float lc = l + ( cos(a*f*0.5) * amp ) + ( cos(_Time.y + a*f) * amp );
float c = round(((cos(-_Time.y*3.0 + a*lsz)+1.0)/2.0)) * step(lc, sz) - step(lc, sz - t);
return c;

float renderCircles(fixed2 uv) {
uv -= _SelectedMemePos;
float l = distance(uv, fixed2(0.0, 0.0));
float a = atan2(uv.y, uv.x);
float t = 0.004;

float c1 = renderCircle(0.1, 50.0, l, a, t, 5.0, 0.005, 1.0);
float c2 = renderCircle(0.5, 100.0, l, a, t, 10.0, 0.02, 2.0);
float c3 = renderCircle(0.9, 200.0, l, a, t, 20.0, 0.05, 3.0);

return max(c1, max(c2, c3));

fixed4 frag (v2f i) : SV_Target
// sample the texture
fixed2 uv = i.uv;
uv -= 0.5;
uv *= 2.0;
uv -= _PanPosition;

fixed4 col = fixed4(0.0f, 0.0f, 0.0, 1.0f);

fixed2 z = step(fixed2(0.98, 0.98),  frac(uv*5.0));
     float t = max(z.x, z.y);
col = fixed4(t, t, t, 0.0f);
col = lerp(_GCA, _GCB, t);

float circles = renderCircles(uv);
float d = distance(uv, fixed2(0.0, 0.0));
fixed4 clrCircles = fixed4(lerp(fixed3(0.0, .1, 0.0), fixed3(.1, 0.0, 0.0), d) * circles, 1.0);

return col;
« Last Edit: October 31, 2018, 11:57:03 AM by mediocrityoverlord » Logged
Disturbed Coder
Level 0

View Profile WWW
« Reply #5 on: July 26, 2019, 07:19:48 AM »

Vertical slice available for download!
Check our itch.io page

King of the Settlement is a vertical slice of the project All Too Human.
It features the unit control part of the project only (the city building and memetics stuff are not there).
The match starts and gives 3 units to you and 3 to the AI. Your objective is quite simple, beat the AI and win the match.
The goal of this demo is to validate the unit control mechanics (which is very complex).

Note: all sounds, musics and some 3D assets are free content and I don't own them. They'll be replaced.

Download King of the Settlement for free at itch.io

And don't forget to leave your feedback!! Smiley
« Last Edit: July 26, 2019, 12:28:43 PM by Disturbed Coder » Logged
Disturbed Coder
Level 0

View Profile WWW
« Reply #6 on: August 09, 2019, 11:06:45 AM »

All Too Human units system was inspired by Close Combat Series (a WWII themed RTS game).
Instead of controlling each person individually you control squads.
Each squad has a certain degree of autonomy. They will fight, seek cover and retreat when necessary.
The goal of this implementation is to avoid micromanagement.
Besides the units part, All Too Human has a city building/management system which will also demand some attention from the player.

The keystone of the game design is to be as realistic as possible (without being so boring).
Units behave (as far as possible) as humans. They won't fight to death when outnumbered. They prioritize their own lives against your orders.
In history, many battle were won because the winner convinced the adversary to flee, they didn't have to kill every last one of them.
That's why the Will-to-Fight it's a important concept in the game, because it measures how the unit is willing to follow your orders.



1: Player Flag: Each player is represented by a unique flag. The flags are generated procedurally for each map (soon I'll post here about procedural flags);
2: Unit Type: The X symbol denotes that's a infantry squad.
3: Current Action: The sideway hourglass indicates the squad is idle. Possible other actions are move, retreat, fight, work and explore;
4: Life Meter: Shows how many members of the squad are alive. When this bar is empty the unit is destroyed;
5: Will-to-Fight Meter: Shows the willing to fight of the unit. This bar decreases when a member dies or when lots of bullets are flying around. When this bar is empty the unit retreats and the player lose control of it.


Squads can move on foot or using cars. In the game a car is a resources that need to be gathered (or manufactured) to be used.
However in the vertical slice King of the Settlement all units always start the match with cars.
After stop moving, the unit will arrange itself around the point your ordered them to go, seeking the places with the best cover to stay.

Even having a car, if you order them to move a short distance they will do it on foot.


The combat system, like the rest of the game, was designed to be as realistic as possible.
Projectiles are physical entities in the world (instead of just a hitscan) and their velocity is based on real life guns.
Bullets ricochet on the terrain, buildings and cars.


Squad retreating after taking heavy fire.


Vultures will spawn over dead bodies and will stay there for a few days.


Download the vertical slice King of the Settlement and check the unit control mechanics.
Feel free to leave your feedback and comment.
Thank you!!

Disturbed Coder
Level 0

View Profile WWW
« Reply #7 on: August 16, 2019, 11:25:44 AM »


All Too Human is a full procedural game. Every match is created based on a random seed, a signed integer number ranging between 0 and 2.147.483.647.
Every time you play the same seed the same world will be created.
The game was designed to support up to 16 players.

A problem that appeared when dealing with lots of players was how to visually identify every player.
My first implementation was to assign 16 different colors, one for each player in the game (RTS games like Starcraft and Warcraft use that approach).
However I found myself spending hours trying to properly configure 16 "unique" colors.
That was hard.

Then the idea of procedural flags came to me. I love how Hearts of Iron shows the flags of the units.
Besides, flags do follow some explicit patterns. After a small research I could create a simple algorithm to generate as many flags as I needed.


First of all is the ratio of the flags. In general they use 3:5 so I adopted that for the game.
The next step is the colors. If you check carefully you'll notice that a small set of colors are used for the most flags.
(This article was very helpful to define which colors to use: https://en.wikipedia.org/wiki/List_of_flags_by_color_combination)
Thus, using the correct ratio and recurrent colors the game would be able to create many real-world-like flags (of course, there's always exceptions like Nepal).

The flag factory uses 10 colors. For each flag 3 colors are chosen (but depending on the style only 2 will be used).
Also, it avoids creating similar flags and single-colored flags.

Each world seed will result in a different offset for the HSV color of the flags.
Doing this we make the tones of the colors slightly different for each seed.

Currently the flag factory can create 8 different styles of flags.


With the color and style chosen, the next step is applying a cloth texture over the flag to look a bit more realistic.

The Flag Factory is a system that uses a shader to draw the flags and a component that renders the flags to textures during the startup of the game.
As soon as the game is loaded the factory is destroyed and all generated flags for that world are stored.

Unity3D tool to visualize all flags generated for the current world seed.

Thanks for reading!
Please, consider downloading the vertical slice of the game at itch.io.

Disturbed Coder
Level 0

View Profile WWW
« Reply #8 on: September 10, 2019, 07:52:48 AM »


All Too Human is a real time strategy game with memes.
The worlds were designed to be huge desert wastelands.
They are created procedurally based on a seed and some other configuration properties.
The algorithm behind the mesh creation uses Perlin Noise plus a "tectonic mountains" generator.

The world is populated with settlements and landmarks (the exact number depends on the size of the map).
Settlements are controlled by players (one human and rest AI). They are used to recruit units, construct buildings and more.
Landmarks are neutral places in the world. They cannot be owned by players. Players can explore landmarks (to gather resources, population and even to gain access to a meme).
Units inside landmarks have a cover bonus making them a good outpost or a defensive position.

Currently, there are 4 worlds sizes:
* Duel: 15km x 15km / 9,3mi x 9,3mi / 2 settlements;
* Standard: 25km x 25km / 15,5mi x 15,5mi / 4 settlements and 4 landmarks;
* Large: 35km x 35km / 21,7mi x 21,7mi / 9 settlements and 9 landmarks; and
* Huge: 45km x 45km / 28mi x 28mi / 16 settlements and 16 landmarks.

The WorldProfile is used to configure the world creator algorithm. Every world attribute can be configured here (like size, mountains, sun light color, sky color and so on).

WorldProxy is the system responsible for running the world creation.

Every time you play the game using the same seed the exact same world will be created (with the same settlements, landmarks and even meme pools).
The whole mechanics of the game orbits around settlements. They define how many units you can have and what places of the world you have access.

Worlds #0 to #19 - Standard map size (25km x 25km / 15,5mi x 15,5mi)

Currently landmarks are free 3D objects. This will be changed in the future.

Settlements are owned by players. They can be sacked and occupied.

When the population of a settlements increases new houses will be automatically constructed.

Level 0

View Profile WWW
« Reply #9 on: September 10, 2019, 12:37:48 PM »

This looks really great!

It was particularly interesting to see how you were doing the flags.

Thanks for putting so much effort into these posts.

Disturbed Coder
Level 0

View Profile WWW
« Reply #10 on: September 10, 2019, 12:56:26 PM »

Thank you very much!
I appreciate your feedback Smiley
Pages: [1]
Jump to:  

Theme orange-lt created by panic