* Initial Commit - Trying to add DC to Travis
* Forgot to chmod
* This took too long
* Farie Fixes
* Fixes new code
* Job factions are fucking smelly
* Loadouts work again
* Runtime fixes
* Handlers converted, now to fix 3532 compile errors
* 3532 compile fixes later, got runtimes on startup
* Well the server loads now atleast
* Take 2
* Oops
This is a merged port from /tg/station and Virgo on logging standards.
The diary has been replaced with GLOB.world_game_log, diaryofmeanpeople
is gone (because it wasn't actually used) and a whole bunch of logging
procs have been changed to optimize Splunk.
Ports Goon Lighting from /vg/station.
Summary -
This adds smooth edges to all lighting in order to increase the
aesthetic appeal of the lighting system.
It works by using a matrix to change the appearance of the lighting
overlay sprite, which has been changed to be a base for the matrix to
modify.
Ported from /vg/station with the help of @PJB3005. This lighting
system is a hybrid between Mloc's lighting rewrite and Tobba's
Goonlights.
Notable changes:
- Darksight now matters on mobs. The lighting overlays are not
alpha=255 when they are completely dark, meaning you can still see the
floor- assuming you can view the turf at all, because it retains the
luminousity setting.
- This means Tajaran have 100% night vision again as they are
intended to. Humans can see in a 3x3 square centered around
themselves.
- No, I'm not changing this, if it's even possible. This is how
BYOND's lighting is meant to work. If you have any complaints about
game balance, please feel free to make a pull request to change
see_in_dark values, which will be seperately evaluated.
- The lighting controller now runs at world.tick_lag, to emulate the
realtime function of StonedMC. So far with my testing, this hasn't
caused any noticable performance decreases- the lighting system is
obviously more expensive than our previous iteration, however, it's not
the next ZAS ;)
Technical Details:
- /atom/movable/lighting_overlay/proc/get_clamped_lum has been removed,
succeeded by /turf/proc/get_lumcount. They behave identically.
- Turf lighting is actually controlled by four "corner" datums, which
feed information into the overlay.
- The way opacity is factored into the system has changed. Anything
that doesn't use set_opacity is not going to work to block light.
- /area/lighting_use_dynamic has been renamed to
/area/dynamic_lighting, for consistency with /turf/dynamic_lighting.
- Lighting is no longer seperately initialized for away missions. It is
handled in ChangeTurf() as it should be.
Known & Unfixable issues:
- There is a 5-10 second delay from starting the round to the lights
turning on. Attribute it to "the powernet being spun up" if you would
like to- but it's actually just how long it takes the lighting system
to update every single turf on the map.
- When you walk with a light on you, the light will actually jump ahead
of you before you visually get to the tile. This is because of the
movement gliding on mobs, realtime lighting actually goes faster than
the glide takes to complete, so it appears that your lights are moving
faster than you.
Thank you krausy~
Animated Goonlights
This adds an animate() call to the update_overlays() proc. This makes it
so that any light changes will smoothly transition between the changes
instead of instantly changing their appearance.
Also fixes a few issues pointed out on Github.
Change lighting animation (turns out the old one totally breaks if you toggle a light quickly, whoopsies)
Kill LIGHTING_INSTANT_UPDATES
isturf
Includes a refactor for gun turrets (merged into portable turrets), hostile simple_animal behaviour, spells (sounds have been added) and poi_list items.
This commit changes every 'world.log <<' message with a loggable proc-
log_to_dd().
This is adjustable in the config; If LOG_WORLD_OUTPUT is present, all
things sent to world.log will show up in the standard /data/logs/ logs.
These logs will contain the following (in order):
Timestamp
"DD_OUTPUT:"
The message.
The config option for this, by default, is turned off.
This commit updates the map system to -tg- standards. All stations are
defined under _maps/, and all .dmm files go under _maps/map_files/.
Currently, only the NCS Cyberiad is setup under the system.
Misc changes:
- World Status contains the map name
- dm.sh script will allow automatic map changing between restarts.
- _globalvars folder starting to take shape, not everything is migrated
there yet.
>Replaced dd_text2list, dd_text2listcase, tg_text2listcase and tg_text2list with text2list and text2listEx. text2list will return a list of each and every character in the string if you set separator=""
>added return_file_text(filepath) which returns text from a file after doing some checks: does the file exist? is the file empty? It prints helpful error messages to the world.log if it runs into problems
>Replaced dd_file2list(filepath, seperator) with file2list(filepath, seperator). It just calls text2list(return_file_text(filepath), seperator). rather than copypasta
>Replaced time_stamp() so it's not as retarded
>Lots of the world setup stuff uses file2list now, rather than file2text -> sanity -> text2list
>Added error() warning() testing() procs. These print messages to world.log with a prefix. e.g. ## ERROR: msg.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4948 316c924e-a436-60f5-8080-3fe189b3f50e