Commit Graph

41 Commits

Author SHA1 Message Date
Tad Hardesty
bbe4d12d13 Support stations with multiple z-levels (#35339)
* Remove ZLEVEL_STATION_PRIMARY

* Add Up and Down traits for use by ladders and chasms

* Give map_config creation its own proc

* Combine LoadConfig and ValidateJSON and remove transition_config

* Make space linkage a z-level trait

* Remove ZLEVEL_EMPTY_SPACE

* Update uses of GetFullMapPath

* Handle multi-Z stations and load Lavaland and Reebe at runtime

* Remove unused space maps

* Fix inappropriate z-expansion in map reader, improve logging

* Update comments relating to z-level configuration

* Add Lavaland and Reebe to ALL_MAPS
2018-02-15 10:21:25 +01:00
Tad Hardesty
827c4b3f99 Replace hardcoded z-level numbers with a trait system (#34090)
* Add basic structure of z-level traits

* Restore space transitions and add z-level debug verb

* Restore proper ruin spawning and transit level creation

* Replace station_z_levels and related checks with traits

* Eliminate more uses of ZLEVEL_{STATION_PRIMARY,LAVALAND}
2018-01-12 09:05:49 +13:00
Tad Hardesty
f2dbe5cf13 Replace explicit z-level checks with defines (#33829)
* Replace explicit z-level checks with defines

* Rename turf_z_is_planet for consistency

* Use TRUE/FALSE in onSyndieBase
2017-12-29 14:40:06 -05:00
Jordan Brown
4178c209f1 Configuration datum refactor (#30763)
* Configuration datum refactor

* More WIP

* New easier on the eyes format

* More WIP

* Finished config.txt

* Fucktons more WIP

* The end of conversion draws near...

* Add all this shit

* Done converting entries finally

* Hunting down compile errors

* More WIP

* MORE CONVERSIONS

* More WIP

* More WIP

* Oh shit only 90 errors this time!

* IT COMPILES!!!

* Fixes world start runtimes
2017-09-29 15:36:51 +13:00
KorPhaeron
10a3238fd6 Makes the station Z level into a list instead of a single define (#30297)
* Makes Station Z Levels a global list

* Things didnt get committed

* Define

* Removes files

* Fix mind.dm

* Wrong list name

* (

* Fixes rev checks and signpost

* Makes it actually compile

* Signpost fix

* I hate these sign posts

* Never use the web editor
2017-09-11 13:39:52 -04:00
Jack Edge
a76d4374c1 Moves init_order to defines, moves SSevents above ticker. 2017-04-22 22:08:31 +01:00
Cyberboss
fb596bcdb3 _DEF 2017-03-22 14:52:21 -04:00
Cyberboss
7e14ec75fc Normalizes subsystem definitions 2017-03-22 11:50:46 -04:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
Cyberboss
31ee152489 Repaths subsystem to controller/subsystem (#24624)
* Repaths subsystem to controller/subsystem

* Fix the shit
2017-03-08 22:05:45 +01:00
Cyberboss
1bbc640afe Runtime Dynamic Station Loading (#24171)
* Dynamic map loading prototype

* Get the title screen working

* Fixes the random pod bugs

* map configs

* Add back the asteroid

* Ignore the rotate file

* Fix some shit

* More shit fixes

* Babby's first json

* Cyberboss confirmed shitcoder

* Makes map rotation great again

* Moves the map defines

* Delete tgstation2.dm

* Convert runtimestation

* Convert PubbyStation

* Convert OmegaStation

* Convert Metastation

* Convert Delta Station

* Lol file extensions

* Reee line endings

* Take out the trash

* Fix loadallmaps.dm

* Deltaassssssstation?

* Fix travis

* Did I ASK you to change the line endings?

* Remove votable maps

* Cleanup

* Previous config. Load configs in New. Fix splash

* Fix this

* More generic minetype

* STOP TOUCHING THE LINE ENDINGS!!!

* Add some flexibility to /obj/screen/splash

* Fix the shit

* Update gitignore

* Smooth transition from last map

* Better check

* Missed this map rotate check

* Remove these checks too

* Prep for a future request by @kevinz000

* Fix z2 line endings

* Solution for custom .dms

* Rename some things, trim some fat

* Fixes default map_config

* Remove stale comment

* Delete the previous config after loading

* Don't try to open a non-existent file

* Delete the old rotator script

* And references to it

* Line endings

* More line endings

* Del checks from when m-config may have not existed

* LINE ENDINGS

* Update the default map config

* Map load error checking for what it's worth

* Small cleanup

* For case sensitive

* File systems

* Strip maprotate stuff from build script

* Spruce up the _maps tree. Compile some empty space

* Make travis simpler

* LINEARU ENDARU!!!

* tgstation TWO!!!

* Lowercase mine type

* Dummy dm's for testmerging

* Fixes job ordering

* If ghosts wanna watch the map load so be it

* Let them know what's going on

* Fixes z-transitions

* Optimize z expansion further

* Remove this old var

* Fix wiznerd teleportation

* Rmove butt

* Does the thing

* Moved temp configs to the data dir

* Un-touch gitignore

* Forgot templates.dm

* Forgot to include the includer

* Fair enough

* SILENCE IMBECILE!

* @Cyberboss still a fuckboi

* Speed things up a bit

* Fix a potential bug with the error message

* Whatever
2017-03-07 10:45:31 +13:00
Leo
9c6803ae19 Ports Paradise error handler, with in game runtime viewer! (#24036)
* Ports paradise error handler, with in game runtime viewer!

* Changes to the old runtime error and removes inerror reference

* Oops

* Adds a wrapper for world.log so it displays both in the runtime diary and in DD window
2017-02-14 11:39:31 +11:00
Jordie
4a1adbad5f Unifed SQL message system (#23327)
* unifed sql message system to supersede notes, watchlist and memos and adds messages

* a neserseree change
2017-02-03 00:02:24 -06:00
Joan Lung
bdcb16113a Adds a few turf istype helpers (#20754)
* a very calming act
when the world is too much, too fast

* i'm tired
but i have to be efficient, infinite

* lick your lips at the sight of me
a fantasy made reality
2016-10-01 19:25:46 +02:00
Kyle Spier-Swenson
7cb30f244e Fixes minimap crashes. (#20620)
* Fixes minimap crashes.

* Removes some "fixes" that aren't needed anymore

* Snowflake for my tables?
2016-09-21 12:42:12 +02:00
Shadowlight213
0fb0688acc Improves caching system 2016-09-11 15:11:46 -07:00
Shadowlight213
43e3975b10 Reworks the minimap cache system
If minimap generation is disabled, the system will now first try to load the map from its cache, and failing that, try to load it from backup minimap files
Also adds a config for space ruin budgets
2016-09-11 01:11:16 -07:00
Kyle Spier-Swenson
235b79fb5a StonedMC, the bastard love child of GoonPS and CarnMC (#17987)
Basically, they key difference between StonedMC and CarnMC is that when multiple ticks want to run at the same byond tick, we divvy up the tick between the subsystems, rather then allow one subsystem to hog it all.

The key difference between StonedMC and GoonPS is that we allow the subsystems to tell us how to divvy up the tick using flags and priority.

The new SS_ flags allows us to select behaviors that used to be piggybacked as side effects of dynamic wait or default but sometimes unneeded behavior.

Dynamic wait is 100% gone, lower priority and SS_BACKGROUND are better more refined ways of doing this when combined with MC_TICK_CHECK

I have by design never looked at the inners of goonPS, so this is all original code but I know it uses two loops because of comments by goon devs on reddit threads, that design didn't make sense before, but when I can tell a SS how much of a byond tick it is allowed to have, knowing how many need to run this tick is helpful I also know a bit more about how it works from piecing together comments in #vgstation.

Detailed list of changes:

Subsystems now have flags, allowing fine grain control over things like rather or not it processes, inits, rather it's wait is how long between runs (post run timing) or how long between starts, and rather or not late fires should cause the next fire to be earlier.

Mc now has two loops One loop handles queuing shit, one loop handles running shit.

MC now splits up tick allotment rather than first come first serve Subsystems can even request a bigger share using higher priorities. (It will even resume subsystems it paused if other subsystems hadn't used as much as it predicted they might need)

Default fps is now 20 This is related enough to the MC and it's a change that's really long since over due

All code oddities are most likely to be necessities to lower overhead on the mc since it runs every tick
2016-06-16 18:01:16 +12:00
Kyle Spier-Swenson
f9749a42ac Update minimap.dm 2016-04-12 17:42:41 -07:00
Kyle Spier-Swenson
3d9312f360 Tweaks minimap
Now that we know the crashes from minimaps are a case of the clean bot bug, we can re-enable them.

And this should make them faster as well.
2016-04-12 17:32:31 -07:00
MrStonedOne
5098a3c884 Made more sleeps use stoplag
This buffs a few things, but makes them handle lag better and tick at the rate of world.tick_lag without causing lag
2016-04-05 11:08:28 -07:00
duncathan
e86cf0f280 praise the good lord, for the game finally compiles 2016-03-29 19:04:37 -06:00
MrStonedOne
9829b34abb Config option for generating minimaps, defaults to disabled, for coder's sanity 2016-03-15 03:39:45 -07:00
MrStonedOne
bc8ff11f3f Lag check on initialization (and on a missed del-all proc) 2016-03-15 03:39:43 -07:00
Kyle Spier-Swenson
35518eeefb converts sleep to proc form 2016-02-13 20:29:49 -08:00
Kyle Spier-Swenson
798711eac2 attempts to solve minimap crashing. (again)
so lummox knows about this, he thinks it's an icon's internal storage not getting properly freed until the proc ends, but we haven't narrowed it down, other then that Blend() is the cause.
2016-02-13 20:28:49 -08:00
tkdrg
f56d09a859 Merge pull request #14968 from MrStonedOne/patch-136
Fixes minimap caching
2016-01-28 18:50:20 -03:00
Kyle Spier-Swenson
04c5d9216a shouldn't be needed, but just in case 2016-01-27 15:54:10 -08:00
Kyle Spier-Swenson
fe90b9aa8b Fixes minimaps crashing the server. (for real this time) 2016-01-27 14:10:00 -08:00
Kyle Spier-Swenson
c5cf2b3dca Fixes minimap caching 2016-01-27 06:58:54 -08:00
Kyle Spier-Swenson
9e33ca7cb9 Fixes minimaps crashing the server.
The list wasn't getting gc'ed until the proc ended, causing a fuck ton of lists to use up memory until it went over the memory limit
2016-01-26 16:08:21 -08:00
Bjorn Neergaard
47f08f3714 Use defines for Z-levels 2016-01-24 20:07:28 -06:00
Bjorn Neergaard
2fe70f6d7e Remie is loopy 2016-01-24 20:07:27 -06:00
Bjorn Neergaard
faf5ff59d3 Fix minimap generation for most objects 2016-01-24 20:07:27 -06:00
Bjorn Neergaard
081b6b0a04 Rework minimaps 2016-01-24 20:07:26 -06:00
Bjorn Neergaard
4224c800f0 Rewrite cryo
Similar balance but now healing is all in the reagent; and code is much simplified
Remove cryo leaking air, it just consumes O2 now. Gasses with a higher
specific_heat can be used to improve efficiency.
Greatly buffs cryo upgrades, in return for slight decrease in un-upgraded
performance due to atmos simulation.

Fix canister relabeling icons (Fixes #14742)

Add wrench sound to portable_atmospherics (consistency with ATMOSPHERICS/components)

Fix blood directly setting oxyloss (now uses adjustOxyLoss, balanced to be ~same as before)
2016-01-22 19:25:34 -06:00
Kyle Spier-Swenson
32d9dd7b93 Minor revert of Refactor MC/Failsafe/add Subsystems #13437
Readds check that #13437 removed
2016-01-13 03:35:51 -08:00
KorPhaeron
202230072d Away Missions 2015-12-21 07:12:30 -06:00
Bjorn Neergaard
8fdfa08e58 Port NanoUI styles to LESS 2015-12-15 13:08:27 -06:00
Bjorn Neergaard
531e4b947f Subsystem display tweaks 2015-12-05 10:13:59 -06:00
Bjorn Neergaard
97ca70cd34 Rework Master Controller, Failsafe, and Subsystem code 2015-12-04 15:40:58 -06:00