* IMPORTANT MILESTONE, AIR IS BREATHABLE
* the vibrations of the SM in my headphones are pleasing (no stupid hotspots)
* sanity check, it all works
* SM is fine
* this will work first try
* linter
* "thank you, warriorstar" everyone says in unison
* Build Rust library
* finishing touches (hopefully)
* Build Rust library
* update gas_mixture.dm to include hydrogen burning
* Build Rust library
* hydrogen should be the right color on gas analyzers
* i JUST rebuilt it
* adds agent B and Hydrogen floors
* update the h2 canister
* caniser bad speling
* in aa we trust
* Build Rust library
* Build Rust library
---------
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
* 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
* 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
* 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
* 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
* 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>
* 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>
* 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>
* 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.
* 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
* LINDA -> MILLA
* Tiles now change their atmos mode properly.
* Fixed a bug that made walls generate supercold air when deconstructed/destroyed.
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Begone, var!
* MILLA -> milla
* Lint.
* More lint.
* Prevent negative/NaN atmos from spreading.
* Made fires start more reliably.
* Undef what the rest should not see.
* Enums are nice.
* Match LINDA better.
* Debugging verbs.
* Debug verb fixes.
* Labelled more lavaland stuff with ATMOS_MODE_LAVALAND
* Block superconductivity on a couple more things for Lavaland.
* Updated milla.dll
* Lavaland map fixes.
* Missed a spot.
* Begone, var! (again)
* Add libmilla_ci.so for continuous integration tests.
* Install/contributing instructions for MILLA.
* Directional plasmaglass windows on shuttles shouldn't stop protecting from heat after moving.
* Banish bad naming.
* Better naming and debug stats for SSair.
* Apply suggestions from code review
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Magic numbers and formatting.
* Don't screw up the temperature during reactions.
* Efficiency and readability.
* Fix hotspots.
* Removed redundant safety (MILLA will already output an error)
* Optimizations.
* oops
* TGS build script update.
* Change API of gas_mixture and how you get one from a turf.
* Get in there.
* so many vars
* MILLA binary updates.
* Lint
* Made MT cost more honest.
* Gave MILLA a read-only mode.
* More read-only vs synchronized mode work.
* Even more.
* Synchronize disposals.
* Updated a bunch of stuff to use SSair.synchronize or GM.synchronize.
* MILLA <3 Tracy
* lint
* cargo fmt
* more lint
* Test needed MILLA sync.
* Silence atmos machinery that's behaving as intended, but continue objecting to other potential failures to synchronize.
* Push new MILLA DLL
* Build MILLA
* Update PR instructions for MILLA.
* Add some fancy plasmaglass windows to the Lifebringers' ship.
* The golems remembered that they should insulate *all* their engines.
* First round of TM bugfixes.
* Build MILLA
* fix two lavaland ruin turf types
* bunch more maps
* fixes milla ci and makes the interesting turf verb better
* Solid turfs can no longer conduct heat (for now...)
* Made indoor tiles in beach and winter biodomes not lavaland air.
* Re-added random IT teleport, adjusted warning message
* Fixed a tinted window on Lavaland to be a plasglass window instead.
* Made firelocks and holofans heatproof
* Made RPD auto-wrench pipes if you have a wrench in your offhand.
* Runtime fixes.
* Made visuals update more reliably.
* Lint
* Update .github/CONTRIBUTING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* The Syndicate have installed tiny fans on their research base.
* The syndicate have figured out how to make plastitanium windows heatproof.
* This is getting out of hand. Now there are two of them.
* Un-break the auto-wrenching that I broke before committing.
* Build MILLA
* Build MILLA
* Massive MILLA refactor, assorted bugfixes.
* Build MILLA
* Explicit typing.
* Less sleeping/blocking.
* Build MILLA
* Yes, yes, this part can sleep.
* Build MILLA
* SSair reporting improvements.
* Build MILLA
* Please do not dock twice and splat yourself.
* Build MILLA
* Pls to not make SM go nuts.
* Build MILLA
* Build MILLA
* Added stricter lower bounds on plasmafire, fixing perpetually-burning SM.
* Build MILLA
* Lint
* Temporary logging, begone.
* Build MILLA
* Prevent hotspot strobing.
* Add in radiate_to_spess behavior.
* Build MILLA
* progress
* Compiling is good.
* bugfixes
* Progress.
* Ruins update.
* This one exists.
* Fixup temporary hotspots to last longer than one tick.
* Add/fix comments.
* Cut the slash.
* Fix test.
* No sleep for you.
* Build MILLA
* Prevent nested MILLA safety from runtiming.
* Build MILLA
* Runtime fix.
* Build MILLA
* Fix canisters not updating icon when gas contents change.
* Build MILLA
* Build MILLA
* Fixed an issue that made mechs very cold on environment air.
* Build MILLA
* oops
* Build MILLA
* Walls can make loud noises again.
* Build MILLA
* Fixes a rare runtime.
* Build MILLA
* Update .github/DOWNLOADING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Review suggestions
* Lint
* Build MILLA
* bound_mixtures now only contains mixtures that can be written
* Build MILLA
* Apply suggestions from code review
Co-authored-by: Matt <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* Restore the original async behavior of pyro anomalies.
* Build MILLA
* Build MILLA
* Make the safety assertion in /datum/milla_safe safer.
* Build MILLA
---------
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: GDN <Roanrichards1@Gmail.com>
* CI
* undef
* hooooly crap
* yeah
* false by default
* fixes
* alright, there we go
* oops lmao
* lol, lmao even
* proper programming
* fix
* losin my mind
* oops
* yeah coloring
* WE LOVE MULTIPLE DEFINES (ive lost my sanity)