Anatomy of a Game: Changing the Gamestate

pengoyo

Colonel
66 Badges
Dec 9, 2015
845
2.306
  • Crusader Kings III
  • Crusader Kings II
  • Cities: Skylines
  • Stellaris
  • Imperator: Rome
  • Prison Architect
  • Magicka 2
  • Europa Universalis IV
  • Cities in Motion 2
  • Hearts of Iron IV: Cadet
Thanks for the explanation.

If I'm understanding this correctly if I ransom a character back to another ruler in multiplayer, then a command to change the game state would only fire when the other ruler accepts my ransom demand. And if the other rulers is AI then this all happens on my computer (until the command is sent out), while if the other ruler is a player they'd be sent a notification to respond to.

Did I get that correct?
 
  • 1Like
Reactions:

Meneth

Crusader Kings 3 Programmer
128 Badges
Feb 9, 2011
10.056
5.358
www.paradoxwikis.com
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Holy Knight (pre-order)
  • Crusader Kings II
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: The Republic
  • Teleglitch: Die More Edition
  • Crusader Kings II: Conclave
  • Hearts of Iron IV Sign-up
  • Surviving Mars
  • Stellaris: Galaxy Edition
  • 500k Club
  • Hearts of Iron IV: Colonel
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV: Cradle of Civilization
  • Magicka: Wizard Wars Founder Wizard
  • Mount & Blade: Warband
  • Mount & Blade: With Fire and Sword
  • Crusader Kings II: Way of Life
  • Stellaris: Digital Anniversary Edition
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Field Marshal
  • Age of Wonders III
  • Europa Universalis III Complete
  • Crusader Kings II: The Old Gods
  • Hearts of Iron IV: Cadet
  • Steel Division: Normand 44 Sign-up
  • Crusader Kings Complete
  • Europa Universalis IV
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: Expansion Pass
  • Cities: Skylines - Parklife
  • Prison Architect
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Reapers Due
  • Stellaris Sign-up
  • Europa Universalis III Complete
  • Europa Universalis IV: Mandate of Heaven
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Charlemagne
  • Magicka 2 - Signup Campaign
  • Knights of Pen and Paper 2
  • Europa Universalis IV: Mare Nostrum
  • Knights of Honor
  • Deus Vult
  • Victoria 2: A House Divided
  • Victoria 2: Heart of Darkness
Thanks for the explanation.

If I'm understanding this correctly if I ransom a character back to another ruler in multiplayer, then a command to change the game state would only fire when the other ruler accepts my ransom demand. And if the other rulers is AI then this all happens on my computer (until the command is sent out), while if the other ruler is a player they'd be sent a notification to respond to.

Did I get that correct?
You sending the interaction is one command.
The other ruler accepting is another if they're a player. If they're an AI, acceptance is handled without a second command.
 
  • 4
Reactions:

V.V.

Sergeant
51 Badges
Jan 16, 2016
82
32
  • Crusader Kings II
  • Stellaris: Leviathans Story Pack
  • Stellaris - Path to Destruction bundle
  • Cities: Skylines - After Dark
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Wealth of Nations
  • Cities: Skylines - Parklife
  • Stellaris: Necroids
  • Cities: Skylines - Natural Disasters
  • Battle for Bosporus
  • Cities: Skylines - Mass Transit
  • Europa Universalis IV: Mandate of Heaven
  • Cities: Skylines - Green Cities
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Stellaris: Ancient Relics
  • Stellaris: Lithoids
  • Crusader Kings III
  • Stellaris: Federations
  • Stellaris: Galaxy Edition
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Mare Nostrum
  • Victoria 2
  • Europa Universalis IV
  • Stellaris: Digital Anniversary Edition
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Cadet
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Call to arms event
  • Crusader Kings II: Sword of Islam
  • Victoria 2: A House Divided
  • Imperator: Rome
  • Victoria 2: Heart of Darkness
  • Cities: Skylines Industries
  • Europa Universalis IV: Cossacks
  • Cities: Skylines - Snowfall
  • Stellaris
  • Europa Universalis IV: Cradle of Civilization
  • Age of Wonders III
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Third Rome
When I read "command system" I had the faint hope that you would finally fix the issue, that denies us to activate and deactivate debug_mode during a running game. (as in console commands) Like in the old PDS games.

But no, we still need mods for that. *sigh*
Logged in just to upvote this. It really is disappointing to a player who is used to quickly toggling debug on and off in various PDX games. It wouldn't matter for achievement hunters but it really is strange how CK3 (such a roleplay focused game) doesn't allow us to freely tweak some things as we play like many of the other games, and forces users to fall back onto mods to do basic things :(
I am amazed at how the game was released without a console (that's able to be conveniently used without having to completely close the game). Is this a nit-pick? I don't know. It's something I use very often so I may be biased.
 
  • 2Like
  • 2
Reactions:

Kabutsk

Recruit
38 Badges
Aug 26, 2016
1
1
  • Dungeonland
  • Stellaris - Path to Destruction bundle
  • Stellaris
  • Cities: Skylines - Snowfall
  • Europa Universalis IV: Cossacks
  • Cities: Skylines - After Dark
  • Cities: Skylines Deluxe Edition
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Art of War
  • Europa Universalis IV
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Europa Universalis 4: Emperor
  • Cities: Skylines - Parklife
  • Europa Universalis IV: Dharma
  • Cities: Skylines Industries
  • Stellaris: Megacorp
  • Europa Universalis IV: Golden Century
  • Imperator: Rome
  • Prison Architect
  • Crusader Kings III
  • Cities: Skylines - Green Cities
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Mandate of Heaven
  • Cities: Skylines - Mass Transit
  • Hearts of Iron IV: Together for Victory
  • Cities: Skylines - Natural Disasters
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: Cadet
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II
Thanks for the post! This is super insightful. Any chance you can tell something about how the map is displayed visually in-game? Though I'd understand, if that is something Paradox would rather keep to itself!
 
  • 1Like
Reactions:

Beyond Disbelief

Colonel
95 Badges
Jun 29, 2015
1.039
977
  • Crusader Kings II: Charlemagne
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Mare Nostrum
  • Cities: Skylines Deluxe Edition
  • Crusader Kings II
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Tyranny: Gold Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Rule Britannia
  • Cities: Skylines - Mass Transit
  • Europa Universalis IV: Mandate of Heaven
  • Tyranny - Tales from the Tiers
  • BATTLETECH
  • Surviving Mars
  • Cities: Skylines
  • Europa Universalis IV
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Distant Stars
  • Island Bound
  • Surviving Mars: First Colony Edition
  • Cities: Skylines - Parklife
  • Cities: Skylines - Green Cities
  • Victoria 2
  • Stellaris: Apocalypse
  • Stellaris: Humanoids Species Pack
  • Tyranny - Bastards Wound
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Holy Fury
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Conclave
  • BATTLETECH - Digital Deluxe Edition
I really appreciate the transparency and it certainly helped me understanding the challenges in managing a massive game state like CK3 and why OOS occurs even as a non-programmer (though with strong technical affinity).
 

Daniel Brauer

Recruit
4 Badges
Jul 25, 2021
1
0
  • Teleglitch: Die More Edition
  • Stellaris
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
On the topic of desyncs: my friend and I are experiencing desyncs maybe every 50 years or so in our two-player game. We’ve been trusting that using the multiplayer beta is enough to make sure you get adequate information about the problems we encounter. Is this a safe assumption?
 

MilkJugA

Recruit
52 Badges
May 21, 2018
1
0
www.steamcommunity.com
  • Europa Universalis 4: Emperor
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Together for Victory
  • Stellaris - Path to Destruction bundle
  • Cities: Skylines - Mass Transit
  • Europa Universalis IV: Mandate of Heaven
  • Hearts of Iron IV: Death or Dishonor
  • Crusader Kings II: Conclave
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Holy Fury
  • Imperator: Rome
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: La Resistance
  • Crusader Kings III
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • The Showdown Effect
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Art of War
  • Europa Universalis IV
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Charlemagne
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Cradle of Civilization
  • Europa Universalis IV: Call to arms event
  • Cities: Skylines - After Dark
  • Europa Universalis IV: Res Publica
  • Victoria 2
  • Victoria 2: A House Divided
  • Victoria 2: Heart of Darkness
  • Cities: Skylines - Snowfall
  • Crusader Kings II
Desyncs have plagued paradox games of the past, like in hoi4 (also happens far too often in similar in games like Civ). Nice to see that it's much less of a problem in CK3, and cool that you're explaining how it happens. Multiplayer adds a new dimension to the games
 

MHC

Sergeant
60 Badges
Apr 16, 2017
88
69
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Federations
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Ancient Relics
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Prison Architect
  • Stellaris: Galaxy Edition
  • Imperator: Rome
  • Crusader Kings II: Holy Fury
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Pillars of Eternity
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Monks and Mystics
  • Stellaris - Path to Destruction bundle
  • Surviving Mars
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Crusader Kings II: Jade Dragon
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Stellaris: Distant Stars
  • Stellaris: Megacorp
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
  • Crusader Kings III
  • Victoria 2
  • Stellaris: Necroids
  • Stellaris: Lithoids
  • Crusader Kings II: Way of Life
  • Imperator: Rome - Magna Graecia
  • Europa Universalis IV
  • Europa Universalis IV: Call to arms event
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sunset Invasion
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Knights of Pen and Paper +1 Edition
  • Victoria: Revolutions
  • Victoria 2: A House Divided
  • Europa Universalis IV: Mare Nostrum
  • Cities: Skylines - Snowfall
  • Cities: Skylines Deluxe Edition
Having thought about this, I've got three technical questions:
  1. In multiplayer, how do you deal with different computers having different amounts of computing power? On an older, slower machine those evaluation calculations are going to take longer and have fewer threads to spread the work across. So how do the games sync up the update step to a heartbeat so that everyone stays on the same date?
  2. As far as updating the game state, did you consider and reject a design where the change sets are check-pointed and then committed using transactional memory? Or is the update step so quick that it just isn't relevant for performance?
  3. Since so much time is spent on doing the update calculations, do you compile the game scripts into byte-code or some other internal data structure in order to keep the interpreter from becoming a bottle neck?
 
  • 1
Reactions:

gamerk2

Sergeant
32 Badges
May 24, 2019
82
199
  • BATTLETECH - Digital Deluxe Edition
  • Stellaris: Nemesis
  • Stellaris: Necroids
  • Crusader Kings III
  • Stellaris: Federations
  • BATTLETECH: Heavy Metal
  • Stellaris: Lithoids
  • Stellaris: Ancient Relics
  • Prison Architect
  • Stellaris: Megacorp
  • BATTLETECH: Flashpoint
  • Shadowrun: Hong Kong
  • Shadowrun: Dragonfall
  • Shadowrun Returns
  • Stellaris: Distant Stars
  • Tyranny: Gold Edition
  • Pillars of Eternity
  • Stellaris
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Stellaris: Apocalypse
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Stellaris - Path to Destruction bundle
  • BATTLETECH
  • Stellaris: Humanoids Species Pack
  • BATTLETECH: Season pass
  • Stellaris: Galaxy Edition
  • Stellaris: Synthetic Dawn
  • Supreme Ruler: Cold War
Given I have a particular game state
And I launch two game instances with the same state
When I execute a particular set of player-commands on each game instance
And next evaluation happens
Will the generated AI commands on one instance differ from those on the other?

In a single player game, I know the game is never the same even if I perform the same set of actions.
I assume there is some randomness involved to spice the game up.
But if a "randomness key" could serve as an additional startup/day input, and all random evaluations are run against that key, one can get the same result.
Or so I think : )
Yeah, this part was left out, or if it wasn't I didn't fully understand it.

The "easiest" implementation would be to just have one PC (the host's machine) do all the AI decisions, then pass that data to all the other players. Otherwise I don't have a clue how you could ever keep the gamestate sane, even if you tried to make the majority of the processing deterministic; eventually you'd have the same AI entity (character, army, or whatever) on two machines making a different decision at the same time.
 

jiruoan

Recruit
37 Badges
Oct 23, 2018
4
0
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Crusader Kings II: Reapers Due
  • Stellaris: Leviathans Story Pack
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Charlemagne
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Shadowrun Returns
  • Crusader Kings II: Holy Fury
  • Prison Architect
  • Crusader Kings III
  • Cities: Skylines
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis III
  • Europa Universalis III Complete
  • Divine Wind
  • Heir to the Throne
  • Europa Universalis III Complete
  • Europa Universalis III Complete
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV
  • Magicka
  • Cities: Skylines Deluxe Edition
  • Crusader Kings II
This is probably not for general audience but the article is very informative and enlightening. I highly appreciate it.

"day" can be easily translated into "turn" making the engine perfect for turn-based character-centered simulation. I look forward to more of these tech blogs.
 

blackninja9939

Experienced Programmer - Crusader Kings 3
77 Badges
Aug 28, 2013
2.366
6.068
  • Crusader Kings III
  • Stellaris: Federations
  • Battle for Bosporus
  • Stellaris: Nemesis
  • Stellaris: Necroids
  • Europa Universalis IV
  • Crusader Kings III: Royal Edition
  • Europa Universalis 4: Emperor
  • Crusader Kings II
  • Crusader Kings II: Holy Fury
  • Imperator: Rome - Magna Graecia
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Synthetic Dawn
  • Surviving Mars
  • BATTLETECH
  • Europa Universalis IV: Mandate of Heaven
  • Crusader Kings II: Monks and Mystics
  • Tyranny: Archon Edition
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Colonel
  • Stellaris Sign-up
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Stellaris: Lithoids
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Shadowrun Returns
  • Imperator: Rome Deluxe Edition
  • Prison Architect
  • Imperator: Rome Sign Up
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall
  • Crusader Kings II: Conclave
  • Crusader Kings II: The Republic
  • Victoria 2
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Stellaris
  • Mount & Blade: Warband
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Legacy of Rome
On the topic of desyncs: my friend and I are experiencing desyncs maybe every 50 years or so in our two-player game. We’ve been trusting that using the multiplayer beta is enough to make sure you get adequate information about the problems we encounter. Is this a safe assumption?
Make sure to go and leave a bug report with your out of sync's information and dump to!

Having thought about this, I've got three technical questions:
  1. In multiplayer, how do you deal with different computers having different amounts of computing power? On an older, slower machine those evaluation calculations are going to take longer and have fewer threads to spread the work across. So how do the games sync up the update step to a heartbeat so that everyone stays on the same date?
  2. As far as updating the game state, did you consider and reject a design where the change sets are check-pointed and then committed using transactional memory? Or is the update step so quick that it just isn't relevant for performance?
  3. Since so much time is spent on doing the update calculations, do you compile the game scripts into byte-code or some other internal data structure in order to keep the interpreter from becoming a bottle neck?
  1. If someone lags behind too much we slow down the speed selected for the whole session or even pause to let them catch up, with our min spec and not entirely useless internet you should be able to run at a decent speed in an MP session with that.
  2. The effects of most commands is not the bottleneck of our simulation, its much more the general daily tick of the simulation instead of any specific command actions.
  3. They are read in once into internal data structures at load time and then we just go over them for evaluation and execution never needing to go back to the file system or interpreting the scripting language.

Yeah, this part was left out, or if it wasn't I didn't fully understand it.

The "easiest" implementation would be to just have one PC (the host's machine) do all the AI decisions, then pass that data to all the other players. Otherwise I don't have a clue how you could ever keep the gamestate sane, even if you tried to make the majority of the processing deterministic; eventually you'd have the same AI entity (character, army, or whatever) on two machines making a different decision at the same time.
Exactly this, which is why they use the commands. Only the host machine actually posts the AI commands to the session which then update the rest of the clients with the AI's actions.

This is probably not for general audience but the article is very informative and enlightening. I highly appreciate it.

"day" can be easily translated into "turn" making the engine perfect for turn-based character-centered simulation. I look forward to more of these tech blogs.
I mean there is not a huge amount of difference between real time with pause and turn based anyway in that regard, both end up in the scenario where there is a hypothetical infinite amount of time between the updates so have some tick based system. Real time with pause just does it as ticks at an interval whereas turn based is tick on demand only.
There is plenty of gameplay considerations of course, and you'd want to work your updates differently, but the very core is not massively worlds apart.
 
  • 3
  • 1Like
Reactions:

Beyond Disbelief

Colonel
95 Badges
Jun 29, 2015
1.039
977
  • Crusader Kings II: Charlemagne
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Mare Nostrum
  • Cities: Skylines Deluxe Edition
  • Crusader Kings II
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Tyranny: Gold Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Together for Victory
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Rule Britannia
  • Cities: Skylines - Mass Transit
  • Europa Universalis IV: Mandate of Heaven
  • Tyranny - Tales from the Tiers
  • BATTLETECH
  • Surviving Mars
  • Cities: Skylines
  • Europa Universalis IV
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Distant Stars
  • Island Bound
  • Surviving Mars: First Colony Edition
  • Cities: Skylines - Parklife
  • Cities: Skylines - Green Cities
  • Victoria 2
  • Stellaris: Apocalypse
  • Stellaris: Humanoids Species Pack
  • Tyranny - Bastards Wound
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Holy Fury
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Conclave
  • BATTLETECH - Digital Deluxe Edition
  • 4
  • 2Love
Reactions:

blackninja9939

Experienced Programmer - Crusader Kings 3
77 Badges
Aug 28, 2013
2.366
6.068
  • Crusader Kings III
  • Stellaris: Federations
  • Battle for Bosporus
  • Stellaris: Nemesis
  • Stellaris: Necroids
  • Europa Universalis IV
  • Crusader Kings III: Royal Edition
  • Europa Universalis 4: Emperor
  • Crusader Kings II
  • Crusader Kings II: Holy Fury
  • Imperator: Rome - Magna Graecia
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Europa Universalis IV: Rights of Man
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Synthetic Dawn
  • Surviving Mars
  • BATTLETECH
  • Europa Universalis IV: Mandate of Heaven
  • Crusader Kings II: Monks and Mystics
  • Tyranny: Archon Edition
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Colonel
  • Stellaris Sign-up
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Stellaris: Lithoids
  • Stellaris: Distant Stars
  • Europa Universalis IV: Dharma
  • Shadowrun Returns
  • Imperator: Rome Deluxe Edition
  • Prison Architect
  • Imperator: Rome Sign Up
  • Stellaris: Ancient Relics
  • Age of Wonders: Planetfall
  • Crusader Kings II: Conclave
  • Crusader Kings II: The Republic
  • Victoria 2
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Stellaris
  • Mount & Blade: Warband
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Legacy of Rome
When Paradox had no free community manager, so they put a coder to entertain people. :D
Well our community team aren’t writing our regular dev diaries or summer teasers either ;) They have the much less fun job of listening to my dumb ideas and collecting feedback and managing the socials and planning

Though thankfully Troy was very receptive and excited when I pitched this idea to him, both cause he’s nice and doesn’t want to kill my hopes and dreams and cause it’s a new type of content for us we can explore different areas of the game and our roles to those who are interested! :D
 
  • 7Like
  • 1Haha
  • 1
Reactions: