# Events on the discord this time ## Introduction: This serves as a draft of a series of ideas to allow players more ways to communicate with admins in regards of events. Currently we have the forums but I feel like the faster communication discord allows for is a lot more optimal for spitballing and eventually creating a good event. I would however not be opposed to a revival of the events workshop on the forums though I'm sure that is a "seeding campbell" concept at the moment. ## Idea: * A discord tickets system (akin to help-ticket) for event submition * All trialmin+ have access to all the tickets * The channel itself (beyond the tickets) has a message containing links to a guide to events which contains guides to VV, buildmode, some general "event" admin tools and tips and guidelines for running an event * There will be a guide to event runner included BUT the intention is also to just allow admins to run the events themselves if they wish * A format will also be provided asking the player for what servers they play on and what time generally works best for them. ## Goals * Encourage player-admin cooperation * Allow for players to create their event ideas in game * Allow for rapid communication and nailing down of an event ## Non-Goals * Discourage admins from running events * Foster a negative spirit around these events * Set the bar for event running unachievably high ## Implementation I'll go through here and explain how this would work on a player side. I'm not fully sure of how discord systems work but a help-tickets style would most likely function for this (where a player can create a ticket(If desired this ability could be limited to admin request only but I feel that may defeat a part of the purpose)) ### Player 1. I am a player who wishes to run an event about 3 prisoners with abilities joining the station, I do not know if this is possible with the tools. 2. Alternate to steps 3-5 I simply ask an admin if my idea is possible. 3. I skim the guide for events with ctrl+f for spells because I want one of the prisoners to be able to cast flicker lights. 4. I then check if martial arts are possible, and find that they are. 5. For the third prisoner I check if I can give them a battlecruiser summoner item! Skimming the guide I find that there is a panel to spawn stuff with. 6. Feeling confident I create (or ask for a ticket to be created as disclosed above) a ticket in the events channel giving some details as to the plan for this event and what I want to do. 7. After a day or two the admin JohnA looks over my ticket and thinks the event sounds neat, and they plan to run it on Sybil in 4 hours. 8. I check if I am available and fortunately I am, I relay this to JohnA. (assuming non-available the admin can ask for consent to run the event anyhow or schedule another time). 9. We connect to the servers and JohnA asks me to orbit his ghost, JohnA is not a trainer so they do not provide me with the event runner role and instead asks over the discord what I want to happen. 10. JohnA sets up the prisoners and sends them to the station alongside an announcement. 11. I observe the round and notice that security just chose to kill one of the prisoners which was not the intent! 12. I talk to JohnA on our event ticket and ask what I should do next? My event has been derailed! 13. After some discussion I send down a centcom inspector to check up on the prisoners and since they notice the dead body they ask sec to revive it and they comply. 14. I decide to call it a night after this basic premise is done since its getting quite late for me and I leave the rest in the hands of JohnA. 15. Successful event. This is based of a real one I ran once. ## Potential issues and how to meet them ### Non-goal 1 A potential issue I've heard from some members of the admin team is that they feel this idea might discourage admins from running events of their own creation. To me this is less reasonable because the events workshop very much doesn't seem to have incited this and admins still run their own events, due to this I don't forsee this being a problem. IF it still turns out to be a problem a possible fix would be to keep player events as once every two weeks (or other time frames) only so admins interested in running their own events are free to do so ### Non-goal 2 A negative spirit around these events may form from the more hostile edges of our community, there can be a general stigma around admin events and if one flops the admins may just recieve bombardment from the playerbase. This is the part that gets tricky, how do you really solve this? Tips for events might be a good solution for an event not to go wrong but if it does admins may need to come in with the good ol "MUTE OOC" or speak to people who are going to far (like kys or metagrudging). ### Non-goal 3 In regards to the bar being too high for anyone to reasonably be able to run an event it will simply be up to the guidelines put forward of running an event and up to us admins to not shoot down every idea that doesnt include some massive shake up and ground breaking plot. ## Checklist * Get approval to create a discord thread forum (like player-dev-feedback) about events * Outline rules for that space * Create a guide to event running, giving a basic rundown on what is and is not possible using the tools admins have available, and how to use said tools * Create a role for admins which players can ping when they want to run their events * Create the space itself and announce it with a newsbus message ## The Workshop ### What is this place? ### This space is for events This space is made to let people create event ideas and then either run it themselves or have an admin run it. If you've run an event you can also use this place to store said event, this is especially easy with event maps. ### This space is for getting help with events! If you are an admin or a player wanting to say create a map it can often be difficult to do so alone, in those cases you can come here and get help from anyone interested. Same goes for any unique sprites you might want! ### Rules: #### Use this place in good faith Events are made for fun, and you should not create an event in bad faith, either out of spite or malice. Don't pitch events that attempt to harm the server or any specific person. And do not spam pings at anyone to run your event or help you map or sprite for the event. #### Keep feedback civil Remember, this is a place for fun event ideas, if you have criticism keep in mind many people have not ran an event before nor pitched one, so make it constructive, what works and what doesnt and why. Do not attempt to discourage anyone from working on or running events. #### Event runners are bound by admin conduct If you get event runner remember that you have to keep in mind https://tgstation13.org/wiki/Admin_Conduct, so you cannot for example create an event where there is a super soldier who has to kill everyone with an instagibb rifle and then play as said super soldier. ### Template Elevator Pitch(a short blurb about the basic idea behind the event): Requirements for running (Pop level, threat level, time in the round etc): Basic plan for the event: Files needed to run the event (Icons and or map files): ## 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 ghostslets 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 verb/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 woefully short due to something like 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 verb/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, you might need to run a role yourself like that of 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. Just do it. The best way to improve is through doing, adapting and progressively getting better.