Commit Graph

147 Commits

Author SHA1 Message Date
Neerti
d71a610a97 Adds Missing Ceiling Overlay + Fixes Space on Roof
On Multi-Z compatible maps, if a tile is missing a ceiling (IE there is an open space above it), it will display an overlay to show this. This makes it easier to know where the hole in the ceiling is without having to go to the ceiling. Overlay sprite by Mechoid.
Also fixes space tiles appearing when meteors/explosions/other fun things occur on the Southern Cross map instead of open space.
2018-01-22 14:27:19 -05:00
Arokha Sieyes
f2fef6f410 Planes Framework (#4545)
* Polaris initial plane upstream merge

* POLARIS: Fix RIG visors with new plane system, and material scanner VIS_FULLBRIGHT

* POLARIS: Fix GetFlatIcon so that cameras and id pictures don't show the HUD overlays.

* POLARIS: Adds a 'alter values' proc for plane master ease of tweaking

Setting stuff like colorblindness variety and things.

* Remove NIF reference, fix lighting layer define

* Handle effects above lighting plane

* Moved all layer defines to planes+layers.dm
* Fixed overlays that are supposed to be above lighting to use the PLANE_LIGHTING_ABOVE

* Merge: 3000% human/update_icons() speed improvement

* Merge: Avoid ghosts pointing at things
2018-01-17 13:45:54 -06:00
Leshana
a97a574278 Transformed the machinery processor into an StonedMC subsystem
* This is PHASE 1 of a multi-phase conversion.  In this first phase we implement the subsystem, but leave it processing the existing global list variables.  In the next phase we will switch to use datum variables in the subsystem.  The main reason for splitting into two phases is ease of code review; change the meaningful code without the hundreds of machines -> SSmachines.machinery substitutions.
* We did declare macros for adding/removing things to the processing lists, and convert everywhere to use the macros.
* Added var/is_processing to /datum to keep track of whether an instance is already in a processing list (prevents it being in the list twice!) and also debugging, making sure its not in two lists etc.
* NOTE: The global machines list is **no longer sorted** for performance reasons.  As far as I know, the only module that actually ever cared was cameras.   Our camera system already handles its own sorting in the cameranets anyway, so it should no longer be needed.
2017-12-29 15:31:59 -05:00
Andrew
de7bae13ab Makes Engineer Borgs Great Again
Gives construction module exclusive items to the engineering module and
comments out the construction module.
2017-06-19 00:21:11 -05:00
Leshana
fdb5d80afa Multi-ZAS Optimization
A simple optimization to can_safely_remove_from_zone() both with and without multi-zas.
Instead of allocating a new list every time we call get_zone_neighbours() (which gets called several times in a loop) we have a pre-built list we don't need to Copy().
Same story for the list to iterate over in can_safely_remove_from_zone()
There should be no semantic change whatsoever from this; it is purely a performance optimization.
2017-05-04 19:51:55 -04:00
Neerti
12abb2d6f2 Ports a large chunk of the map datum system that europa/bay uses.
Links many map-specific details such as the station name, z-level information, and allowed jobs from global vars to map datum vars, which should help us maintain multiple maps at once in the future, which will be needed for the future Southern Cross.
Note that a config change will be needed to change GENERATE_ASTEROID to GENERATE_MAP, otherwise no changes should be required to continue normal map usage.
To change to a different map, it's suggested to tick the file that ticks all the other needed files, which for the Northern Star is called northern_star.dm.
2017-02-27 07:36:41 -05:00
Datraen
7f12558ff3 Supermatter now uses the global announcer.
Global announcer now has access to the engineering channel.
2016-11-19 01:08:46 +00:00
Neerti
337ef499a1 Cleans Up WIP Event System + New Grid Check For It
Separates the 'count and assess everything' stuff to it's own datum, called the metric datum, which I plan to add on to in the future to make counting and metrics easier.
Makes decision process a bit more weight-based, will probably continue tweaking later.
Makes the admin debug UI have links to change settings easily.
Adds replacement for grid check event, which works similar to the old one, but is now based on a physical machine in the game world, that Engineering can hack to make the event end faster, if so desired.  Note that the machine is not mapped in, and won't be mapped in until the event system is ready for launch.
Adds grid_check variables to SMESes and APCs to make them stop doing work without draining the battery.
Grid checks in the new system are caused by a "power spike" which originates from the engine and will cause bad things, should no grid checker machine be connected to the power-net.  These power spikes occur when the GM decides that a grid check is a good event to have.
The grid checker can be built and deconstructed using the standard machine construction methods.
2016-10-05 21:40:07 -04:00
Neerti
699e04adf9 Adds Groundwork for New Event System
Adds what I hope to be able to make a sort of intelligent system that in the future will be able to decide what event would be the best to choose at any given moment.  A lot of this will probably get rewritten later.
You can use the new debug verb Show GM Status to have it show some data about itself, such as player activity across the whole server.
Currently, the system cannot actually run any events, as they don't exist and it's been disabled.  The plan is to have the events themselves do most of the heavy lifting for stuff like set-up and weights.
When the overarching system is more refined, a lot of new events will be madem and most of our old ones will be ported, and improved upon too.
For now, adding this lets me see what the system thinks about a round that has people playing on it and not just me on a test server.
2016-10-02 12:35:16 -04:00
Spades
9c78d6a2a1 Naming inconsistencies fixed
The short naming of central command has been really inconsistent across
the game's files. This has always annoyed the shit out of me.

CentComm and Centcomm and Centcom are now all CentCom, specifically with
that capitalization. Why one M instead of two M's? Because Comm with two
'M's = Communications. Hence, Telecomms, NOT Telecoms. Telecoms is
incorrect. CentCom was also chosen because CentCom with one M and this
casing is most found throughout the game's files.

Speaking of Telecomms, I corrected one instance in the game where it's
Telecom. Like I said, this is not correct. There was only one
inconsistency.

Likewise, Nanotrasen has been changed to NanoTrasen. Nanotrasen only
appears 20 times, where NanoTrasen appears 62. NanoTrasen is clearly the
preferred, correct naming.
2016-09-13 16:36:43 -04:00
Yoshax
0fb98bbabd Scheduler now uses btime, and other improvements 2016-06-01 17:56:07 +01:00
Arokha Sieyes
8e90199052 Generic Station & System Name
Makes the name of the starsystem and station generic such that it can be modified in global.dm and replace the strings where it is used. This won't have an effect on Polaris itself, but makes changing the name much more simple for forks. Using string concat constants on the advice of Psi.
2016-05-16 15:34:03 -04:00
Zuhayr
a3e5649523 Fixes #755 2016-01-13 23:51:45 +10:30
Zuhayr
8ebb7c5b5f Rewriting the mining turfs to reduce worldstart lag. 2015-12-16 16:16:41 +10:30
woodratt
a22195aed3 1.3.0 of Grenades and Elevators
- Explosive grenades have gotten a major upgrade, (borrowed code from fragmentation grenades).
- Box for explosive grenades lowered to 5 grenades per box instead of 7.
- Evidence locker moved to forensics area from detective's office. Body bags, latex gloves, and evidence bags moved to said locker.
- Low yield EMP grenades created including sprites. Box for them created (neither added to the map).
- Can now spawn from the elevator.
2015-12-11 23:05:15 -08:00
Neerti
4f77afece1 Revert 58ef59734f 2015-11-08 10:09:14 -05:00
Neerti
45f15930a0 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 11/6/2015_neerti_breaks_everything_bay_merge
Conflicts:
	.travis.yml
	code/_helpers/lists.dm
	code/game/objects/structures/crates_lockers/closets/secure/engineering.dm
	code/global.dm
	code/modules/client/preferences.dm
	code/modules/client/preferences_savefile.dm
	code/modules/reagents/dispenser/dispenser2.dm
	polaris.dme
2015-11-06 17:41:18 -05:00
PsiOmegaDelta
3b5990121f Blobs locations are now more random.
Blobs now randomly pick a random turf without obstructions in maintenance, instead of from a pre-determined list of locations.
Blobs also now log their spawn location, which admins can use to jump to it.

Space vines and nuclear discs have been updated to use the same mechanics.
2015-10-13 18:49:55 +02:00
Neerti
e52a0ea332 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into sync_to_bay_10/10/2015
Conflicts:
	.travis.yml
	code/game/gamemodes/changeling/changeling_powers.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/turfs/simulated.dm
	code/global.dm
	icons/misc/fullscreen.dmi
	polaris.dme
2015-10-10 23:17:26 -04:00
Kelenius
83adba88d4 Updates blob
Remains of player blob axed.
blob_act() axed. Blob now has an arbitary set of things it can attack.
It will flow over everything else. Blob has an awful tendency to destroy
non-craftables.
Will test more tomorrow.
Blob will now attack mechs.
Fixes #8106.
Fixes #10705.
2015-10-05 18:10:16 +03:00
Zuhayr
fca95039bf Merge branch 'dev-freeze' of https://github.com/Baystation12/Baystation12 into dev
Conflicts:
	code/game/gamemodes/intercept_report.dm
	code/game/gamemodes/traitor/traitor.dm
	code/global.dm
	code/modules/mob/inventory.dm
	code/modules/mob/living/living.dm
	html/changelogs/.all_changelog.yml
2015-09-07 11:31:19 +09:30
Zuhayr
9d5f14298d Merge branch 'master' of https://github.com/Baystation12/Baystation12 into dev-freeze
Conflicts:
	code/game/gamemodes/traitor/traitor.dm
	code/modules/mob/living/silicon/pai/pai.dm
2015-09-07 11:03:41 +09:30
Neerti
bedeb1fdff Hopefully fixes some bugs that came out of that merge. 2015-09-06 20:00:01 -04:00
Neerti
a9dda6cf3f Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 9/6/2015_baymerge
Conflicts:
	.travis.yml
	code/game/gamemodes/cult/cult.dm
	code/game/gamemodes/heist/heist.dm
	code/game/gamemodes/ninja/ninja.dm
	code/game/gamemodes/nuclear/nuclear.dm
	code/game/gamemodes/traitor/traitor.dm
	code/game/gamemodes/wizard/wizard.dm
	code/game/jobs/job/civilian.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/security.dm
	code/game/objects/structures/lattice.dm
	code/global.dm
	code/modules/projectiles/ammunition/boxes.dm
	code/modules/reagents/Chemistry-Recipes.dm
	config/example/config.txt
	polaris.dme
2015-09-06 18:26:06 -04:00
Zuhayr
90c9d31782 Refactored the antagHUD to work better with the new antagonist system. 2015-09-05 18:51:17 +09:30
Zuhayr
23564bda0c Merge pull request #10694 from PsiOmegaDelta/150817-SynthAccess
Synths now relies on access permissions as well.
2015-08-24 17:45:10 +09:30
Neerti
7fab70767d colony-1 could not be saved, unfortunately. RIP 2015-08-23 18:04:47 -04:00
Neerti
00fa623c9d Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into dev
Conflicts:
	.travis.yml
	code/controllers/configuration.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/security.dm
	code/game/machinery/Sleeper.dm
	code/game/machinery/computer/communications.dm
	code/game/machinery/cryopod.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/storage/boxes.dm
	code/game/turfs/simulated/floor.dm
	code/game/turfs/simulated/floor_types.dm
	code/global.dm
	code/modules/materials/materials.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/projectiles/guns/projectile/automatic.dm
	polaris.dme
2015-08-23 01:30:46 -04:00
Zuhayr
3bfa541612 Adds variables for CentComm, NanoTrasen and the station name. 2015-08-22 02:10:11 +09:30
SinTwo
7da2caa470 Un'fixing' DB and restoring global.dm
Seriously no clue how to get this DB going any more...
2015-08-20 17:55:03 -04:00
SinTwo
26ad368b18 DB Fix #2
The pain of SQL
2015-08-20 17:55:03 -04:00
PsiOmegaDelta
c346b99371 Merge remote-tracking branch 'upstream/dev' into 150817-SynthAccess
Conflicts:
	code/game/objects/items/weapons/cards_ids.dm
2015-08-20 12:42:51 +02:00
PsiOmegaDelta
c2e2252342 Synth access and icon update changes.
Refactors how synthetics set their modules. On login, if appearance selection was initiated but not finalized, the selection options popup again. Fixes a long-standing issue of borgs being able to look like the standard module by loging out.
Ensures the syndicate agent IDs and syndicate borgs will always have the same initial access permissions.
Removes now unnecessary syndicate snowflake code from NanoUI.
Synths now utilize actual ids.
2015-08-20 12:40:08 +02:00
Zuhayr
c8b6813426 Merge pull request #10005 from PsiOmegaDelta/150703-Uplinkery
Uplink Items - Part III
2015-08-20 19:19:12 +09:30
SinTwo
6c3eaaa180 DB fix #1 2015-08-18 18:13:43 -04:00
Zuhayr
c8baafed2a Removed turf_animation for now, ported vg hasproximity optimisation. Rewrite and refactor of how turfs handle icon updates, edge smoothing and
construction/deconstruction. Major map rework/changes.
2015-08-16 06:05:21 -07:00
PsiOmegaDelta
9e46dfbb56 Re-arranges data record and crew arrival announcement code. 2015-07-28 11:27:44 +02:00
Neerti
2a45114038 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 6/5/2015_bay_merge
Conflicts:
	.travis.yml
	code/controllers/configuration.dm
	code/datums/supplypacks.dm
	code/game/machinery/bluespacerelay.dm
	code/game/machinery/hologram.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/circuitboards/machinery/commsantenna.dm
	code/game/turfs/simulated/floor.dm
	code/game/turfs/simulated/floor_types.dm
	code/game/turfs/simulated/walls.dm
	code/global.dm
	code/modules/clothing/spacesuits/rig/suits/ert.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/research/designs.dm
	config/example/config.txt
	icons/mob/feet.dmi
	icons/mob/head.dmi
	icons/mob/suit.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/shoes.dmi
	icons/obj/clothing/suits.dmi
	icons/obj/rig_modules.dmi
	interface/interface.dm
	maps/exodus-3.dmm
	polaris.dme
2015-06-05 22:11:15 -04:00
Chinsky
e5a8eb2dfc Actually renames 'going' var.
Axes speed of light and procs that used it (but were not used by anything). More maths too, and max stack amounts, not used anywhere.
Ticks back stuff that was unticked for faster compile, whoops.
2015-06-05 11:07:24 +03:00
Chinsky
ad0652d864 Moved some stuff from global.dm into defines files that fit the theme, some into files where they are used (and only there, much global). Axed some obsolete stuff (rip Debug var). 2015-06-04 22:51:15 +03:00
Chinsky
8d83e8d452 Merge pull request #9202 from Zuhayr/customitems
Custom items refactor.
2015-05-14 21:47:04 +03:00
Zuhayr
9896bb4a9c Cleanup of custom item icons. 2015-05-12 23:21:23 +09:30
Atlantiscze
51043bc84a Update
- Creates a global list of items which have pwr_drain() called every powernet tick
- Makes powersink use this list
- Adds scheck
2015-05-12 07:49:31 +02:00
Neerti
a52334eff8 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 4/18/2015_bay_sync 2015-04-18 23:08:17 -04:00
PsiOmega
516b60962e Merge remote-tracking branch 'upstream/dev' into CultPorting 2015-04-14 15:54:22 +02:00
Neerti
691cee292f Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 4/12/2015_bay_sync 2015-04-13 00:15:41 -04:00
PsiOmega
1511e2b3f4 Ports /vg/'s Nas-Sie remake.
Second phase:
New Nar-Sie itself.
Two endgame phase - Nar-Sie and Supermatter Cascade.
Culty mobs.
2015-04-12 16:19:16 +02:00
Zuhayr
0223223c77 Merge pull request #8753 from Neerti/4-4-2015_borg_module_stuff
Revenge of the Research Module (and other stuff from that PR)
2015-04-12 13:16:45 +09:30
Neerti
bb8c78f60b Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into 4/11/2015_bay_sync 2015-04-11 03:06:46 -04:00
Neerti
afe5acfc19 Adds support for overriding what happens when a tile is destroyed in most cases. 2015-04-10 08:36:03 -04:00