Commit graph

8904 commits

Author SHA1 Message Date
Morb0
74885605cf Fix upstream 2024-10-15 18:13:43 +03:00
Morb0
0eba25c0eb Merge remote-tracking branch 'wizards/master' into upstream-sync
# Conflicts:
#	.github/CODEOWNERS
#	Content.Server/GameTicking/Rules/NukeopsRuleSystem.cs
#	Content.Server/Station/Systems/StationSpawningSystem.cs
#	Resources/Prototypes/GameRules/events.yml
#	Resources/Prototypes/GameRules/midround.yml
#	Resources/Prototypes/GameRules/roundstart.yml
#	Resources/Prototypes/Loadouts/loadout_groups.yml
#	Resources/Textures/Clothing/Head/Hats/warden.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/equipped-INNERCLOTHING-monkey.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/inhand-left.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/inhand-right.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce_turtle.rsi/meta.json
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/equipped-INNERCLOTHING-monkey.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/equipped-INNERCLOTHING-monkey.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/inhand-left.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/inhand-right.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce_turtle.rsi/meta.json
#	Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json
2024-10-15 17:04:40 +03:00
metalgearsloth
573f490896
Fix tech anomaly nexttimer (#32805) 2024-10-14 18:06:18 +11:00
ScarKy0
5be82d2a7f
Cyborg module action icons (#32505)
* Init

* added jani and medical

* + sci and service modules

* + syndi modules

* fixing up

* geiger counter stuff
2024-10-14 18:05:40 +11:00
Kevin Matuschzik
906913563e
Fixed portal artifacts targeting the Ai (#32677)
* Added checks to not target AIs and people in containers

* made the change to use IsEntityInContainer. Much Better!

* returned old Mindquerry and removed wrong use of admin logger

* guard statment

* removed unnecessery refs and fixed position swap

* Minor change

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-10-14 16:55:46 +11:00
Джексон Миссиссиппи
9b71757c07
cleanup melee (#32486)
* it removes warns ig

* Quick fix

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-10-14 16:40:59 +11:00
Pieter-Jan Briers
4a5178a538
Fix role ban loading bugs (#32725)
This code was a mess. Now it's less of a mess and user UserDbDataManager now.

Fixes the following bugs:

* If you connect to a server, restart your client, connect again in the same round, you role bans would not be visible in the client.
* If you role ban somebody who is not connected to the server, then they connect within the round, they will only have the recently-applied ban.

Likely fixes #24781, #27282
2024-10-14 14:30:31 +11:00
Leon Friedrich
2d60a4684c
Hide role entities in the spawn menu (#32798) 2024-10-14 14:05:49 +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
Pieter-Jan Briers
c7b0d5a27c
Fix some rounds failing to end due to mind roles (#32792)
* 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.
2024-10-13 22:55:15 +02:00
John
7c6ff536eb
Fixing Thief Beacon Role Check Logic (to use new mindrole system) (#32764) 2024-10-12 22:20:03 -07:00
slarticodefast
d6d8c55d57
Don't error on missing component in ChangeHeat (#32451) 2024-10-12 11:52:05 -07:00
eoineoineoin
70b7747fdd
Make APC UI work correctly with multiple users (#32465)
* 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>
2024-10-12 19:21:43 +11:00
nikthechampiongr
e7b7e2270d
Fix bounties(and potentially other things) running out of ids (#32700)
* 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>
2024-10-10 16:35:35 +02: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
Pieter-Jan Briers
3e078ab3e0
Fix error log when recycling something with small material counts. (#32723)
* 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>
2024-10-10 03:29:26 +02:00
beck-thompson
327466a6e2
Plushies can now have pAIs stuffed into them (v2)! (#30805)
* 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>
2024-10-09 20:01:32 +02:00
chavonadelal
6d99597349
Job title localization (#32338)
* Job title localization

* Correcting fields
2024-10-09 17:05:36 +02:00
SlamBamActionman
ddaa0e83c6
Add admin log for codewords (#32531)
* initial commit

* Delta review
2024-10-09 13:55:48 +02:00
lzk
33042b00d0
Fix cryo locale again (#32654)
* Fix cryo locale again

* yeep
2024-10-08 11:50:54 +02:00
Saphire Lattice
f22f9e39c5
Change minibomb to be explosion resistant and start timer on damage (#32429)
* Make minibomb explosion resistant and trigger timer on damage

* Tune damage behaviour and threshold for minibomb
2024-10-08 00:42:42 +02:00
Golinth
46a2eb545e
Fully Revert Clown Waddling (#32652)
Fully revert Clown Waddling (revival of #29161)

A sad day, see #29156 for discussion
2024-10-06 15:33:02 +02:00
Morb0
47b58a0282 Fix upstream 2024-10-04 20:05:59 +03:00
Morb0
3ab6d3ef71 Merge remote-tracking branch 'wizards/master' into upstream-sync
# Conflicts:
#	.github/workflows/publish.yml
#	Content.Client/VoiceMask/VoiceMaskNameChangeWindow.xaml.cs
#	Content.Server/GameTicking/GameTicker.Player.cs
#	Content.Server/VoiceMask/VoiceMaskComponent.cs
#	Content.Server/VoiceMask/VoiceMaskSystem.Equip.cs
#	Content.Server/VoiceMask/VoiceMaskSystem.cs
#	Content.Server/VoiceMask/VoiceMaskerComponent.cs
#	Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
#	Resources/Prototypes/Entities/Clothing/Masks/specific.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/regalrat.yml
#	Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Roles/Jobs/Command/captain.yml
#	Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml
#	Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml
#	Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml
#	Resources/Prototypes/Roles/Jobs/Science/research_director.yml
#	Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml
#	Resources/Prototypes/Roles/Jobs/Wildcards/psychologist.yml
#	Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json
#	Resources/Textures/Objects/Misc/bureaucracy.rsi/paper_stamp-psychologist.png
#	Resources/Textures/Structures/Walls/solid.rsi/reinf_over0.png
#	Resources/Textures/Tiles/attributions.yml
#	Resources/Textures/Tiles/blue_circuit.png
#	Resources/Textures/Tiles/green_circuit.png
#	Resources/Textures/Tiles/steel.png
2024-10-04 19:47:54 +03:00
Saphire Lattice
94c8018ff3
Change the syndicate charge to start a timer on signal (#32423)
* Change the syndicate charge to start a timer on signal

* Actually add the component in question

* Add default link for TimerStart signal
2024-10-04 11:34:48 +02:00
Saphire Lattice
88f060d51a
Make the explosions throw the container/item they originated from (#32428)
Extra fun if it's something that can trigger multiple times
2024-10-04 10:43:45 +02:00
Plykiya
295e63193c
Two additional checks to prevent FTLing stations (#32558)
Add two additional checks to prevent FTLing
2024-10-04 12:55:36 +10:00
ArchRBX
dd12ac1f8a
MedTek Cartridge (#32450)
* initial commit

* adds cartridge to cmo's locker

* tidies up yml, adds default scanner sound, makes it so the silent property silences the scanner sound too

* fixes ert medic pda not having it preinstalled

* adds attribution

* removes redundant dependencies

* fix agent pda

---------

Co-authored-by: archrbx <punk.gear5260@fastmail.com>
2024-10-01 23:17:57 -07:00
Golinth
3b682d4d68
Added Firebots - Real (#32482)
* Add Firebots

Had to add OnActivateInWorld to the spray system to get the bot to work. Checks for the flammable component and if the onFire boolean is true.

* Make SpraySystem actually use useDelay

got rid of that TODO

* Added firebot speech

Fire detected!
2024-09-30 20:13:16 -07:00
drakewill-CRL
7cf04dcb20
Use archived gas mixture in gas exchange comparison (#32088)
The comparison for doing gas exchange used current and not archived
moles. This could lead to update order-dependent gas spreading effects.

To fix this, convert TileAtmosphere's MolesArchived and
TemperatureArchived to a AirArchived, and use that in the comparison
method.

---------

Co-authored-by: PraxisMapper <praxismapper@gmail.com>
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2024-09-29 22:14:07 -07:00
slarticodefast
16325007d5
Fix mutation system debug assert (#32530) 2024-09-29 13:37:31 -08:00
SlamBamActionman
d0c4d5a93a
Add webhook for votekicks (#32513)
* Initial commit

* Localization
2024-09-29 15:23:53 +02:00
Leon Friedrich
f1f1fc1dc3
Add interaction rate limits (#32527)
* Move PlayerRateLimitManager to shared

* Add interaction rate limits

* uncap tests
2024-09-29 22:19:00 +10:00
Leon Friedrich
d806db264a
Fix currency duplication bug (#32524) 2024-09-29 22:13:22 +10:00
nikthechampiongr
a5840b925b
Fix RA0032 (#32514) 2024-09-29 02:25:21 +02:00
MilenVolf
1b9d77a760
Replace obsolete Tile Access methods (#32508)
* Replace obsolete SetTile

* Remove obsolete GetTileRef & GetAllTiles

* Forgor

* Apply suggested `GetMapOrInvalid`
2024-09-29 01:27:47 +02:00
metalgearsloth
dd376e4e84
Optimise drains (#32230)
* Optimise drains

If it's still a problem then we do what I did for rmc14 and just dump all the active drains onto a job to getentitiesinrange in parallel.

* Fixes
2024-09-28 15:16:54 +10:00
beck-thompson
7485411ab2
Predict appraisal tool verb! (#32496)
* First commit

* Network :(
2024-09-28 14:40:24 +10:00
Fildrance
4bcf3c3c0e
Station AI ability to electricute doors (#32012)
* Boom! Emergency access!

* Emergency access sound

* locale

* Updated sounds

* bleh

* Door electrify base

* feat: popups on attempt to activate AI action when wires cut

* refactor: use SharedApcPowerReceiverComponent to check if AI can interact with door

* refactor: added icon and sound for door overcharge

* meta.json should use tabs not spaces

* refactor: extracted sounds for airlock overcharge to static field in system

* refactor: cleanup, ScarKy0 mentions for resources

* refactor: removed unused textures

* feat: now notification is displayed when AI attempting to interact with door which have wire cut

* StationAiWhitelistComponent is properly gating  BUI OnMessageAttempt, SharedPowerReceiverSystem.IsPowered is now used to check if device powered

* refactor: use PlayLocal to play electrify sound only for AI player

* refactor: SetBoltsDown now uses TrySetBoltDown, checks for power.

* bolts now check for power using SharedPowerReceiverSystem

* electrify localization and louder electrify sounds

* extracted ShowDeviceNotRespondingPopup, reverted airlocks not opening/closing when ai wire was cut

* refactor: cleanup

* New sprites and fixes

* Copyright

* even more sprite changes

* refactore: cleanup, rename overcharge => electrify

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-09-27 17:22:17 +10:00
metalgearsloth
bc461b91a5
Predict stripping (#32478)
* Predict stripping

Stops mob verbs from getting moved around again.

* Bola

* Fix ftl
2024-09-27 17:12:10 +10:00
beck-thompson
fe2145d3b9
Voice Mask refactor (#30798)
* First commit

* Added base.Initialize()

* Voice wire fix (Electricty name)

* Various minor cleanups

* Localized default voice mask name

* Added VoiceOverride stuff

* Removed unused stuff

* Typo

* Better localized stuff

* Typo / spelling stuff / comments

* Blessed
2024-09-26 18:55:59 +02:00
SlamBamActionman
eeadc75b0a
Add Votekick functionality (#32005) 2024-09-26 18:32:13 +02:00
themias
e0a3d3d91a
Fix agent ID card unlimited range (#32445)
* Fix agent ID card unlimited range

* update order to be more optimized
2024-09-25 17:41:34 +02:00
goet
d1812c11fd
Fix contraband never getting added to vend inventory (#32431)
* fix contraband never getting added to vend inventory

* Revert "fix contraband never getting added to vend inventory"

This reverts commit e7fb3a60c3cb6fcbf41d7f015f13dbc7b1c1901d.

* readd setter method to system

* fix again without reparenting
2024-09-25 15:21:24 +10:00
Brandon Hu
95a159f950
fix(BatterySelfRecharger): Fully charge BatterySelfRechargers (#30627) 2024-09-24 23:37:45 +02:00
Pieter-Jan Briers
e36d735064
Fix cartesian explosion in pref loading (#32434)
Lol .AsSingleQuery().

Some people's preferences wouldn't load on Lizard. Turns out the entire preferences set is loaded with a morbillion joins in a single query and one person had 240,000 (!!!) rows returned for their preferences query. Yeah.
2024-09-24 22:43:02 +02:00
ArchRBX
241be37185
AstroNav GPS Cartridge (#32194)
* initial commit

* adds astronav cartridge to QM locker

* changes requested in review

* fix merge conflicts

* fixes the statuscontrol disappearing if you eject the cartridge but still have it installed

* fix notificationsenabled on salv pda proto

* fixes lingering statuscontrol on eject while held

---------

Co-authored-by: archrbx <punk.gear5260@fastmail.com>
2024-09-24 19:02:51 +02:00
Pieter-Jan Briers
1450d76337
Fix OOC not re-enabling if restartroundnow is used (#32401)
The ChatSystem code for re-enabling OOC only ran during PostRound, which gets skipped over when doing restartroundnow. Now it does this on PreRoundLobby too.
2024-09-24 09:38:09 +10:00
metalgearsloth
dd7884ed40
Predict vending machine BUI (#32376) 2024-09-23 12:10:22 +10:00
PotentiallyTom
d3ff4d5401
Makes it possible to disable the vent pressure lockout temporarily with a screwdriver (#31050)
* builds

* doesn't crash

* seems to work

* distance cap was dumb

* Requested changes

* can't find any issues from making the changes

* Check for anchor and minor optimisation

* Removed unnecessary usings

* Code less verbose and cleanup
2024-09-22 21:59:56 +02:00