# Rex's Guide to running events
## Foreword
Hey, this is Rex's guide to running events including a walkthrough of tools and some guidelines on how to run a successful event! Of course events are not an exact science and it won't be perfect from the go.
## Tools
Hey! Before you read this section I recommend setting up a test server for yourself so you can experiment on your own, you can find a way to do so here https://hackmd.io/@tgstation/SyVma0dS5, this guide will come up later when we go through maps!
### Bread and butter
These tools are your bread and butter, it's how most events are run, from announcements to how to make slugcat wizards it's all here! This will however not be a deep dive into any of these tools, I strongly recommend testing in your own time to learn the deeper things.
Disclaimer: Some of these are commands, which use the command bar, it's that little line where you can type stuff at the bottom of the chatbox, to enter a command, hit enter on your keyboard and to auto-finish a command you are typing hit space.
### Game panel
This is a way to spawn items or mobs or tiles or areas, it is a command which you can type in the command bar. How you use it is that you first select one of the four options (as mentioned above) and then you search for the typepath(HIGHLY recommend you have the codebase installed to learn some of the basic ones) like /mob/carbon/human and then simply click the spawn button to create one of that typepath. For me this is the easiest method of spawning, though there is an alternative way, by typing spawn [name of thing you want to spawn] in the command bar, I would recommend trying both methods and just finding one you like.
### Variable View or VV
So, what the hell is a variable view? Well put it simply its a panel to see all variables on any given mob, area, items and tiles. (If you do not know what any of these words mean, take a look at this https://tgstation13.org/wiki/Understanding_SS13_code) This panel lets you edit these variables, for example the force variable on an item to make it hit harder.
How do I open this panel? Right Click on a tile where the thing you want to edit, in the menu hover over the item/tile/mob you want to edit and then a bunch of options should show up to the right of the item/tile/mob you want to edit, click the View Variables button and that should open up the panel.
What can I do in this panel? Short answer, a lot. But to start off with you can edit variables, to the left of every variable are multiple buttons ( e) ( c) and ( m) e stands for edit, c for change and m for mass edit. Edit lets you change the variable.m lets you edit a variable and apply it to everything of the same type or everything of the same type and subtype (if you don't know what types mean read up on the dream maker language), for example editing a /obj/item/melee/knife to force = 5000 with the subtype option will give every knife a force of 5000.
Another important edit is the icon variable, it's what makes the item look like what it does, when you click the edit button on this variable you will be able to select any image or dmi file on your computer! For dmi files you need to also edit the icon_state (read up on the dream maker language) if you want it to not error. For image files you just change the icon to it and the items icon will change to that image, just keep in mind how large the image is since it can cause the item to be huge.
Besides editing variables there is also a drop down menu with tons of selectable boxes, we won't go through all of them but a few more important ones at least!
Offer to ghosts, lets you offer the mob whose variables you are viewing to ghosts, letting one of them control it.
Add spells lets you search up a spell and give it to the mob!
Add component, this one is really only useful if you know components (from our code) but for example adding the edible component can allow you to make something edible.
## Traitor panel
Now the traitor panel or TP is how you change, add and edit antag status on people. It's found through right clicking on a player, then clicking show player panel, then clicking the TP button.
You have the add objective button, it lets you add an objective for the player, this can be very useful for giving someone a thematic objective or giving custom antags an understanding of what they are meant to do.
You can also remove objectives or antag status from people. Some antags like heretic and traitor can also be further modified, to give or take tc or give or take points.
A lot of traitor panels are fairly self-explanatory, but I still do recommend mucking about on a local to test and learn further.
### Misc buttons
Select outfit:
This is a button in the right click menu on humans, press it and you will get an interface which allows you to pick from already existing outfits, like assistant or captain and then instantly equip that onto the human you right clicked. That's just the basic functionality though, since it allows for custom made outfits to be saved and applied, so you only need to create the outfit once, this is usually a WHOLE lot easier for mass distributing gear than dropping the items.
Secrets panel:
Secrets, this command opens up a panel for you to use, it is full of different easier to use simpler events, for example highlander, denoted as "THERE CAN ONLY BE-". Again I cannot go through every button in here so you should try a few on a test server. The 2 most useful verbs in my experience are All areas powered and recharge SMEs, if your event seems like it's going to be cut short due to powerfails early in the shift you can use the recharge SMEs button to set engi back to full power and give the station enough juice to last longer, All areas powered is better if the SM has failed or your custom maps powernet isn't functional since it sets all areas within the station to be fully powered.
Command messages:
Create Command Report, this command is pretty simply and its what lets admins send command reports, all of everything in this panel is simple to understand and it's a more modern TGUI panel, the only thing which may confuse you is the subheading, basically it's if you want another sentence above your message. For example:
**Central Command**
*Department of John*
Crew please be advised John is coming. It is too late. You cannot stop John.
Trigger Events:
Trigger Event, this verb/command opens up a nice panel to select and cause events, for example you can use this command to spawn anomalies. This can be a great option if you wish to add a bit more chaos to the round, through say meteors. This panel has multiple different categories all of which are pretty intuitive, for example Entities are events that spawn mobs.
## Maps
This section of the guide will talk about loading, manipulating and changing maps, not HOW to map, if you want to learn how to map check out this guide by sans https://hackmd.io/@tgstation/SyVma0dS5
Changing the map to a custom one:
First up, use the Change Map verb. A menu will appear with the config maps at the top and at the bottom should be the option called `Custom`, select that one. You must then locate a .dmm file on your pc and click open.
You will then be asked about a map config, this is needed for a multi-z custom or one that starts with gravity or one that has a different base turf other than space station, if you click yes you must provide a .json file, which you can create using visual studio code. Here are two examples of these that you can copy paste and edit, for a bit more on this read https://hackmd.io/@tgstation/ry4-gbKH5#On-Multi-Z.
Multi-z:
```
{
"version": 1,
"map_name": "Your Name here",
"map_path": "custom",
"map_file": "your_station.dmm",
"shuttles": {
"cargo": "cargo_box",
"ferry": "ferry_fancy",
"whiteship": "whiteship_meta",
"emergency": "emergency_meta"
},
"traits": [
{
"Up": true,
"Baseturf": "/turf/open/openspace",
"Linkage": "Cross"
},
{
"Down": true,
"Baseturf": "/turf/open/openspace",
"Linkage": "Cross"
}
],
"job_changes": {
"Cook": {
"additional_cqc_areas": ["/area/station/commons/lounge"]
}
}
}
```
```
Single z with a different baseturf:
{
"version": 1,
"map_name": "Your station name",
"map_path": "custom",
"map_file": "your_station_name.dmm",
"space_ruin_levels": 0,
"space_empty_levels": 0,
"planetary": 1,
"shuttles": {
"cargo": "cargo_box",
"ferry": "ferry_fancy",
"whiteship": "whiteship_box",
"emergency": "emergency_box"
},
"traits": [
{
"Mining": true,
"Linkage": null,
"Gravity": true,
"Ice Ruins Underground": true,
"Weather_Snowstorm": true,
"Baseturf": "/turf/open/misc/asteriod/snow/icemoon"
}
]
}
```
If you use a map config, great job! That's all you have to do.
If you haven't used a map config and clicked no earlier you will be prompted to name your map (This will be displayed on the server in the The map is: section). After that you get to edit the shuttles for your station (mining, arrivals, escape and cargo), if you click no on this option you will have the metastation ones as the default.
After all this the name of your map should show up in the top right as the next map. I highly recommend testing your map before you run it as an event as you are likely to have missed something crucial.
Loading a .dmm file:
This uses Map Template Upload and Map Template Place to let you load a custom .dmm file, including a shuttle or just something else.
For Map Template Upload you select a .dmm file on your computer, click open and then select if it's a shuttle or a normal map.
You can then use Map Template Place to place down the uploaded .dmm file, just search for it using the searchbar and then select it. You can then choose to center the map template, doing so will place it so its center is roughly where you are, not centering it means that the map will be loaded with its bottom left where you are. You will then see a green fill in for where the map is going to be placed, you then just have to click yes for it to spawn in or no if you aren't happy with the placement.
A word of warning, if you load in a map that is too large the server may stutter a bit and if things on that map are illegal it can crash, so make sure to test this quickly on local before trying it on a live server.
Buildmode:
To enter buildmode you press f7, there should now be a few important buttons at the top of your screen one of the most important ones is "?" which gives you all the keybinds of your currently selected buildmode. By default right click removes something, and left click raises a tile if on space and a wall if on a tile.
The top left button is how you switch buildmode, by default it just says "basic buildmode", but clicking on it grants you a big ol menu with options to pick and choose from. For events I find advanced buildmode to be very helpful since it lets you copy things, thus letting you easily distribute special items that you have edited.
## Guidelines
This section is more about some guidelines and rules of thumb I think make for a good event, it is by no means comprehensive nor is it something you HAVE to follow, good events sometimes have to step out of these guidelines and these are again, my thoughts. https://tgstation13.org/wiki/Admin_Conduct#Event_and_Badminning_Guidelines is a great start to read about what is expected when you run an event.
All of these guidelines center around a main point, the player should be the focus of fun when planning, creating and running an event.
### Improvise, adapt, overcome
A good mindset to have when running events is that of the DM, the dungeon master, you should come into an event with a starting point and some starting hooks for that, but from there expand based on what players do, if you are hosting an event with one intended response from the players it will more often than not fail, because you cannot be in the head of 72 players at once.
Improvising parts of your event based on what players do is a big part of running an event, it requires thinking on your feet and it's something you get better at, but for a relevant example if players decide to not wear pants you might send a centcom inspector to get them to wear pants, and maybe they stand down, or they don't! And instead start a war over their rights to not bear pants, you should learn to be able to deal with both those things.
If there is one part of this guideline I find most important it's here, making your events reactive and adding elements of your own improvisation whilst playing off the players stuff is the best way to improve the amount of fun people have playing what you run.
### DMpc
This is more of a tabletop rpg concept, but essentially it's when the dungeon master makes an uber powerful player character that joins the party and defeats all the bad guys for them, this is as you can imagine, only fun for the dm. The intent of an event is to make fun for the players and having fun doing so, and you should avoid taking a heavy role in the event if said role sucks away fun from the players. For example you should maybe not spawn yourself in with a debug suit and go about killing the entire crew with an ensemble of one shot weapons. Another example can be the opposite, you shouldn't join the crew with all your gear to kill all your centcom interns you sent at them when they began the pantolution in full swing.
Personally I believe it is best to give most of the roles to the players where possible, but it isn't always possible, you might need to run a role yourself like a gameshow host, in these cases you can go a bit more all out but just try to not kill everyone or force everyone into listening to you monologue all round, think of it in tabletop terms as playing a barkeep.
### Closing
Even after reading this whole guide you might still be questioning yourself if you are ready to run an event, and I can tell you that you aren't but neither is anyone else their first time. Just do it. The best way to improve is through doing, adapting and progressively getting better.