Commit Graph

3257 Commits

Author SHA1 Message Date
Jordan Brown 452c5ce360 Makes GetComponent() faster using typecache magic (#29523)
Added /proc/type2parent which takes a type (string, or type) and returns it's parent type (initial(x.parent_type) doesn't work)

Instead of being a raw list of components, /datum/var/datum_components is now associated list keyed by type with some bells and whistles to make GetComponent() calls faster
2017-08-02 09:58:53 +12:00
Leo 1aa23ee3d9 Merge pull request #29599 from tgstation/Cyberboss-patch-2
Testmerged [s] PRs no longer shown to non-admins
2017-08-01 10:58:09 -03:00
Jordan Brown 47dea05347 Merge pull request #29591 2017-08-01 09:39:44 -04:00
Jordan Brown 3ec4aec215 Merge pull request #29601 2017-08-01 09:37:28 -04:00
shizcalev 99624b8e74 further spellchecking 2017-07-31 23:09:08 -04:00
Ashe Higgs 0a32812982 Separates actions.dmi into multiple files (#29587)
actions.dmi is way too cluttered and messy, and with inhands getting the axe I decided to fix this, too. I separated the major categories of actions into their own files, like antagonist-specific actions and spells. A full list of categories is found here:

    actions_AI.dmi contains AI-specific actions;
    actions_clockcult.dmi contains clockcult-specific actions, and scripture quickbind icons;
    actions_cult.dmi contains cult-specific actions as well as sintouch;
    actions_flightsuit.dmi contains flightsuit and flightpack actions;
    actions_items.dmi contains minor item-specific actions such as the hierophant club and jetboots;
    actions_mecha.dmi contains actions related to mechs;
    actions_minor_antag.dmi contains antag-related actions with no other spot, like devils/abductors;
    actions_revenant.dmi contains revenant ability icons;
    actions_silicon.dmi contains minor silicon and console icons, like pAI and xenobiology consoles;
    actions_slime.dmi contains slime actions;
    actions_spells.dmi contains icons for all spells;
    actions_xeno.dmi contains icons for all xeno actions; and
    backgrounds.dmi contains backgrounds for the action buttons.
2017-08-01 14:26:42 +12:00
Jordan Brown 13be0e16fc Merge pull request #29585 from Fox-McCloud/sound-performance
Improves several Sound Loops' Performance
2017-07-31 15:34:25 -04:00
Jordan Brown 0fcc1079b5 Testmerged [s] PRs no longer shown to non-admins 2017-07-31 10:11:29 -04:00
Joan Lung 3d0884490e lense is actually a misspelling of flense 2017-07-31 09:37:27 -04:00
Joan Lung 50d5c40cc5 Merge branch 'master' of https://github.com/tgstation/tgstation into aicameratweak 2017-07-31 09:29:47 -04:00
Joan Lung 78530a0ceb The AI's internal camera functions better 2017-07-30 23:31:38 -04:00
Cyberboss f5f3758df3 Merge pull request #29288 2017-07-30 20:54:22 -04:00
Fox-McCloud 29f1779885 Improves several Sound Loops' Performance 2017-07-30 12:23:37 -04:00
XDTM 4865549b9f Fixes a lot of eye damage procs (#29565) 2017-07-30 09:16:18 -04:00
ShizCalev d525b18d8d Completes major inhand split project (#29574)
* Completes split project

* More work on it. Should be more or less finished
2017-07-29 16:47:37 -03:00
XDTM 97fc07898c Merge branch 'master' into Hallucinations3.0 2017-07-29 12:43:18 +02:00
XDTM 59fdce8e66 Lotsa stuff 2017-07-29 12:36:48 +02:00
Jordan Brown d302114639 Merge pull request #29536 2017-07-28 09:55:27 -04:00
Jordan Brown ec18102501 For clairity 2017-07-28 09:39:16 -04:00
MoreRobustThanYou 899bb2a305 Ports Rapid Cable Layers from /vg/ and paradise (#29119)
Add's a tool that lays cable as you walk , speeding up cable construction

add: Nanotrasen has begun production of the Rapid Cable Layer, a tool that helps you lay down cables faster
add: You can now craft ghetto RCLs with metal, a screwdriver, welder, and wrench. They hold less cable, and may fall apart or jam!
2017-07-28 09:58:40 +12:00
ktccd 122f5b58eb Ashstorms Matryoshka bugfix
Ashstorms will now allow someone IN someone protected also protect them.
This is the bug that used to kill borers inside a host who was
protected, but it applies to anything really.
2017-07-27 11:11:04 +02:00
Joan Lung 6d7e3f2281 Lava is no longer a plating subtype (#29463) 2017-07-25 22:16:02 -03:00
Leo 2550dff44b Merge pull request #29462 from XDTM/BetterFix
Fixes virology timing in a better way
2017-07-24 23:57:48 -03:00
ShizCalev 0e9b3967e2 Spellchecks the map definitions (#29485) 2017-07-25 14:16:06 +12:00
Ashe Higgs 08569ecadb You can now control-click action buttons to lock them in place (#29379)
Adds a lock function to action buttons, as well as a preference controlling default behaviour.
2017-07-25 10:05:18 +12:00
Jordan Brown 0321e6bd85 DCS Continued (#29324)
Adds's documentation to the DCS system, refactors to improve the caller API
2017-07-25 09:44:19 +12:00
XDTM ed202d36a5 Fixes virology timing in a better way 2017-07-23 22:18:08 +02:00
XDTM e72b6767ed Virology fixes (#29428)
* Pandemic now reads data from the virus itself rather than the global copy

* Fixes id mismatch
2017-07-22 19:10:40 -03:00
Jordan Brown f888a88f4c Merge pull request #29349 from lzimann/scopres
Adds proper containers for some locates
2017-07-19 16:18:03 -04:00
XDTM ae045dab62 Further code improvement 2017-07-18 23:21:15 +02:00
XDTM 1c716c2f0f Merge branch 'master' into Hallucinations3.0 2017-07-18 22:04:13 +02:00
Lzimann c92ec9c5e4 Adds proper containers for some locates 2017-07-18 16:23:10 -03:00
ShizCalev 45d3d52af7 Made some object lists less terrible to read (#29304)
* spaces

* more spaces

* last ones
2017-07-18 10:44:29 -04:00
Leo b2c5526ed8 Merge pull request #29305 from ChangelingRain/blooddrunkfix
Fixes carbons not handling the Blood-Drunk status effect properly
2017-07-17 19:55:40 -03:00
Jordan Brown bcb85acb1e Ports /vg/'s datum component system (#29178)
* Ports /vg/'s component system
2017-07-17 12:10:25 +12:00
kevinz000 0833a9002f Ports instruments from /VG/station, including harmonicas, xylophones, saxophones, trombones, and a BIKE HORN. Repaths instruments to sound/instruments. Also, allows piano synth to play all instruments but eguitar and gives cargo a crate with everything. Clown gets the bike horn trumpet at roundstart. (#29277)
* multiext

* instruments

* kekkles

* clown

* Update instruments.dm

* Update packs.dm

* Update packs.dm

* Update instruments.dm

* Update action.dm

* typo

* Update instruments.dm
2017-07-16 12:48:51 -04:00
XDTM 9a2a083e51 Fire hallucination and misc fixes 2017-07-16 16:29:44 +02:00
Joan Lung f06cde49b4 Fixes carbons not handling the Blood-Drunk status effect properly 2017-07-16 10:26:59 -04:00
XDTM 5fafc73094 Hallucinations 3.0 2017-07-15 21:03:34 +02:00
Fox McCloud 2cc3e9c41f Disease Refactor (#29130)
* Vomit Now Contains Viruses

* eh

* typeless memery

* Disease Refactor

* tweaks

* styling

* tweaks

* unecessary comment removal

* whoops

* fix
2017-07-15 11:08:40 -04:00
oranges 5494f5328a Rename Bump to Collide (#29207)
This reduces confusion arising from the fact byond already has a built
in byond proc also named Bump.

We used an argument called yes to distinguish our Bump from byond's
builtin bump, but then we failed to make sure everyone of our bumps
properly override it, so a bunch of things have been double bumping

This resolves that issue permanently

I've also removed the second argument as it no longer has a purpose

I also cleaned up the recycler bump as it didn't do anything the
parent procs didn't already do
2017-07-14 13:47:22 +02:00
XDTM 7de5bde68e [Seriously, it's ready]Virology Rework: The Thresholdening (#28556)
🆑 XDTM
experiment: Viruses and symptoms have been havily reworked.
add: Symptoms now have statistic thresholds, that give them new properties or improve their existing ones if the overall virus statistic is above the threshold. Check the pull request in github or the wiki (soon) for the full list.
del: Some symptoms no longer scale linearly with stats, and instead have thresholds.
tweak: The symptom limit is now 6.
del: Viruses can no longer be made invisible to the Pandemic
tweak: Symptoms no longer trigger with a 5% chance every second, but instead have a minimum and maximum number of seconds between each activation, making them more consistent.
del: The symptoms Blood Vomit and Projectile Vomit have been removed, and are now bonuses for the base Vomit symptom.
del: The Weakness symptom has been removed as it was completely useless.
tweak: The Sensory Destruction symptom has been reworked into Narcolepsy, which causes drowsiness and sleep.
tweak: Viral Aggressive Metabolism now has a timer before it starts decaying the virus. It scales with the highest between Resistance or Stage Speed.
add: You can now neuter symptoms, making them inactive. They will still affect stats. Adding formaldehyde to a virus will neuter a random symptom. A bottle of formaldehyde starts in the virus fridge.
/🆑

Full list of threshold bonuses:

    Facial Hypertrichosis - None
    Choking
        Stage Speed 8 : Acts more often
        Stealth 4: Suppresses early warnings
    Acute respiratory distress syndrome
        Stage Speed 8: Adds paralyzing chems (removed from base version)
        Infect 8: Stronger damage
    Confusion
        Stealth 4: Suppresses early warnings
        Resistance 6: Also deals some brain damage, not above 80
        Infect 6: Stronger confusion
    Cough
        If AIRBORNE: Coughing causes a spread at range 1
        Resistance 3: Coughing drops small items (removed from base)
        Resistance 10: Can cause coughing fits that stun briefly
        Speed 6: Increases cough frequency
    Deafness
        Stealth 4: Suppresses early warnings
        Resist 9: Deafness is permanent instead of temporary
    Dizziness
        Stealth 4: Suppresses early warnings
        Infect 6: Also adds the druggy effect
    Fever
        Resist 5: Heats more, can go above the damage threshold
        Resist 10: Heats even more per activation
    Shiver
        Speed 5: Cools more, can go below the damage threshold
        Speed 10: Cools even more
    Spontaneous Combustion
        Stealth 4: Suppresses early warnings
        Speed 5: Increases fire stacks and damage
        Speed 10: Increases fire_stacks and damage even more
        Infect 8: Spreads the virus when igniting
    Alkali Perspiration
        Resist 9: Increases time between ignitions but increases power as well
        Speed 8: Doubles the explosion range when wet
        Infect 8: Also adds napalm and clf3 (removed from base version)
    Necrotizing Fasciitis
        Resist 7: Causes extra bleeding
        Infect 8: Deals additional stamina damage
    Autophagocytosis Necrosis
        Stealth 5: Suppresses early warnings
        Speed 7: Adds Heparin and Lipolicide (removed from base version)
        [PROPOSED REQUESTING APPROVAL] Infect 13: Adds romerol, turning the victim into a zombie on death.
    DNA Saboteur
        Stealth 5: DNA won't reset after curing
        Speed 10: Increases mutation frequency
        Resist 8: Mutate twice instead of once
    Hallucigen
        Stealth 4: Suppresses early warnings, and gives off the messages of positive symptoms instead
        Speed 7: Stronger hallucinations
    Headache
        Stealth 4: Reduces early message frequency
        Speed 6: Deals some stamina damage when headaching
        Speed 9: Reduces frequency, headaches are strong enough to stun
    Healing Symptoms
        Stealth 4: Hides the overlay when healing
        Speed 7: Increases healing rate
        Speed 15: Further increases healing rate
    Itching
        Infect 6: Increases frequency
        Speed 7: Itching causes scratching, dealing minor brute damage (0.5)
    Narcolepsy
        Infect 7: Deals stamina damage when it triggers
        Resistance 10: Triggers more often
    Self-Respiration
        Resist 8: Regenerates blood
    Sensory Restoration
        Resist 6: Also heals brain damage (removed from base)
        Infect 8: Also purges alcohol (removed from base)
    Sneezing
        Infect 9: Increases spread range
        Stealth 4: Suppresses early warnings
    Hyphema
        Stealth 4: Suppresses early warnings
        [REQUESTING APPROVAL] Resist 13: Eyes fall off instead of just being blinded
    Voice Change
        Stealth 3: Suppresses early warnings
        Speed 7: Changes voice fater
        [REQUESTING APPROVAL] Infect 14: Changes the infectee's language along with the voice
    Vomit
        Stealth 4: Suppresses early warnings
        Resist 7: Blood Vomit
        Infect 7: Projectile Vomit

Unlisted symptoms do not have threshold bonuses!

All balance is not final, i'll tweak the numbers as necessary.
Why

Threshold bonuses: The reasoning behind these is that they feel more rewarding and impactful than simple number scaling, and gives the option to dedicate symptom space to more symptoms or to upgrade a few central ones instead.
Symptom activation change: the intention behind this is RNG consistency and ease of balance. Currently all symptoms have a 5% chance of activate with few exceptions, making it complicated to tweak.
Neutering: Upgrading positive symptoms by putting a ton of negative ones doesn't work well, in my opinion, especially when they'll trigger their own thresholds making the virus somewhat dangerous instead. Neutering allows players to sidestep that, but i recognize that it swings a bit too far on the other side of the risk/reward balance. I plan on finding a better system to manage virus statistics in the future.
2017-07-14 09:42:56 +12:00
kevinz000 7a26305498 Replaces ex_act and emp_act numbers with defines (#29215)
* defines

* defines

* explode_none
2017-07-13 08:56:26 -03:00
Jordan Brown d135dc2643 Merge pull request #29162 from ChangelingRain/directionliststweak
Renames GLOB.cardinal to GLOB.cardinals to match GLOB.diagonals and GLOB.alldirs
2017-07-10 18:45:52 -04:00
ShizCalev 59ef81245b Changes some 1s and 0s to TRUE and FALSE (#29144) 2017-07-10 10:31:34 -04:00
Joan Lung ec9439b915 Renames GLOB.cardinal to GLOB.cardinals to match GLOB.diagonals and GLOB.alldirs 2017-07-09 17:24:28 -04:00
kevinz000 44e99ed7ba Adds Headphones! (#28993)
* kek

* this /should/ work.

* icon updates and wardrobes and vendors

* remie

* Update ears.dm

* typecast

* states

* updates

* Update fitness.dm

* Update wardrobe.dm

* Update vending.dm
2017-07-07 13:44:21 -04:00
Jordan Brown f4203ba88d Merge pull request #29088 from Really-Good-Soda-Flavor/marTIALARTS
Makes martial arts not be deleted
2017-07-07 10:38:44 -04:00
Shadowlight213 68102aaa0c Refactors speech/communication logging and adds coordinates to speech logs (#28997)
* Adds locations to speech and related communications
Refactors how logging is handled for these.

* changes

* ahhhhh

* preemptive merge conflict undoing maybe?

* Let's not delay this further
2017-07-06 16:06:43 -04:00
Joan Lung bea7bf9297 Adds Necropolis curses for cursed items in Necropolis ruins (#28992)
* Adds Necropolis curses for cursed items in Necropolis ruins

* Adds sounds credit @FuryMcFlurry

* stat tweak

* these are painful enough

* a bit stronger

* i kind of wish there was a version of get_ranged_target_turf() that worked off of angle.... but there isn't

* smart coder 2000

* bossed around
2017-07-06 11:14:26 -04:00