This PR edits the lighting engine's turf selection algorithm to also include turfs below openturf tiles, allowing for cross-Z lighting.
changes:
Lights now will now shine down Z-levels when they light up an open turf.
Commented-out openturf starlight pending making it not pummel SSlighting.
Openspace overlays are now only queued if they are not already in the queue.
Lighting overlays will now also update their associated openturf overlay on update if they have one.
Removed an old unused message from the asteroid generation subsystem.
-turn some custom items into regular ones, their original owners will keep their more snowflake version, at tishina's request due to this new policy: https://forums.aurorastation.org/viewtopic.php?f=25&t=8087
-fix the mercenary's voidsuit and the radsuit having exposed hands in their mob sprites
-fix the iaa rig having no sprite when deployed
-adds flannel shirts/jackets that strudel was asking me for months
-adds a medical webbing and drop pouches versions of the webbings
-brings back the IAC armband from old code
-adds pink lipstick
When the update goes into master, I will make another pr fixing the custom item paths and etc.
Port of tgstation/tgstation#26975.
Changes the lighting engine to apply lighting changes in one step using stored lum value differences instead of two steps (remove_lum, add_lum).
Seems to show a speedup in lighting updates as well as a reduction in server memory usage due to aggressive freeing of unneeded lists.
Lighting overlays also default to fullbright instead of fulldark so movable area transitions look less strange.
changes:
Shells Frames' species no longer show up on examine. They can still be detected via. other means such as checking pulse, health scanners, or them being damaged.
IPC Tags are now located in the head instead of the groin.
Note: This does not affect tags showing up on examine. They must be manually removed from the shell to completely disguise their examine text.
Changes the main access lift into two seperate lifts. Should vastly decrease congestion.
Changes the AutoLocker into an AutoDrobe, a floor mounted pad that does what the autolocker did instantly. Should solve round-start confusion.
Fixes a handful of bugs.
Off-topicedly, pretty much doubles Vaurca starting phoron, adds more phoron to K'ois and K'ois byproducts while removing more K'ois from raw K'ois. Adds a moderately expensive K'ois bar to the snack vendors for until I can figure out how to code phoron suppositories.
This should fix manhacks attacking traitors, heisters and mercenaries, and yes this was tested.
Also fix ipcs being able to repair themselves with cable coil.
changes:
Tables now use queue_icon_update() to trigger icon updates.
SSicon_update has been promoted to SS_TICKER to reduce delay in icon updates.
SSicon_update now only has one queue.
This should prevent excessive table icon updates & mitigate table-lag from nar'sie.
changes:
Merged the voting controller into the voting subsystem.
Changed the voting UI to use /datum/browser.
Converted /datum/browser to use HTML5 & attempt to use edge if available. All users of the browser datum have been confirmed functional with Edge.
Changed the ChemMaster to use SSassets for resource download.
changes:
Thrown objects will now fire Entered() on the turf they land on. As a result, they will now fall if they land on an openturf.
Openturfs now queue an icon update if something falls down.
/obj/item/weapon/ore_radar converted to use SSfast_process instead of a spawn loop.
Converted hand-held tanks' New() to Initialize().
Note: This PR allows grenades to be thrown down openturfs.
changes:
Syndie hardsuit/voidsuit helmet lights now emit green light, the same color as the lights on the helmet's sprite.
Welding tools now use SSprocessing instead of the obsolete processing_objects list.
Converted some spawns to timers.
Fixes#2201.
Fixes#2162.
Fixes several map bugs.
Adds a TComms Relay to the Main Level. Location may not be optimal,
check.
Modifies the configuration file of the lifts to change the
announcements lifts give when arriving to each floor for it to mention
the main areas located in that floor/department.
changes:
Airlocks no longer tick (exceptions: firedoors, uranium airlocks)
Airlock commands run before round-start are queued to run at round-start.
Airlock commands that failed to run are scheduled to try again in 2 seconds with timers.
Callbacks can now be registered with SSticker to run at round-start in a non-blocking way.
Added a new subsystem (SSpower) for handling power-related functions. Currently doesn't do a whole lot, but this will likely eventually change.
RCON functionality has been moved from SSmachinery to SSpower.
The global cable list has been moved into SSpower.
Powernet sensors no longer process purely to keep themselves in the global machines list, instead they are added to a list in SSpower.
Power terminals no longer pointlessly tick.
Removed some variables from SSticker that weren't used by anything.
Holographic overlays such as those used by consoles are now cached.
Xenoarcheology setup is now tick-checked.
ZAS now uses post-fire timing.
The req_access and req_one_access lists are no longer initialized by default on all /obj types.
Openturfs will only emit starlight if they are bordering a non-openturf dynamically lit turf.
Powernets are now stored in SSpower instead of being a global.
The global mouse list is now stored in SSmob instead of being a global.
Fixed some weirdness in APCs' Destroy() caused by a merge.
SSwireless now pre-bakes to reduce round-start processing.
SSwireless no longer uses processing queues.
changes:
The cameranet is now actually sorted like it's supposed to be. Whoops.
The obfuscations list on turfs is now only created when it is actually needed, instead of every turf in the game having the list created from the start.
Visualnet update buffers now use timers instead of spawn.
Fixes#2186.
Rewrites the area movement code used by shuttles & elevators in an effort to make it faster, more extensible, and generally easier to read. Also fixes some bugs relating to lighting & moving areas, such as lighting overlays suddenly being teleported into space for absolutely no reason.
Fixes#2161.
Fixes#2166.
-replaces the aurora-5 cargo warehouse area with the cargo bay and qm proper areas
-adds carp spawn to the roof level
-adds security cadet lockers, removes handguns from the armory, fix the access to it
-fix the chaplain office's table
-adds the csi locker
changes:
Reduced Asteroid setup time by ~4 seconds on average.
Fixed a bug where jump-to-turf may have not worked on mine turfs.
Possible minor startup time improvements for SSair and Xenoarch.
Ports the rat king from apollo, as an admin tool for now.
The rat king can collect mouse as he walks by, getting stronger, and unlocking some skills, it also can speak to all mouse in the world via a special skill.
A small tweak patch to fix some odd balancing issues with certain chems. Generally homogenising the poison chems to have less instakill options and see a little more use from the less common ones
Majorly nerfed polytrinic acid, because it was lethal at 5u dose
Majorly nerfed mercury, it was a 30 second kill and its available in the dispenser.
Minorly nerfed a couple of other things, mostly standardisation - factoring in removed where it wasn't before. doing flat effects every metabolism tick is generally bad. This was the issue with mercury.
Buffed the base metabolic rate of poisons. its still generally extremely slow
Buffed lexorin by removing the (irrelevant) brute damage and adding some extra oxyloss instead (doesn't heal due to the losebreath effect). This should make the changeling's death sting not entirely worthless.
Fixes log level not passed at attack log messages
Fixes ckey being passed to the level field, instead of the ckey field on certain log messages, causing the log message to be dropped by GL as its expecting a integer and not a string.
No changelog, as its not effecting the users
-adds guard dogs, mobs you can command around like the wizard's bear, with basic things like attack, stay and follow
-they have a verb that allows one player to become their master, and change their name, by being near them
-added the dogs to the random cargo spawn
* Replace SSingulo with SScalamity; processing cleanup
- SScalamity now handles blobs as well as singularity-types.
- Processing subtypes have been simplified to not require a stop_processing definition.
* this is probably important
* Remove cascade disabling SSgarbage
* Fixed a bug where dust() did not qdel the target mob
* Misc fixes
* Fix decals surviving break-to-plating
* Subsystem flag tweaks
* Apparently subsystems are new'd before config is.
* Fix paper icons
* Speculative fix for insane lag
* Better machinery stat
* Make organs not use SSoverlay
* Misc bugfixes & tweaks
* Nightmode fixes
* Changelog for SMC
* Port /tg/'s improved MC crash handling
* Add some more SS Recover() procs
* supply_controller -> SScargo
* More New() -> Initialize()
* pAI and robot construction overlays
* Fix cargo unit tests
* Merge the DMM Suite's atom/New() into atoms_init
* Lighting pre-baking
* Lighting initialization logging
* Fix some bad SS init orders
* Fix SSlighting logging; rename Processes to MC
* Speculative fix for insane GC lag
* Prebaked openturf/icon_smooth & fix lighting prebake
* SS init status; SSatoms LATEQDEL
* Fix bug with MC init stat panel
* Fix parallax
* Misc
* Ignore SS_NO_DISPLAY during init
* apparently this is important
* REEEEEE
* Image GC fixes; broadcaster radio-new sanity
* RCON Cleanup
* Move pAI recruiter into subsystem
* Move global solars list into sun subsystem
* Make chickens not use a global
* Demote SSdisposals to SS_BACKGROUND; garbage-debug cleanup
* Speed up space init a little
* Fix bad timer flags on floor drying
* Subsystem panic-restart verb for mins
* Explosion speedup
* Minor subsystem & MC logging tweaks
* SSopenturf improvements
* Make pipenet actually initialize (whoops)
* Minor tweaks
* Implement lighting rounding
* comments are hard okay
* Minor lattice tweaks
* Fix some timer issues & better closet init
* Timer sanity
* Request console tweaks + Storage init sanity
* Minor SSmachiner RCON improvements
* Further reduce world-start timer count
* Standardize subsystem logging
* Garbage hard delete profiling from /tg/
* Timer hang detection & recovery
* Log machines that sleep in process() and fuck up SSmachinery
* Fix an issue with external airlocks sleeping in process()
* Failsafe logging
* Minor tweaks
* Revert "Request console tweaks + Storage init sanity"
This reverts commit 98d3579e35.
* Re-implement RC changes
* Fix SQL FT saving
* Fix SSmachinery sleep in disposals
* Minor SS tweaks
* Paper fixes
* Blood drying fixes
* Merge gameticker and SSticker
* Minor global list init cleanup
* Lagcheck biogenerator & bags
* Tweak SScargo init order; RIG Initialize()
* Caching tweaks
* Remove rogue comma
* Initialize fixes
* Lighting destroy cleanup
* Fix emagging airlocks
* Initial SSicon implementation
* Tweaks & Fixes
* Fire + Air alarm queued icon updates
* Overlays + Queued icon cleanup
* Runtime & background fixes
* Kill some meaningless set statements
* Kill some image qdels
* Bump up lighting rounding val
* Fix adv. scanner destroy runtimes
* Remove unneeded icon update limiting
* Move icon smoothing into helpers
* Show a warning if DM 510 compiles without memory leak hack enabled
* Re-organize subsystems & MC defines a little
* Airlock SFX
* Log of Changes
* Make SSicon_update disable itself when not doing anything
* Fix respawn verb runtime when used early in server-init
* Add more information to MC's stat_entry()
* Replace direct refernces to gcDestroyed with QDEL* macros
* plant_controller -> SSplants
* More plant tweaks
* Add more humor to changelog
* Move parallax globals into SSparallax
* Lighting responsiveness tweaks
* Fix parallax init order & better MC init panel stat
* Make mobs GC
* More overlays + Remove intercom spawn()
* SSfast_process; make pinpointers not use spawn-recursion to process
Also made the SM Cascade beach process with SSprocessing instead of a spawn loop.
* Update changelog
* Mob GC tweaks
* Del() cleanup
* Fix insomniac ZAS connection edges
* Minor pAI cleanup
* Convert more things to SSoverlay; fix duplicated overlay in field gens
* SM Bluespace turf tweaks
* Update SSgarbage debug globals list
* Human-type qdel tweaks
* Subsystem suspension; stat_entry improvements
* SQL Statistics cleanup
* Fix runtimes with ambrosia
* More disable() -> suspend(); fix nightmode again
* Human qdel fix; minor tweaks
* Update turbolift to work with StonedMC
* Make lifts use timers instead of a subsystem
* Make SSassets start earlier
* Convert the radio controller into a subsystem
* Fix some missing CHECK_TICKs in asteroid generation
* MC stat tweaks; make shouldnt_see a typecache
* Kill some redundant debug-controller entries
* radio_controller -> SSradio
* Better SSgarbage hard-del logging from /tg/ upstream
* Logging tweaks + GELF
* Misc client caching improvements
* Slime SSoverlay
* Oven icon fixes
* Implant fixes
- Death implants will no longer spam Common on death of user.
- Death implants should handle a deleted user better.
* Holder tweaks + Welding tool Initialize()
* Fix some bad subsystem logging
* Fix suit cooling units spawning without cells
* Starlight tweaks
* Gibber infinite gib fix
* More SSoverlay stuff
* Make crates use CUT_OVERLAY_IN
* Make SSarrivals suspend instead of disable
* Make openturf use split/phased tick checks
* Speculative fix for unwet timer runtimes
* Blood overlay tweaks/fixes
* Update crusher to play nice with SMC + SSoverlay
* Openturf improvements and fixes
* Minor turbolift tweaks
* Lighting performance improvements + ChangeTurf tweaks
* this is probably important
* Fix wall weld noises on changeturf
* More ChangeTurf tweaks
* Explosion tweaks
* Pre-game lobby tweaks
* Openturf tweaks
* Prevent admins from starting the game before init finishes
* Fix Travis
* Kill an unused var
* Fix ChangeTurf runtimes on openturfs
* Fixes
* Browser datum fixes, asset caching
* Update changelog
* Changelog
* Lobby tweaks
* Ticker tweaks; kill ticker var
* Further lobby tweaks
* Cascade tweaks
* air_master -> SSair
* Reduce overhead from radio autosay
* alarm_manager -> SSalarm
* bomb_processor -> SSexplosives
* corp_regs -> SSlaw
* ZAS overlay fixes
* Small wall icon optimization
* Fix effects master
* Assembly tweaks
* Megavend fixes
* Shuttle fixes
* Camera alert performance improvements
* Fix some world.log spam from lighting overlays
* Fix some Initialize() procs
* Openspace responsiveness tweaks
* Make HE pipes animate through openturfs
* Kill a spawn
-changes the one handed pulse rifle to be a pulse carbine and a pulse pistol, also removed a lot of useless vars from it
-changed the pulse destroyer to fire in bursts
-added some new flavors of sword with their own sprites
-added some new on hand and back sprites for some guns
-added the janitor ert hardsuit, not anywhere yet
-fix #2137
-fix the anesthetic tank having no sprite on the back
-ghetto shotgun and pistol chances of failure are now random when they are created
As per Cake's looser instructions, MMI's will require a lobotomized brain to function. Instead of having the MMI automagically lobotomize a brain, I decided instead to make it a surgical operation and a prerequisite to borging. This also cleans up some snowflake istype() checks by instituting two new variables.
Cortical stacks, slime brains, and golem brains cannot be lobotomized, and as such cannot be put into an MMI.
You can lobotomize a person either by surgical-drilling their brain in surgery, or by surgical-drilling their removed brain.
The roboticist now spawns with a drill to accomodate this change. Surgical drills are not really useful otherwise, so I don't think this is a huge upset of the surgery balance.
Lobotomy will send the following message to the lobotomee;
"You have been lobotomized. Your memories and your former life have been surgically removed from your brain, and while you are lobotomized you remember nothing that ever came before this moment."
changes:
Foxes now have their real_name set properly, preventing them from showing as fox (corgi) to ghosts.
Tweaked the grammar of fox & corgi autospeak slightly.
* Crusher for the new map
* Use Power
* Updated the sprites
* Pre-Start Time change and more messages
* Added Changelog
* Update app_presets.dm
* Sprites for the maint hatch. And some overlay changes
* Fixed maint hatch not closing