Commit Graph

835 Commits

Author SHA1 Message Date
Arokha Sieyes 7a6ff116a3 POLARIS: Varset Callback 2018-04-27 20:05:11 -04:00
Arokha Sieyes 6c686e6a2f Merge branch 'master' of https://github.com/PolarisSS13/Polaris into aro-sync-04252018
# Conflicts:
#	README.md
#	code/game/jobs/job/job.dm
#	code/modules/client/preference_setup/loadout/loadout_utility.dm
#	code/modules/mob/living/carbon/human/examine.dm
#	code/modules/mob/living/carbon/human/npcs.dm
#	code/modules/mob/living/carbon/human/species/station/prometheans.dm
#	html/changelogs/.all_changelog.yml
#	maps/RandomZLevels/Academy.dmm
#	maps/RandomZLevels/beach.dmm
#	maps/RandomZLevels/blackmarketpackers.dmm
#	maps/RandomZLevels/challenge.dmm
#	maps/RandomZLevels/example.dmm
#	maps/RandomZLevels/jungle.dmm
#	maps/RandomZLevels/listeningpost.dmm
#	maps/RandomZLevels/spacebattle.dmm
#	maps/RandomZLevels/stationCollision.dmm
#	maps/RandomZLevels/wildwest.dmm
#	maps/RandomZLevels/zresearchlabs.dmm
#	maps/northern_star/polaris-1.dmm
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	maps/southern_cross/southern_cross-7.dmm
#	maps/submaps/surface_submaps/mountains/CrashedMedShuttle1.dmm
#	maps/submaps/surface_submaps/plains/Boathouse.dmm
#	maps/submaps/surface_submaps/wilderness/Blackshuttledown.dmm
#	maps/submaps/surface_submaps/wilderness/Boombase.dmm
#	maps/submaps/surface_submaps/wilderness/DJOutpost1.dmm
#	maps/submaps/surface_submaps/wilderness/DecoupledEngine.dmm
#	maps/submaps/surface_submaps/wilderness/Drugden.dmm
#	maps/submaps/surface_submaps/wilderness/Rockybase.dmm
#	maps/submaps/surface_submaps/wilderness/Shack1.dmm
#	maps/virgo/virgo-6.dmm
#	vorestation.dme
2018-04-25 17:23:33 -04:00
Anewbe a75c575491 Merge pull request #5200 from VOREStation/vplk-stonedmc-sync
Port "The Punisher" (subsystems/MC impovement) from TG
2018-04-24 15:20:57 -05:00
Arokha Sieyes ac7e949779 Tab2Space ssair 2018-04-23 17:23:03 -04:00
Arokha Sieyes d5c9d3cb4e Port /tg/ lavaland shelters
Nanotech twist rather than bluespace, but whatever.
2018-04-23 15:25:35 -04:00
Arokha Sieyes 43299a5e3a POLARIS? - Pause SSair on map loading more thoroughly 2018-04-23 15:12:33 -04:00
Kyle Spier-Swenson 1884742ca2 Random micro optimization to the mc I thought of while looking at something else
We can save the second ss_flags access by using bitflag ma~~th~~gic
(Ported from tgstation/tgstation#36352)
2018-04-20 17:55:08 -04:00
Leshana 0094c74b64 Ports "The punisher!"
* From tgstation/tgstation#27196
* The mc will now punish subsystems that overrun their tick allotment with less allotment in later fires.
* The punisher also delays the next fire of subsystems that overrun. Because of how this is ends up being calculated, this will almost never actually kick in, but sometimes subsystems like garbage will overrun into multiple ticks, so delaying their next fire is needed.
* The punisher does not delay the next fire of SS_TICKER subsystems (tgstation/tgstation#34964)
Note: SS_KEEP_TIMING subsystems do not get their next fire delayed.
2018-04-20 17:55:07 -04:00
Leshana 63257bf40b Use define constants for subsystem init order and priority.
Replaced all hard coded numbers for subsystem priority with defines in subsystem.dm - Much easier to see them in order that way.
2018-04-20 13:18:55 -04:00
Leshana c4d714dea8 Replaces set_light with direct update_lumcount for planet suns.
Setting lights on every single turf takes way too long.  Instead of havingto create a light source for every single outdoor turf, we find the corners to light up and apply the sunlight to them directly.
We also make sure to avoid having planet sunlight being 4x too strong, which would happen if we naively looped over all corners of all outdoor turfs.
Note: This has the side effect of making the sun's light and color ACCURATELY reflected on turfs.  Previous code doubled up on light and appeared brighter than it should.
2018-04-18 21:54:58 -04:00
Leshana 471e544a61 Revert "Merge pull request #4779 from Neerti/2/1/2018_make_the_sun_not_lag_again"
This reverts commit f4df29713d, reversing
changes made to 337e5e7436.
2018-04-18 18:08:16 -04:00
Neerti d81c990e22 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into 2/1/2018_make_the_sun_not_lag_again 2018-04-13 11:26:12 -04:00
Leshana 9634cf04ce Don't kick admin observers for inactivity. They might be waiting for ahelps. 2018-04-02 22:48:00 -04:00
Leshana 6756c5a483 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into polaris-sync-2018-03-30
# Conflicts:
#	.travis.yml
#	code/ATMOSPHERICS/components/unary/outlet_injector.dm
#	code/__defines/_planes+layers.dm
#	code/__defines/chemistry.dm
#	code/__defines/mobs.dm
#	code/_helpers/mobs.dm
#	code/_onclick/hud/robot.dm
#	code/game/area/areas.dm
#	code/game/machinery/computer/supply.dm
#	code/game/machinery/cryopod.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/objects/items/devices/communicator/UI.dm
#	code/game/objects/items/devices/communicator/messaging.dm
#	code/game/sound.dm
#	code/game/supplyshuttle.dm
#	code/game/turfs/flooring/flooring_decals.dm
#	code/modules/admin/admin.dm
#	code/modules/client/preference_setup/occupation/occupation.dm
#	code/modules/events/event_container.dm
#	code/modules/mob/dead/observer/observer.dm
#	code/modules/mob/language/language.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/human_powers.dm
#	code/modules/mob/living/carbon/human/life.dm
#	code/modules/mob/living/carbon/human/species/species_shapeshift.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob/living/living_powers.dm
#	code/modules/mob/living/say.dm
#	code/modules/mob/living/simple_animal/animals/bear.dm
#	code/modules/mob/living/simple_animal/animals/cat.dm
#	code/modules/mob/living/simple_animal/animals/parrot.dm
#	code/modules/mob/logout.dm
#	code/modules/mob/mob_helpers.dm
#	code/modules/organs/organ.dm
#	code/modules/organs/organ_icon.dm
#	code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Medicine.dm
#	code/modules/reagents/reagent_containers/syringes.dm
#	code/modules/shuttles/shuttle.dm
#	html/changelogs/.all_changelog.yml
#	maps/RandomZLevels/wildwest.dm
#	maps/southern_cross/items/clothing/sc_head.dm
#	maps/southern_cross/southern_cross-1.dmm
#	vorestation.dme
2018-03-31 09:20:59 -04:00
Aronai Sieyes 7d3aec96fd Arranges lots of things into planes (#5072)
* Rearranges a billion things into planes

* Make cryotubes fancy

* Update Travis

* Fix hiding logic
2018-03-28 12:59:12 -07:00
Neerti 70ac478aea Merge pull request #5065 from VOREStation/vs-port-3204
[PORT] Revamp logging for consistency
2018-03-20 21:13:47 -04:00
Atermonera c1ed3a0c6c Merge pull request #5060 from Anewbe/away_kicker
AFK Kicker should affect ghosts and people in the lobby
2018-03-19 12:17:24 -07:00
Atermonera 2e63e856d0 Merge pull request #5053 from Anewbe/zas_priority
Should speed up ZAS
2018-03-16 11:25:18 -07:00
Leshana a0de41f24f Merge branch 'master' of https://github.com/PolarisSS13/Polaris into polaris-sync-2018-03-15
# Conflicts:
#	README.md
#	code/__defines/mobs.dm
#	code/__defines/subsystems.dm
#	code/_helpers/global_lists.dm
#	code/controllers/subsystems/garbage.dm
#	code/controllers/subsystems/overlays.dm
#	code/datums/datacore.dm
#	code/datums/supplypacks/munitions.dm
#	code/game/machinery/suit_storage_unit.dm
#	code/game/objects/items/devices/communicator/UI.dm
#	code/game/objects/items/weapons/id cards/station_ids.dm
#	code/game/objects/random/random.dm
#	code/game/turfs/simulated/floor.dm
#	code/game/turfs/simulated/floor_icon.dm
#	code/modules/awaymissions/gateway.dm
#	code/modules/client/preferences.dm
#	code/modules/ext_scripts/python.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/life.dm
#	code/modules/mob/living/carbon/human/species/station/station.dm
#	code/modules/mob/living/carbon/human/species/virtual_reality/avatar.dm
#	code/modules/mob/living/carbon/human/update_icons.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob/living/living_defines.dm
#	code/modules/mob/living/simple_animal/animals/bear.dm
#	code/modules/mob/mob_helpers.dm
#	code/modules/mob/new_player/new_player.dm
#	code/modules/mob/new_player/preferences_setup.dm
#	code/modules/mob/new_player/sprite_accessories.dm
#	code/modules/organs/organ_external.dm
#	code/modules/organs/organ_icon.dm
#	code/modules/organs/robolimbs.dm
#	code/modules/reagents/reagent_containers/glass.dm
#	code/modules/reagents/reagent_containers/syringes.dm
#	html/changelogs/.all_changelog.yml
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-4.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	vorestation.dme
2018-03-15 22:41:14 -04:00
Anewbe 5212fa152b Species names should now use defines 2018-03-15 20:24:45 -05:00
Arokha Sieyes 7f93f3cca7 POLARIS: Moves daily logs into being folders rather than files 2018-03-13 18:20:59 -04:00
Anewbe e2bade91c8 AFK Kicker should affect ghosts and people in the lobby 2018-03-13 15:02:49 -05:00
Anewbe 9f56416684 Merge pull request #5037 from VOREStation/aro-updateicons
Rewrite human/update_icons()
2018-03-11 21:03:10 -05:00
Anewbe d4d2f1d0ad Should speed up ZAS 2018-03-11 19:41:00 -05:00
Arokha Sieyes fae2b48eab POLARIS: Moves daily logs into being folders rather than files 2018-03-10 17:18:55 -05:00
Anewbe 6c2c57fb65 Merge pull request #5044 from VOREStation/vplk-qdel-log-oops
Reduce qdel log file by 150000%
2018-03-10 15:04:32 -06:00
Leshana b666e76d7d Reduce qdel log file by 150000%
Fix indenting error that caused it to log repeatedly.  Also put it in its own file to match the pattern used by overlays and initialize.
2018-03-09 23:53:15 -05:00
Leshana c134f8ad65 Reduce qdel log file by 150000%
Fix indenting error that caused it to log repeatedly.  Also put it in its own file to match the pattern used by overlays and initialize.
2018-03-09 23:50:43 -05:00
Leshana 74332405a8 Optimize scheduler process by sorting its task list
It previously had to iterate over EVERY task in its list every time.   With lots of queued tasks that is slow.
Instead we sort it by schedule time.   That means when iterating thru list, if we get to a single task that is in the future, so are all remaining.
2018-03-08 22:27:47 -05:00
Leshana 4c5b7655b5 U_I Phase 2.5: Fix *swish deleting tail overlay
All more cases of "don't call apply/remove multiple times!
2018-03-08 19:34:01 -05:00
Leshana 741e02407a Port SSoverlays & Convert turfs to use it (#5004)
* Added "Display Initialize() Log" admin debug command so you can see it mid-round.

* Ported the core of the overlays management subsystem from /tg

- Added SSoverlays subsystem for compiling overlay lists and applying them to atoms in a controlled anti-lag subsystem.
- Added vars and procs to atom which should eventually replace all direct interaction with BYOND's /atom/overlays var outside the subsystem.
- Added OVERLAY_QUEUED flag to var/atom/flags bitfield.
- Added small framework for subsystem performance tracking. So far used only by SSoverlays
- Added admin debug command "Display overlay Log" to see performance stats mid-round.

* Fix runtime on universal pipe adaptor update_icons

* Workaround for appearance_bro not initialized

Unfortuantely BYOND's initialization order is strange, and the appearance_bro var is only half initialized when map starts to load, causing errors.  We temporarily fix by moving it to be a global-scoped global.

* Convert fire alarms to use add_overlay() A good first test.

* Convert turfs to use add_overlays(), eliminating the turf_overlay_holder!

- Converted as much as I could find about turf overlays to use add_overlay().
- This should be enough to stop BYOND from crashing, so we can eliminate the turf_overlay_holder hack.
- This also lets us remove the anti-corruption hacks from walls and open space.
- ZAS gas overlays can use priority overlays, so this also fixes the gas-goes-away-when-crowbarring-plating issue.
- Stuff like that

* Convert turf overlay interactions to use add_overlay.

Note: This is a plain and simple conversion of existing code to use SSoverlays. However I look at the line changed, and note that that line likely never fully worked as intended, as it has no way of re-applying itself.
I would make it use a priority overlay, but there is no code present for *removing* said overlay from neighbors when it is no longer required.  That code should be implemented by original author.
2018-03-05 19:43:23 -06:00
Leshana 56bb1c46ec Reorganzied Holo Minimaps into SSholomaps subsystem.
Running its init as part of proper init sequence lets us time it properly.
Plus its nicer than the hacky override of the old master controller.
2018-03-04 21:54:20 -05:00
Arokha Sieyes f37e75011b Revert "Reverse floor decal removal commit 00f8ae5"
This reverts commit 517d4a9e56.
2018-03-02 20:04:08 -05:00
Arokha Sieyes 517d4a9e56 Reverse floor decal removal commit 00f8ae5 2018-03-01 09:43:38 -05:00
Aronai Sieyes dcc02e5090 Merge pull request #3153 from VOREStation/aro-convo
Adds 'Intercom Convo' verb
2018-02-27 21:48:39 -05:00
Aronai Sieyes 0f4185ceec Merge branch 'master' into aro-bellies 2018-02-27 21:39:53 -05:00
Arokha Sieyes 0c4cc6811a VS: Convert some VS things to use global_announcer 2018-02-27 21:30:06 -05:00
Arokha Sieyes f04c58f202 VS: Rewrites basically all of how bellies work
And cleans up a ton of stuff.
2018-02-27 13:29:45 -05:00
Leshana 00f8ae5cd8 Convert turfs to use add_overlays(), eliminating the turf_overlay_holder!
- Converted as much as I could find about turf overlays to use add_overlay().
- This should be enough to stop BYOND from crashing, so we can eliminate the turf_overlay_holder hack.
- This also lets us remove the anti-corruption hacks from walls and open space.
- ZAS gas overlays can use priority overlays, so this also fixes the gas-goes-away-when-crowbarring-plating issue.
- Stuff like that
2018-02-25 02:02:57 -05:00
Leshana 37ad176a16 Workaround for appearance_bro not initialized
Unfortuantely BYOND's initialization order is strange, and the appearance_bro var is only half initialized when map starts to load, causing errors.  We temporarily fix by moving it to be a global-scoped global.
2018-02-25 00:59:26 -05:00
Leshana f2f630fa89 Ported the core of the overlays management subsystem from /tg
- Added SSoverlays subsystem for compiling overlay lists and applying them to atoms in a controlled anti-lag subsystem.
- Added vars and procs to atom which should eventually replace all direct interaction with BYOND's /atom/overlays var outside the subsystem.
- Added OVERLAY_QUEUED flag to var/atom/flags bitfield.
- Added small framework for subsystem performance tracking. So far used only by SSoverlays
- Added admin debug command "Display overlay Log" to see performance stats mid-round.
2018-02-24 17:40:35 -05:00
Arokha Sieyes 2d192edeb7 POLARIS?: Attempt to find the source of qdel'd images 2018-02-20 10:00:48 -05:00
Arokha Sieyes f47ae8e03c VS: Fix a destroy by creating a subsystem 2018-02-20 00:23:37 -05:00
Arokha Sieyes 71039bdd12 POLARIS?: Attempt to find the source of qdel'd images 2018-02-20 00:18:56 -05:00
Arokha Sieyes f767bccd45 Oversight with low_priorty mob setup 2018-02-18 23:38:12 -05:00
Aronai Sieyes 78d7ef1d72 Port Bay-style attack animations (#4827)
* POLARIS: Attack animations

* POLARIS: Overlay flick system

You can't do this in Byond, unfortunately, so here's some code from /tg/

* Make attack anims a preference
2018-02-15 22:02:04 -06:00
Arokha Sieyes b61723aa3b POLARIS: Attack icons for things
Uses the in-hand item when attacking to draw the icon, or for anything else (simple animals, etc) you can specify an icon to use (all SA default to a 'slashing' animation)
2018-02-14 21:59:42 -06:00
Neerti b95562a2ff Planetary Lighting Optimization Attempt
Changes how lighting is applied to the Surface.

The current method works by making every tile glow in a specific color and intensity. The issue is that when it is time to change the color/intensity, it can take the light controller a considerable amount of time for it to update every tile (estimated to be around 14,000 tiles), which can take a minute or two for the lighting controller to finish.

New method is to have a special light source for the surface, with different properties to the 'regular' light source that most things use for making light. The special version doesn't care about line of sight or lighting falloff. This special light source is applied to a series of invisible 'sun' objects that get generated as the planetary controller gets created. When the lights need to change, the lighting controller has to change a much smaller group of objects instead of literally every outdoor tile.
2018-02-10 07:18:08 -05:00
Aronai Sieyes 999597dad1 Merge branch 'master' into polaris-sync-2018-02-07 2018-02-07 23:06:03 -05:00
Arokha Sieyes deef737212 POLARIS: New mob var 'low_priority' for skipping life()
Mobs with this will not have life() called on them unless there's a non-observing player on the same z-level.
2018-02-07 20:03:40 -05:00