Commit Graph

24 Commits

Author SHA1 Message Date
CHOMPStation2StaffMirrorBot
85f80353ae [MIRROR] Fixes exploits and bugs that allowed for infinite pressure&temp atmos. (#9853)
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-01-12 15:35:31 +01:00
Guti
105777a64b Gas overlays remove when not enough gas (#8402) 2024-05-15 22:36:00 +02:00
Guti
932e21e7d3 Miscellaneous ZAS Fixes and Optimizations (#8396) 2024-05-14 23:08:27 +02:00
Drathek
3995338290 Moar whitespace normalization [MDB IGNORE] (#7750)
Co-authored-by: Raeschen <rycoop29@gmail.com>
2024-02-16 10:54:47 +01:00
CHOMPStation2
c55baec811 [MIRROR] Cleaning up some defines (#7726)
Co-authored-by: CHOMPStation2 <chompsation2@gmail.com>
Co-authored-by: Selis <selis@xynolabs.com>
2024-02-12 15:55:15 +01:00
CHOMPStation2
cbba031a7d [MIRROR] Size Toy Fun (#7727)
Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: CHOMPStation2 <chompsation2@gmail.com>
2024-02-11 21:52:51 +01:00
Nadyr
d16f39cc10 powder that makes you say yes 2023-03-17 02:22:16 -04:00
Heroman3003
025fac4bf9 [MIRROR] /tg/ era language pass 2023-03-13 05:23:57 +00:00
Aronai Sieyes
908b64af01 Merge pull request #11273 from VOREStation/Arokha/gasvisuals
Gas visuals use vis_contents not overlays
2021-07-27 15:40:45 +00:00
Chompstation Bot
15cafbe65b Optimize a couple things 2021-07-20 21:30:20 +00:00
Chompstation Bot
20e3b0a2d3 [MIRROR] Linter Introduction + Cleanup 2021-05-27 16:31:50 +00:00
Razgriz
2f9ad3f3e5 Update xgm_gas_mixture.dm 2020-04-09 16:47:27 -07:00
Leshana
9cbdf184ff Ported Basic Overmap Functionality
- Ports the overmap, ships, sectors, and "landable" ships from baystation.
- Ports necessary computers to control ships and overmap shuttles.
- Shims missing machine and computer functionality pending future enhancements.
- Includes required new sprites and sounds.
2020-03-11 11:11:40 -04:00
Leshana
1b8451bc9a Converts /datum/gas_mixture/var/graphic to a lazy list.
* The vast majority of gas mixtures never use their `graphic` list.  Prime candidate for making a lazy init list.
* While we are here, add nullchecks to ZAS's use of the graphic list a bit.  /turf/update_graphics was technically already null safe, but its even better to not bother calling it at all right?
2017-06-10 10:13:55 -04:00
Leshana
446f7b0a12 Eliminate init() proc from /datum/gas_mixture
* Initializing a list in the type definition (of any type) incurs a hidden proc call ("init").   Simply by moving the init of the lists to /New() we speed up creation of /datum/gas_mixtures (which happens *often*)
* The list variables still get initialized by the time the instance is created, so this has zero impact on other code, its just starightup faster with no downsides.
2017-06-09 22:16:45 -04:00
Leshana
71587c5ad0 Fix rooms holding pressure when exposed to space.
This happens because edges cease processing when the delta between their zones is small enough.  This is normally a fine optimization, but when it results in a room at 4kPa with a window open to space, it breaks imurshuns.

Two main changes to solve this problem without too much cpu cost:
1) Stop edges from sleeping if one side is a hard vacuum.  This ensures that a zone doesn't freeze at a low-but-non-zero pressure when touching hard vacuum.
2) Prevent #1 from causing the edge to stay alive for ages while pressures asymptotically approach zero as they are repeatedly equalized but only half is dumped to space. (Would happen if ZoneA---ZoneB---Space arrangement exists) by detecting when the total amount of air left is small enough that it would normally sleep anyway, and just setting it to zero.

The end outcome is that behavior is mostly the same as before, except when zones have an open path to unsimulated space, they will reach equilibrium at zero instead of semi-random lowish values.
2017-03-15 19:04:33 -04:00
Leshana
0ad88fd29b Update values after equalizing gas mixtures.
Fixes rooms showing wrong pressure after reaching equilibrium.
* If we do not do this, zones are left with the wrong total_moles (and therefore the wrong **pressure readout**) after equalizing.
* Equalizing happens when two connected zones get close enough to suspend processing. Thus the effect of this bug would be wrong pressure readings on rooms that are no longer being updated, thus locking in the wrong value!
2017-03-15 14:08:57 -04:00
Zuhayr
7c3993b68b Revert "Revert "Bay update."" 2016-02-07 16:33:30 +10:30
Zuhayr
98d983577c Revert "Bay update." 2016-02-07 16:07:05 +10:30
PsiOmegaDelta
6a22086c17 Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/game/verbs/suicide.dm
	code/modules/nano/modules/crew_monitor.dm
2015-12-06 11:34:36 +01:00
PsiOmegaDelta
713a7bd654 Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/game/objects/items/devices/flashlight.dm
2015-08-25 08:12:39 +02:00
PsiOmega
f25e8a7a67 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/objects/items/stacks/tiles/plasteel.dm
	code/game/objects/items/stacks/tiles/tile_types.dm
	code/modules/materials/materials.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/silicon/pai/pai.dm
	code/modules/surgery/implant.dm
	code/setup.dm
2015-06-26 20:28:47 +02:00
Zuhayr
27a7768ffc Merge branch 'dev-freeze' of https://github.com/Baystation12/Baystation12 into dev 2015-06-25 17:58:37 +09:30
Mloc
c1ce2f02b7 reorganize xgm into its own module
Signed-off-by: Mloc <colmohici@gmail.com>
2015-06-02 16:29:23 +01:00