Commit Graph

116 Commits

Author SHA1 Message Date
Samuka-C
a26a18243f fix upload console (#39756)
* fix upload console

* make it smaller

* even smaller

* revert last commit

* Update

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2025-08-19 16:04:24 -07:00
B_Kirill
438090a505 Cleanup warnings: CS0414 (#39748)
* Cleanup

* Fix
2025-08-19 09:42:54 +02:00
slarticodefast
2743dcf67f Move mind role components to shared (#39606) 2025-08-13 12:51:46 +02:00
pathetic meowmeow
39cb27fe21 Borg hands & hand whitelisting (#38668)
* Borg hands & hand whitelisting

* yaml linted

* yaml linted (x2)

* yaml linted (x3)

* my storage tests so pass

* no need for SetCount

* ok new stuff you can get fixed too

* oops

* staque

* what if we addressed feedback

* my place so holder

* what if we addresesd feedback

* what if i did it correctly

* terminating or deleted
2025-08-12 15:21:42 -07:00
Samuka-C
ed6f906e6f Better robotics console (#38023) 2025-08-11 21:57:39 +03:00
chromiumboy
c3555af821 Sentry turrets - Part 8: AI notifications (#35277) 2025-08-08 21:56:01 +03:00
slarticodefast
2c40a950f7 Trigger Refactor (#39034) 2025-08-03 21:20:37 +02:00
DrSmugleaf
00826aaad6 Replace usages of customTypeSerializer PrototypeIdListSerializer with something that doesn't take 20 separate words to type out (#37959)
* Replace usages of customTypeSerializer PrototypeIdListSerializer with something that doesn't take 20 separate words to type out

* Missed one

* Missed another

* Fix data field ids
2025-07-10 05:06:51 +02:00
Tayrtahn
c565b44965 Replace ValidatePrototypeId uses with ProtoId or EntProtoId (#38814)
* The easy ones

* For certain values of easy

* Easy test

* Hair

* Fix sandbox violations

* Sort usings
2025-07-07 21:57:05 +02:00
slarticodefast
38232d2255 Predict healing and bloodstream (#38690)
* initial commit

* reapply 38126

* fix rootable

* someone missed an important minus sign here

* try this

* fix

* fix

* reenable crit hits

* cleanup

* fix status time dirtying

* fix

* camelCase
2025-07-02 19:20:31 -04:00
Pieter-Jan Briers
5bc778d42e Fix silicons looking at their laws crashing the server (#38623) 2025-06-27 15:03:16 +02:00
Tayrtahn
75db49f9c0 Clean up all missing EntitySystem proxy method uses (#38353) 2025-06-26 16:50:49 -07:00
Nemanja
524725d378 HandsSystem Refactor (#38438)
* checkpoint

* pt 2

* pt... i forgot

* pt 4

* patch

* More test fixes

* optimization!!!

* the REAL hand system

* fix RetractableItemActionSystem.cs oversight

* the review

* test

* remove test usage of body prototype

* Update Content.IntegrationTests/Tests/Interaction/InteractionTest.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* hellcode

* hellcode 2

* Minor cleanup

* test

* Chasing the last of the bugs

* changes

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2025-06-25 15:13:03 +02:00
deltanedas
b3825dce97 action refactor proper ecs edition (#27422) 2025-05-28 15:52:11 -04:00
Tayrtahn
f788558b49 Cleanup warnings in AI wire actions (#37780)
Fix 4 warnings in Ai wire actions
2025-05-24 18:08:03 +02:00
Tayrtahn
6f46698410 Cleanup warning CS0414 (#37648) 2025-05-20 23:14:10 +02:00
Errant
bf76ba28e2 MindRemoveRole refactor (#34880)
* MindRemoveRole refactor

* role removal logstring rework

* zombiesystem fix
2025-05-17 16:24:32 +10:00
āda
de24413bd5 HumanoidCharacterProfile and IdCardConsoleComponent constants moved to cvar. Sync id card length with character name length (#35407)
* commit

* mark TODOs

* compiles

* cleanup

* cleanup

* oops

* changed my mind

* requested changes

* genpop fix
2025-05-17 15:27:39 +10:00
Krunklehorn
1ee9b25927 Fix borg chassis gibbing not dropping items (#37276)
BeingGibbedEvent and TryEjectPowerCell
2025-05-08 10:28:11 -04:00
ScarKy0
9b5ddb87f5 Fix brains, borgs etc not counting as marooned (#37148)
* init

* comments

* comment

* no more debug
2025-05-06 13:24:26 -04:00
Tayrtahn
31cf0505c9 Convert NameIdentifier to use NameModifierSystem (#36736)
Convert NameIdentifier to use NameModifierSystem
2025-04-20 14:16:59 +10:00
metalgearsloth
63dfd21b14 Predict dumping (#32394)
* Predict dumping

- This got soaped really fucking hard.
- Dumping is predicted, this required disposals to be predicte.d
- Disposals required mailing (because it's tightly coupled), and a smidge of other content systems.
- I also had to fix a compnetworkgenerator issue at the same time so it wouldn't mispredict.

* Fix a bunch of stuff

* nasty merge

* Some reviews

* Some more reviews while I stash

* Fix merge

* Fix merge

* Half of review

* Review

* re(h)f

* lizards

* feexes

* feex
2025-04-19 16:20:40 +10:00
Milon
3fc9bcbbbe remove Session from MindComponent (#34753)
* yummy

* fix tests
2025-04-19 00:23:01 +02:00
valquaint
4baaff2a23 Update to borg ion storms (#35751)
* Updates ion storms for borgs.

* Remove additional ion laws into future PR
2025-03-12 02:21:59 +01:00
lzk
237df1c9a1 fix ion storm code readability (#35337)
fix ion storm readability
2025-02-25 08:36:56 +11:00
Pieter-Jan Briers
f5c7809890 Stable merge for hotfix backport (#35412) 2025-02-23 02:15:34 +01:00
ScarKy0
a6861b0461 [HOTFIX] Borg emag notification and sound fix (#35394)
epic stuff
2025-02-23 01:49:58 +01:00
chromiumboy
2764638763 Minor station AI code cleanup (#34476) 2025-02-18 16:26:02 +11:00
ScarKy0
253a9fbdf1 Seperate EMAG into EMAG and Authentication Disruptor (#34337) 2025-01-29 23:05:47 -05:00
ScarKy0
cec5816acf BorgChassis transfer their mind to a dropped BorgBrain fix (#34464)
Fix
2025-01-16 15:08:08 +01:00
eoineoineoin
820517eb38 Fix inconsistent borg flashlight state (#33027)
* Fix borg light being stuck on if no cell is inserted

* Fix HandheldLightComponent.Activted becoming out of sync with SharedPointLightComponent.Enabled

* Fix for entities which don't have a handheld light component
2025-01-16 11:34:11 +01:00
slarticodefast
e830ccebe5 merge stable into master (#34398) 2025-01-12 18:49:02 +01:00
deltanedas
ccff52a72f [HOTFIX] fix holopads with multiple ai cores dying (#34289)
change return to continue

Co-authored-by: deltanedas <@deltanedas:kde.org>
2025-01-12 11:19:58 -06:00
Errant
46d58bf22a Role Types (#33420)
* mindcomponent namespace

* wip MindRole stuff

* admin player tab

* mindroletype comment

* mindRolePrototype redesign

* broken param

* wip RoleType implementation

* basic role type switching for antags

* traitor fix

* fix AdminPanel update

* the renameningTM

* cleanup

* feature uncreeping

* roletypes on mind roles

* update MindComponent.RoleType when MindRoles change

* ghostrole configuration

* ghostrole config improvements

* live update of roleType on the character window

* logging stuff and notes

* remove thing no one asked for

* weh

* 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

* move roletypeprototype to its own file, minor note stuff

* remove Roletype.Created

* log stuff

* roletype setup for ghostroles and autotraitor reinforcements

* ghostrole type configs

* adjustable admin overlay

* cleanup

* fix this in its own PR

* silicon antagonist

* borg stuff

* mmi roletype handling

* spawnable borg roletype handling

* weh

* ghost role cleanup

* weh

* RoleEvent update

* polish

* log stuff

* admin overlay config

* ghostrolecomponent cleanup

* weh

* admin overlay code cleanup

* minor cleanup

* Obsolete MindRoleAddedEvent

* comment

* minor code cleanup

* MindOnDoGreeting fix

* Role update message

* fix duplicate job greeting for cyborgs

* fix emag job message dupe

* nicer-looking role type update

* crew aligned

* syndicate assault borg role fix

* fix test fail

* fix a merge mistake

* fix LoneOp role type

* Update Content.Client/Administration/AdminNameOverlay.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Update Content.Shared/Roles/SharedRoleSystem.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* comment formatting

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* change logging category

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* fix a space

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* use MindAddRoles

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* get MindComponent from TryGetMind

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* move var declaration outside loop

* remove TryComp

* take RoleEnum behind the barn

* don't use ensurecomp unnecessarily

* cvar comments

* toggleableghostrolecomponent documentation

* skrek

* use EntProtoId

* mindrole config

* merge baserolecomponent into basemindrolecomponent

* ai and borg silicon role tweaks

* formatting

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* I will end you (the color)

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* use LocId type for a locale id

* update RoleEvent documentation

* update RoleEvent documentation

* remove obsolete MindRoleAddedEvent

* refine MindRolesUpdate()

* use dependency

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* inject dependency

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* roleType.Name no longer required

* reformatted draw code logic

* GhostRoleMarkerRoleComponent comment

* minor SharedRoleSystem cleanup

* StartingMindRoleComponent, unhardcode roundstart silicon

* Update Content.Shared/Roles/SharedRoleSystem.cs

* remove a whitespace

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-01-11 22:17:26 +01:00
chromiumboy
7780b867ac Holopads (#32711)
* Initial resources commit

* Initial code commit

* Added additional resources

* Continuing to build holopad and telephone systems

* Added hologram shader

* Added hologram system and entity

* Holo calls now have a hologram of the user appear on them

* Initial implementation of holopads transmitting nearby chatter

* Added support for linking across multiple telephones/holopads/entities

* Fixed a bunch of bugs

* Tried simplifying holopad entity dependence, added support for mid-call user switching

* Replaced PVS expansion with manually networked sprite states

* Adjusted volume of ring tone

* Added machine board

* Minor features and tweaks

* Resolving merge conflict

* Recommit audio attributions

* Telephone chat adjustments

* Added support for AI interactions with holopads

* Building the holopad UI

* Holopad UI finished

* Further UI tweaks

* Station AI can hear local chatter when being projected from a holopad

* Minor bug fixes

* Added wire panels to holopads

* Basic broadcasting

* Start of emergency broadcasting code

* Fixing issues with broadcasting

* More work on emergency broadcasting

* Updated holopad visuals

* Added cooldown text to emergency broadcast and control lock out screen

* Code clean up

* Fixed issue with timing

* Broadcasting now requires command access

* Fixed some bugs

* Added multiple holopad prototypes with different ranges

* The AI no longer requires power to interact with holopads

* Fixed some additional issues

* Addressing more issues

* Added emote support for holograms

* Changed the broadcast lockout durations to their proper values

* Added AI vision wire to holopads

* Bug fixes

* AI vision and interaction wires can be added to the same wire panel

* Fixed error

* More bug fixes

* Fixed test fail

* Embellished the emergency call lock out window

* Holopads play borg sounds when speaking

* Borg and AI names are listed as the caller ID on the holopad

* Borg chassis can now be seen on holopad holograms

* Holopad returns to a machine frame when badly damaged

* Clarified some text

* Fix merge conflict

* Fixed merge conflict

* Fixing merge conflict

* Fixing merge conflict

* Fixing merge conflict

* Offset menu on open

* AI can alt click on holopads to activate the projector

* Bug fixes for intellicard interactions

* Fixed speech issue with intellicards

* The UI automatically opens for the AI when it alt-clicks on the holopad

* Simplified shader math

* Telephones will auto hang up 60 seconds after the last person on a call stops speaking

* Added better support for AI requests when multiple AI cores are on the station

* The call controls pop up for the AI when they accept a summons from a holopad

* Compatibility mode fix for the hologram shader

* Further shader fixes for compatibility mode

* File clean up

* More cleaning up

* Removed access requirements from quantum holopads so they can used by nukies

* The title of the holopad window now reflects the name of the device

* Linked telephones will lose their connection if both move out of range of each other
2024-12-17 20:18:15 +01:00
Nim
df7b9d1e04 Other colour of the binary channel (#33841)
* radio

* color 2

* console-announcement

* 5ed7aa
2024-12-14 17:03:18 +01:00
ScarKy0
274c3ab0b9 Derelict Borg Revival (#33433)
* Derelictn'tn't Borg!

* Clean *sparkles*

* Removed "S: Awaiting Changes"
2024-12-06 00:22:38 -06:00
metalgearsloth
a9be561ea7 Merge branch 'master' into ion-storm-refactor 2024-11-20 18:22:08 +11:00
DrSmugleaf
f5d0e955e3 Fix imports 2024-11-19 21:16:49 -08:00
ScarKy0
e290588624 Changes + Cleanup 2024-11-17 20:23:45 +01:00
ScarKy0
3173a3461e S: Awaiting Changes 2024-11-16 02:06:52 +01:00
ScarKy0
7d82a7bf5c Merge branch 'space-wizards:master' into ion-storm-refactor 2024-11-16 00:50:48 +01:00
ScarKy0
3b9365160c or was it 2024-11-14 18:32:02 +01:00
ScarKy0
9a5c49b961 epic empty commit 2024-11-14 18:31:50 +01:00
ScarKy0
53ce812356 slash 2024-11-14 18:18:39 +01:00
Pieter-Jan Briers
1bebb3390c Borg type switching. (#32586)
* 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
2024-11-14 11:08:35 -06:00
ScarKy0
ace158df0e Yippee! 2024-11-14 17:53:15 +01:00
ScarKy0
0f30639cf2 progress 2024-11-14 17:21:03 +01:00
ScarKy0
755f322e29 Merge branch 'master' into ion-storm-refactor 2024-11-14 14:45:55 +01:00
ScarKy0
287a9a07de Intellicards now have a doAfter. (#33198)
* init

* cleanup

* Oops! Forgot something

* addressing changes

* guh

* guh 2.0

* some cleanup

* all bless the intellicard

* Yippee

* small locale thing

* changes + small bugfix

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-11-09 13:29:29 -06:00