Commit Graph

822 Commits

Author SHA1 Message Date
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
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
Arokha Sieyes
e82f535d0e VS: Mapping subsystem supports lists only, now.
That's probably how it should have been.
2018-02-07 20:03:39 -05:00
Leshana
1d0f5262d8 Merge remote-tracking branch 'upstream-polaris/master' into polaris-sync-2018-02-07
# Conflicts:
#	code/__defines/subsystems.dm
#	code/controllers/master_controller.dm
#	code/controllers/subsystems/atoms.dm
#	code/game/machinery/Sleeper.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/machinery/vr_console.dm
#	code/game/objects/items/devices/communicator/phone.dm
#	code/game/turfs/flooring/flooring_decals.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/mob/living/carbon/carbon.dm
#	code/modules/multiz/movement.dm
#	code/modules/projectiles/gun.dm
#	code/modules/shuttles/shuttle.dm
#	code/modules/shuttles/shuttles_web.dm
#	icons/obj/doors/doormed.dmi
#	maps/southern_cross/items/headset_sc.dm
#	maps/southern_cross/southern_cross-3.dmm
#	vorestation.dme
2018-02-07 19:30:50 -05:00
Leshana
676efe73e5 Move Xenoarcheology globals and initialization into a subsystem
* Move the global spawning_turfs lists from master_controller into SSxenoarch.  Rename all references.
* Move the call to SetupXenoarch from master_controller.setup() to SSxenoarch.Initialize()  Put SSxenoarch init order near the end to match current behavior.
2018-02-06 01:08:10 -05:00
Anewbe
f56597efed Merge pull request #4727 from VOREStation/vplk-bitfields
Code fix for stat_entry on NO_FIRE subsystems
2018-02-05 22:46:25 -06:00
Leshana
2c90995dcc Let objects register to be informed when shuttles have been setup.
* Switch /obj/shuttle_connector to use it instead of the icky process hack.
2018-02-05 15:50:15 -05:00
Leshana
8bec38ee00 Implement SSshuttles subsystem
* Replaces the shuttle_controller and shuttle process with the shuttles subsystem.  Instead of docking ports being initialized by the game ticker, its part of the StonedMC Master init order.
* The main advantage of this is control over the initialization order, as well as letting Master be aware of CPU we're using up with shuttle processing.
* By being part of the Master init order, we reduce the uncertainty about "are objects initialized yet?" which is nice, since shuttle docks break if machines aren't finished initializing!
2018-02-05 15:50:14 -05:00
Leshana
5847319443 Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-05 15:50:13 -05:00
Leshana
44dc4b7286 Implement SSatoms
* Moves proc/initialize() from being on /atom/movable, /are and /turf/simulated to being on /atom - Now turfs can initialize too
* Added the SSatoms subsystem which controls initialization of atoms at roundstart and during normal conditions.
* Disabled the old auto_init = 0 behavior, ALL atoms should get initialized() called on them now.
* Refactored the way initialize() is called during /New() to utilize SSatoms instead of SScreation
* Removed SScreation, as it was only a stop-gap until SSatoms could be ported.
* Updated the maploader to inform SSatoms when it is loading maps instead of SScreation.
* Updated the template map loader to use SSatoms to perform initTemplateBounds
* Renamed 'initialized' var in seed_storage to deconflict.
* Removed usage of auto_init = 0, replaced with a no-op initialize() proc for atoms that don't need initialization.
2018-02-05 15:50:06 -05:00
Leshana
63a1806b41 Bitfields do not work that way.
Fix attempt to use `in` on a non-list.
2018-02-05 13:13:37 -05:00
Arokha Sieyes
13bfcf6bd3 Improve admin idlekick capability/awareness 2018-02-04 01:05:03 -05:00
Arokha Sieyes
5a9119de99 POLARIS: Improves idle-kick admin awareness 2018-02-04 01:00:25 -05:00
Leshana
ca64667773 Let objects register to be informed when shuttles have been setup.
* Switch /obj/shuttle_connector to use it instead of the icky process hack.
2018-02-03 20:54:41 -05:00
Leshana
79464c7315 Implement SSshuttles subsystem
* Replaces the shuttle_controller and shuttle process with the shuttles subsystem.  Instead of docking ports being initialized by the game ticker, its part of the StonedMC Master init order.
* The main advantage of this is control over the initialization order, as well as letting Master be aware of CPU we're using up with shuttle processing.
* By being part of the Master init order, we reduce the uncertainty about "are objects initialized yet?" which is nice, since shuttle docks break if machines aren't finished initializing!
2018-02-03 20:34:44 -05:00