* Ports paradise error handler, with in game runtime viewer!
* Changes to the old runtime error and removes inerror reference
* Oops
* Adds a wrapper for world.log so it displays both in the runtime diary and in DD window
* added window flashing pref, added windowflashing to notify_ghosts, pollCandidates and similar procs
* disabled window flash for golem shells, ash walker eggs, drone shells and posibrains
* ignorepref var for ahelp/apm and roundstart
* adds a turf per ms counter to air's stat page
I'd use the turf cost var but its broken and i don't want to take the time to fix that because it would involve a macro trick to make properly timing shit much easier on subsystems and then applying this to every subsystem.
* Update air.dm
* Moves turf New calls to Initialize
* Much faster
* Fixed
* Makes add_to_active queue up before SSair is initialized
* Remove active queuing
* And the proc
* Move the check
* Fix some shit
* F U C K T U R F S
* Necessary
* Unnecessary
* SHUT THE FUCK UP
* Panic mode hurts the code
* Such a
* Simple answer
* A well thought out plan
* /turf/open optimization
* Undo the warning suppression now that it's fixed
* Fixes lava typecaching badly
* Added late initialization
* Make the atmos offenders late initialize
* Add extra logging
* GLABALS
* Better solution for trying to activate w/o air
* Further base calling copypasta
* Gates, guards, gorans
* Small doc fix
* Do the faster
* T U R F V A R P E R S I S T E N C E
* The solution is always so simple
* The (hopefully) final nail in the coffin
* Makes qdeleted and qdestroying macros
* Makes QDELETED and QDESTROYING uppercase
* Swap qdel checks istype's for != null's
* Fix it
* How was this missed?
* Fixes freon causing lag
Yes, these were stacking. so a turf would have a bunch of "handle wet" timers running on it, every 1.5 seconds, all checking the same shit.
* Fixes unique timers
* Better `in world` Initialization handling
Remove spawn_atom_to_world and SSobj.atom_spawners
Roll SSobj/setup_template_objects and SSobj/Initialize into new generic proc
* >BYOND
* >var names
* Defines
* Actually remove the spawn_atom_to_world definition
* A note on NOT CALLING THE BASE
* Remove set waitfor = 0
* My comments are cool
* In order to prevent just that...
* Fixes some bad addtimers
* Adds INVOKE
* Warning for addtimer
* Working syntax
* Another bad call
* Fixes the addtimer warning
* Add suppress_zero_warning to addtimer
Useful for addtimer that uses vars
* Add INVOKE_AGAIN for when the var is already defined
* Replace addtimer(...,0) with INVOKE((...))
* Much more sensible syntax
* Less overhead, less copypaste
* Rename INVOKE_ASYNC
* Use a macro
* Allman style
* Wait, why make it a datum in the first place?
* Revert the rename
* Rename again, keep line endings
* typo
* More typos
* Untouches Addtimer
* Update callbacks.dm
* Update timer.dm
* Revert allman style
* Revert "Revert allman style"
This reverts commit 47361da15bd04eca138be5f13acdc9dd5ba89331.
* Trying to match that whitespace diff
* Why is this missing?
* I'm not fucking dealing with this!
Originally I wanted to just say that such a thing is unsupported, but since byond can just randomly decide to insert a bunch of sleeps into a loop, I can't make that requirement on subsystems, so its now supported.
* Adds a topic limiter.
This appiles to all non-admins, the rate is configurable but defaults to 10 in any second and 100 in any minute.
Hitting the minute limit causes a notification to go to admins (once per minute)
The user is always notifed when a topic is ignored so they know whats going on. If they trigger a notification to admins they are told about this as well.
* This makes more sense
* BOOM
* Forgot this check
* Fix remaining objectives
* This is better
* MSO params
* >When you copy paste directly from the comment
* Merge fixes
* Revert "Fix remaining objectives"
This reverts commit b1d1bf40f615019bb57088c24fae8f89c5d2e834.
* Revert "Forgot this check"
This reverts commit cea6ad2381d44a44ef3a93064997454cf7b1ccf5.
* After all that work I did to make objectives work...
* Oh this is important
* The beginnings of soapstones
* Compilation
* Sprites!
* White text
* Persistence
* More tweaks
* Why isn't it working
* Removes author name
* Random names, more checking for nulls
* VARIABLE MESSAGES
* Fixes icon conflicts
* Limited soapstone uses, purchase more at cargo
* No carving if empty
* Adds SScommunications subsystem
🆑 coiax
add: Communication consoles now share cooldowns.
/🆑
Sharing cooldowns is good, having a central place to make announcements
is good. This moves some of the machinery for announcements out of the
consoles, which coincides with some plans I have for the communications
machinery of the station anyway.
* Oh yeah, AI's make vox announcements
* Removes priority for non-firing subsystem
* Moves the defines
* Removes dem defines
* Decoded input