Commit Graph

20 Commits

Author SHA1 Message Date
ShadowLarkens af6fad2797 Startup Time Optimization (#17673)
* Add compatibility for para-byond-tracy because byond-tracy is deprecated

* We don't need to poke our neighbors to update in LateInitialize, we only late init during mapload when all of our neighbors are going to be updated anyways

* Minerals shouldn't update neighbors during mapload either

* Slightly optimize mineral/update_icon

* Reduce /turf/simulated/mineral/update_icon by ~100,000

* Potentially reduce cost of ZAS init

* Make verdigris generate automata waaay faster

* DON'T ENABLE TRACY OH GOD

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-05-21 08:16:41 +02:00
ShadowLarkens ec18de7d79 Replace all air_master nonsense with SSair 2024-10-23 05:47:09 -07:00
Aronai Sieyes 0f7e9c4620 Merge pull request #11280 from VOREStation/Arokha/mach
SSmachines optimizations
2021-07-28 12:22:20 -04:00
Aronai Sieyes 6c797b906d Fix some CanPass stuff 2021-07-27 21:18:41 -04:00
Aronai Sieyes 8e4f05baed Tables behave better for flipping purposes 2021-07-27 19:59:29 -04:00
Aronai Sieyes 34982728cb Add 'as anything' to various for loops 2021-07-20 12:39:59 -04:00
MarinaGryphon 385fa640af Linter diagnostics + bans non-var relative pathing 2021-06-20 18:16:45 -04:00
Leshana 2d0301c6e4 Fix bug in ZAS can_atmos_pass optimization.
Check the *atom's* density, not the turf's!
2020-04-30 19:25:57 -04:00
Leshana 10b0323d6f Use can_atmos_pass to reduce proc-calls in c_airblock()
- Add additional can_atmos_pass value ATMOS_PASS_PROC which indicates custom behavior requiring calling the CanZASPass proc.
  - The benefit being for the other three values we DON'T need to call CanZASPass at all!  We already know the behavior without the overhead of a proc call.
  - Obviously any atom with can_atmos_pass = ATMOS_PASS_PROC cannot now call ..() in CanZASPass() since the default behavior would be to (recursively) call CanZASPass()
  - This required re-numbering the constants, so I also fixed all code that assumed particular values for the constants.
- Switched all types which overrode CanZASPass with custom logic to be can_atmos_pass = ATMOS_PASS_PROC
- Changed /turf/c_airblock() to skip calling /atom/movable/c_airblock() for the three can_atmos_pass values that don't require calling the proc.
2020-04-30 14:50:57 -04:00
Leshana 5c752e79f4 Remove /turf/var/can_atmos_pass as it is unused (and redundant with /turf/var/blocks_air anyway. 2020-04-30 14:50:57 -04:00
Anewbe 8ed384b38c Rewrites Atmospherics 2019-03-28 19:25:11 -04:00
Leshana 0c41ae9630 Convert ZAS "Airflow" into a subsystem plus fixes
* Port of the "Airflow" portions of Yonaguni/EuropaStation#618
* The "airflow" part of ZAS used to be handled by a sleep'd loop.   This has the potential to bunch up and lag.  Switching to a StonedMC managed subsystem improves it.
* Fixed to ensure that zshadow mobs cannot be blown around by the wind no matter how fierce.
* Added a message to mobs informing them when their boots save them from being wind-thwapped.
* Check w_class on non-item objects if they have it defined (might as well since var/w_class is on /obj)
* Tiny optimization of c_airblock
2018-01-27 20:31:04 -05:00
Anewbe cce1fcc1f5 Ports MultiZAS 2017-05-04 19:51:54 -04:00
SkyMarshal 772c320303 Multi-Z. 2015-08-30 14:15:20 -07:00
mwerezak fbede7a193 Minor ZAS-related cleanup 2015-04-28 23:00:56 -04:00
mwerezak b84bb4ff23 Fixes bubble/hull shield generators not updating air zones, update_nearby_tiles() cleanup. 2014-11-28 19:37:31 -05:00
Mloc 28e0539359 fix an issue with ZAS geometry not re-forming
Signed-off-by: Mloc <colmohici@gmail.com>
2014-10-14 11:57:31 +01:00
Aryn 4c27af0bb9 Added Z-level support. 2014-02-21 08:38:44 -07:00
Aryn 0814bdb36f Added some documentation. 2014-02-19 18:24:37 -07:00
Aryn bc971b01ea New ZAS version, stable and efficient. Git broke the everything so it's in one commit. 2014-02-19 16:47:53 -07:00