Commit Graph

2131 Commits

Author SHA1 Message Date
Emmett Gaines
ca23b93bc3 Standardized vis_contents overlay system + better computer glow (#39973) 2018-08-30 03:22:32 +03:00
Tad Hardesty
aff11eaaa8 Give multiple copies of shuttles their own area instances (#39890) 2018-08-27 06:04:48 -04:00
Jordan Brown
69d714f964 Merge pull request #39905 2018-08-26 17:14:01 -04:00
81Denton
ad6d8fd2dd Add missing content to anime phobia (#39875)
Anime phobia was missing some items:

* All flavors of katanas, high frequency blades and other cutting utensils
  used by cyborg ninjas
* Space ninja gear
* Paper frame windows and doors
* Chawanmushi
* Those tacky wearable cat ears

Also, felinids as phobia_species and a few phobia_words.
2018-08-25 02:07:31 -07:00
Kyle Spier-Swenson
397d8473d2 Remove unneeded check 2018-08-24 22:45:51 -07:00
Kyle Spier-Swenson
36a1572eab Remove the prequeue
Delaying the gc wasn't having a worthwhile notice on qdel() cost and can slow shit down
2018-08-24 20:53:37 -07:00
Skippu
11fe1d2f11 Added anime to the list of phobias in phobia.dm, and traumas.dm. (#39840)
* Added "anime" to phobia.json.

* Added anime and other weeb items to the traumas.dm

* Update traumas.dm

* added sashimi and sake under phobia_objs = list in traumas.dm

* Added throwing stars under phobia_objs in traumas.dm

* Added more phrases under "anime"

added ninja and uguu, I was dumb and had a bracket facing the wrong way.

* Missing " after anime on line 141

* Update traumas.dm

* Missing / on line 142

* removed unesscary procs under phobia_objs

* Update traumas.dm

* Update traumas.dm
2018-08-23 10:10:37 -04:00
Jordan Brown
0950619459 Merge pull request #39832 from AutomaticFrenzy/patch/reservation
Speed up roundstart transit space reservation
2018-08-23 10:09:39 -04:00
Tad Hardesty
87752f100f Remove created_atoms tracking from InitializeAtoms 2018-08-22 15:50:54 -07:00
Tad Hardesty
c158c6c44d Speed up roundstart transit space reservation 2018-08-21 02:11:24 -07:00
Tad Hardesty
f2d47b8b05 Slash SSatmos init time by 93% 2018-08-20 18:44:03 -07:00
XDTM
d9e691f393 [Ready] [Reviewed] Nanites 2 (#37922)
* Adds programmable nanites to robotics

* Oh yeah i might want to actually PR the files

* nanite injectors, nanite printer, nanite analyzer

* We're back

* remove some reagent stuff

* more removal

* those too

* cool icons!

* might pass travis now

* lotsa code

* tgui fixes/misc fixes

* WE'RE FUNCTIONAL BOYS

* some ui stuff

* Misc fixes, cloud update, access nanites

* activation check

* stuff

* preparing for new chamber sprite

* Physical backups, sensor nanite programs

* techweb sensor nanites

* fix

* include

* fix again

* revert

* blinding nanites

* minor change

* minor tweaks

* makes minor shocks interfere with nanites

* fix

* split trigger file into the others, for consistency

* cleanup, added mindshield nanites to techwebs

* include n all

* how'd that even happen

* Fixed HUD, readded missing remote icon, added nanite scanner, health analyzers can now detect nanites, added stealth program

* cost tweaks

* better term

* new icon! by MrDoomBringer

* icons/tweaks

* tgui build

* boards

* fix

* fixes implants not updating mindshield status

* move implant hud to living

* new remote sprite

* scanner sprite

* biotype checks

* some nerfs

* new open chamber sprite

* Fixes mindshield implants not updating the HUD, fixes uninstalling always removing the first program, adds 25% and 75% health sensors

* correction

* nerfs antistun nanites

* fixes scanners and minor tweaks

* fixes revs with mindshield

* oh yeah haha

* Fixes wonky techweb

* Moves pyro program to weapon node

* Adds defib program and some investigate logging

* mistype

* fix

* fix2

* save your files before committing

* emps can desync from cloud

* pretty outdated

* Cloud backups are now tied to the cloud consoles; you can no longer build a new console to access existing backups.

* UI fix

* more fix

* okay fix for real

* tested and working

* Extra Settings rework, sensor nanites vastly better

* non-unique glitches

* Public chamber, extra settings rework, new sensors, speech program

* Mute and mind control nanites

* mind control into hazard

* better description

* fixes

* fixes relay nanites

* fixes TK access

* mind control costs less

* UI update

* removed pointless code bit

* tgui build

* compiles

* dammit

* paralysis keeps victim upright

* Adds sounds to consoles

* some feedback for some subtle effects

* new chem lore

* Viral nanite customization

* fix

* tgui build

* Added mitosis nanites

* removes glitched nanites from techwebs

* Added flesh eating nanites, poison nanites, hallucination nanites

* ,

* #traviscoding

* Adds memory leak, renames nanite roam node to nanite smart

* Voice sensor + some techweb desc tweaks

* hallucination and Hear() fix

* changes signal registering to the new method

* 75% done, i think

* should be all

* more fix

* more changes

* okay should be fine now

* ninja

* inheritance

* i don't care about originality!

* line endings

* line endings 2

* maybe

* fixes program installation

* new review

* line endings?

* line endings??

* line endings???

* wait do i even use this

* fixes public nanite chamber cloud id

* maint overlay for chambers

* args doesn't work well here

* antiabuse checks

* compile tho

* fixes locked remotes

* disk renaming

* skull echo nanites

* self scan program

* Condenses a lot of sensors into a few generic but customizable versions

* fixes machinery runtimes. Hacky, but a proper fix would likely require a refactor of machinery typing.

* forgot to save

* empty

* metastation nanite lab

* Removes duplicate APC

* fix for nanite chamber

* Raise max programs

* UI Tweaks, aggr. replication rebalance, minor fixes

* let's not do that again

* Fixes nanites meta merge conflict

* Merge conflict v2

* fuck this HDD is slow

* What the fuck did you just fucking say about me, you little leaf? I'll have you know I graduated top of my class in the Lawyer School, and I've been involved in numerous secret DMCA raids. I am trained in law violations warfare and you are nothing to me but just another target. I will wipe you the fuck out with precision the likes of which has never been seen before on BYOND, mark my fucking words. You think you can get away with changing the code? Think again, fucker. As we speak I am contacting my secret network of attorneys in the Fox and your IP is being traced right now so you better prepare for an outstanding warrant, maggot. The storm that wipes out the pathetic little thing you call your leaked code. You're fucking done, kid. I can file for an injunction anywhere, anytime, and I can take legal actions in over seven hundred ways, and that's just with my bare hands. Not only am I extensively trained in unarmed combat, but I have access to the entire arsenal of the Florida Statute and I will use it to its full extent to wipe your miserable ass off the face of Canada, you little shit. If only you could have known what unholy retribution your little "clever" action was about to bring down upon you, maybe you would have held your fucking tongue. But you couldn't, you didn't, and now you're paying the price, you goddamn idiot. I will send you to spend time in a Florida State Penitentiary if you ever decide to travel from Canada to the U.S. You're fucking done, kiddo.

* Adds virus symptoms that interact with nanites

* Fixes spreading nanites being more infective the more protection the victims have

* Review plus public chamber tweak

* . = ..()

* ball

* cloud

* . = ..()

* always press save all before committing

* missed a couple
2018-08-20 14:46:04 +03:00
oranges
cc43505978 Merge pull request #39747 from ninjanomnom/bucketmancy
Fixes timer buckets going into negatives and adds a regression test
2018-08-18 13:32:52 +12:00
ninjanomnom
01a79dccb0 Fixes timer buckets going into negatives and adds a regression test 2018-08-16 14:50:09 -04:00
Kyle Spier-Swenson
ac9dfd6ea8 delays clearing the items out of the garbage queues when tick_checked
Since it already has the code necessary to handle doing it this way.
2018-08-14 20:37:52 -07:00
Kyle Spier-Swenson
850513bd58 The garbage collector now makes an actual effort to churn thru the prequeue
Unlike normal subsystems, if the garbage collector is tick_checked into pausing, rather than run next game tick to resume, it waits the full 2 seconds again.

I added that change because hard deletes can sometimes cause a large amount of lag, and so doing one again the next game tick is a stupid idea when 1 hard delete can cause a tick overrun on its own.

Now it only applies this when doing hard deletes, running again next tick otherwise.
2018-08-14 13:52:08 -07:00
Patrick Chieppe
2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
kevinz000
230e47c0ea Configuration entry refactor! (#39608)
* Config entry refactor

* Fixes

* Update configuration.dm
2018-08-10 15:44:14 -04:00
Jordie
0d7ef3ed65 Key instead of ckey for user facing logs and ui (#39009)
* converts to using key instead of ckey for user facing logs and ui

* more key_name for airlock wires

* futureproofing check for if key changes

* --onlyckeymatch script argument and fail/success counter

* fix
2018-08-11 02:15:50 +10:00
Tad Hardesty
b83424bd87 Refactor the map loader (#39567)
* Remove duplicate initTemplateBounds method

* Move dmmRegex var to the type that actually uses it

* Keep a single, static map_loader datum

* Combine maploader into parsed_map

* Remove some redundant parameters from parsed_map/load

* Move file2text into parsed_map/New

* Narrow the scope of the map loading lock

* Remove redundant xcrdStart var

* Fix argument names in station reloader

* Move offsets from parsing to loading only

* Tidy argument handling on parsed_map/load

* Store modelCache, track nonexistent atom paths

* Use raw strings to specify the regexes

* Remove cropMap from parsed_map/New

* Don't parse maps twice when checking multi-z validity

Speeds up SSmapping init by approximately 10%.

* Bring the documentation (somewhat) up to speed

* No, I don't know why this fixes it
2018-08-09 22:49:38 -04:00
Jordan Brown
a139ca31e5 Fix connection errors not showing with SSdbcore.ErrorMsg() (#39613) 2018-08-09 17:02:49 -04:00
kevinz000
5f4b418eaa Movespeed Modification System (#39181)
In preparation of pixel movement, I want to refactor our slowdown system to something more modular, and something that doesn't require /quite/ as many proccalls/calculations a tick. The way this works is intended to only have things recalculate when it's necessary, rather than calling it every move.
However, I've left movement_delay() in, as without completely redoing a lot of code it's not /quite/ ready at this point to tear it out completely, but I'm hoping everything can be transitioned over to this system later.
2018-08-09 16:55:15 -04:00
kevinz000
48ece11504 Felinid/catpeople are now their own human subspecies (#39513)
* Catpeople are nyow a species

* Fixes a runtime

* Fixes the issues with being forced ears when you chose none

* Neko --> Felinid

* P2

* Update

* Working this time I promise
2018-08-08 20:56:46 +03:00
ArcaneMusic
0e106c897a Adds a new RoundEnd Sound. (#39391)
* Adds a new RoundEnd Sound.

   🆑 ArcaneMusic
   rscadd: Added a new, shoutier RoundEnd Sound.
   /🆑

Sometimes after a nice, long round you just want to scream.Let me know how it balances with the game audio mixing in case it's too loud/quiet.

* Using the Reverb sound

Audio file updated.
2018-08-03 13:04:38 -04:00
kevinz000
5b5e1ee577 Third time's the charm - Photography update: 7x7 cameras, photo logging with full metadata, persistent albums and wall frames! (#38944)
* Photography Update

* Pictures logged in their own /data/picture_logs folder rather than normal logs

* Pictures logged in their own /data/picture_logs folder rather than normal logs

* Photos broke, retrying

* Persistence stuff

* I'm almost done I promise!

* Persistence mostly working, compile, etc etc

* Persistence mostly working, compile, etc etc

* Remove something really not needed from the PR

* Prevents duplication

* default to off

* removes check tick

* increase slots in albums to 21

* Allows for singular loading

* Update camera_image_capturing.dm

* Addresses review

* Anturk

* Update camera.dm

* Update misc.dm

* Update datum.dm

* Update camera.dm
2018-08-01 14:52:41 +02:00
AnturK
be7d1b8f88 Sliding puzzle improvements (#39471)
* Sets notransform on the mob and makes few more things respect it.
* Makes if location contains any indestructible walls. (I need to switch these
  to flag instead of path checking)
* Adds it to smite.
2018-07-31 14:28:25 -07:00
Hate9
1463784de5 Adds tiny circuits (#39123)
* Added tiny circuits

* fixed typo

* Update assemblies.dm

* Rename example - Copy.yml to example.yml

* Update circuit.dm

* Delete tinycircuits.yml
2018-08-01 09:27:37 +12:00
oranges
5d4b05eaee Merge pull request #39336 from Cyberboss/BSQLUpdate
Updates BSQL. Adds thread limiter config
2018-07-29 13:35:54 +12:00
Jordie
9dd566a586 Change +everything admin flag to not use ALL define (#39142)
* change +everything admin flag to not use ALL define

* add proc to handle max flag value changing update to db
2018-07-27 18:15:41 +12:00
Tad Hardesty
c7ba22d2bf Fix PROCESS_KILL for SSobj and generally (#39322)
* Make SSobj a processing subsystem

* Fix PROCESS_KILL preventing starting processing again

* Sometimes, I dream about cheese
2018-07-25 10:42:26 -04:00
Jordan Brown
32a2221302 Adds BSQL thread limit to configuration options 2018-07-24 14:46:36 -04:00
Patrick Chieppe
308bfdb1ed Telecomms chat logging (#39276)
* Add telecomms logging to a new file (telecomms.log)

* Add LOG_TELECOMMS config option
2018-07-24 22:38:25 +12:00
Jordan Brown
2ddf0e656f Removes can_vv_get from some things (#39136)
* Removes can_vv_get from some things

* This too

* Remove extra vv_edit_var
2018-07-24 22:15:45 +12:00
kevinz000
0397cbb877 Refactors projectile pathing (gameplay change, this will make projectiles more accurate in their linetracing), hitscan light effect improvements (#38933)
cl
experimental: Hitscanning tracers now have lighting effects
experimental: Projectile pathing has been changed - instead of moving to a turf 32 pixels forward using byond's built in step_towards() proc, it now increments 2 pixel 16 times (subject to change). While this will increase the processing overhead, this will more or less eliminate cases of "projectiles clipping past corners in some angles but not others".
2018-07-20 11:32:13 +12:00
kevinz000
d97bd6c0ae Removes flightsuits (#39195) 2018-07-18 17:46:53 -04:00
Kyle Spier-Swenson
07824d3a20 MassInsert now defaults to async. (#39180) 2018-07-18 22:53:05 +03:00
Jordan Brown
a4881ebf59 Convert death query to async (#39179) 2018-07-18 16:12:35 +03:00
vuonojenmustaturska
edfeb2e33a Fixes Reebe not initializing for clockcult mode, leaving the area airless and nonfunctional (#39163) 2018-07-16 23:33:38 -07:00
Jordan Brown
d210adbf1a Adds BSQL (#38323)
* Add BSQL library v1.1.1.0

* Modify dbcore to use BSQL

* Add missing QDEL_NULL for connectOperation

* Moves BSQL_Shutdown() call to dbcore shutdown

* Fix passing the wrong argument to DBQuery/New()

* Darn it @Jordie0608. Fixes db calls without Connect check

No seriously please make sure I'm not breaking anything

* Queries with a null connection won't runtime

* Fix quoting

* Fix mistake

* Update BSQL to v1.1.2.0

* Update BSQL DMAPI to v1.0.1.0

* Fix connection instatiation

* Does the smart thing in regards to quoting

* Fix braces

* Update BSQL to 1.2.0.0. DMAPI to 1.1.0.0

* Execute/NextRow/MassInsert now have async parameter

* Build BSQL for tests

* Add missing apt source

* Def still need gcc-multilib

* Wut

* Revert "Wut"

This reverts commit d7c98a9a6b27f6db03e9f5cc534650d59d018048.

* Try this then

* Could it really be that simple?

* Literally running out of ideas here

* Update BSQL to v1.2.1.0 DMAPI to v1.1.1.0

* Update BSQL travis version

* Nothing about this makes sense tbqhwyfam

* Whoo boy

* No idea why this isn't working tbh

* Absolute madness

* Ahhhhhhhhhhhhh

* *deep breath*

* "though yet again i was frustrated by failure"

* Add BSQL to Dockerfile

* Pass through MassInsert async param

* BSQL to v1.3.0.0 DMAPI to 1.2.0.0

* Add timeout support

* Wait, something's fucky

* Wtf is this meme?

* Just get good lmao

* Just stop being shit lol

* Stupid verbose logging

* Remove verbosity

* Good god

* BSQL to v1.3.0.1 DMAPI to v1.2.0.1

* BSQL to v1.3.0.2

* Update BSQL travis version

* Update BSQL docker version

* Didn't mean to change that

* Strip connection information from debug logs and make it configgable

* Move this to where CONFIG_GET is defined
2018-07-16 17:05:41 +03:00
vuonojenmustaturska
a1ad24904e Stops various machines from processing needlessly (#39132)
* Stops lighting from processing needlessly

* showers too

* space heaters

* broken/unpowered vending machines

* fucken status displays

* rechargers
2018-07-15 17:01:29 -04:00
Jordan Brown
09860c0169 Fixes config loading (#39126)
* Aww geez rick

* breh
2018-07-14 03:06:08 -04:00
Jordan Brown
6afa81c207 Adds world parameter to change the config directory (#39073) 2018-07-13 17:04:15 -07:00
Jordan Brown
f3932241c8 Merge pull request #38995 from ninjanomnom/looping-timers
Adds looping timers
2018-07-13 18:25:24 -04:00
Jordan Brown
61e70f2333 Seperates map reader parsing from loading (#38764)
* Seperates map reader parsing from loading

* Compile fixes

* Uhhh, ok dm

* Ugh

* Fix one error...

* FIxes model caching
2018-07-13 18:07:32 +02:00
ninjanomnom
863cd2d57e Fixes TIMER_CLIENT_TIME looping timers not adding their wait 2018-07-12 20:23:56 -04:00
ninjanomnom
bb6b09d3e1 Fixes the active timer count getting out of sync when buckets reset while spent timers were awaiting qdeletion
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2018-07-12 20:23:56 -04:00
ninjanomnom
d32d2869c0 Adds looping timers
and a requested binary search insert macro
2018-07-12 20:23:56 -04:00
AnturK
f19611ff77 Adds client byond version to feedback. (#39061)
* Adds client byond version to feedback.

* Duh

* i need more sleep
2018-07-12 17:27:25 +10:00
Nick
8acec65f47 Adds time to explosions saved in the feedback table (#39017)
* Exactly what it says on the tin. Adds time to explosions saved in the feedback table.

* Nevermind I want deciseconds

* Update feedback version

* Dumb ned
2018-07-10 13:57:37 -04:00
AnturK
ead63200c3 Fixes admin gibbing runtiming. (#39014) 2018-07-10 12:22:22 +03:00