Plague Inc: Evolved

Plague Inc: Evolved

54 ratings
Breaking the Limit! Plague Inc Scenario Creator Super-Advanced Text Editing Tricks
By indigofenix
How to use a text editor to take the Plague Inc Scenario Creator beyond its normal limits. Customize text, modify normally inaccessible variables and create entirely new mechanics in your custom scenarios!
   
Award
Favorite
Favorited
Unfavorite
Introduction
The Plague Inc Scenario Creator is one of the most fun modding tools I've seen, and one that will let you take your creative urges quite far (provided those creative urges involve creating some kind of virtual plague). You can make custom symptoms, government actions, story events and change the properties of countries all over the world.

But let's say you've done all that, and it leaves you wanting more. Maybe you want to create a scenario where infected superhumans fight against the uninfected, or where partial cures can gradually reverse your infection, or where a planet-sized psionic mecha powered by the combined willpower of the current infected population defends the Earth against an alien invasion.

I'm IndigoFenix, creator of rule-changing scenarios like Beyond Human, Cassandra: Neurax Vs Bioweapon, Immune Systems Challenge, and the soon-to-be-released Power of the Spiral. And I'm here to show you how to push the Scenario Creator to its absolute limit and beyond using the power of TEXT EDITING!

I don't expect too many people to use this guide...but I expect that those who do may well go on to create some of the most interesting scenarios made so far.

What you'll need:

A copy of Plague Inc: Evolved and the Scenario Creator
General familiarity with the Scenario Creator, particularly Event editing.
A text editor, preferably one with multi-line search and replace functions. I use Notepad++ with the Toolbucket plugin.
A good idea and the patience to put it into practice

Be warned, some of the things in this guide may break your scenario. Messing up the syntax usually just causes your scenario to not open, though you can easily fix this by undoing what you did wrong. Even so, it's not a bad idea to keep a copy of your scenario backed up in a separate folder before editing, and always make sure to test your scenario before publishing! (Though if you're making complex scenarios you should be doing that anyway!)

There's also the possibility that if the Scenario Creator ever actually gets updated some of these tricks might not work...but I'm not especially concerned about that. The last trick at least (which is the only one that really takes a significant amount of effort) doesn't have that concern anyway, since it doesn't do anything that you couldn't theoretically do using the Scenario Creator itself.
Where are the files?
The files you will need to edit are in the following folder (in Windows):

Plague Inc Custom Scenario files on Windows are stored in Users/{Your user name}/AppData/Local/Ndemic Creations/Plague Inc. Evolved/Scenario Creator/{Custom scenario name}

The AppData folder may be hidden, so you may need to show hidden files to find it.
Custom Text
(Thanks to Capt. Gyrfalcon for figuring this out.)

You know how some official scenarios like Santa's Little Helper and Ultimate Board Games change some in-game text? It is actually possible to do this in custom scenarios!

To do this, you must use the Translation system. Set your basic language, then go to the folder with the data files. You will find a text file representing your default language, like en.txt.

Open this file and you will see a list of strings and their translations. To create custom text, you must add the relevant text after the existing translations, and then the text you want to change it to. For example, to change DNA to FUND, you would add this line:

"dna" = "FUND";

However, if you save the scenario, this will be deleted. You will have to add it again. Because of this, I recommend putting all of your custom strings in a separate file, then copying this file into the translation file whenever you are ready to upload or test.
Also, it seems that translation files are only updated when loading a scenario for the first time. If you change these values, you will need to exit Plague Inc and reload the game to see the changes.

Here is a list of all of the strings that I know about. It is likely that there are more. You can copy this, put it in the translation file, and change it however you like.

"%@ has successfully eliminated all life on earth" = "%@ has successfully eliminated all life on Earth";
"abilities" = "Abilities";
"dna" = "DNA";
"dna points" = "DNA Points";
"dead" = "Dead";
"cure" = "Cure";
"devolve" = "Devolve";
"evolve" = "Evolve";
"disease" = "Disease";
"healthy" = "Healthy";
"infected" = "Infected";
"infectivity" = "Infectivity";
"lethality" = "Lethality";
"neurax worm" = "Neurax Worm";
"necroa virus" = "Necroa Virus";
"simian flu" = "Simian Flu";
"shadow plague" = "Shadow Plague";
"severity" = "Severity";
"symptoms" = "Symptoms";
"transmission" = "Transmission";
"disease graph" = "Disease Graph";
"healthy countries" = "Healthy countries";
"infected countries" = "Infected countries";
"destroyed countries" = "Destroyed countries";
"infection spread summary" = "Infection Spread Summary";
"no cure has been released yet" = "No cure has been released yet";
"the cure for %@ will be available in" = "The cure for %@ will be available in";
"daily infections" = "Daily Infections";
"daily deaths" = "Daily Deaths";
"select transmission trait" = "Select Transmission trait";
"select ability trait" = "Select Ability trait";
"select symptom trait" = "Select Symptom trait";
"spend dna points to change what your disease gives people!\n\nincrease core disease stats and other special effects. evolve low level symptoms to get lethal ones." = "Spend DNA points to change what your disease gives people!\n\nIncrease core disease stats and other special effects. Evolve low level symptoms to get lethal ones.";
"spend dna points to customise the strengths of your disease!\n\nincrease disease resistance to climate, influence the success of a cure and more!" = "Spend DNA points to customise the strengths of your disease!\n\nIncrease disease resistance to climate, influence the success of a cure and more!";
"spend dna points to evolve new vectors to infect people!\n\nincrease infectivity and get bonuses to specific country types. make your disease more likely to mutate." = "Spend DNA points to evolve new vectors to infect people!\n\nIncrease infectivity and get bonuses to specific country types. Make your disease more likely to mutate.";
"%@ killed all its hosts.\nsome healthy people survived!" = "%@ killed all its hosts.\nSome healthy people survived!";
"%@ has enslaved all life on earth" = "%@ has enslaved all life on Earth";
"score total" = "Score Total";
"ig_dna_used" = "DNA USED";
"ig_average_infections" = "AVERAGE INFECTIONS";
"ig_average_deaths" = "AVERAGE DEATHS";
"ig_dna_points" = "%DNA DNA Points";
"ig_abilities_trait" = "ABILITIES TRAIT";
"ig_symptoms_trait" = "SYMPTOMS TRAIT";
"ig_transmission_trait" = "TRANSMISSION TRAIT";
"ig_abilities_default" = " Spend DNA points to evolve new abilities to help your plague";
"ig_symptoms_default" = " Spend DNA points to evolve new symptoms for your plague";
"ig_transmission_default" = " Spend DNA points to evolve new transmissions to help your plague spread";
"fe_endgame_maintitle_victory_enslaved" = "WORLD ENSLAVED";
"fe_endgame_maintitle_defeat" = "PLAGUE ERADICATED";
"fe_endgame_victory_neurax_enslaved" = "The whole world worships %name as their god and master. Efforts to cure the plague have ceased and humanity is entering a dark new future as a slave species.";
"fe_endgame_defeat_neurax" = "%name killed all its hosts. Some healthy people survived!";
Tricks with Traits (Exclusion and stacking)
So it turns out you can do a whole lot of fun stuff with traits, and it's quite simple! Just open up the disease.txt file to see all of the traits.

Each trait has a grid_position variable, and you can change this to put a trait on any tile. If you put a trait on the same tile as a different trait, whichever one appears lower down in the file will be "on top", blocking the traits below it. Where this gets really fun is if you give a trait specific requirements to appear. You can make a trait "transform" into another trait by putting its second "form" on top of it, and then unlock that second trait when certain requirements are met.

You can also make traits exclude others using the not_requirement_or and not_requirement_and variables. These are comma-separated lists of trait IDs; not_requirement_or will cause the trait to be disabled if any one of the listed traits are evolved, while not_requirement_and will cause the trait to be disabled if all of the listed traits are evolved.
Selecting Unselectable Variables
Now we're getting into events. This is a bit trickier, but it opens up a wide number of possibilities!

If you've played around with the Scenario Creator a bit and tried to do some unusual things, you might have noticed that sometimes there are variables that you just can't select under certain circumstances. For example, a variable you can select for checking in an "If" statement might not be available in a "Set Variable" effect. For example, you can make an event fire when Global Cure Research reaches a particular value...

https://steamuserimages-a.akamaihd.net/ugc/937215510441878911/F07BFEF3F411CF897C3693B05A62F4D1CD872DAD/?imw=256&&ima=fit&imcolor=%23000000&letterbox=false

but you can't make an event that sets Global Cure Research to a particular value.

https://steamuserimages-a.akamaihd.net/ugc/937215510441884086/65CBD62DE3AA3266B3150FD828FF37C0ECCAAE69/?imw=256&&ima=fit&imcolor=%23000000&letterbox=false

So you might think you can't edit them! Oh well!

Well, you'd be wrong!

It turns out that there are a lot of variables that are perfectly settable and work exactly as you'd expect when you do set them, but they just aren't available in the Scenario Creator. But how do you set them if you can't select them, you might ask?

Well, the answer is you hack! And by hack I mean edit the perfectly accessible and entirely non-encrypted text files on your computer.

For our example, let's say we want to make a "Fight the Cure" technique that reduces global Cure Progress by 100000 each day as long as a certain tech is evolved, in exchange for constantly draining your DNA points. (And you can disable it by devolving the technique). Pretty neat, right?

After creating the technique, we create a basic event that fires every day. (Under event settings, disable Reset Event Counter, set Event Counter Threshold to 0, and Times Event Can Trigger to -1). Set the event to fire whenever the technique is evolved, and make it reduce DNA by 1 and also reduce some arbitrary variable by 1000000. We'll use Orange Bubble Points Adjust.

https://steamuserimages-a.akamaihd.net/ugc/937215510441936911/7FBDC3A0A47EF88E0AAEDBA70FFE76579A4390B5/?imw=256&&ima=fit&imcolor=%23000000&letterbox=false

Since we don't know exactly what the in-code variable name for Global Cure Research is, we also create an event that fires whenever Global Cure Research reaches 10000. This doesn't actually matter, it's just to help find the event in the text.

Now we need to open the file. Plague Inc Custom Scenario files on Windows are stored in Users/{Your user name}/AppData/Local/Ndemic Creations/Plague Inc. Evolved/Scenario Creator/{Custom scenario name}. Go there and open up events.txt.

https://steamuserimages-a.akamaihd.net/ugc/937215510441973313/C866793A60BD1266360F1BF2B91CCC0BC062A2EF/?imw=256&&ima=fit&imcolor=%23000000&letterbox=false

You don't want to be messing around with this too much...actually, it's just standard XML code. Everything between the <GameEvent> and </GameEvent> tags represents a single event, and you can easily find an event you're looking for by searching for that event's name - in this case, Fight_Cure.

Worst case scenario, you mess up the syntax and the scenario fails to load, and you'll have to undo it. But you probably aren't going to be doing too much here anyway. If you look down at where the mouse is pointing, you'll see the word "orangeBubbleMult", which as you might have guessed, is the Orange Bubble variable that we want to change.

But exactly what do we change it to? Well, if you look further up (on Row 13) you'll see the other event that we made, which uses the field globalCureResearch. Yep, that sounds about right.

So all we need to do is change the highlighted orangeBubbleMult to globalCureResearch, save the file, and it's done! Well, actually, you also need to reload the Custom Scenario - otherwise it will just overwrite what you did when you save it.

So reload it, and...Boom!

https://steamuserimages-a.akamaihd.net/ugc/937215510442008876/EFC7DAA2E71A60120A2101A4B6ECE89798C1C186/?imw=256&&ima=fit&imcolor=%23000000&letterbox=false

We now have an ability that will drain the cure when active!

Now, before you go around experimenting with these variables, I'd like to make a disclaimer by saying that they will not always work the way you expect them to. Not too surprising, since they were probably left out of the scenario creator for a reason. Some don't work at all, and others may have odd effects (My attempts at creating a scenario where humans are able to reproduce and increase the population, or one where they are capable of resurrecting the dead, all met in failure). But others work just fine! So experiment and see what you can come up with!

EDIT: Something that must be added: Each variable is also associated with a certain "Target", like DISEASE, LOCALDISEASE, or COUNTRY. Make sure that you're using the target associated with the correct variable - the above works because orangeBubbleMult and globalCureResearch both have the DISEASE target, which you can see in the text editor. If the placeholder variable has a different Target you'll have to change the Target field to the correct value as well.
Not enough custom variables? There are more of them than you think...
Plague Inc. uses a system where you can edit most variables, and if you want to make something really complicated you can use some reserved custom variables - 5 global variables and 6 country variables. Pretty neat and you can do some amazing things with these if you're creative and have a head for scripting.

But what if you want to make something really, really complicated and 11 variables isn't enough? Well there's an answer to that, and the answer is zombies! (and apes, and vampires.)

Turns out that the variables specific to the "special plagues" actually exist in the regular plague types - they just don't do anything, and you can't select them from the Scenario Creator menu. But as we've seen above, that's hardly a problem to a savvy text editor. Just create a custom zombie scenario, make an event that uses these special variables, and you'll be able to learn about variables like zCombatStrength, hCombatStrength, hordeSpeed, decayPercReduction and more.

None of these will do anything (no, infected will not behave like zombies if it's not a zombie plague, even if you set their variables), but with a bit of patience you can set them and check them as if they were regular custom variables, which basically gives you some 20 extra custom variables to work with - more than enough for all your super-complex scenario needs.
Daily Updates per Country
Unlike the above tricks, this does not technically do anything you couldn't do with the regular Scenario Editor. It just makes a really cool trick that would be impractically unviable...merely tedious and annoying. BUT it's REALLY cool. It lets you create ENTIRELY NEW MECHANICS in Plague Inc by making an event that runs every day, in every country!

You can use this to create combat mechanics (calculate number of fights, number of infected deaths and number of healthy deaths based on whatever conditions you want, then, set additional deaths to infected deaths + healthy deaths and then additional infections to healthy deaths) or reduce infected count (turns out that if Additional Infections is negative it actually cures that amount of people) or whatever else you want to happen that I can't think of right now.

The trick is as follows:
  • 1. Create a new event that fires every day.
  • 2. Make the Country Conditions "If Custom Country Variable 6 < Days since Game Start". (It doesn't have to be 6.)
  • 3. In Outcomes, "Set Custom Country Variable 6 = Days since Game Start". This ensures that the event fires only once per country.
  • 4. Add whatever other outcomes you want.
  • 5. Open the file in a text editor. Find the particular GameEvent that corresponds to this event - remember, it's everything between the <GameEvent></GameEvent> tags. Copy this. And then duplicate it 58 times (58 being the number of countries).

Reload the scenario, and you'll have 58 copies of the event, meaning it will run 58 times per day. Each time it will pick a random country, but it will only pick countries that it has not already updated, which means that every country will get updated exactly once.

As you might imagine, editing this afterwards can prove to be a real chore, which means that testing can be a pain, especially if your code is really complicated. This is where a multiline search-and-replace editor comes in handy. But if you can get it to work right, it will really take your scenarios to the next level!
Some fun ideas to get you started
I want to see more people making interesting things in Custom Scenarios! Here's a few ideas to get you thinking of the possibilities. (Not all of these require text editing, though many do.)

  • Boss fights: You can turn the Cure bar into an HP bar! Use a custom variable to represent HP (between 1 and 100), then every day set the Daily Cure Research to (Total Research Required * HP Variable / 100). Examples: Herald of the Demon King, Power of the Spiral
  • Using DNA to power continuous special abilities: Just reduce DNA each day if the tech is evolved, and do another thing as well. Examples: Herald of the Demon King, Power of the Spiral, Rise of the Mushroom Kingdom
  • Virtual "creature" presence: Use a custom country variable to represent number of creatures in a country. In a daily update per country, increase the number of extra deaths/infections/something else by this value. Deaths automatically happen to infected first, but you can also simulate healthy deaths by both increasing deaths and increasing new infections by the same amount. Examples: Herald of the Demon King, Power of the Spiral, Neurax vs Bioweapon
  • Semi-Cures: Did you know that negative extra infections will actually cure infectees? You can make events or updates that reduce the infection in a country. The red dots won't go away, but they will stop moving, like with the cure. Example: Immune Systems Challenge
  • Change the biome of a location based on stuff that happens there: Use a custom country variable to represent temperature/humidity/development/economy. At the beginning of the game, set this variable to a value determined by the country's current state. In a daily update per country, modify this value based on traits evolved and infected percent (or something else), and if the value is above or below a certain amount, change the country's biome variable. Examples: Climate Modification Nanites, Rise of the Mushroom Kingdom
  • All kinds of fun stuff related to Templars: Forts have HP and HP can be easily set. You can also create new forts using events. Lots of possibilities here. Example: Herald of the Demon King
27 Comments
CrunchyWax 20 Sep, 2024 @ 8:38pm 
what about having multiple endings
TheGamerASD 26 Nov, 2022 @ 2:46pm 
You can add this line to the custom_ui_text.txt file to change the name of Zombies when playing as the Necroa Virus:

"IG_Zombies" = "ZOMBIES";
MonKey 26 Sep, 2022 @ 8:59pm 
Tried to make a scenario when I was much younger, and discovered the hellscape that is the SC. Text would uncapitalize all the time, things I wanted to do weren't available, and just today found out you can't set Full screen and Allow Ndemic Upload at the same time (why is it even there)? It seems like the SC never actually got out of beta, and just sits in the main menu gathering dust.

So glad that you're here to bring greater light, and to further explore what the minimum the SC can give us is, though! Here's hoping I can do something too after many years.
Uglassed224 22 Jul, 2022 @ 7:11am 
I like the staging of events in Neurax vs Bioweapons.The probability of events definitely suits me.
Facebob101 22 Aug, 2021 @ 1:59am 
and how do i make it so lethality increases over time in neurax worm?
Facebob101 22 Aug, 2021 @ 1:22am 
might be a dumb question but im new to evolved and the scenario creator so how would i edit existing events? like when it says "(name) is a neurax worm" etc.?
vinsiesplayer 28 Jan, 2021 @ 11:38pm 
Here's an idea that anyone can use, and that I will use: You can use the option to set the cure progress variable to 100% (through a event), So that you can make the player lose from a certain event.
vinsiesplayer 28 Jan, 2021 @ 10:37pm 
Also does anyone know is it possible to make a vampire that does'nt attack humans if the blood rage ability is'nt in use that moment? Or what is the text for templar bases in the language file?
vinsiesplayer 28 Jan, 2021 @ 8:43am 
Is it possible to make a trait need a event to be happened for it to evolve?
TerabyteAIX 3 Jan, 2021 @ 12:51pm 
Thanks for the help