Commit Graph

917 Commits

Author SHA1 Message Date
Vortebo
3ab1db99c1 Relic station (#34988)
* General structure mostly complete.

* I thiiiiiink I am done with air alarms. And pipes. Maybe.

* Decals, shuttle, rust.

* Small fixes.

* Shuttle more or less where I want it.

* Security is prettier, spawns are more fun.

* Shuttle done. Almost done with one checklist.

* Map renders now.

* Checklists done.

* Adjusted min player count.

* Should pass the Build & Test Debug check now.
2025-02-09 16:24:13 -07:00
Spessmann
afede7d4d0 Removes Cog station (#34996)
freedom!!!
2025-02-09 14:01:31 -07:00
deltanedas
1f5fab5761 move lathe recipes into packs (easier for forks and maintaining) (#33095)
* add LatheRecipePackPrototype

* change Lathe and EmagLathe to use packs

* add AddRecipesFromPacks helper to SharedLatheSystem

* update lathe logic to work with packs and clean up some stuff

* migrate individual recipes to recipe packs

* update client

* remove node/artifact scanner from techs

* :trollface:

* fix test and make it include emag recipes

* add test that every dynamic recipe must be researched

* pro

* fix

* fix

* fix all tests, genuinely good test i wonder who made it

* add unused uranium and incendiary drozd mags to tech and lathe

* add recipes

* add incendiary prototype

* undo some changes

* troll

* :trollface:

* true

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>

* shitmed real

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>

* update funny test

* :trollface:

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
2025-02-07 19:22:49 +01:00
ActiveMammmoth
ca4e99b819 Store Test Change (#34844) 2025-02-03 17:11:06 -05:00
Spessmann
a07df05858 New Highpop map: Convex recreational complex (#33346)
* start ig

* command work +AI

* finished bridge, added signs to departments

* engi partly done

* finish engi + atmos except for cams

* added med yippie

* carGODO

* nerd department finished

* se(x)c finish

* courtroom + service power

* man im tweaking out

* service propa done

* hallways

* added cams everywhere and named all the doors :pain:

* arrivals maints + exterior catwalk

* more maints

* voxob

* draft done

* holopadpilled + gaspipesensor based

* added convex name everywhere it needed to be

* nvm i guess we dont do oxford comma

* redid ALL THE HGOLOPADS FAAAAAAAAAAAAAAAAAAAAA

* Fix conflicts?

* ok let me try something

* this works right?

* atmos updated + jani lights

* uniform hallway tiles +roundstart TEG

* fixed some hidden atmos stuff

* Update map_attributions.txt

* :finnadie: no map review ...

* the fog is coming

* maints theater redone

* light dirt and the murder of most trims

* 💔

* decal based and tileoverlay pilled

* updated arrivals/library

* bungus

* yvgh

* 6 hours later...

* finished for real?
2025-01-29 19:44:45 -07:00
Ignaz "Ian" Kraft
033f8444ba added missing allowed department to the restricted severity (#34558)
* added missing allow job to the base restricted severity

* no need to make a list

* no more linq in ContrabandTest

* less nesting in ContrabandTest
2025-01-23 09:01:45 -05:00
compilatron
d0b2e46c7c Plasma Station (#33991)
* Plasma Station initial commit

* Map fixes 1

Expanded science's SMES array
Added advanced SMES
Redone stamped documents with custom stamps
Expanded atmospherics with more storage tanks
Added status displays
Add missing beacons to solars
Replaced the passive gates in science with valves
Removed protolathe in engineering
Added guitar to CE office
Replaced throngler plushie with weh cloak
Add a lattice tile outside the atmos burn chamber and storange tanks
Added atmos network monitor in bridge

* Add cargo and emergency shuttle

* Updated maps

* Add plasma to map testing list

* Map fixes 2

Reworked pipenets to not go under walls
Redid salvage and disposals
Reworked the bar to include a new bar extension facing the pool
Replaced arrivals cryo with an arcade
Replaced the toilets in the service plaza with cryo
Removed the cryo in dorms
Added more details to hallways
Redid tools room to include a front desk for the janitor closet
Reconnected sci to power roundstart
Removed some unideal spawns
Expanded the TEG airlock to be 2x3 instead of 1x3
Reduced the size of the SMES bank from 10 to 6
Disabled the plasma miners (downstreams or admins can re-enable them)
Replaced illegal maint items

* Fixes a 6 pack destroying the universe

Ok maybe cracking a cold one with the boys wasn't a great idea.

* Map fixes 3

* Quick research assistant fix

* Map fixes 4

* Map fixes 5

* webedit go brrrt

* Map fixes 6

* Map fixes 7

* Map fixes 8

* Fixes non-existent object

It's amazing this game runs at all

* Map fixes 9

* update pools

* Map fixes 10

* forgot to clear my multitool

I love mapping I love mapping I love mapping I love mapping I love mapping

---------

Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
2025-01-16 00:02:14 -07:00
Pieter-Jan Briers
af75c1a92b Fix compilation errors in tests from update (#34272)
Required for https://github.com/space-wizards/RobustToolbox/pull/5590 to not cause compile fails, but can be merged on its own
2025-01-07 19:27:54 +01:00
Deerstop
03b34f06cc Elkridge Depot (The station formerly known as Cell) (#34085)
* named apcs, doors, air alarms, cameras, fire alarms, substations, SMESs

* updated PostMapInitTest.cs to include Cell

* added psychologist spawn

* fixed scanner console link, fixed disposals conveyors, and more

* added janitor service lights, maints firelocks, and more

* added more fun maint rooms

* improved head offices, kitchen, psych. added maints between science and arrivals

* fixed spawners placed over solid objects

* added unique evac shuttle, the Cilium

* evac shuttle is now orientated correctly

* added unique cargo shuttle

* updated kitchen area

* renamed Cell Station to Elkridge Depot, removed most main hall airlocks for smoother travel

* general last-minute touch-ups around the bridge and sec

* changed station name in PostMapInitTest.cs
2025-01-03 12:32:46 -07:00
Leon Friedrich
97dd5513f5 Ignore audio entities in SpawnAndDeleteEntityCountTest (#34021) 2024-12-28 11:54:32 +11:00
Leon Friedrich
06e2bba8ab Toolshed refactor (#33598)
* Content changes for engine toolshed PR

* add contains command

* more permissive commands
2024-12-21 17:45:48 +11:00
ScarKy0
03a54e90f5 Increase syndicate uplink discount amount to 6. (#33950)
* Increase uplink discounts from 3 to 7

* nevermind, 6
2024-12-20 20:14:08 -06:00
TytosB
043510fb51 New mid pop station: Loop (#33697)
* many changes

* contentingregrationtests

* serialized invalid removed

* blank

* "Changes and fixes as suggested"

* blank

* blank

* added desk bells

* engi rework rework rework

* added gate to content integration

* tweaks

* aaa

* bbb

* added holopads

* ccc

* Update default.yml

---------

Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
2024-12-19 02:38:22 -07:00
Ed
a77fcdec76 Gate map (#32032)
* import

* remove perma asteroid

* remove cyrillic

* ok

* Remove Chromite island, Move AI, add cameras

* remove mapped garbage

* add station anchors

* admeme teleporter

* remove wapr points, add nav beacons

* telecomm, camera servers, some atmos fix

* crew server

* remove white plating, fix MANY pipestacking

* playtest bugs fixing

* big update

* bunch minor fixes

* Update gate.yml

* out of rotation
2024-12-17 13:06:33 +03:00
Tayrtahn
cf738857fe Add a test to check that lathe recipes are possible (#33868)
* Add a test to check that all lathes accept the materials for all their recipesy

* Add check for storage limit

* Track total recipe material volume

* Check dynamic and emag recipes too

* Move AllLatheRecipesValidTest from ResearchTest to LatheTest

* Extremely minor modernization
2024-12-16 13:34:02 +01:00
Southbridge
e4e84aea74 New Low-Mid Pop Station - Amber Station (#33441)
* Initial Commit with two departments done

* Checkpointing work

* Added most of service and science

* Started work on medbay

* Modified TEG setup and set up atmos pipes for engineering

* Re-added medbay, added chapel and janitorial, started routing disposals and generally the final layout of the map is coming together

* Plenty of additions, too many to list in a commit message

* Major update

* Nearly done with the map, just have to do decals and emergency lights

* Added all decals, only thing missing is department signs

* Toned back the dirt decals a bunch, added hallway signs and other decorations

* Finishing touches on the map before testing.

* Fixed invalids

* Renamed the station to Amber, and made a couple adjustments

* Completely redid cargo, added maints around sec

* Added Amber to the map post init integration test

* Many small updates addressing issues.

* Ran a script to update all the camera names, also ran fixgridatmos, fixrotations, tilewalls, and variantize

* Started addressing some of the issues brough up by Emisse and others

* Addressed all issues mentioned by reviewers. Added mail system.

* Wrapped up meeting all the issues raised by reviewers, also did a bunch of testing and resolved issues found during those tests

* Addressed additional requested changes, and nabbed some ship designs from Frontier. Redesigned south east maints and surrounding meteor nets based off of those designs

* Making a couple more requested changes

* Reduced the amount of Nitrogen Closets, made several small adjustments. Ready for review again!

* Removed invalids!

* web edit lmao

---------

Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
2024-12-02 19:24:37 -07:00
Pieter-Jan Briers
4f3db43696 Integrate Modern HWID into content
This should be the primary changes for the future-proof "Modern HWID" system implemented into Robust and the auth server.

HWIDs in the database have been given an additional column representing their version, legacy or modern. This is implemented via an EF Core owned entity. By manually setting the column name of the main value column, we can keep DB compatibility and the migration is just adding some type columns.

This new HWID type has to be plumbed through everywhere, resulting in some breaking changes for the DB layer and such.

New bans and player records are placed with the new modern HWID. Old bans are still checked against legacy HWIDs.

Modern HWIDs are presented with a "V2-" prefix to admins, to allow distinguishing them. This is also integrated into the parsing logic for placing new bans.

There's also some code cleanup to reduce copy pasting around the place from my changes.

Requires latest engine to support ImmutableArray<byte> in NetSerializer.
2024-11-12 01:51:54 +01:00
FluffMe
08d0077719 Fix TestSuicideByHeldItem and TestSuicideByHeldItemSpreadDamage (#33030) 2024-10-28 11:52:49 +01:00
Jajsha
8cf5f93b9f Fix starting gear multiple storage fills and tests (#32718)
* fix things

* maybe fix everything
2024-10-20 14:43:17 +11:00
Leon Friedrich
4e0018697f Add role prototype validation tests (#32801)
* Add role prototype validation test

* Rejig GetPrototypesWithComponent

* More tests n stuff
2024-10-14 14:05:25 +11:00
Errant
93c7bdc134 Mind Role Entities (#31318)
* Mind Role Entities wip

* headrev count fix

* silicon stuff, cleanup

* exclusive antag config, cleanup

* jobroleadd overwerite

* logging stuff

* MindHasRole cleanup, admin log stuff

* last second cleanup

* ocd

* minor cleanup

* remove createdTime datafield

* now actually using the event replacement I made for role time tracking

* weh
2024-10-10 10:48:56 +02:00
Errant
a7e29f2878 Computer wirepanel (#32273)
* Computer wirehacking

* Power wire now shocks

* deconstruction fix

* updated tests

* Better parenting

* maintenance panel sprite

* new sprite for maintenance panel open
2024-09-23 12:51:48 +02:00
ShadowCommander
d4a5bc8d6b Fix unbuckling others when clicking on the strap entity (#29998)
* Add failing unbuckle InteractHand test

* Skip trybuckle if strap doesn't have space

* Unbuckle others not just user

* Fix test failing due to delay

* Change to raise event instead of calling OnInteractHand

* Add test for buckle and unbuckle on InteractHand

* Add tick delay

* Remove unneeded tick delay and clean up

* Comment code

* Cleanup

* Swap to fastest checks first

* Fix reading empty sequence when there are no buckled entities
2024-09-19 09:55:26 +10:00
deltanedas
fbc1cf2d8f add test for lathe recipes having results (#32100)
* add test for lathe recipes having results

* id

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-15 02:27:05 +10:00
Fildrance
a58252f45e feat: #26107 uplink discounts for traitors (no nukies for now) (#26297)
* feat: #26107 uplink discounts for traitors and nukies

* refactor: #26107 extracted discount label from price of StoreListingControl

* refactor: minor renaming

* refactor: parametrized adding discounts to uplink store

* fix: #26107 prevent exception on empty discountOptions

* feat: uplink now have 'Discounted' category which contains all discounted items on this session.

* after merge fixups

* rename discount categories according to common sense

* refactor: DiscountOptions is now optional (nullable) on ListingData

* add nullability check ignore for already checked listingData.DiscountOptions

* fix after merge store menu ui

* remove unused using

* final fix after merge conflicts

* [refactor]: #26107 fix variables naming in UplinkSystem

* fix: #26107 fix after merge

* refactor: #26107 now supports discountDownUntil on ListingItem, instead of % of discount

* feat: #26107 support multiple currency discount in store on side of discount message label

* refactor: #26107 extracted discounts initialization to separate system. StoreDiscountData are spread as array and not list now

* refactor: #26107 move more code from storesystem to StoreDiscountComponent

* refactor: #26107 separated StoreSystem and StoreDiscountSystem using events

* fix: #26107 placed not-nullable variable initialization in ListingData for tests

* refactor: #26107 minor renaming, xml-docs

* fix: #26107 changed most of discounts to be down to half price for balance purposes

* ids used in with discounts are now ProtoIds, dicountCategories are now prototypes, code with weights simplified

* decoupled storesystem and store discount system

* xml-docs

* refactor:  #26107 xml-doc for StoreDiscountSystem

* is now a thing (tmp)

* fix: compilation errors + StoreDiscountData.DiscountCategoryId

* refactor: rename ListingDataWithCostModifiers, fix all cost related code, enpittyfy performance, uglify uplink_catalog

* refactor: removed unused code, more StoreDiscountSystem docs, simplify code

* refactor: moved discount category logic to respective system, now creating ListingData c-tor clones all mutable fields as expected

* refactor: rename back (its not prototype)

* refactor: move ListingItemsInitializingEvent to file with handling logic

* refactor: comments for StoreBuyFinishedEvent handling, more logging

* refactor: moved StoreInitializedEvent, xml-doc

* refactor: simplify StoreDiscountSystem code  (reduce nesting) + xml-doc

* refactor: restore old listing data cost field name

* refactor: fix linter in uplink_catalog.yml

* refactor: xml-doc for ListingDataWithCostModifiers

* refactor: limit usage of ListingData in favour of ListingDataWithCostModifiers

* refactor: purged linq, removed custom datafield names, minor cleanup

* refactor: removed double-allocation on getting available listings

* refactor: StoreSystem.OnBuyRequest now uses component.FullListingsCatalog as reference point (as it was in original code)

* fix: minor discount categories on uplink items changes following design overview

* refactor: StoreBuyListingMessage now uses protoId and not whole object

* refactor: store refund and discount integration test, RefreshAllListings now translates previous cost modifiers to refreshed list, if state previous to refresh had any listing items

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2024-09-05 22:12:39 +10:00
Julian Giebel
417d3a87a2 Station Anchor (#26098)
* Work on abstracting out chargeup functionality/ui from grav gen

* Work on station anchor

* Finish implementing station anchors

* uhh yeah

* ok.

* fix tests

* whoops

* Get the last extraneous yaml fail

* PJB review

* beast mode... ACTIVATE!

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: EmoGarbage404 <retron404@gmail.com>
2024-08-31 10:40:28 -04:00
Pieter-Jan Briers
2d43bb6b38 Fix broken tests directly mutating entities from wrong thread. (#31647)
* Fix broken tests directly mutating entities from wrong thread.

* fix build

* gundam

* stuff

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-08-31 15:49:20 +10:00
metalgearsloth
849d3d9f5c Fix test threading (#31669) 2024-08-31 12:35:30 +10:00
deltanedas
3bdd2e3a87 reduce lathe recipe copy pasta (#31515)
* add inheritance to lathe recipes and make result an override

* add GetResult method to lathe system

* make other parts of the code use GetResult

* clean up the stock parts yml

* remove unused apu boards from dynamic recipes

* make inverse dictionary public so test doesnt have to copy paste

* revert result override stuff

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-29 15:36:29 -04:00
metalgearsloth
f0615ec3c8 Fixup playerspawn stuff (#31546)
* Fixup playerspawn stuff

- Also removed arrivals forcing, this should just turn containerspawnpoint off.

* fix this one

* test fix

* really fix
2024-08-29 15:27:47 +10:00
metalgearsloth
99a41a12ab Fix PostMapInit tests not considering job containerspawns (#31538)
* Fix PostMapInit tests nto considering job containerspawns

* fix
2024-08-28 12:42:06 +10:00
metalgearsloth
2e1b486e8b Add BUI ctor tests (#31463)
5 lines of eaten iocmanager.injectdependencies led to this.
2024-08-26 17:39:48 +10:00
Emisse
af2ee4a9e6 remove origin (#31059)
derotate origin
2024-08-15 16:22:01 -06:00
Emisse
9c1b8c18de remove atlas, cluster, europa, saltern (#31058)
* goodbye sweet maps

* Update EvacShuttleTest.cs

* Update EvacShuttleTest.cs

* fix tests

* fix tests

* nightmare nightmare nightmare

* rider is fucking me

* jesus christ
2024-08-15 15:10:06 -06:00
IProduceWidgets
07ec00ed05 refactor event schedulers to use explicit game rules (#29320)
* works, still has testing values, im sure I did stupid shit.

* shitvent crapfactor

* snap extra word out of existence

* shit I died of old

* remove useless inaccurate design comments

* Oopsie, handle requirement params in RandomRuleSystem too

* I'm a slash slinging hasher

* Address reviews, add admin alerts I forgor

* EntityMan saves the day

* address reviews 1

* eh, I actually don't care about the cargo gifts thing.

* started

* Do reviews

* you actually meant 1.2 lmao

* dependency inheritance is a fickle bitch

* I have no idea.

* Threads are for sheets not computers.

* fix traitor rule test

* fix round type tattling

* break things

* It worky

* Toolshed makes we want to drink depresso.

* Finished?

* remove debug values

* timings

* use defaults

* alphabetize

* bobby drop tables

* Float required fr fr

* continue

* more continence

* uno mas

* obsolution

* cleanup and documentations

* Yell at self

* use the right value defaults

* housekeeping
2024-08-14 15:21:01 +10:00
Spessmann
208b1d23b8 Added Cog(map) and its own evac shuttle (#30840)
* Added new map Cog and its own evac shuttle

* removed cog from default.yml so all checks will pass

I added cog here because i thought it might need to be here for map choosing??????????? ill add it back if needed

* updated cog and fixed a bunch of stuff that was not visable in the image, also nerfed the singo so it no longer solos

* added renault spawner that was missing and changed some minor stuff

* moved a escape pod from med/sci hallway to northern maints

* added shutters to the brig and added vents and scrubbers where they were missing in the halls

* extended salv's docking port so they can dock

* Fixed according to cog review thread

* fix pools

* fix PostMapInitTest

* Update MapLoadBenchmark.cs

* added cap and hop spawn that i just forgot to add???????????????????

* fixed again

---------

Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
2024-08-13 13:27:24 -06:00
Scribbles0
220aff21eb Melee Executions (#30104)
* melee executions

* fix damage bug

* cleanup

* address reviews hopefully

* resistance bypass mechanic

* component changes

* self executions (not finished yet)

* self execs part two

* ok i fixed things (still not finished)

* finish everything

* review stuff

* nuke if (kind = special)

* more review stuffs

* Make suicide system much less hardcoded and make much more use of events

* Fix a dumb bug I introduced

* self execution popups

* Integration tests

* Why did they even take 0.5 blunt damage?

* More consistent integration tests

* Destructive equals true

* Allow it to dirty-dispose

* IS THIS WHAT YOU WANT?

* FRESH AND CLEAN

* modifier to multiplier

* don't jinx the integration tests

* no file-scoped namespace

* Move the rest of execution to shared, create SuicideGhostEvent

* handled

* Get rid of unused code and add a comment

* ghost before suicide

* stop cat suicides

* popup fix + small suicide change

* make it a bit better

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
2024-08-11 13:05:54 +10:00
metalgearsloth
ecf278a89b Make clickable 1% nicer (#29706)
* Make vox roundstart

I believe all the issues are fixed.

* Click detection bandaid

* Make clickable 1% nicer

Still bad. Still doesn't handle multi-viewports well.
2024-08-09 17:05:12 +10:00
slarticodefast
da0b8d4731 remove UntrackedMapBoundUserInterface (#30752) 2024-08-09 15:24:49 +10:00
ShadowCommander
9645f5528b Strip drag drop test (#30754)
* Add test for drag drop to open strip menu

* Make screencoords change based on deadzone
2024-08-08 12:12:01 +10:00
metalgearsloth
9a8620d9d8 De-duplicate loadout gear (#30341)
* De-duplicate loadout gear

Needs supporting code, probably with an interface with StartingGearPrototype which would also use it, but I regexed the yaml.

* Code updates

* Remaining yaml

* Fix automatic naming

* raiseEvent

* Don't code when tired kids
2024-08-05 00:42:25 -04:00
DrSmugleaf
54d5bd266c Add mapping editor (#23427)
* Add mapping editor (#757)

* Remove mapping actions, never again

* Cleanup actions system

* Jarvis, remove all references to CM14

* Fix InventoryUIController crashing when an InventoryGui is not found

* Rename mapping1 to mapping

* Clean up context calls

* Add doc comments

* Add delegate for hiding decals in the mapping screen

* Jarvis mission failed

* a

* Add test

* Fix not flushing save stream in mapping manager

* change

* Fix verbs

* fixes

* localise

---------

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2024-08-04 13:31:45 +10:00
Nemanja
2c26be606f Add support for printing reagents in lathes (#30476)
* Add support for reagents in lathes

* missing locale
2024-08-01 14:15:05 +10:00
metalgearsloth
778bfe3355 Add test for anchored prototypes (#30526)
Nothing fails at least but at some point will let us remove some hacky engine code.
2024-07-31 21:31:41 +10:00
osjarw
669cc55ba4 Allow the creation of recursive HTNs (#30138)
Allow recursive HTNs
2024-07-30 12:18:53 +10:00
Plykiya
7388b91ef5 Replace noSpawn: true with categories: [ HideSpawnMenu ] (#30100)
* NOW THAT'S A LOT OF FILES

* categorization

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-07-25 05:24:00 -07:00
Errant
bf1450fdc8 Fix replayghost spawning location (#30252)
Fix replayghost spawn
2024-07-22 20:32:30 +01:00
IProduceWidgets
c7ff647cb3 Nukie Outpost is no longer a station map (#30090)
* I dunno, break shit I guess.

* Actually fix some shit for once.

* test flakey or me flakey?

* Test were not flakey, they just didnt make any sense anymore.

* more stationy tests

* undo abuncha shit I can set in yml instead

* forgor an assert

* unneeded usings

* 1984

* I made github angy

* yoink

* the end is never the end is never the end is never the end is never the end is never the end is never the

* Im going to commit sudoku
2024-07-21 01:26:30 -06:00
metalgearsloth
f969fd2bfb Update submodule to 228.0.0 (#29947)
* Update submodule to 228.0.0

* Fix every single test

* Also this one
2024-07-13 16:05:32 +10:00
Tayrtahn
3388c0dcaa Fix antag objectives always overshooting MaxDifficulty (and kill tries20) (#29830)
* The death of try20

* Add integration test for traitor gamerule

* Fix max difficulty being overshot

* Check at least one objective is assigned

* EntProtoId
2024-07-13 14:14:30 +10:00