Commit Graph

126 Commits

Author SHA1 Message Date
warriorstar-orion
3208049a8a Attack chain migration: structures. (#30365)
* Attack chain migration: structures.

* whoops

* wth
2025-09-14 19:21:36 +00:00
kyunkyunkyun
8821ab9a66 Updates a couple of /obj/item variables (#29829)
* compiles checkpoint

* fix some

* updatepaths

* fix

* rrr

* linters

* fiexs

* icon fixes

* plasmemes

* fix

* fix

* fix bit more

* fix

* well

* cleanup

* fix glasses layer

* conflict

* fuck gun code

* fixes

* fix

* fixes to energy guns

* review

* conflict

* support that 1 unathi pixel

* fix
2025-09-14 15:23:56 +00:00
Charlie Nolan
df025c7340 Fix energy ball movement, update arc path (#29812)
* Fix and update energy ball movement.

* More tesla fixes.
2025-08-07 16:58:22 +00:00
PollardTheDragon
06f19cdecb Adds Clown Car, Ports TG Vehicle Code (#29529)
* WIP - Clown Car, Bugged key insert, buckle, driver can't drive

* WIP - Needs Movement, Testing

* Compiles

* Sealed port

* Car

* Clown Car Cannon

* Formats for comments

* Linters

* Linters again

* Linters

* Attack chains

* Dump mobs on supermatter dust, instead of dusting everything

* Supermatter bump change for clown car

* Headlights fix

* Fixes runechat for car, fixes opening trunk do-after, removed excess code

* Another do-after fix

* Fixed squishing prone people, fixed buckle bug

* Better trait handling, fixes some silicon issues

* Fixes emergency lube foam

* Fixes AI getting nullspaced on eject

* Fixes hands remaining bound when ejected after using cannon mode, fixes cannon mode, adds var-editable thing

* Updated clown car actions

* Update code/modules/vehicle/tg_vehicles/cars/clowncar.dm

Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com>

---------

Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2025-07-29 23:05:06 +00:00
Contrabang
a57a8b8c40 Adds CI to error on unnecessary variable modification (#29861)
* begin the burndown? (y/n)

* okay update requirements?

* change the error name

* there we go

* tweak

* first bit of the burndown

* more

* burndown complete

* return the exit code!

* review

* Revert "first bit of the burndown"

This reverts commit 34155bd991.

* fix

* fixes

* last fix

* remove deprecated avulto stuff
2025-07-27 22:26:13 +00:00
Contrabang
1504ed98be massive burndown (#29894) 2025-07-27 20:52:39 +00:00
PollardTheDragon
05791861b7 New PVE Major Midround: Demonic Incursion (#29053)
* Initial commit. Event.

* Started converting mobs to basic mobs. Migo and Creature. Needs aggressiveness AI

* Makes CI happy

* Fixes some file names

* Ticks files

* Fixes file again

* Update code/modules/events/demon_incursion.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Announcement sound, spawn adjustments

* Reduced spread when portals multiply

* Elite spawns when portal count gets high

* Fixes missing comma

* Converted migo, blank, and most of hellhounds to basic mobs. Added new controllers and behaviors

* Fixes

* Linters!

* Faithless moved to basic mob

* LINTERS

* Makes skeletons basic mobs

* Fixes, Ranged Attacks, Ranged variants of nether mobs

* Handles portal expansion chance

* Linters

* Fixes mobs not breaking shit

* Fixes ranged attacks

* Fixes ranged attacks

* oops

* Another oops. No config changes are needed here

* Twenty percent chance that a nether mob is a grappler

* Dimensional tear fixes

* Adjusts awaken distance for hostile mobs, makes variable melee attack rate for basic mobs

* Variable initial spawns, variable spread rates.

* Whole lot of fixes from merge, hellhound completion

* Updated lavaland winter biodome

* Makes basic mobs able to hurt other mobs

* Makes spawners properly rally basic mobs to beat up the attacker

* Extra line

* Removed comment

* Makes hellhounds stop resting when attacked or when they find a new target

* Fixed initial portal spawn amounts

* Borgs now affected by basic mobs

* Nerfs portal spawn rate, nerfs portal integrity, nerfs portal max mobs

* Grapplers now teleport to missed turfs

* Removes duplicate notices

* Buff portals a small bit

* Makes nether portals no longer RR - the body is now recoverable from the blank it became

* Makes portals layer above mobs

* Removed excess ranged attack var

* Changes list for determining start count to rely on mobs with client instead of all clients

* Nerfs portal max mobs

* Portals can no longer spread to within 3 tiles of another portal except on initial event start

* Adjusts target portal count for big mobs

* Spawners now properly remove nest values of basic mobs

* Portals now glow an evil red. When portals are destroyed, 50% chance per mob to slay the mob

* add prowling and return to home behaviors

* cut this down

* be a tiny bit smarter

* Some code cleanup

* Removes hostile base type, removing excess code

* Gives /obj/ a basic mob attack handler. Fixes turrets

* Gives basic mobs a HUD

* Fixes skeleton death flag

* Adjusted initial spawns

* Incursion portals now slowly convert turfs, up to range 3 of them, to hellish flooring

* Increases reward per destroyed portal

* Makes the final portal of an incursion play a sound on destruction, couple portal fixes

* Fixes basic mob xenobiology interactions

* Non-shit portal sprites

* Adds hostile machine element, mobs now actively target turrets and emitters

* Properly gibs things when they should gib

* Linter fix

* Portals now layer under living mobs but over dead ones

* Adds blackbox checking for demon incursion portal counts

* Increases mob sight range slightly to account for widescreen, adds alt-color for grappler, delays incursion announcement a bit more

* Portals now are more likely to spread the less there are

* Incursion portals now repair themselves after not being damaged for some time

* Grilles now shock basic mobs

* Portals will now clean up basic mob corpses near them by gibbing them

* Portal spread chance is now exponential regression

* Portal mob spawns now linearly scale in time

* Fixes some skeleton oversights in ruin mapping

* Demon incursions no longer can spread to tiles in a space area, such as near brig plating

* Moves corpse cleanup to mobs via component

* Portals now drop bodies that are being eaten when they're destroyed.

* Addresses code review

* Docs some vars

---------

Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
2025-07-16 00:19:23 +00:00
ike709
99fd4918d7 Rename a var/src to var/source (#29618)
Signed-off-by: ike709 <ike709@users.noreply.github.com>
2025-06-14 18:53:38 +00:00
CRUNCH
12ef00d635 Update supermatter.dm (#29200) 2025-05-17 13:29:03 +00:00
Toastical
5039d1c84b touching engine with tele retains respawnability (#29274) 2025-05-13 21:49:40 +00:00
warriorstar-orion
fa1faf6054 add 'get machines by type' to SSmachines (#28979) 2025-04-16 17:17:54 +00:00
Migratingcocofruit
3ac753ef59 SM damage rebalance (#28321)
* Iteration 1

* Add electrical surge event

* checks for Z level for the delam overload

* I have undefitis

* Undo explosion changes

* restore comment

* reverts the hardcap changes.

* Changes the effect of moles on heat damage

* Update supermatter.dm

* updates a comment
2025-04-09 16:43:37 +00:00
Migratingcocofruit
7b3c980347 improves SM warnings (#28618) 2025-04-04 16:14:24 +00:00
CRUNCH
9a33a897cb Adds a Brand New Shuttle: NXV Cherenkov (#28776)
* creation

* You can buy it now

* Added a bunch of piles and stuff

* Update code/datums/shuttles.dm

Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>

* Update emergency_cherenkov.dmm

* Update emergency_cherenkov.dmm

* Update emergency_cherenkov.dmm

---------

Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
2025-03-30 23:22:20 +00:00
warriorstar-orion
ff0c749f31 refactor: add commonly used investigate category defines (#28826) 2025-03-30 23:10:48 +00:00
Contrabang
fde22d1c43 Adds more reasons to explosion logging (#28812)
* explos

* yeah good enough

* shorten that

* use ckey

* forgot this cause

* unfuck it
2025-03-28 18:49:57 +00:00
Migratingcocofruit
0628a81cb0 Adds peak EER to the SM monitor console (#28646)
* present the pre reduction power on the SM monitor

* adds a bit of height to the console window

* what

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js
2025-03-26 10:25:34 +00:00
kyunkyunkyun
6d77c8208a event fix (#28714) 2025-03-23 09:36:11 +00:00
Migratingcocofruit
ebf7fdbfd2 Radiation Rework (#28320)
* initial changes

* Rad wave is working. now to implement the rest

* Makes the waves square

* Makes wave square

* multiplies the strength in all instances of radiation_pulse by 4 because each pulse makes one wave instead of 4 now

* Undef thing and apply suggestion

* Make radiation_pulse() not radiate the radiation source and implements contamination

* Adds contamination to uranium walls and meteors

* Fixes stuff

* Handle some contamination on attack still need to take care of meteors

* Fixed the meteor stuff

* Introduce emission types

* moves contaminate_touch to an atom proc and renames it to contaminate_atom

* deduplicates some contamination code

* Move inherent radioactivity to a component and signals from the atom vars and behaviour

* fix some things with the new component

* Update inherent_radioactivity.dm

* implement contaminating things that hit things that are inherently radioactive

* window things

* adds emission type to the rad_act call

* Changes radiation insulation values on a bunch of stuff

* fixes radioactive component radiating the wrong type

* more adjustments

* refactros rad_act

* adjustments to collector power production

* Adds plastitaniumglass windows and makes further adjustments

* Adds sprites to the shards and plastitanium directional window

* Update misc_cleanables.dm

* removes alpha rad insulation from floor turfs

* Fixes a bug with the starting tile of radiation waves

* More adjustments

* Adjusting singularity rad production

* reduces window half life a bit to make power smoother and buffs full window rad conversion

* Strengthens gamma and beta radiation effect on mobs.

* Makes radsuit block radiation completely

* Fixes Geiger Counters

* Fixes contamination not irradiating the contaminated thing

* Fixes inherent radioactivity not processing. Also makes it stop processing when a nuke core is contained

* Fixes ghost contamination

* Adds info to the collector

* Handles alpha radiation better on humans and changes some instances of rad_act to base_rad_act

* oops

* adjustments and fixes to alpha rad handling on mobs

* Make collector info more compact

* Core no longer radiates and contaminates from within the nuke until the plates are removed

* Contamination no longer counts as being inside a mob(it is supposed to be surface level)

* Adds inherent radioactivity to a bunch of uranium things. makes it all process.

* Nerf full windows

* Adjustments to collector and fulltile window radiation absorption

* Reduces passive contamination, especially while on the floor

* Adds different rad types to the geiger counter and fixes a runtime

* Makes full tile windows strong again and disallows building them on top of collectors

* adds emissive blockers to the rad blacklist and gives windows and collectors priority when irradiating for increased consistency

* Gives each contamination type it's own color.

* Gives each contamination type it's own color.  And makes the rad hud display them separately

* Changes how much the radiation wave affects the source tile, adds decay for performance reasons and adjusts collector parameters as well as SM and singulo rad production

* improves performance at very high rad amounts

* Fixes supermatter sliver box not containing radiation

* Restores supermatter sliver to old behaviour(not inherently radioactive)

* Slight nerf to fulltile windows and removes an unnecessary multiplication from rad wave processing

* Removes redundant line from window rad act

* Fixes radiation waves ignoring walls

* fixes it better

* more adjustments to collector stats

* Adjustment to collector gamma absorption

* increases grille beta blocking

* Review changes
2025-03-02 20:34:45 +00:00
Charlie Nolan
1911df957c SM sanity at low pressure (#28152) 2025-02-02 03:56:59 +00:00
Charlie Nolan
9711894427 Negative pressure sucks (#28160)
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
2025-02-02 02:54:22 +00:00
Qwertytoforty
83f0a7a4d2 Places a limit on gas_coefficient to limit rad issues (#27921)
* Places a limit on gas_coefficient to limit rad issues

* formula
2025-01-31 15:56:01 +00:00
Migratingcocofruit
fddf6be647 Stop the attack chain after the tank is inserted (#28187) 2025-01-31 15:50:54 +00:00
Spaghetti-bit
2647cef335 Fixes SM events (#28199) 2025-01-31 08:05:46 +00:00
warriorstar-orion
f479ace54f Attack chain migration: /obj/machinery (#27784)
* one at a time let's go

* air alarm

* so many

* meh

* hell

* hell

* hmm

* Attack chain migration: /obj/machinery

* what the fuck?

* hell

* review fixes

* whoops

* fix build

* nuke fixes, more tests

* gland dispsenser and start of autolathe test

* var renames

* small fixes

* i tire of life

* more tests

* more tests

* more tests

* shrink map

* customize autolathe design disk load delay

* cell charger

* fire alarm frame installation test

* funny and burz reviews

* nuke fixes
2025-01-26 00:23:42 +00:00
warriorstar-orion
157276d6cb Port /tg/ move manager, drift and jetpack components. (#27698)
* Port /tg/ move manager, drift and jetpack components.

* don't add go through newtonian movement if not moved to a turf

* various cleans for blood drifts and mob speed

* fix slow meteors

* why on fuck's earth aren't speedbikes vehicles

* style lint

* also wtf

* okay i'm an idiot

* fix meaty ore speed and blood decal double stepping

* fix not unbuckling pulled object occupants

* don't bother dealing with immovable rods just yet

* exclude bubblegum and vetus from move manager for now

* fix issues related to null weightless blood icons

* reset blood icon state properly

* fuck it, we'll deal with mobs when basic mobs happen

* break infinite loop in decal splat
2025-01-22 22:49:58 +00:00
Erikos
fc3f10b0d9 [FIX] SM monitoring console crash (#27971)
* Silly double negatives.

* value for coeff + contra reccomendation

* simplified logic (thanks funnyman)

Co-authored-by: Charlie Nolan <funnyman3595@gmail.com>
Signed-off-by: Erikos <Erikos66@outlook.com>

---------

Signed-off-by: Erikos <Erikos66@outlook.com>
Co-authored-by: Charlie Nolan <funnyman3595@gmail.com>
2025-01-17 01:45:37 +00:00
Silverplate
17602326bc Fixes event C-3 (#27924) 2025-01-09 23:01:03 +00:00
PollardTheDragon
1c1eb2d3f7 Bluespace Harvester: Loot changes, Events, and more (#27438)
* Description, vars

* Lootpools and item spawning

* Automatic spawning, Motherlode

* PBJ Bag, Proper dirty probability

* Added more items to organic lootpool

* BSH Events

* Event condensing, product var fix

* Spawn location condensing

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Postclean

* Event list relocation, some announcement changes.

* Motherlode announcement over radio instead of announcement

* Created parent type for engineering events

* Motherlode spawn location optimization and turf selection

* More efficient rarity picking

* Adjusted lootpool

* Adjusted ruins that use BSH loot pools

* Excess Spacing

Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Comment Format

Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Comment Format

Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Lootpool comments

* Made syndie donk rare

* Migrated lootpools

* Map fixes

* fix up maps

* Repaths a couple map things

* Engineering event documentation and cleanup

* Product documentation, tap location, formatting

* Nulled var on destroy, documentation

* Handles not finding a valid spawn location

* Error fixes

* Fixes runtime if no NAD spawn points.

---------

Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
2025-01-05 11:29:05 +00:00
Charlie Nolan
e6f99049f6 MILLA phase 2 (#27659)
* MILLA phase 2

* Lint.

* Build Rust library

* Assorted bugfixes and tweaks

* Simplify fire mechanics and make hotspot sending to DM more reliable.

* Assorted tweaks, fixed an issue in the core engine and removed the softcap it made necesary.

* SM fixes, slower plasmafire, less overpowered pyro anomalies, and air alarm improvements.

* Review fixes.

* Build Rust library

* Unbalanced icon.

* Rebalance immovable rods.

* Unbalanced has alerts, can fight airflow (but get slowed)

* Build Rust library

* Stronger space cooling, slower temperature flow, faster burns, burnt floors, and a hotspot display fix.

* Build Rust library

* Tweaks to avoid merge conflict

* Oops.

* Build Rust library

* Rebalance wind.

* Rebalance temperature flow and space cooling.

* Fix gas flamethrower.

* Build Rust library

* Make air push slowdown directional, so you don't get slowed while moving with the air.

* Variable name cleanup.

* Reduce the speed of wind pushes.

* Prevent wind pushes from breaking your pull.

* Prevent swaps during wind push.

* Made supermatter crytals reliably run last in atmos machinery.

* Sped up plasmafire burning, but dropped the minimum burn amount.

* Rebalanced SM heat output.

* Rebalanced pyro anomaly.

* Build Rust library

* Lint

* Build Rust library

* Uncap fuel burnt readout.

* Added Custom air alarm mode, dropped Refill cap to ONE_ATMOSPHERE.

* Updated air alarm modes to use pressure settings instead of ONE_ATMOSPHERE

* Added a list of areas not in Filtering to atmos alert computer.

* Increase pressure gradient and vent output, especially at low distro pressure.

* Changed Immovable Rod from Moderate to Major.

* Lint

* Build Rust library

* More lint!

* Build Rust library

* Magboots, scaled slowdown, and nukie borg immunity

* Wind image

* Wind v2

* Wind v3

* pngcrush

* pngcrush again

* Moved hotspot removal into SSair, add wind effect.

* Lint

* Build Rust library

* Fix hotspots.

* Hotspot visual based on gas burnt

* Build Rust library

* Scaled wind to gas amount, stopped first wind push while moving.

* Made Rust panic logging safer.

* Made MILLA full tick and sleep timers more honest.

* Pressure overlay, ghost mode, atmos goggles.

* Build Rust library

* Lint

* Build Rust library

* More lint-y stuff.

* Build Rust library

* Repair pressure overlay if it loses its loc.

* Bind pressure overlays to their tile better.

* Build Rust library

* Make the pressure overlay work on z=1 and not proliferate effects.

* Don't block the supply shuttle.

* Don't fine for special effects.

* Maybe don't fine for ghosts, either.

* Build Rust library

* Make pressure overlay play nice with shuttles.

* Build Rust library

* Pressure scanning for borgs.

* Build Rust library

* Lint

* Build Rust library

* Made explosions not generate so much wind.

* Removed an old and non-functional proc.

* Clientless mobs can get pushed again.

* Build Rust library

* cargo fmt

* Build Rust library

* Don't divide by zero.

* Plasmafire generator for the Shadow

* Update shadow to use plasmafire generators

* Fix shadow's plasmafire generators going out on depart.

* Prevent heat2color from runtiming at absolute zero.

* Better nanofrost

* Build Rust library

* Singularity immunity

* Build Rust library

* Add back meson mode to atmospheric scanner goggles, so they don't stare deeply into the SM

* Build Rust library

* Dump panic outputs into data/ instead.

* Build Rust library

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>

* Saner handling of MILLA crash.

* Build Rust library

---------

Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2025-01-01 20:12:05 +00:00
warriorstar-orion
79bad427c8 Movement cross/uncross implementation. (#26762)
* refactor: Movement cross/uncross implementation.

* wrong var name

* fix unit tests dropping PDAs into nowhere

* Add documentation.

* remove unused constants

* say which procs are off limits

* fix simpleanimal z change runtime

* helps not to leave merge conflicts

* kill me

* fix typecast

* fix projectile/table collision

* treadmills don't cause MC to crash anymore

* connect_loc is appropriate here

* fix windoors and teleporters

* fix bonfires and clarify docs

* fix proximity sensors

Tested with sensors in crates, sensors in modsuits
Tested new proximity component with firing projectiles at singularity
Tested new proximity component with portable flashes
Tested new proximity component with facehuggers

* lint

* fix: polarized access helper false positives

* Revert "fix: polarized access helper false positives"

This reverts commit 9814f98cf6.

* hopefully the right change for mindflayer steam

* Changes following cameras

* fix glass table collision

* appears to fix doorspam

* fix ore bags not picking up ore

* fix signatures of /Exited

* remove debug log

* remove duplicate signal registrar

* fix emptying bags into locations

* I don't trust these nested Move calls

* use connect_loc for upgraded resonator fields

* use moveToNullspace

* fix spiderweb crossing

* fix pass checking for windows from a tile off

* fix bluespace closet/transparency issues

* fix mechs not interacting with doors and probably other things

* fix debug

* fix telepete

* add some docs

* stop trying to shoehorn prox monitor into cards

* I should make sure things build

* kill override signal warning

* undef signal

* not many prox monitors survive going off like this

* small fixes to storage

* make moving wormholes respect signals

* use correct signals for pulse demon

* fix pulse heart too

* fix smoke signals

* may have fucked singulo projectile swerve

* fix singulo projectile arcing

* remove duplicate define

* just look at it

* hopefully last cleanups of incorrect signal usage

* fix squeaking

* may god have mercy on my soul

* Apply suggestions from code review

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>

* lewc review

* Apply suggestions from code review

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>

* burza review

* fix bad args for grenade assemblies

* Update code/__DEFINES/is_helpers.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>

---------

Signed-off-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: DGamerL <daan.lyklema@gmail.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2024-12-21 08:07:44 +00:00
Migratingcocofruit
e03352ddb9 Singulo Buffs - Again (#27361)
* iteration 1

* oops

* Okay now it actually works

* remove rad cap

* Adds a singulo monitor

* comments and other fixes

* rebuild tgui

* updates last size now. breach alerts now go before warnings

* oops

* fix console lables for the field gens

* New generator lookup algorithm

* comment added

* sort out the return and checks on temp_gens

* Adds sprites to the singulo monitor

* fix sprite stuff and singulo alert

* rebuild tgui

* Adds a singulo monitor board to RnD.  Uses the correct icon when no singulo is being monitored.

* give commas some space

* Adds a singulo console board to the singulo engine crate

* style fixes and fixes the check for singularity location and type

* Rebuild Tgui

* style fixes and a comment

* Removes redundant brackets

* Correct the check for there being containing generators

* Changes the generator_field variable to a more generic name

* adds a period to a comment

* Restore accidentally modified icons to their original state

* Rebuild TGUI

* Rebuild tgui

* rebuild tgui

* Rebuild TGUI

* rebuild tgui

* TGUI rebuild

* Style fixes

* TGUI rebuild

* rebuild tgui

* rebuild tgui

* Let's see if this works

* I didn't see that merge conflict. Rebuilding again

* rebuild tgui

* Rebuild TGUI

* Review changes

* Changes to the new variable name in the singulo monitor

* Adjusts bar values for each colour according to the reduced energy capacity of the new generators

* Rebuild TGUI

* Review changes

* missed a line

* improves a couple comments

* removes the pre loose warning from the singulo. It will now only alert the station once the singulo is loose. Fixes loose alerts being given repeatedly

* Update tgui.bundle.js

* TGUI rebuild

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Fixes a bug causing the console to announce a singuloose when selecting a singularity at level 2 or above

* Removes alerts from the singulo console

* Rebuild and Merge Master

* Change the name of the singulo gen crate to include the console board

* fixes a runtime that terminated the destructor prematurely when deconstructing a console that hasn't selected a singularity

* Removes generators from the interface when they become inactive

---------

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2024-12-14 06:07:11 +00:00
Migratingcocofruit
7539308d89 SM no longer cools down gas (#27492) 2024-12-11 16:42:24 +00:00
Migratingcocofruit
55ff05d57b Replaces The SM Crush Bonus With a New Mechanic: Gas Coefficient (#27168)
* Changes crush to per gas bonuses depending on amount in the chamber

* Undef the defines

* oops

* Make anomaly spawn threshold depend on power + bonus rather than power or crunch threshold.

* moves the crunch bonus outside the if scope

* Makes mole_crunch_bonus a variable of the SM

* adds mole_crunch_bonus to power on the top if of the arcs and anomaly section

* Adds mole count and the gas coefficient of the mix to the SM monitoring console

* Removes a redundant rounding

* Rebuild TGUI

* rebuild tgui

* Update tgui.bundle.js

* Update tgui.bundle.js

* Changes the variable name to gas coefficient

* oops

* Makes the uses of gas_coefficient a bit tidier

* Update tgui.bundle.js

* Update tgui.bundle.js

* Tgui rebuild

* Makes scaling below the old crush threshold quadratic, and makes GC scale with the square root of total moles above it.

* Uses linear scaling for the moles progress bar

* Corrects using the log scaled value of the moles for the bar

---------

Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2024-12-11 15:40:22 +00:00
warriorstar-orion
525c68d617 Attack chain, initial setup. (pull *immediately* for *any* TM issues) (#26834)
* refactor: Attack chain, initial setup.

* migrate curtain to make dreamchecker happy

* update thurible

* don't call attacked_by separately for legacy attack chain

* remove duplicate proc

* condense similar code, put allowances for legacy code in new procs

* update docs, include diagram source

* add comment on how to update diagram

* fix admonition

* mindflayer updates

* remove commented out code

* clarify all steps

* after_attack should be overridable

* whoops

* retrofit recent changes

* duh, can't restrict this yet because of tool_acts

* i hate ore bags with the fire of a thousand suns

* return correct value for object attack logic

* Various cleanups.

We don't want to attempt to pull stuff out of `/obj/item/attackby`,
because those pieces are part of the related objects' migrations, not
`/obj/item` itself. Attempting to do this causes knockon effects where
things expected to call e.g. `/obj/item/storage/attackby` in the call
chain were not ferried over to the new item interaction code, because
the related objects hadn't actually been migrated over yet.

I've used refactoring /obj/vehicle as the example for migrating
`attackby` methods instead.

* simplify some argument names

* fuck it

* make it do the thing

* Rename CI module call

* Prove that CI works

* improve test output

* aaand fix it again

* fix curtain tool interactions

* fix compile error

* fix compile error

* Better docs, introduce migration plan tool.
2024-12-02 23:36:36 +00:00
warriorstar-orion
0ffa8303a7 Rename all non-snake_case types. (#27268)
* refactor: Rename all non-snake_case types (not procs or vars (yet)).

* completely dynamic update script

* might help to include the data

* update aa's scuffed python

* oh

* set script PR number

* run updatepaths again

* Add other table updates with JSON columns

* bump SQL version

* just fucking end my life

* move JSON data
2024-11-30 19:08:45 +00:00
Contrabang
734d0166a0 Removes some non-existant typepaths (#27362)
* Adds CI for missing icon_states

* yeah

* more fixes

* more fixes

* seems good

* moar

* fix

* yea

* hrtyhrt

* yeah

* WOE

* Removes some non-existant typepaths

* yes
2024-11-30 12:04:03 +00:00
Contrabang
396215501c Machine Frames are now structures and not machines (WTF???) (#27388)
* yes

* yes 2

* consistency

* yes

* rename update paths
2024-11-27 16:51:46 +00:00
Migratingcocofruit
d1cfe46055 Particle Accelerator Console TGUI update (#26949)
* initial version

* particle sprite sheet

* starting to make a grid

* still can't figure out grids

* Adds the grid. Still need to figure out tooltips

* Sorted everything

* oops

* remove redundant particle accelerator asset file

* Rebuild Tgui

* Rebuild TGUI

* Rebuild TGUI

* rebuild TGUI

* tgui rebuild

* rebuild tgui

* Rebuild TGUI

* rebuild TGUI

* Rebuild TGUI

* Rebuild tgui

* Remove redundant newlines and clean up the UI

* tgui rebuild

* rebuild TGUI

* Rebuild TGUI

* TGUI rebuild

* Capitalizes first letter in the title of the layout part of the interface

* Uses the capitalize function instead of implementing capitalization inline

* Clean and rebuild TGUI

* Update tgui.bundle.js

* Update tgui.bundle.js

* Update tgui.bundle.js

* Properly mirrors the interface when pointing south or west

* Adds part names to the interface

* No longer displays the layout when the EM acceleration chamber is missing

* Clean and Rebuild TGUI

* Puts the grid and table into components and makes the layout disappear when the PA is fully assembled

* Update tgui.bundle.js

* Adds some comments and moves the column/row order reversal to the UI. Also makes the UI a bit more compact

* Update tgui.bundle.js

* Uses spans and </br> to separate the tooltip into lines
2024-11-26 23:05:02 +00:00
Migratingcocofruit
24dc69d8b1 Particle beam now consistently imparts the singularity with energy and only does so once (#27415) 2024-11-22 13:11:38 +00:00
Burzah
bff89a13f0 Revert "Singulo engine buff (#26929)" (#27360)
This reverts commit 627fe1e059.
2024-11-14 20:11:53 +00:00
Contrabang
8352613d03 Adds CI for missing icon_states (#27063)
* Adds CI for missing icon_states

* yeah

* more fixes

* more fixes

* seems good

* moar

* fix

* yea

* hrtyhrt

* yeah

* WOE
2024-11-14 17:58:06 +00:00
Migratingcocofruit
627fe1e059 Singulo engine buff (#26929)
* iteration 1

* oops

* Okay now it actually works

* remove rad cap

* Adds a singulo monitor

* comments and other fixes

* rebuild tgui

* updates last size now. breach alerts now go before warnings

* oops

* fix console lables for the field gens

* New generator lookup algorithm

* comment added

* sort out the return and checks on temp_gens

* Adds sprites to the singulo monitor

* fix sprite stuff and singulo alert

* rebuild tgui

* Adds a singulo monitor board to RnD.  Uses the correct icon when no singulo is being monitored.

* give commas some space

* Adds a singulo console board to the singulo engine crate

* style fixes and fixes the check for singularity location and type

* Rebuild Tgui

* style fixes and a comment

* Removes redundant brackets

* Correct the check for there being containing generators

* Changes the generator_field variable to a more generic name

* adds a period to a comment

* Restore accidentally modified icons to their original state

* Rebuild TGUI

* Rebuild tgui

* rebuild tgui

* Rebuild TGUI

* rebuild tgui

* TGUI rebuild

* Style fixes

* TGUI rebuild

* rebuild tgui

* rebuild tgui

* Let's see if this works

* I didn't see that merge conflict. Rebuilding again

* rebuild tgui

* Rebuild TGUI

* Review changes

* Changes to the new variable name in the singulo monitor

* Adjusts bar values for each colour according to the reduced energy capacity of the new generators

* Rebuild TGUI

* Review changes

* missed a line
2024-11-14 16:48:38 +00:00
Migratingcocofruit
0218b541f2 Energy field generators Refactor/Tweak (#26919)
* Reduces range for energy seeking of generators, adds energy spreading and changes instances of power to energy. Containment field destructor no longer crashes when it has no connected generators

* review changes

* undef

* removes redundant line

* review changes
2024-11-13 13:23:41 +00:00
Henri215
b38c4bbd4c A few description grammar fixes (#27134)
* Double spaces

* more space and misspelling

* Fixing punctuations

* Not now

* double dots

* Apply suggestions from code review

Signed-off-by: Henri215 <77684085+Henri215@users.noreply.github.com>

---------

Signed-off-by: Henri215 <77684085+Henri215@users.noreply.github.com>
2024-11-10 13:38:28 +00:00
Contrabang
0f717d660a Adds CI to forbid some istype(src) checks. (#26980)
* first set of changes

* the last checks

* actually builds

* Update code/modules/surgery/organs/subtypes/standard_organs.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Update tools/ci/check_grep2.py

Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* 1 fix (cigarettes) and better encapsulation in files

* yeeep

---------

Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
2024-11-06 12:56:36 +00:00
Silverplate
4a43b6a921 buffs SM events (#27034) 2024-11-04 18:22:26 +00:00
Truls20
d424391c09 Supermatter events are now announced by "supermatter crystal" instead of "the supermatter crystal" (#27176)
* Makes the supermatter event speaker be "supermatter crystal" instead of "the supermatter crystal"

* Supermatter events are now announced by "supermatter crystal" instead of "the supermatter crystal", now including supermatter shards
2024-10-27 01:40:31 +00:00
warriorstar-orion
9465b565b8 refactor/ci: enforce mapload in Initialize args (#26878)
* refactor/ci: enforce mapload in Initialize args

* add new missing mapload arg

* add yet another missing mapload arg

* Update code/modules/power/engines/singularity/particle_accelerator/particle.dm

Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

---------

Signed-off-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
2024-10-23 19:07:46 +00:00
Silverplate
099f119d02 Mole crush SMs now generate anomalies (#26998)
* Mole crushing the SM now generates anomalies

* other anomalies now spawn
2024-10-22 09:26:51 +00:00