Survivalist: Invisible Strain

Survivalist: Invisible Strain

69 ratings
Editor - Get Started
By Bob
A brief intro to how to make your own maps, quests and stories
6
   
Award
Favorite
Favorited
Unfavorite
Create a New Story
  • Run the game, and from the main menu go to Editor. You will see a list containing Base Story, Sandbox and any stories you have subscribed to via the Steam Workshop. BasicStory contains speeches and equipment that are common to all stories, while Sandbox is the sandbox mode.

  • Click Create New to make your own story and enter MyStory for the name. (This will create a subfolder called MyStory in the game's directory which will contain all your story's data).

  • If there's an error, you may need to run the game in Administrator mode (because it's saving to your Program Files directory).

  • Click Edit Story Settings. In the name field, call it "My Awesome Story". Enter a short description, and set the map size (try Small to start with).

  • Set the Start Day Of Year. 0 will be in the middle of winter, 42 will be in summer. (The year consists of 12 months which are 7 days long each.) Also set the Start Hour of Day if you don't want to start at midnight.

  • The other settings here relate to what equipment the player can choose on the character creation screen, and how many points they can use. Give them some clothing and weapon choices.

  • Note the Is Mod setting here - if you were to tick this, your creation would go in the Mods tab instead of the Stories tab when starting a game. Like Stories, Mods can add new equipment, dialog, recipes, props, and code, but unlike Stories they can't have a map (or be set to "Procedurally Generated", or have a starting loadout, etc). Players can select as many mods as they want simultaneously, but only one story. For example you could be playing the Sandbox story with the Trilby Hat and Magnum mods selected, in which case occasionally you might meet someone wearing a trilby or carrying a magnum.

  • When you're done, click Back.
Edit the Map
If you were to play "My Awesome Story" now you would start off in a completely flat map. Instead, go to the Editor, select My Awesome Story and Edit Map.

A lot of the map editor features are unfinished - most obviously, you can't create rivers and roads, and there's no undo button. It may also be pretty buggy as I've mostly been concentrating on Sandbox mode so far. Here's a quick guide to the most obvious stuff:
  • Press F8 to open the debug menu

  • At the top of the debug menu is a Save button - click this!

  • Click on Prop Spawner -> SpawnPoints -> PlayerStartPoint. Click your cursor on the map somewhere to create it.

  • Back out by pressing Escape, go to Prop Editor, click on the spawn point and you can adjust the angle, position, or delete it.

  • Click the Community List button at the top level of the debug menu, and create a new community. Set the type to Normal. Create another one and set the type to Looters.

  • Click Character Spawner at the top level of the debug menu, and create a Neutral character. Set their community to the first one you just created. Give them a unique ID of "Foo". Create another one in another part of the map belonging to the second community, and give them a unique ID of "Bar".

  • Remember to save before quitting!
Create a Quest
  • From the editor, click on Edit Script. Click Create New to create a new script, and call it "AwesomeQuest".

  • Right-click to open the script menu, click New Speech.

  • Click Expand on the speech. This shows all the fields, clicking Collapse only shows the fields that have been set to a non-default value. Only one element can be expanded at once.

  • In the English Text field enter "Hello, I have an awesome quest for you". For Situation select QuestTopic.

  • At the bottom, click the + symbol next to Extra Reply To. Enter Basic_LookingForWork. This means it will be a reply to the speech from BasicStory saying "I'm looking for work".

  • Click the + next to Conditions. Set the dropdown to HasID, Subject to Actor and Unique ID to Foo (the unique ID of the first character you created in the map editor). This means only that character will say this speech. (From the point of view of a speech, the Actor is the person doing the speaking).

  • Create another speech. Note the field at the very top will be automatically named AwesomeQuest_Speech2. This name is used to link speeches together. Change it to AwesomeQuest_GiveQuest. Copy this (with CTRL+C), and add it to the Continues section of the first speech (with CTRL+V). You should see a line appear between them.

  • Set the text to "%1 must die! Kill %2 and I will reward you." Click + twice on the Parameters section. Set the first to FullName, ID: Bar. Set the second to HimOrHer, ID: Bar. When Foo says this speech they will fill those fields with the name of Bar, and either him or her depending on their gender.

  • Right click and create a New Quest. Set the English Description to "Kill %1". Add a parameter FullName, ID: "Bar". Under Complete Conditions, add a condition AliveAndNotZombie, ID: "Bar". Tick the "Not" tickbox. This means the quest will be completed when Bar is not... "Alive and not a zombie", i.e. when Bar is either dead, or a zombie. In the Markers section, add a marker and set it to ID: "Bar". This means you will see a quest arrow pointing to Bar.

  • In the AwesomeQuest_GiveQuest speech, add an Event, set it to DiscoverQuest, and set the quest to AwesomeQuest_Quest1 (or whatever you named your quest).

  • Add another event, set it to DiscoverCharacterName, set the Subject to Target and the Object to ID: Bar. From the point of view of a speech, the Target is the person who we are talking to, i.e. the player. This means the player discovers the name of the character Bar, and they will see that instead of Stranger when they target them.

  • Create a second quest, and add a Completion Event to the first quest, make it DiscoverQuest and set it to discover your second quest "AwesomeQuest_Quest2". Set the description to "Inform %1", add a Parameter "FullName", ID: "Foo". Also add a marker pointing to ID: "Foo".

  • Right click and create a New Quest Group. Name it "AwesomeQuest_QuestGroup". Set both your quests Quest Group ID to "AwesomeQuest_Quest2". All quests need a quest group, this groups them together on the quests screen.

  • Create another new speech, make it say "I killed %1", set the Situation to QuestTopic and add a condition with type QuestIsActive, set the Quest to "AwesomeQuest_Quest2".

  • Create a speech saying "Well Done". Add a Reply to the previous speech, copy and paste the name of this one. Add an Event to this speech, set the type to SpawnEquipment, the Subject to "Target", the Item to "Gold" and the Amount to 100. This spawns 100 gold in the inventory of the person we are talking to, i.e. the player's character. Add another event of type CompleteQuest and set the quest to AwesomeQuest_Quest2.

In the end your script should look like this:
Right click to save and exit your script (note: currently scripts save automatically on exit anyway). Back out and start a new game, select your awesome story and run it!
Upload to the Steam Workshop
Click the Upload To Steam Workshop button:

The first time you do this, you'll be asked to create a file called CoverIcon.jpg, which is what will be shown to Steam users browsing the Workshop. The game will open up your Story's directory for you, you should place the image file in there. It should be a 16:9 image, e.g. 1920x1080 or 1280x720. For example, use a screenshot of the game playing your story.

Click the Upload To Steam Workshop button again. The next time you do this you'll be asked to agree to some Steam Workshop terms and conditions, if you haven't agreed to them before. Once you agree to them, you'll need to go back here and click the button again.

After clicking the button you'll see a loading screen with a progress bar, and then (hopefully) a message box saying it succeeded. That means your Story will be on the workshop, but it won't be visible to the general public yet. To make it visible, open it in the Steam workshop and under the Owner Tools section select Change Visibility and make it Public:

Hopefully this gives you an idea of how the editor works. There's no documentation at the moment, so I guess if you want to know how to do something or what a specific thing does then ask me.
My email:



Lastly, if you attempt anything serious I would advise backing up your work to somewhere else. It looks like Steam doesn't overwrite it when the game gets patched, but I guess I'd still worry about something like that happening.
29 Comments
Bob  [author] 10 Jan, 2024 @ 4:01pm 
Is there a list of variables anywhere that the event "SetVariable" can use? No, you just enter any name and it will create a variable with that name the first time it is set to a non-zero value. If a variable doesn't exist yet its value is assumed to be 0.
sorrynameused 31 Dec, 2023 @ 9:59pm 
Is there a list of variables anywhere that the event "SetVariable" can use?
freedhumanity 5 Dec, 2023 @ 9:43am 
I gotta say this game editor is a dream come true haha. easy to use yet so capable!!!
Jaybaybeans 29 Nov, 2022 @ 1:28pm 
Is there a way to edit a map's terrain after it's been generated? I want to make a cool af base with without having to deal with hills or grass that is impossible to build on, but I also don't want to edit the entire map to have hills, rocks, trees, etc. everywhere
TGxRedPlayer 4 May, 2022 @ 2:36pm 
Necroing this to ask something lol
Is it possible to start with a random map as a base and modify that instead of starting with a flat terrain?
Bob  [author] 1 Apr, 2021 @ 8:07pm 
How do I delete the Story I made in accident? - In the Editor go to Open Folder. This will open Windows Explorer on the folder used by that Story. Delete that folder.

Is there any guide about making custom guns and items? - Yes, here :)
o̶S̶a̶t̶i̶s̶f̶a̶c̶t̶ik 17 Aug, 2020 @ 11:37pm 
nice good boy
ананас 13 Aug, 2020 @ 8:50pm 
nice
Bob  [author] 12 Aug, 2020 @ 6:31pm 
@Look at this dude - I've updated it with instructions for that now :)
Penguin 12 Aug, 2020 @ 1:29pm 
Do you know how to upload a map to workshop? Thats the last thing i need to do at the moment. :JoeWheelerApproves: