* Adds Survivor Antag
* Adds Survivor Role
* Adds Survivor Rule ECS, adds a survivor role event, adds make antagonist to random global spawn spell
* Moves Survivor Ensurecomp to event handler. Makes Add Survivor Role a broadcast. Adds Survivor Component. Removes redundant briefing.
* Adds Survivor Antagonist role type for admins to keep track of this easier, adds it to Survivor.
* Adds access to survivor game rule system
* Adds Survivor Rule
* Adds end of round survivor text
* Adds end of round reporting logic. Adds logic to start the survivor rule.
* Changes desc from centcomm to shuttle
* survivor (S)
* Checks if they're alive on the shuttle instead of centcomm.
* ftl text selection based on number of survivors.
* Removed Survivor Antagonist, replaced it with Free Agent.
* Adds InvalidForGlobalSpawnSpell tag, checks for it on spawnspell, and adds it to a zombified person.
* Changes logic so we launch the game rule if it hasnt launched yet. Moves rule logic starting to server. Moved survivor rule logic out of event and into Start method.
* Fixes invalid entity issue
* Descs for Survivor Rule and Survivor comps
* Moves Survivor Rule to its own yml
* Checks for dead survivors, changes survivor checks for mind. Adds survivor comp to mind to fix any mindswap issues. Same for invalid survivor tag
* Changes shuttle xform call to just mapid
* Protoid fix
* THE WIZARD
* Wizard spawner
* adds the correct state
* Wizard preset and weight
* Fixes wizard rule
* Weight back to 100%
* Adds Random Metadata
* Wizard locs
* Puts requirements in the right place
* Adds wiz ghost spawner and mob
* wizard spawnpoint fix + shuttle mapping
* wizard loadout + fix wizard spawning + wizard random name
* comment
* Adds Wizard testing
* FIXES SHUTTLE ISSUE BASED REI
* THE WIZARD LOBBY SONG. Special thanks to song creator Chris Remo for allowing us to use this.
* Free Objective ECS + Base Free Objective
* Space Wizard Federation for Wiz Obj issuer.
* Wizard Objectives
* Moves wizard shuttle to base wizard rule. Gives Wizard their objectives. Removes WizardRule
* Renames midround to subgamemodes. Adds wizard sub game mode.
* Adds SubWizard to SubGameModesRule. Adds a SubGameMode with no wizard. Adds No SubGamemodeRule for Wizard preset
* Wizard midround event
* Fixes wizard midround
* Wizard Guidebook
* Removes todo
* Fixes text
* Removes wizard rule ECS, not needed
* Wizard jetpack
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
* fixed all yml and cs
* Subjective Rearranging
* fixed my accidentally removed xml endline
* Accidentally included for a different PR
* Added .ThenBy and cleaned up newplayer.yml
* engineering guidebook improvements
* whoops
* Changes
* this game is en-US, so it shall be gasses, not gases
* make changes to AccessConfigurator.xml, SolarPanels.xml, TeslaEngine.xml
---------
Co-authored-by: ScarKy0 <scarky0@onet.eu>
* First pass at new Criminal Records Computer
need buttons to highlight.
* Filter status tabs/buttons now activate correctly via UpdateState
* Removed unneeded Directives
* Fix typo + undo VSCode changes
* Implement Emo Feedback
Loc NA and use inject deps
Cannot use inject deps on sprite system.
* try to undo vscode launch.json change
* Added requests + Filter dropdown list + jobs
Fixed maintainer fix requests,
Added Job to announcement channel output
Removed toggle buttons in-place of a dropdown list
* Fixed missed merge conflict
+ fixed an bug with filterstatus not showing on re-open ui
* Update criminal-records.ftl
Fixed lint error. whoops.
* Update Content.Server/CriminalRecords/Systems/CriminalRecordsConsoleSystem.cs
typo
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
* impliment chromiumboy feedback
hopefully this will do it....
---------
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Significantly updates the Engineering guidebook (more explicitly the Atmos section) to have a lot more relevant and useful information.
Right now engineering has been getting update after update with no real change to the relevant guidebook entry. This has lead to a lot of out of date information and bad practices being prevalent in the guidebook, something that pains me to read.
* first migrate
* clean up prototypes
* Update polymorph.yml
* Update flora.yml
* and this one
* and this one x2
* and this one x3
* Update migration.yml
* Borg type switching.
This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything.
New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis.
These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI.
The modules that each borg type starts with:
* Generic: tools
* Engineering: advanced tools, construction, RCD, cable
* Salvage: Grappling gun, appraisal, mining
* Janitor: cleaning, light replacer
* Medical: treatment
* Service: music, service, clowning
Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5.
Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire.
The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs.
Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those.
The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future.
There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code.
* Fix sandbox failure due to collection expression.
* Module tweak
Fix salvage borg modules still having research/lathe recipes
Engie borg has regular tool module, not advanced.
* Fix inventory system breakage
* Fix migrations
Some things were missing
* Guidebook rewordings & review
* MinWidth on confirm selection button
* took a two month nap. accidentally pushed too many buttons. let's try this again. added thieves to antagonists.xml
* even after that nap, i don't feel well-rested at all.
* please don't kill me for using webedit
* capitalization, typo
* Apply suggestions from code review (more period moving)
Thanks Evan, very cool
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* guess you could say im not pro-proper noun
* typo
* Update Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml
* ok
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
* First clumsy implementation of guidebook protodata
* Support for Properties, format strings
* Better null
* Rename file
* Documentation and some cleanup
* Handle errors better
* Added note about client-side components
* A couple of examples
* DataFields
* Use attributes like a sane person
* Outdated doc
* string.Empty
* No IComponent?
* No casting
* Use EntityManager.ComponentFactory
* Use FrozenDictionary
* Cache tagged component fields
* Iterate components and check if they're tagged
* Adds fibers-insulative-frayed to fibers.ftl and relevant fibers-insulative-frayed components to budget insuls
* +1 to the "different types of fibers in the game" info under the forensics guidebook entry (pray this is actually correct and accurate)
* main antag page + minor antags
* nuuk operatives (greenland)
* "coup d'flop" = "flukies" but for revs
* manifest edgelord
* traitor tot (potato)
* they're coming to get you, barbara
* general changes. posters.
* tfw last minute commit
* traitoration rewritification
* created thieves.xml
* thieves, wow!!