Commit Graph

1533 Commits

Author SHA1 Message Date
Ikarrus
6a4ca17822 Additional Access Re-evaluation
Additional access hasn't been used nor even looked at since errorage first coded it years ago. Departments were moved around, accesses were added, removed, and moved around.

This PR re-evaluates what additional access includes. The original idea was to give jobs most access to other workspaces in their department. For example, a medical doctor would be able to work anywhere in Medbay (Except CMO's office), so I'm going to keep with that direction.
2015-01-23 23:28:03 -07:00
Ikarrus
b63d511d42 Automatic toggle no longer removes sec/assmaint if their options are toggled on in the game options config. It will still grant these accesses if the threshold is not reached. 2015-01-22 23:36:25 -07:00
Incoming
f6380f385e Removed some now obsoleted code
Fixed an edge case
2015-01-21 23:28:48 -05:00
Incoming
d7bca48557 Shuttle stranding:
Removes fake recalls, the shuttle will arrive in rounds that usually would not allow shuttles (rev, malf, blob) but when the time comes for the shuttle to leave, it simply won't.

What this does:
-It gives a bonus ~8 minute delay to antag discovery on shuttle calls
-It punishes crews that call the shuttle at first sign of danger by:
--Rev: having the heads/potential converts huddle in predictable locations
--Blob/Malf: Distracting focus from the antag
-Gives a nice little OH SHIT moment when the shuttle doesn't launch

Essentially this turns shuttle calls into something you wouldn't attempt without confirmation of the round type, which is the opposite of how it functions currently.

Malf AIs also gain the ability to recall the shuttle to avoid the hard tell if they prefer.
2015-01-21 17:35:45 -05:00
Ikarrus
f91b1f59de The join message won't print if MINIMAL_ACCESS_THRESHOLD is not set. 2015-01-20 23:19:48 -07:00
Ikarrus
f4e021fc82 Automatic Round-start Access Scaling
- Added a new config option MINIMAL_ACCESS_THRESHOLD that can be used to automatically give players more access during low-pop rounds.
- If the number of players is below this threshold, expanded access will be used and security and assistants will have maintenance access.
- If the number of players exceeds the threshold, minimal access will be used and security and assistants will not have maintenance access.
- Setting the threshold to 0 will disable this function, and server ops can set the state of round-start access manually
2015-01-20 23:16:51 -07:00
tkdrg
a9160e52dc Merge pull request #7105 from Carn/#6993
Resolves #6993 - Moved pai controller into a subsystem.
2015-01-19 20:17:14 -03:00
Firecage
7f93f113fb Moves blacklist into the Proc. 2015-01-17 21:28:59 +02:00
carnie
a44795a699 Resolves #6993 - Moved pai controller into a subsystem. 2015-01-15 23:50:46 +00:00
Firecage
07f05784a8 list for the blacklist 2015-01-15 23:16:12 +02:00
Firecage
1f42031322 Adds sing and sing gen to cargo blacklist 2015-01-15 21:42:46 +02:00
phil235
3617640a64 Merge pull request #6595 from tkdrg/guncargo
Fixes cargo investigate log spam
2015-01-15 13:06:36 +01:00
tkdrg
a1bf470e10 Fixes a list check and a period in cargo logging 2015-01-14 22:54:50 -03:00
tkdrg
674b3b65c0 Merge pull request #6968 from phil235/LockdownMalfFix
Fixes malf AI lockdown affecting doors on away missions
2015-01-14 14:58:10 -03:00
tkdrg
e7172f458d Merge pull request #6998 from optimumtact/patch-3
Reorder error check for manifest length
2015-01-14 03:25:24 -03:00
Swag McYolosteinen
430b613ef4 Merge pull request #6984 from tkdrg/sanitaiz
Replaces a bunch of input() with stripped_input()
2015-01-13 19:32:25 +01:00
tkdrg
6c0ff7457a Merge pull request #6978 from Carn/#6947
Resolves #6947 - fakerecalls now work
2015-01-12 22:49:39 -03:00
Orange Borg
825c8d45a5 Reorder error check for manifest length
Manifests were reporting an incorret size when there were no errors in the manifest.
2015-01-13 10:37:49 +13:00
tkdrg
79582b9cb1 Merge pull request #6957 from Carn/fix_supplyconsole
Fixes supplycomp
2015-01-12 02:43:54 -03:00
tkdrg
b852aa41ea Replaces a bunch of input() with stripped_input()
Some of these were exploitable for XSS, as well.
2015-01-11 19:02:53 -03:00
carnie
a9bd2739c8 Resolves #6947 - misuse of rand() meant that the multiplier for fake recalls was sometimes getting set to 0, meaning shuttle was never recalled. 2015-01-11 20:55:00 +00:00
phil235
a55e6a70be Fixes malf AI lockdown affecting doors on z levels other than station and mining.
Replaces a lot of z level numbers in code by their respective defines.
Adding a define for the Mining asteroid z level.
2015-01-11 15:39:32 +01:00
tkdrg
7920a7596e Merge pull request #6933 from Carn/#6923
Resolves #6923 - on Centcom objective completion errors.
2015-01-11 01:12:53 -03:00
carnie
07b9fca00d Resolves missing ui buttons from supply console which got lost due to an erroneous check
Thanks tkdrg x
2015-01-11 02:07:18 +00:00
carnie
e7b105488d Resolves #6923 - Mistake made during merging meant that some gamemode objectives were using hardcoded area-type-lists for checking objective completion. (This is why allow/disallow lists are dumb) 2015-01-10 03:57:02 +00:00
carnie
523d127713 Resolves #6915 - Readds emergency shuttle announcements for docking and escaping which got lost 2015-01-10 03:04:11 +00:00
carnie
c6e90c2ded Resolves #6862 - "shuttle_away" docking port was too small to fit the supply shuttle into, so it could never return to centcom.
Resolves #6835 - Same issue as part of #6862. Was adding new requests to the wrong list, so when reviewing the most recent request, the computer would not find it in the pending requests list and spit out the invalid instruction message.
2015-01-07 18:28:55 +00:00
tkdrg
713fa782f2 Merge remote-tracking branch 'upstream/master' into guncargo
Conflicts:
	code/controllers/supply_shuttle.dm
2015-01-06 21:36:52 -03:00
carnie
380e176adc Resolves #6832
Resolves #6838
Sorry, this was a really big dumb on my part. Accidentally changed an 'in world' to 'in machines'
2015-01-06 17:30:48 +00:00
tkdrg
09c91e8f1e Merge remote-tracking branch 'upstream/master' into IllustriousImpeccableArcticwolf
Conflicts:
	code/controllers/subsystem/ticker.dm
2015-01-06 04:35:46 -03:00
carnie
a730649167 Fixes breathing (indentation error)
Fixes atmos machinery (old global list snuck back into code)
2015-01-05 19:44:17 +00:00
carnie
e285bd0b3c Map Update 2015-01-04 01:45:02 +00:00
carnie
a029a49392 SubSystem rewrite
Misc:

+Fixes unreported issue with initializing lighting on a specific zlevel

+Fixes two similar issues with moveElement and moveRange. Where fromIndex or toIndex could be adjusted incorrectly in certain conditions. Potentially causing bad-sorts, or out of bound errors.

+Rewrites listclearnulls(list/L) to no longer iterate through L.len elements for every null in the list (plus 1). i.e. went from L.len*(number_of_nulls+1) list-element reads (best-case), to L.len list-element reads (worst-case)

+New proc/getElementByVar(list/L, varname, value) which finds the first datum in a list, with a variable named varname, which equals value. You can also feed it atoms instead of lists due to the way the in operator functions.

+Fixes an unreported issue with Yota's list2text rewrite. Under certain conditions, the first element would not be converted into a string. Causing type-mismatch runtimes.

+New global map_ready variable. This is not fully implemented yet, but will be used to avoid duplicate calls to initialize() for map objects.

+All turfs now maintain references to all lights currently illuminating them. This will mean higher memory use unfortunately, due to the huge number of turfs. However, it will speed up updateAffectingLights significantly. I've used list husbandry to reduce baseline memory usage, so it shouldn't be any worse than some past atmos modifications memory-wise.

-Removed 'quadratic lighting', can add this back at some point. Sorry.

+modified the way lum() works slightly, to allow turfs to have overridden delta-lumen. i.e. space cannot be illuminated more than its default ambiance. This allowed removal of some iffy special-snowflake lighting areas implemented by somebody else.

+Lighting images in the dmi can now use arbitrary naming schemes. It is reliant on order now. This allows the dmi to be replaced by simply dropping in a new dmi.

-Removed all subtypes of /area/shuttle. Shuttles now create duplicate 'rooms' of /area/shuttle. (More on this later). This will conflict with most maps. Guide on how to fix to follow.

+All verbs/tools relating to world.tick_lag were refactored to use world.fps. However old config text for setting tick_lag will still work (it converts the value to fps for you)

+MC stats improved using smoothing. They now have their own tab so they dont get in the way when you're playing as an admin.

-removed the push_mob_back stuff due to conflicting changes. Sorry Giacom.

_OK, NOW THE ACTUAL INTERESTING STUFF_

Following systems moved over to subsystem datums:
air_master
garbage_manager
lighting_controller
process_mobs (aka Life())
nanomanager
power
sun
pipenets
AFK kick loops
shuttle_controller (aka emergency shuttle/pods), supply_shuttle and other shuttles
voting
bots
radio
diseases
events
jobs
objects
ticker

Subsystems hooks and variables should be commented fairly in-depth. If anything isn't particularly clear, please make an issue.

Many system-specific global variables have been refactored into

All tickers which previously used world.timeofday now use world.time

some subsystems can iterate before round start. this resolves the issue with votes not working pregame
2014-12-31 13:25:41 +00:00