* Fix some rounds failing to end due to mind roles
Fixes#32791
This is caused by ShowRoundEndScoreboard running into a bug trying to display antags: some player is showing up as antag with MindIsAntagonist(), but has no antag roles listed in MindGetAllRoleInfo().
This was caused by one of the roles of the player having the Antag boolean set, but having no AntagPrototype set.
The responsible mind role appeared to be MindRoleSubvertedSilicon which is missing a set for the SubvertedSilicon antag prototype.
I also added resilience to the round-end code to make it so that an exception showing the scoreboard (and sending the Discord message) would not cause the round end logic to completely abort from an exception.
I am planning to add an integration test to cover this bug (no prototype in mind roles), but I'll leave that for not-the-immediate-hotfix.
* At least one maintainer approved this tiny PR without reading it, not naming names.
* Increase AI Playtime Requirement
* Change silicon supervisor message
* Slightly lower AI time requirement and change borg supervisor to be just its laws for now.
* Leave the supervisor to another PR
* Comply with maintainer request
* Comply with another maintainer request because they forgor.
What happened was that the new tech anomaly randomly triggered a signal sink on the portable generator, which is currently broken and throws an error if the that sink is activated.
The resolve needed logMissing = false because it does not expect the ActiveGeneratorRevvingComponent to exist.
* Make APC UI work correctly with multiple users
* Check access only on client, when constructing UI
* Do TODO (Thanks, Robust 236.1)
---------
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
* Make NameIdentifier Ids get refreshed after round restarts
Before this commit the existing values would just get shuffled.
This means that eventually the server would run out of ids to give to
new entities for different groups. As a result everything would get id 0
* Comply with what seemingly is the convention for sawmills
* Make it impossible to insert a bounty with a duplicate id
* Reduce duplication
* Remove unused sawmill
* Fix rustbrain and skill issue
* Aaaa
* Apply suggestions from code review
---------
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
* 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
* Fix error log when recycling something with small material counts.
MaterialStorageSystem.SpawnMultipleFromMaterial now doesn't call StackSystem.SpawnMultiple if it tries to spawn zero. This happens because the recycler calls SpawnMultipleFromMaterial for everything recycled, even if the amount it has stored is < the amount for one sheet.
* Update Content.Server/Materials/MaterialStorageSystem.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* First commit
* I forgot silly me
* Actually added comments
* spellin
* fixes
* more blacklists
* Minor fixes
* Speech Verb also changes now
* Simple name stuff
* Other fixes
* remove one line of whitespace
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>