Commit Graph

1547 Commits

Author SHA1 Message Date
Jordan Brown
bfe87a1af9 Merge pull request #42377 from WarJenkins/booger13-master
Adds the ability to create circuit floor tiles
2019-01-17 16:33:26 -05:00
coiax
881e8c1ab9 Refactors NODROP flag into TRAIT_NODROP (#42109)
* Refactors NODROP flag into TRAIT_NODROP

🆑 coiax
fix: Anti-drop implants can no longer be used to drop objects that they
were not responsible for sticking to a person's hand.
fix: Backfiring with a Barnyard spellbook will now play a spooky horse sound.
refactor: Refactors the way that "NODROP" items work to a new system,
there should be no change in functionality.
/🆑

Various items in the codebase were doing weird hoop jumps in order to
preserve the nodrop flag's state when it also wanted to change it, so I
moved it to a trait system.

I may have gone overboard with the type of unique trait sources, but
those can be changed later. My long term plan is make a general "CURSED"
nodrop origin, which means you can unlock cursed items by being hit with
a bolt of door opening or something. But that's for another PR, this has
no functionality changes, apart from some slightly modified descriptions
on cursed masks.

- Removed a bunch of redundant voice changing code for all the voice
changing animal masks, used two new clothing flags for this purpose.
- Also refactored a bit the animal masks, making new cursed subtypes that play
the sound when created.

* Drop location
2019-01-17 15:24:30 -05:00
Qustinnus
e1d360ff05 [ready] Golem DLC pass 2018 (Adds new golem types) (#41951)
* Bronze golem

* adds creation

ad

* removes shit adds shit

* temp

* fff

* bone, leather and cardboard

* fff

* boneyard

* temp

* ahahahha dumb moron

* adds durathread golem sprites

* reee

* ass

* Auto stash before merge of "golemgang" and "origin/golemgang"

* fix

* uuh

* d

doned

* remove dupe
2019-01-16 13:42:20 -05:00
Vile Beggar
36709a3c1d boo 2019-01-16 00:37:34 +01:00
Jordan Brown
7354908bc1 Merge pull request #42113 from coiax/peaceful-haircut-bug
Heroine buds no longer chop the hairstyle of anyone wearing them
2019-01-02 11:06:47 -05:00
Tlaltecuhtli
7245766c01 Fix slime extract (#42096) 2018-12-28 17:18:42 -08:00
Jack Edge
db4c3c557a Heroine buds no longer chop the hairstyle of anyone wearing them
🆑 coiax
fix: Heroine bugs no longer make people appear partially bald when wearing them.
/🆑

Also I renamed the moth clothing snack to a more descriptive name if anyone
gets one by accident.
2018-12-28 22:41:26 +00:00
Jordie
c192ece1b3 Merge pull request #41997 from coiax/removes-container-type
Refactors `container_type` into `reagents.flags`
2018-12-23 16:45:10 +11:00
kevinz000
6e6a5f9f4f Fix division by 0 in R&D efficiency calculations (#42036) 2018-12-21 20:19:25 -08:00
moo
af3f4460d7 Merge pull request #41976 from kevinz000/patch-588
Fixes accidental buff from switching deconstruction R&D to techwebs by NERFING protolathes to match autolathe scaling ( 100%-40% T1-T4 from 50%-12.5% T1-T4 construction efficiency)
2018-12-20 15:10:03 -05:00
Jack Edge
054647c382 Refactors container_type into reagents.flags 2018-12-18 13:47:11 +00:00
XDTM
c05b0eaef9 Turns TRAIT_NOCLONE into TRAIT_BADDNA for consistency (#41819)
cl XDTM
balance: DNA-damaging methods (changeling draining, mainly) no longer prevent alternative revival methods, but can no longer be circumvented by upgrading DNA scanners.
balance: Any source of husking now prevents cloning on unupgraded cloning scanners, instead of only husking caused by changelings.
balance: Husking now fully prevents revival from several non-cloning methods, including defibrillation, surgery, and strange reagent.
/cl

Why? Consistency! Also, the removal of prescanning/autocloning really simplifies this.

Changeling draining effectively prevents cloning until you transfer the brain to an intact body.
2018-12-17 13:05:02 +13:00
moo
73dee37043 Merge pull request #41944 from coiax/no-free-air
Printed oxygen/plasma tanks no longer contain oxygen/plasma
2018-12-16 17:56:27 -05:00
kevinz000
8cb3d7162a Update _production.dm 2018-12-15 18:25:27 -08:00
skoglol
d50b12f1dc Adds filled BRPED typepaths and adds t4 to debug outfit. (#41958)
Handy for testing machinery.

* Adds parts and BRPED to debug outfit.

* Added t1-t4 BRPED typepaths.
2018-12-16 13:13:19 +13:00
coiax
02aba6b205 Microwaves now have a single wire (#41822)
cl coiax
add: Microwaves have a single wire accessible when open, the activation wire.
When cut, the microwave will no longer function, when pulsed, the microwave
will turn on.
add: Stabilized dark purple extracts now cook items in your hands, rather than dropping
the cooked item on the floor.
/cl

Previously microwaves just worked on their contents, now they keep a subset of contents called ingredients, because otherwise it would explode whenever you put a signaler inside.

Someone asked me to do it. It seemed like a neat idea. God knows
what horrible things people will do with this.
2018-12-16 12:56:08 +13:00
Jordie
a30c5eab85 Merge pull request #41906 from tralezab/patch-25
Prism glasses sanity fix
2018-12-14 12:50:15 +11:00
coiax
745ca0760b [S] You can no longer get infinite power cells from the EXPERIMENTOR (#41903)
🆑 coiax
fix: Fixes an exploit where you could get admin-only infinite power cells
from the EXPERIMENTOR.
/🆑
2018-12-13 14:38:14 -05:00
Jack Edge
d93a0de984 Printed oxygen/plasma tanks no longer contain oxygen/plasma
🆑 coiax
fix: Printed oxygen or plasma tanks at the protolathe are now empty.
/🆑

The discrepency in behaviour was because the new /empty types were
using Initialize, which for some reason wasn't working.

However, when I ported the whole of /obj/item/tank into using
Initialize() it works fine, and all the empty tanks are empty
as intended, (and the ones that should have gas, do have gas).
2018-12-13 18:38:19 +00:00
coiax
8c8ee67e23 Robotics can print cybernetic organs (also new upgraded cybernetic heart) (#41753)
🆑 coiax
add: Robotics can print cybernetic hearts, lungs and livers at their exofabricators (along
with their upgraded versions).
add: Added upgraded cybernetic heart, just like the regular cybernetic heart,
that doses you with epinephrine when unconscious. But the upgraded version generates a new
dose after five minutes.
/🆑

Robotics should be able to upgrade people with cybernetic organs. Medical want the organs
to save people's lives, Robotics want the organs for augmentation giggles.

Also, there was an upgraded cyberlungs and cyberliver, so I just made an upgraded
cybernetic heart as well.
2018-12-12 21:47:27 -05:00
moo
d37ba798e1 Merge pull request #41863 from Tlaltecuhtli/surgery-stufffffffffffff
advanced surgery tools
2018-12-12 11:47:00 -05:00
tralezab
519cded5de The Taskmaster knows that there is no cure for the common Kobold. 2018-12-11 10:14:11 -08:00
skoglol
ca3d18cf9e Adds recycler check on xenobio console interaction (#41851)
* Adds check to fix box connection.

* and again

* comment
2018-12-10 01:01:46 +11:00
XDTM
b376c7d039 Adds the Ligament Hook and Ligament Reinforcement bioware surgeries (#41842)
* Adds the Ligament Hook and Ligament Reinforcement bioware surgeries

* techweb

* missing define
2018-12-10 00:50:12 +11:00
HideAndSeekLOGIC
04276d13f9 [READY] Allow creation of the various types of emergency oxygen tanks (#41672)
[Changelogs]:

cl HideAndSeekLOGIC
add: Added emergency oxygen tanks and extended capacity emergency tanks to the autolathe and protolathe
add: Added them to the Industrial Engineering tech node
tweak: Only Cargo and Engineering can print extended capacities; the rest are available for everyone.
/cl

There is currently no way to produce these tanks and there is currently no reason why this should be the case. This PR fixes this problem.
2018-12-09 23:52:30 +13:00
Time-Green
29ecfa47bf [READY] Goon Genetics (#41258)
GENETICS

    The random hexadecimal rng game has been replaced with gene sequencing from goon.

    Adds mutation activators and mutators

    You can now store mutations

    Everyone now has their own set of unique mutations

    Limited mutations per person to 8 (including one always being monkey)

    Adds race specific mutations (See fire breathing for lizads)

    You can inspect discovered mutations, undiscovered mutations use an alias to recognize them by

    Adds a sequence analyzer. Can be used to scan someones genes sequence. Useful for determing what mutations they can safely have and or collecting data for very difficult sequences

    Adds mutation combining. It's currently only RADIOACTIVE + STRONG = HULK (So yes you will now need 2 mutations for to get hulk)

    Adds several other mutations. Telepathy, firebreath, glowy, radioactive and strength

cl Time-Green
add: Goon genetics!
add: More mutations! Fire breath for lizards! Radioactive! Telepathy! Glowy! Strength, though its cosmetic and should be combined with radioactivity instead! Fiery sweat!
add: Adds void magnet mutation by @tralezab !
/cl
2018-12-09 23:26:04 +13:00
Tlaltecuhtli
487e2c53a8 commit 3 2018-12-08 19:12:52 +01:00
Tlaltecuhtli
2eedca6736 commit 2 2018-12-08 14:31:09 +01:00
Tlaltecuhtli
87ad45af1c commit1 2018-12-08 14:27:31 +01:00
moo
20743d48ce Removes unneccessary check
Admin now uses the proper arg instead of typecheck
2018-12-06 01:30:23 -05:00
ExcessiveUseOfCobblestone
65d19ef841 Update _techweb.dm 2018-12-06 01:25:11 -05:00
Jordie
8a66665e95 Ban system and interface update (#41176)
Spiritual successor and extension to #17798, an almost entire rebuild of the SQL ban system backend and interface.
Bantypes are removed per #8584 and #6174. All bans are now 'role bans', server bans are when a ban's role is server. Admin bans are a column, meaning it's possible to ban admins from jobs.
Bans now have only an expiry datetime, duration is calculated from this when queried.
unbanned column is removed as it's superfluous, checking unban status is now done through checking unban_datetime. unban_round_id column added. Each ip and computerid columns rearranged so ip is always first, like in other tables. Bans now permit a null ckey, ip and computerid.

Ban checking is split into two procs now is_banned_from() does a check if a ckey is banned from one or more roles and returns true or false. This effectively replaces jobban_isbanned() used in simple if() statements. If connected a client's ban cache is checked rather than querying the DB. This makes it possible for a client connected to two or more servers to ignore any bans made on one server until their ban cache is rebuilt on the others. Could be avoided with cross-server calls to update ban caches or just the removal of the ban cache but as is I've done neither since I think it's enough of an edge case to not be worth it.
The second proc is is_banned_from_with_details(), this queries the DB for a role ban on a player's ckey, ip or CID and returns the details. This replaces direct queries in IsBanned.dm and the preferences menu.

The legacy ban system is removed.

The interfaces for banning, unbanning and editing bans have been remade to require less clicking and easier simultaneous operations. The banning and jobban panel are combined. They also store player connection details when opened so a client disconnecting no longer stops a ban being placed.

New banning panel:
Key, IP and CID can all be toggled to allow excluding them from a ban.
Checking Use IP and CID from last connection lets you enter only a ckey and have the DB fill these fields in for you, if possible.
Temporary bans have a drop-menu which lets you select between seconds, minutes, hours, days, weeks, months and years so you don't need to calculate how many minutes a long ban would be. The ban is still converted into minutes on the DB however.
Checking any of the head roles will check both of the boxes for you.
The red role box indicates there is already a ban on that role for this ckey. You can apply additional role bans to stack them.

New unbanning panel:
Unbanning panel is now separate from the banning panel but otherwise functionally the same.

Ban editing panel:
Actually just a modified banning panel, all the features from it work the same here.
You can now edit almost all parameters of a ban instead of just the reason.
You can't edit severity as it's not really part of the ban.
The panels have been tested but I've not been able to get my local server to be accessible so ban functionality isn't properly confirmed. Plenty of testing will be required as I'd rather not break bans.



cl
admin: Ban interface rework. The banning and unbanning panels have received a new design which is easier to use and allows multiple role bans to be made at once.
prefix: Ban search and unbanning moved to unbanning panel, which is now a separate panel to the old banning panel.
/cl
2018-12-05 08:48:37 +13:00
moo
ae53b206d1 Merge pull request #41276 from kriskog/monkeyrecycler
Monkey recycler connected to xenobio consoles, recycler returns reduced
2018-12-02 17:02:59 -05:00
Steelpoint
e7c54ebf0e Adds Beanbag Slug Shells to Sec Protolathe (#41640)
* InitialCommit

* Update autolathe_designs.dm

Alter price
2018-12-02 09:42:34 -05:00
XDTM
2712e62ee5 [Ready]Desynchronizer (#41341)
* Desynchronizer

* type

* Update code/game/objects/items/devices/desynchronizer.dm

Co-Authored-By: XDTM <heliumt@yahoo.it>

* Update code/game/objects/items/devices/desynchronizer.dm

Co-Authored-By: XDTM <heliumt@yahoo.it>

* Update code/game/objects/items/devices/desynchronizer.dm

Co-Authored-By: XDTM <heliumt@yahoo.it>

* Update code/game/objects/items/devices/desynchronizer.dm

Co-Authored-By: XDTM <heliumt@yahoo.it>

* Update code/game/objects/items/devices/desynchronizer.dm

Co-Authored-By: XDTM <heliumt@yahoo.it>

* fixes and cool text procs

* anti-abuse measures

* typery

* cooldown

* techweb salvage

* icon and visual effect plus bugfix

* let's not push runtime
2018-12-02 09:34:41 -05:00
skoglol
ec390a2657 updated to also cover click shortcuts 2018-12-02 10:38:37 +01:00
skoglol
ec159f9b07 Merge 2018-12-02 10:24:38 +01:00
skoglol
2f71d7d096 [READY] Adds click shortcuts to xenobio console. (#41575)
cl Skoglol
add: Added click shortcuts to xenobiology console. You no longer have to aim with the camera eye to do slime science.
/cl

https://www.youtube.com/watch?v=zP5GP3sc0e0

Xenobiology is kind of a pain in its current state, where you gotta aim with the camera eye. The eye has inconsistent speed, and is prone to lag. This addition allows you to click the things you wish to manipulate instead, which is a lot smoother.

I've added a help action that explains the controls.
Threw together a icon for the button:

For now, shortcuts are:
Slime: Shift click slime to pick up, turf to drop all. Ctrl click to scan, alt click to feed potion.
Monkey: Ctrl click critted monkey to pick up, turf to drop a new one.
2018-12-02 20:13:52 +13:00
ShizCalev
9997f956b0 Fixes ODing on crank/other chems, viruses, and other things damaging/healing robotic limbs. (#41593)
cl ShizCalev
fix: Fixed chem OD's causing damage to robotic limbs.
fix: Fixed wood golems repairing robotic limbs every tick of life()
fix: Fixed vampires repairing robotic limbs every tick of life()...
fix: Fixed shadowpeople healing robotic limbs every tick of life()
fix: Fixed poppeople healing robotic limbs every tick of life()
fix: Fixed adjustBruteLoss and adjustFireLoss not properly discriminating for limb status types.
tweak: Fixed bibles healing robotic limbs, because your false deity can't fix SCIENCE.
fix: Fixed the Starlight Condensation, Nocturnal Regeneration, Tissue Hydration, Regenerative Coma, and Radioactive Resonance virus symptoms repairing robotic limbs.
/cl

Gonna be away the next two weeks, so if there's anything major after today just go ahead and close it and I'll fix it when I get back.
2018-12-02 20:12:22 +13:00
skoglol
45372a2600 console checks that area matches when initializing. 2018-12-01 05:25:05 +01:00
skoglol
e130165da4 Fixed minor typo. (#41688) 2018-11-28 22:23:44 -05:00
XDTM
01f794a153 Teleportation standardization, channels, and interception (#41371)
cl XDTM
add: Spraying holy water on tiles will now prevent cult-based teleportation from using them as a destination point.
tweak: Quantum, wormhole and magic teleportation is no longer disrupted by bags of holding.
/cl

Refactors some teleportation code so it uses do_teleport instead of directly forceMove.
do_teleport now has a channel argument, to specify the type of teleportation used. This will affect what can and cannot interfere with teleportation. For example, BoHs interfere with bluespace teleportation but not wormhole, quantum or magic teleportation.
do_teleport now sends a COMSIG_ATOM_INTERCEPT_TELEPORT signal, allowing the target turf (or anything placing a signal on said turf) to react appropriately. As a proof of concept, blessed tiles use it to prevent teleportation from the cult channel.

Intercepting teleportation can have interesting potential uses, from teleport denial fields, to teleport scramblers (teleports you somewhere else instead), telefraggers that gib anyone unlucky enough to teleport in their area of effect, teleport anchors that shunt all teleportations in a wide area to themselves, and so on.
2018-11-29 10:33:55 +13:00
Qustinnus
b9f5dbac6b Adds a new race: Ethereal (also adds wrappers for nutrition adjustment) (#40995)
cl Qustinnus / Floyd / Ethereal sprites by Space, is that it? / Alerts and food sprites by MrDroppodBringer
add: Adds Ethereal; a race which lives off of electricity and shines bright. If they are healthy they shine a bright green light, and the more damaged they are, the less they shine and the greyer they become. Their punches do burn damage and they are weak to blunt attacks!
They dont need to eat normal food and dont have nutrition, Instead they gain charge by going into borg rechargers, eating ethereal food or doign specific interactions.
refactor: all nutrition changes now go through a proc so we can override behavior
/cl

Adds Ethereal. A race which is essentialy inspired by Zoltan but then with different mechanics to make it fit with SS13 more. I'm trying to stay away from making them actually provide power but the change from nutrition to electricity seemed kind of fun.

They have the following specifications:

    They are walking lights; and shine bright and green if healthy, and get greyer and darker the more damaged they are. When dead they are just a grey unlit corpse.
    They do burn punch damage instead of blunt.
    They are weaker to blunt; especially when low on charge
    They have charge instead of nutrition. Charge is gained by some interactions or by going into a borg charger. or eating new ethereal food.
    They are slightly stronger to shock damage, and gain charge from it a bit; however, it is still deadly to them and thus they aren't free insulated gloves.
2018-11-29 10:09:56 +13:00
swindly
4bcd3cdc55 fixes word crimes 2018-11-19 17:56:59 -05:00
Denton
ea4bfdebee Makes illegal tech node harder to unlock 2018-11-15 16:36:24 +01:00
oranges
df1be9b10c Merge pull request #41313 from ninjanomnom/remove-the-sanic-oc
Replaces the move fast traits with speed mods
2018-11-12 20:45:53 +13:00
81Denton
b6d03a9e84 Adds three new .38 ammo types (#41155)
cl Denton
add: Added three new .38 ammo types. TRAC bullets, which embed a tracking implant inside the target's body. The implant only lasts for five minutes and doesn't work as a teleport beacon. Hot Shot bullets set targets on fire; Iceblox bullets drastically lower the target's body temperature. They are available after researching the Subdermal Implants node (TRAC) or Exotic Ammunition node (Hot Shot/Iceblox).
tweak: Renamed the Technological Shells research node to Exotic Ammunition.
code: The "lifespan_postmortem" var now determines how long tracking implants work after death.
/cl

Flavor aside, the detective's revolver is little more than a weak Stechkin. I figured that some ammo variety might make it more fun to use:

    TRAC: Only deals 10 damage, but implants a tracking implant once it hits someone. Security can then track the perp with a bluespace locator. It will delete itself after 5 minutes and doesn't work as a teleport beacon.
    Hot Shot: 20 damage and hits the target with 6 fire stacks.
    Iceblox: 20 damage, lowers the target's body temp similar to the temp gun.

Let me know if you think that Hot Shot/Iceblox are too strong - they won't be available early during most rounds because they're gated behind the tech shells node and require plasma to print.
2018-11-12 20:22:48 +13:00
skoglol
733d216f84 Merge branch 'master' into monkeyrecycler 2018-11-05 21:52:27 +01:00
skoglol
02f642c768 replaced floor() with round() 2018-11-05 21:28:22 +01:00
ninjanomnom
59c8947cf8 Replaces the move fast traits with speed mods 2018-11-05 01:42:54 -05:00