Commit Graph

271 Commits

Author SHA1 Message Date
IProduceWidgets
4fa808ace5 Simulate command in minutes for real (#36808)
* 60
2025-04-22 18:20:45 -04:00
IProduceWidgets
42cb3ccb5b StationEvent Toolshed Command fixes. (#32200)
* toolshed makes me want to take a long walk off a short pier.

* fuck it everything is in seconds.

* catch rounding error

* reviews

* lsprobtheoretical to mins

* Git please.

* Git Please.

* GIT PLEASE.

* unchange file

* take2

* empty line?

* new new lines?

* idk 1000 commits I guess

* spacius maximus
2025-04-18 17:44:29 +10:00
Fildrance
d38042a0c0 3mo xeno archeology (first phase) (#33370)
* DAG Adjacency Matrix & Tests

* Fix sandbox type errors

* First pass on procgen

* Procgen adjustments

* Networking

* Cruft and god and beauty and analysis console

* convert to data types that dont make me want to kill myself

* starting work on console UI

* drawing nodes n shit

* damn that ui FUCKS

* XAT

* Add a bunch of basic triggers

* Fix trigger gen

* Add node info into the analysis console UI

* Add node unlocking

* more trigger cuz thats pretty cool

* final triggers + incorporate gnostic faith

* some ui changes, mostly

* Fix orphaned procgen segments

* its not random dipshit

* yeah... this one will make pjb happy....

* we call it a day for the UI

* imagine... shared power code...

* extraction WIP but we gotta sidequest momentarily

* oh hey would you look at that its the actual functionality

* distrotrased

* Small departure for randomness.

* ok yep yep indeed that is an effect very cool.

* thanos snap oldcode

* fuck it we ball

* feat: node scanner now displays triggered nodes. Removed unused old artifact systems and related code (most of it). xml-doc and minor fixups.

* refactor: most of preparations, cleanup and groundwork. also segment-related tests

* feature: all basic effects returning

* feat: finished effects lits, created weight lists for struct and handheld artifacts, fixed throw trigger and music ApplyComponent artifact effects not working

* feat: prevent non-first-time-predicted calls in shared artifact effect systems

* fix: remove gun effect from artifact effects - as it interferes with 'activate artefact' action

* fix: foam reagent selection, neat ApplyComponents art effect scenarios, handheld art is RadiationReceiver again

* fix: moved spawn/ pry&throw effect systems back to server part of code - entity duplication bugs were not quite fun

* refactor: fix protos

* refactor: fix linter

* fix: fix old artifact component names in yml

* fix: no more throwing error on artifact spawn with empty XAEFoamComponent.Reagents

* fix: removed old component usage in maps

* fix: remove more deleted components from map

* fix: ContainerContainer is now part of initial artifact entity, it won't be affecting UninitializedSaveTest

* refactor: fix tests, add loc description to toolshed commands

* Changed node scanner to tell the whole story about current artifact state

* refactor: remove excessive get of EntityCoordinates in XAE systems, removed Value access in NodeScannerDisplay

* fix: turned off TriggerInteraction, removed XAESpawn usage and system, EmpSystem now can use EntityCoordinates,

* fix: moved SharedXenoArtifactSystem.CancelUnlockingOnGraphStructureChange into RebuildXenoArtifactMetaData to lessen code coupling

* fix: XenoArtifactEffectJunkSpawn moved invalid rolls declaration

* refactor: set default value for XenoArtifactComponent.EffectsTable for tests

* fix: now explosions XAE can be activated for effect

* refactor: added some usedelay so artifactuse would'nt be spammed

* refactor: artifact-related hints improvements

* fix: artifact no longer spawns fauna into itself

* refactor: xml-doc and minor refactoring

* refactor: xml-doc for Xeno Artifact systems, renaming of questionable XAT systems

* map for playtest, TODO REVERT THIS

* fix: magboots trigger art from a mile

* refactor: bind artifact animation to unlocking state

* feat: radiation dmg now have reference to source (and artifacts won't irradiate themselves)

* fix: random artifact node durability now is rolled for max and not current value

* refactor: gas effects are more rare, hand-held artifact effects are filtered properly now, rad dmg trigger now requires only 20 dmg for activation

* feat: animations and sound effects for artifact force-use and failed finish of unlocking phase

* use only 1 file with art use animation

* refactor: minor artifact dmg triggers tuning

* feat: now nodes that CAN be unlocked are displayed with specific color in console.

* feat: now unlocking stage time is dynamic and it depends on amount of triggers player activated correctly. Failed one stops incrementing

* feat: now non-active unlocked nodes return more points if durability was not wasted

* feat: now puddle/foam effects change description of node

* fix: fix test failure

* refactor: renamed phasing effect, fixed failing test for elkridge

* minor balance changes

* refactor: split rare materials into separate effects

* feat: unlocked nodes without successor wont listen to unlocks, node unlock is not activating node

* fix: removed OnIrradiatedEvent duplicate c-tor

* revert changes of reach for playtest

* revert last row empty line removal on reach.yml

* fix: fix PVS bug, born from attempt to relay event to art nodes that were not synced yet to the client

* fix: fix elkridge for tests (again)

* refactor: xml-doc, more stuff predicted, allocation optimization in XAE/XAT systems

* refactor: naming

* refactor: extract variable refactor for XAEApplyComponentsSystem.OnActivated insides

* fix: duplicate xeno artifact unlocking sound fixed

* feat: CreatePuddle xeno artifact effect now can have min and max borders for chamicals to be drafted, minor XAECreatePuddleSystem refactor

* feat: networking for shared XAE components + xml-doc leftovers

* refactor: more xml-doc, fix XAEApplyComponentsComponent.Components not being serializable but trying to be

* refactor: xml-docs and XAEThrowThingsAroundSystem now uses circle and not box for prying tiles

* refactor: xml-docs, minor refactors

* revert XenoArtifactCommand.ArtifactPrototype being PrototId

* refactor: simplify the way ExtractionResearchLabel works

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2025-04-15 10:34:53 +10:00
Nemanja
12b75beeab Departmental Economy (#36445)
* Cargo Accounts, Request Consoles, and lock boxes

* Funding Allocation Computer

* final changes

* test fix

* remove dumb code

* ScarKy0 review

* first cour

* second cour

* Update machines.yml

* review

---------

Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
2025-04-13 15:22:36 +02:00
Winkarst
ebc1bff4cb Cleanup: Use `SoundCollectionSpecifier instead of string literals in PowerGridCheckRule` (#35449)
* Cleanup

* Update

* .

* Volume
2025-02-25 08:16:10 +11:00
Winkarst
45e7891706 Cleanup: Pass in `IComponentFactory in EntityPrototype.TryGetComponent calls inside ImmovableRodRule` (#35462)
Cleanup
2025-02-24 18:57:39 +01:00
Winkarst
0148c441e6 Cleanup: Pass in `IComponentFactory in EntityPrototype.TryGetComponent calls inside EventManagerSystem` (#35460)
Cleanup
2025-02-24 18:45:00 +01:00
ScarKy0
dd28f17b9a Fix access configurator debug assert (#34330)
* fix

* greytide fix

* fix admin log

* Dirty
2025-01-09 19:22:28 -05: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
slarticodefast
c28f4fdc7f Fix greytide virus hitting other maps (#33806)
fix greytide virus hitting other maps
2024-12-11 15:30:29 +01:00
IProduceWidgets
3e0b93d071 fix a station event weighting bug (#33584)
* fractional weights dont work in StationEvents

* force-int

* sure why not, we can keep floats I guess.
2024-12-05 22:52:02 -06:00
slarticodefast
470c869ce2 Greytide Virus station event (#33547)
* proof of concept

* full implementation

* I commited a crime

* t

* min players increase
2024-11-27 00:50:20 +11:00
The Canned One
581a4d14fc minor Derelict Cyborg code changes. 2024-10-04 08:31:55 +02:00
The Canned One
963009a440 Changes IonStorm related code with no gameplay changes. 2024-10-03 11:34:24 +02:00
The Canned One
7169788e16 changed very minor stuff with no gameplay alterations. 2024-10-01 11:23:19 +02:00
The Canned One
1abc60b995 moved a bit of IonStorm code elsewhere 2024-10-01 10:42:52 +02:00
The Canned One
bad25e3397 Split part of IonStormRule into IonStormSystem. Added StartIonStormed which also uses IonStormSystem. Added StartIonStormedComponent. Changed stuff related to the Derelict Cyborg. Derelict Cyborg now spawns with a randomized lawset. 2024-09-29 19:01:59 +02:00
BIGZi0348
20914fea36 Moved hardcoded string "PEOPLE" to Loc.GetString() (#32164) 2024-09-14 22:37:41 +03:00
SlamBamActionman
5740a88208 Fix Station AI being affected by Bureaucratic Event (#32021)
* init commit

* I forgot components exist

* delta told me to make it a list
2024-09-11 13:24:24 +02:00
Mervill
de13ff9663 Fix warnings related to non-exhaustive pattern matching. (#31763)
old man shakes fist at modern syntax
2024-09-02 17:50:35 -04:00
Psychpsyo
9a68cf0b0e Re-add improved random sentience event (#29123)
* Re-add improved random sentience event

* Make randomly sentient PDA more likely

* Make vending machine sentience less likely

* Make requested changes

* Make randomly sentient captain's gear more likely

* Sentient captain sabre has pirate accent

* Tweak new random sentient object a bit more

* Sentient PDA improvements

* Apply recommended fixes

* Add requested changes

* Fix merge conflict
2024-08-18 17:41:12 -06:00
IProduceWidgets
0ae5426fe4 Event scheduler setting tweaks (#31018)
tweaks
2024-08-15 13:33:17 -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
Mervill
9f180e4f62 Don't show the Meteor Swarm announcement to players in the lobby. (#30922) 2024-08-12 12:13:28 +10:00
Mervill
d7b5ae061a Don't show Station Event announcements to players in the lobby. (#30886)
* Don't show Station Event announcements to players in the lobby.

* fix pr

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-08-11 16:09:33 +10:00
Killerqu00
6503cb7833 Sleeper agents event no longer occurs when evacuation is called (#30646)
no more evac sleeper agents
2024-08-05 13:17:53 +10:00
Errant
bf1450fdc8 Fix replayghost spawning location (#30252)
Fix replayghost spawn
2024-07-22 20:32:30 +01:00
Aiden
4997f92e18 MassHallucinationsRule Minor Refactor (#28748)
* Update MassHallucinationsRule.

* Update Content.Server/StationEvents/Events/MassHallucinationsRule.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* Update Content.Server/StationEvents/Events/MassHallucinationsRule.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* Update Content.Server/StationEvents/Events/MassHallucinationsRule.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* MGS Change

* Update Content.Server/StationEvents/Events/MassHallucinationsRule.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Server/StationEvents/Events/MassHallucinationsRule.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Move affectedentities to component, remove masshallucinationscomponent as its no longer needed to track entities.

* Apply suggested changes.

* No double checks

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-07-20 15:53:57 +10:00
deltanedas
02636386b5 item toggling giga rework + full ninja refactor (#28039)
* item toggle refactoring and some new systems

* add ToggleClothing component/system

* unhardcode magboots gravity logic

* make magboots and speedboots use ItemToggle and stuff

* remove now useless clothing components

* update client/server magboots systems

* add note to use ItemToggledEvent in ToggleActionEvent doc

* refactor PowerCellDraw to use ItemToggle for ui open/close control

* add TryUseCharges, refactor charges system

* update magboot trigger code

* make borg use ItemToggle, network SelectedModule instead of now removed Activated

* add AccessToggle for borg

* the giga ninja refactor

* update ninja yml

* update ItemToggle usage for some stuff

* fix activatableui requires power

* random fixing

* yaml fixing

* nuke ItemToggleDisarmMalus

* make defib use ItemToggle

* make things that use power not turn on if missing use charge

* pro

* fix sound prediction

* bruh

* proximity detector use ItemToggle

* oop

* big idiot syndrome

* fix ninja spawn rule and make it generic

* fix ninja spawn rule yml

* move loading profiles into AntagLoadProfileRule

* more ninja refactor

* ninja yml fixes

* the dreaded copy paste ops

* remove useless NinjaRuleComponent and ue AntagSelection for greeting

* fix invisibility

* move IsCompleted to SharedObjectivesSystem

* ability fixes

* oop fix powercell instantly draining itself

* sentient speedboots gaming

* make reflect use ItemToggle

* fix other test

* loadprofilerule moved into its own pr

* remove conflict with dragon refactor

* remove all GenericAntag code from ninja

* )

* probably

* remove old enabled

* great language bravo vince

* GREAT LANGUAGE

* who made this language

* because it stinks

* reparent blood-red magboots to magboots probbbly works

* most of the review stuff

* hasGrav doesnt mean what i thought it did

* make health analyzer use itemtoggle, not fail test

* fix mag/speed boots being wacky

* UNTROLL

* add ItemToggle to the random health analyzers

* a

* remove unused obsolete borg func

* untrolling

* :trollface:

* fix test

* fix

* g

* untroll

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-07-11 15:55:56 +10:00
Nemanja
4aa74c5e1d improve meteor spawning (#29057) 2024-06-17 01:20:47 -04:00
Nemanja
c063347ed6 fix meteor announcement color (#29058) 2024-06-15 19:24:15 -04:00
TsjipTsjip
71eb4d9178 CVarify meteor behavior (#29030)
* CVarify meteor behavior

* Cache value to reduce CVar calls, hook into OnValueChanged

* _cfg is still null at construction time, fixed by just making it set up on Started instead

* Invoke immediately! Learning more every step of the way.

* Move cached value initialisation to Initialize call

* Add explicit supercall
2024-06-15 10:03:20 -04:00
Nemanja
f136657b38 Revamped Meteor Swarm (#28974)
* meteor code and balanced values

* Meteor Swarms

* Update meteors.yml

* Update meteors.yml

* HOO! (fix overkill bug and buff space dust)

* undo BloodstreamComponent.cs changes

* DamageDistribution -> DamageTypes

* part 2.
2024-06-14 20:38:43 -07:00
deltanedas
a3a1538d32 move gamerule components to shared (#28572)
* move MinMax to shared

* cleanup MinMax

* move other ticking components to shared just because

* remove unused prototype file

* update everything to use shared components

* test

* test 2

* test 3

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-06-04 21:53:24 +10:00
deltanedas
16b3fb1204 LoadMapRule grid storage rework (#28210)
*
2024-06-03 20:04:19 -04:00
AJCM-git
9a23a6c695 Fix mid round antags not starting (#28523) 2024-06-02 12:52:40 -04:00
MilenVolf
5d970b0861 Station event component and system tweaks (#28331)
* Make anomaly, artifact and gifts events announcement sound optional

* Requested changes + Added new "GameRuleAfterAddedEvent" for StationEventSystem

We need to call "Add" in "StationEventSystem" after others GameRule's in case if we need to change StationEventComponent variables.

* Fix margins

* Makes use of GameRuleComponent.Delay and remove station system handling of delays plus small cleanup

* Fix merge

---------

Co-authored-by: AJCM <AJCM@tutanota.com>
2024-06-01 16:34:58 -04:00
Leon Friedrich
76e13eed35 Improve InteractionSystem range & BUI checks (#27999)
* Improve InteractionSystem range & BUI checks

* Ghost fixes

* AAA

* Fix test

* fix nullable

* revert to broadcast event

* Fixes for eengine PR

* Ah buckle code

* )
2024-05-24 15:03:03 +10:00
Ed
e522bbf90d New event: Approaching unknown shuttle (#24490)
* setup codebase

* Add first shuttle

* tak

* sync striker

* sync 2

* pipipi

* Preloaded roundstart shuttles!

* Make it abstract "PreloaderGrid" not "PreloaderShuttle"

* to do

* added china cuisin shuttle

* fixes

* add disaster evacpod

* remove enemy

* final shuttles

* weight 5 -> 10

* move data to component

* remove autotrailer touching

* doc, respath

* fix frozen positioning

* fixes + cvar

* finally

* fix evacpod

* remove blacklistrules

* remove `UnknownShuttleSpawnRule`, refactor `LoadMapRule` to support preloaded grids

* use tryload

* cleanup

* fixes

* use preloadedgrid for loneops

* weight unknown shuttles differently (preliminal)

* leftover

* cleanup and raffling

* partial review

* singleton gridpreloader no station coupling

* fix grid atmoses

* `roleLoadout` support for `LoadoutComponent`, fix missing gear

* weighting changes

* init logic fix

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-10 04:35:59 -07:00
Kara
09b5319270 Log event starts to admin alert chat (#27761) 2024-05-07 17:13:28 +02:00
Kara
c1aae2398b Round event frequency simulation command (#27718) 2024-05-06 00:33:30 -07:00
Mr. 27
c69bf2f2aa Add syndicate sleeper agents random event (#27501)
* Intercept rule (#10)

* add

* b

* add this back lol

* fix test fails (alert levels dont have prototypes)

* tweaks
2024-05-03 10:13:35 +10:00
Kara
f59a4f2a86 Make events generally much more common (#27469)
Make events generally more common
2024-04-28 23:38:14 -07:00
Nemanja
161fd6c83c Mega Antag Refactor (#25786)
* Mega Antag Refactor

* last minute delta save

* more workshopping

* more shit

* ok tested this for once

* okkkkk sure

* generic delays for starting rules

* well darn

* nukies partially

* ouagh

* ballin' faded and smonkin wed

* obliterated the diff

* Spread my arms and soak up congratulations

* I've got plenty of love, but nothing to show for it

* but there’s too much sunlight
Shining on my laptop monitor, so I
Can’t see anything with any amount of clarity

* ok this junk

* OOK!

* fubar

* most of sloth's review

* oh boy

* eek

* hell yea!

* ASDFJASDJFvsakcvjkzjnhhhyh
2024-04-25 11:31:45 +10:00
Nemanja
1bfc63c546 fix cargo teleporter (#27255)
* fix cargo teleporter

* don't delete orders

* basado
2024-04-23 22:07:12 +10:00
icekot8
fd109d61b8 cargo console radio messages on approving (#27038)
* 1

* void --> "Unknown"
2024-04-17 17:32:21 -07:00
Mephisto72
ad0f046f0c Rework Identifier Overrides to prevent showing Law Priority (#26680)
Does-The-Fix

Co-authored-by: Mephisto72 <Mephisto.Respectator@proton.me>
2024-04-04 22:48:24 -04:00
Jake Huxell
59e46aab93 Reduced Warning Count By 130 For Full Rebuilds (#26518)
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50

* final toCoords Removed

* Remove all unused variables and dead code paths

* remove always true variable, should be a cvar or something instead

* remove superfluous variables from tests
2024-03-29 16:28:16 +11:00
Tayrtahn
964c6d54ca Code cleanup: Purge obsoleted SharedPhysicsSystem methods (#26287)
Updated calls to SharedPhysicsSystem methods
2024-03-25 17:37:25 +11:00
SlamBamActionman
8f652eaa75 Immovable Rod visual variations (#25932)
* Adds variations to immovable rod

* slash oopsie

* Changed prototypes from being hardcoded to being defined in the rules component

* Changed from 10% chance to 5%

* Changes based on feedback

* Fix nullable error

* Moved randomized logic to .yaml. Probabilities of alternate rods add up to 5%.
2024-03-24 23:45:52 +01:00