Commit Graph

1323 Commits

Author SHA1 Message Date
Kyle Spier-Swenson c341178ff4 Fixes bug with addtimer keeping old timers around, makes addtimer even faster. (#23126)
* Fixes timers being left around, Makes addtimer() sanic fast.

This adds a new flag, TIMER_STOPPABLE. Most(80%) of the overhead for addtimer() was in adding the timer to the associated lookup list for deltimer() to use. Moving that functionality to a flag so it wouldn't slow down the 70% of things calling timers puts the final nail in the coffin of byond's sleep/spawn().

spawn: 324 seconds across 5,948,372 calls

addtimer: 67 seconds across 5,953,220 calls

The testing setup for profiling was included in this commit, it will be removed in a later commit. @Fox-McCloud

* Remove profiling procs.

* fix runtime

luckly when this happened, we were about to resume anyways.
2017-01-20 09:31:50 +01:00
kevinz000 33a502a03b Update gravitygenerator.dm (#22971)
Prevents gravity generator from being thrown, and therefore completely destroyed by meteorshots.
2017-01-14 11:56:06 +13:00
Buggy123 72dbf3f511 Removed admin message on emitter poweroff (#22935) 2017-01-12 15:06:23 -05:00
c0 f250925a7a Fixes broken lights burning your hand in some cases 2017-01-09 09:11:01 +03:00
oranges de92eb81d7 Merge pull request #22716 from Core0verload/easy_replace
Makes replacing lights easier
2017-01-05 19:12:17 +13:00
Joan Lung ca9badec49 Tesla coils and grounding rods must be anchored with a closed panel to function (#22665) 2017-01-05 19:09:43 +13:00
oranges f21b077adc Merge pull request #22698 from ChangelingRain/supermattercount
The supermatter now has a ghost-visible damage display
2017-01-05 19:09:28 +13:00
Firecage 8dab2c9c34 Changes the names of Circuit Boards so they are easier on players. (#22688) 2017-01-04 17:20:53 -05:00
Core0verload 5faaa4a4af Unfucks SMES construction/deconstruction (#22657)
* Unfucks SMES construction/deconstruction

* fixes
2017-01-04 10:52:43 +01:00
c0 354b846874 Makes replacing lights easier 2017-01-04 08:57:55 +03:00
Kyle Spier-Swenson bee4b132a3 [READY]Makes addtimer use callbacks (#22660)
* Makes addtimer use callbacks

* I broke the comment

* I fucked up the regex

* this was a silly idea.
2017-01-04 16:02:56 +13:00
Joan Lung a4dfe50f75 The supermatter now has a ghost-visible damage display 2017-01-03 17:02:28 -05:00
Joan Lung a2ef2745fe Fixes emitter unsecuring 2016-12-30 16:06:25 -05:00
oranges fd7e8eb3bd Don't redestroy a tesla ball on stop orbit (#22482)
Destroy can cause the parent ball you're orbiting to also be destroyed,
which calls stop orbit on your ball, which then caused you to get
destroyed again, this fixes that while still guarding against the case
the original !loc qdel code was added for - see pr #15486
2016-12-27 16:16:59 -05:00
Joan Lung a9d05c09f2 Applies construction defines and default_unfasten_wrench() to some singularity machinery 2016-12-25 10:28:35 -05:00
Joan Lung 95af0534f6 MMI'd clockcultists put in AI cores will properly lose clockcult status (#22369)
* MMI'd clockcultists put in AI cores will properly lose clockcult

* uuuuugh

* fix the core while we're at it

* "

* mrrp

* this will also follow you around

* hmm
2016-12-25 16:18:55 +13:00
Shadowlight213 5dd264102e Adds arrival shuttle to radstorm protected areas
Fixes spider structures having null armor
Fixes division by 0 with hellcan
Fixes runtime in automatons
Fixes runtime with recharger in modular computer destroy
Fixes runtime in power monitor
2016-12-23 18:50:10 -08:00
Joan Lung 513ce6ec3a Gravity and the supermatter count as critical machines (#22236)
* Gravity and the supermatter count as critical machines

* fragment

* Do the needful myself
2016-12-23 09:49:43 +13:00
Cyberboss e4296736d8 Fixes a gravgen Destroy runtime 2016-12-20 16:39:23 -05:00
Karl Parakenings ba671b85a2 added distance check for electrocute mob proc in [power.dm] (#22231)
* added adjacency check for electrocute mob proc

* updated all calls to proc enabling range check
2016-12-18 19:55:34 +13:00
XDTM 7d1a67d0c8 Abductor tools and tool sound refactor. (#22125)
* Everything in the PR

* I'm taking that as a yes
2016-12-14 18:09:41 +13:00
Cheridan 2dd1a87345 Merge pull request #22083 from ChangelingRain/multiplierspeed
Refactors toolspeed to be a multiplier instead of a divisor
2016-12-10 19:22:44 -06:00
oranges 07e5b972a9 Merge pull request #22065 from lzimann/patch-15
Changes investigate log color for PA on/off
2016-12-10 15:08:47 +13:00
Joan Lung 43ce2667f4 Merge branch 'master' of https://github.com/tgstation/tgstation into multiplierspeed 2016-12-09 18:03:43 -05:00
Joan Lung a3be7a9226 Refactors toolspeed to be a multiplier instead of a divisor 2016-12-09 16:55:51 -05:00
Leo 249c067c28 Changes investigate log color for PA on/off 2016-12-08 22:46:57 -02:00
Mervill 417c50efa2 These comments where removed by me.exe, just now 2016-12-08 01:48:46 -08:00
Kyle Spier-Swenson dedb16826e Speeds up world init. (93s -> 49s) (#21992)
* Speeds up world init.

* Armor is now new inited for obj and the first level of subpaths.
* Actions is now lazyinited and deleted with empty.
* Actiontypes is now only inited when actually used and deleted once it pre-fills actions with the action buttons.
* Pipes now prefill their node list(s) in new() using new /list/ (count) syntax to speed up the list initaliztions and remove the init proc.
* Pipes no longer store their item version, instead creating it on the fly when deconned
* Walls no longer store their metal stacks, instead creating it on the fly when deconned.
* obj, walls, floor, plating, item, machinery, structure, pipe, pipenet, atom, and movable no longer have an (init) proc. (along with a few other smaller examples)
* Atmos can pass checking is now a var with the ability to have a proc be call in advance cases.
  * (as a side effect, I had to fix a few things that were calling atmosCanPass rather then using the pre-calculated list, this should speed up chemfoam and flame effects greatly)

* Reverts upload limit
(remind me one day to defuck this, it could easily be a config thats not editable by vv to make changes easier)

* Makes apc update icon a bit faster.
APC new is some what high on the profile of world init, still not sure why, but this stood out as a waste of cpu so i fixed it.

* Fixes runtime with atmos backpack water tanks.

* Makes smoothing faster (and fixes turfs smoothing twice at init)

* Makes apcs init faster by replacing some spawns with addtimer

* fix transit turfs.
2016-12-08 21:50:15 +13:00
Fox McCloud be94e4f76a Converts Hydroponics oneharvest var and Potato's Battery Quality into Plant Genes (#21983)
* Converts Hydroponics oneharvest var into a Plant Gene

* plant batteries

* plant types

* stinging
2016-12-08 12:43:23 +13:00
Joan Lung 551ede6d35 Kills all remaining text pronoun macros (#21916)
* Kills all remaining text pronoun macros

* review your own code

* oh right one further

* more

* \
2016-12-04 21:32:31 +01:00
Mervill 0972f78800 a_intent now uses defines 2016-12-02 22:27:30 -08:00
Mervill c2e2440953 Merge branch 'master' into w_class
Conflicts:
	code/game/objects/items/weapons/twohanded.dm
2016-12-02 21:44:24 -08:00
Jordie ca6ffdba40 Merge pull request #21866 from Mervill/slashes_deux
Remove slash from end of type refs/defs
2016-12-03 15:56:10 +11:00
Mervill 09ea5ad2e5 w_class now uses defines 2016-12-01 21:33:14 -08:00
Mervill d83f68ee66 das ist verboten 2016-11-30 20:08:24 -08:00
Mervill 01d4232570 Remove slash from end of type refs/defs 2016-11-30 19:23:15 -08:00
MrStonedOne 76e1c6916f VV refactor 2016-11-30 12:49:21 -08:00
oranges af7e6d1323 Fixes all remaining addtimers missed 2016-11-27 08:31:07 +00:00
Mervill 70256e9f8a Removes some stale comments (#21700)
* Stale comments and some redundant string interpolation
2016-11-24 13:27:41 -06:00
Cyberboss 647570ed37 Fixes #21669 2016-11-21 12:22:21 -05:00
Cyberboss 6fe4e76863 As you wish 2016-11-06 20:53:31 -05:00
Joan Lung 241e6e75b8 Merge pull request #21359 from phil235/WindowExplosionBlockFix
reinforced window and telehulk bugfixes
2016-11-05 19:33:15 -04:00
Joan Lung 1a26cf9aa5 Ratvar will now proselytize stuff that happens to be in space (#21340)
* Ratvar will now proselytize stuff that happens to be in space

* do you hear ratvar singing

* no narsie in ooc

* "

* don't need that

* heir

* bigger stronger more filled with brass
2016-11-04 09:06:57 +01:00
phil235 8cb3736221 Fixes turf having two contents_explosion()
Fixes hulk plus telekinesis being able to hulk smash things from a distance.
2016-11-04 00:33:51 +01:00
phil235 2dc956bea0 Merge branch 'master' of https://github.com/tgstation/-tg-station into Color_washing
# Conflicts:
#	code/game/gamemodes/clock_cult/clock_scripture.dm
#	code/game/gamemodes/clock_cult/clock_structures.dm
2016-10-31 19:59:00 +01:00
oranges 3aea9c7feb Refactor apc attackby slightly to avoid a colon (#21263)
also adds a runtime for attackby interacting with an APC when it's not
on a turf (which should be impossible)
2016-10-30 22:57:13 +01:00
Mysak0CZ ca58db328d [ready for review] APC minor tweaks (#21241)
I moved some things in APC's construction code.
Emaged and malf-AI-hacked APCs can now be fixed replacing theyir board (old one destroyed in process). - We emag and hack APC's board, not frame
You can now add/remove APC's wires even if board is secured
Removing APC's and SMES's terminal no longer ignore current tool's speed
You can repair APC's cover (only if APC is not compleatly broken) by using APC frame on it, while electronicks are still in place
You can no longer unlock AI-hacked APCs, throught AI still can
    closing APC's cover will lock it
2016-10-30 09:34:51 +13:00
Xhuis f86a8c247e Adds the ability to transfer AI APC copies onto an intelliCard (#21068)
* Adds APC copy transferring

* Adds a missing variable

* First change

* Second change
2016-10-29 11:33:42 +13:00
Cyberboss 447c44e1b9 Simplify further 2016-10-21 22:36:35 -04:00
Cyberboss 8ebc86a3a2 Fixes #11347 2016-10-21 17:05:16 -04:00