Commit Graph

4329 Commits

Author SHA1 Message Date
coiax
c29c029d65 Non-emagged shuttles no longer throw atoms around (#41999)
- Normal shuttles that are not emagged will no longer throw things around.
  People will still be knocked down.
- Emagged shuttles and poorly designed shuttles will also throw things
  around on tables, as well as closets.

Shuttles were not mapped with the idea that their contents would be thrown
around violently every time they moved. This means that things like wheely
chairs, potted plants get chucked about the place. To get around this, the
"magnetic_catch" component was added, to partially bypass this effect in the
first place. But this component is only used in one place, in shuttle loading,
which means if a shuttle is custom built, suddenly and unexpectedly,
everything flies everywhere.

Instead, violent shuttle throwing should be limited to crappy shuttles,
(ie. asteroid with engines) and emagged shuttles. As such, I've removed
the magnetic component from tables and racks, to make shuttle throwing
more violent when it happens.
2018-12-27 11:50:23 -08:00
coiax
99db213f69 Change concussion scan_desc from 'a concussion' to 'concussion' (#42077)
This person has a "deep-rooted a concussion".
2018-12-27 11:41:25 -08:00
Jordan Brown
4c3053d5eb Merge pull request #42041 from Jordie0608/alliwantforchristmasisaspaceinGameMaster
Rework of admin rank loading to support punctuation
2018-12-24 15:26:17 -05:00
coiax
9f3e9a6960 Trauma bug fixes, stalking phantom balance (#42020)
* Traumas are copied when a person is cloned

🆑 coiax
add: When a person is cloned, any mental traumas are cloned as well.
/🆑

If the cloner is going to recreate your delicate personality, it's going
to have to recreate anything wrong with your brain as well. After all,
where does one greytider's legitimate fear of security end, and another
one's irrational fear begin?

Essentially, traumas could be easily gotten rid of by cloning, or death
would rob a person of a rare positive trauma. Now you're stuck with them
until you get rid of them.

* Suggested changes

* Removes cloning traumas

* No more cloning traumas
2018-12-23 16:52:47 +11:00
skoglol
4a5fc9e14e Makes satchels stack by name instead of type (#41827)
* Makes satchels stack by name

* Type and name and hopefully fixed branch?
2018-12-23 16:30:34 +11:00
Francesco
0e8eb3acfc Nuclear bombs in rifts spawn a singulo on the station and count as a syndie victory (#42011)
* A nuclear bomb in a rift in spacetime will now count as a syndie major victory, and spawn a singulo back at the station

* Removes config debug stuff
2018-12-23 16:09:25 +11:00
coiax
bac3123c1e Log trauma granting/curing via View Variables (#42024)
This is definitely an oversight.
2018-12-22 12:49:44 -08:00
coiax
00cd022dd5 BoH bombing logs now include ckey in admin logs/messages (#42030)
🆑 coiax
fix: A player who bag of holding bombs now correctly has their
ckey entered in the admin log, and admin messages.
/🆑

The mob was gibbed (and thus destroyed) before the message
was being sent.
2018-12-22 12:47:16 -08:00
Jordie0608
b9fb0388f7 rework of legacy admin loading to support punctuation with new format 2018-12-22 18:35:50 +11:00
coiax
1a4a4b0eb2 The cyborg reset module wire is always marked with a star (#41877)
🆑 coiax
add: The cyborg reset module wire has a star symbol marking, allowing
a trained Roboticist to easily provide resets without altering
any other cyborg settings.
/🆑

When I removed cyborg module reset modules, it was pulse-to-reset, which
when applied to all the wires on a cyborg, had no real side effects
if there was only one AI.

Now that it's a cut-to-reset wire, cutting all the wires will invariably
desync the cyborg from its parent AI, given that all cyborg wires are
randomised.

My intention was never for the reset wire to be "found" just like door
wires, just to make it cheaper and possible to reset a borg module
"in the field".

Someone who hasn't read the wiki or knows what a "star symbol" means,
will have to be told what to look for, so I chose this method of signaling
rather than just "the module reset wire is X".

Also, it's a Keep Talking And No One Explodes reference.
2018-12-19 17:21:18 -08:00
Mickyan
e6de5b36eb Adds the Hypersensitive and Light Drinker quirks (#41984)
* newquirks

* revert

* hypersensitive/light drinker

* this is a commit

* may as well

* increments + fix

* i never liked math anyway

* I really dont like math
2018-12-18 15:03:57 -05:00
XDTM
9f74fef3d5 Allows the antimagic component to react to spells, limits holymelon uses (#41739) 2018-12-17 19:09:35 -05:00
Jordie
397855bf3a Merge pull request #41945 from coiax/so-alone
Fixes bug where monophobia would rarely affect its sufferer
2018-12-17 10:12:39 +11:00
4dplanner
9a542a9a14 Autoprocessing for the dead [READY] (#41955)
cl
add: Re-added autoprocessing function on the cloner
balance: records now have an associated last death time, which must sync with the mind to clone. This means you need a new record every time someone dies.
add: diskette records can be partially applied to records in the cloner, for instance to overwrite a name.
add: you can still scan living people to obtain their records for disk use, but these records can't be cloned from.
fix: cloning records are no longer based upon ckey
tweak: ghosts are no longer required for scanning
balance: Head access is no longer needed to delete records
balance: genetics access is required to alter (but not delete) records
add: do not resuscitate verb added for ghosts (can be toggled on and off)
/cl

Previous changes done in a neater way. Helps medics clone large piles of bodies, but doesn't provide a safety net.

Ghosts are no longer required for scanning so if you miss the prompt you're not screwed over, but you can set Do Not Resuscitate if you don't want to be cloned.

*label GCAT mutations
*allow partial modification of cloning record, i.e. put in a different UI/SE
*restrict modification to genetics access

    make cloning disks compatible with genetics machines

"Features" that may need to be removed:
As before, this acts as a changeling test. Pre-scan someone, then scan them again when you think they might have been replaced - if they're a changeling, it'll create a new record instead of updating the old one.

Decisions to be made:
should being placed in the cloner give you a notification?
should autocloning prompt the ghost instead of the DNR system?
should you receive a detailed "cannot clone from outdated record", or should the extra information gained be limited?
2018-12-17 10:52:04 +13:00
oranges
0e982cad32 Merge pull request #41921 from kevinz000/patch-584
Fixes some instances of storage not closing when it should (on move)
2018-12-16 13:02:44 +13:00
coiax
f7f403f7d4 Fixes runtimes when a monkey dies (#41893)
cl coiax
fix: Dead monkeys now produce miasma.
/cl

Previously any time there was a dead monkey, it would constantly runtime with incompatible component warnings.
2018-12-16 12:59:42 +13:00
Time-Green
7d479628d7 Goonetics fixes (#41891)
cl
fix: fixes monkey and species mutations not working
fix: fixes not getting gibbed
/cl
apparently

if(10 to 5)

doesnt ever do anything
PRB: no update
2018-12-16 12:59:13 +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
kevinz000
1b24b13d80 [READY]IMMERSIVE ROLEPLAY - Mobs now turn towards and are shifted based on grab state towards something pulling them (#41768)
In other words, you can now dance.
@subject217
cl
experimental: Mobs now turn towards anything grabbing them when they move.
experimental: Mobs are shifted towards anything grabbing them based on move state too. You can now dance by grabbing each other!
/cl
2018-12-16 12:51:42 +13:00
MMMiracles
a5f5aee5a2 [READY]New Map: Donutstation V.5 (GOLD) (Platinum Hits) (#41099)
cl MMMiracles
add: A new(old?) map, Donutstation, is now in rotation.
/cl

Map Image
Comparison Image of Original

Progress

Departmental Layout
Atmos
Wiring
Detailing/fluff

    Floor tiling

A faithful recreation of Donutstation, keeping some landmarks of the old map similar while bringing in all the new content and departments that come with it.
2018-12-16 12:47:27 +13:00
coiax
d27c64c3a8 Christmas code changes (#41763)
* Christmas code changes

🆑 coiax
add: Santa can now examine presents to see what's inside.
del: Santa no longer has a mass summon presents spell, because of his
new regenerating bag!
add: Santa's bag regenerates presents as long as Santa is holding it.
balance: You can only find one gift under a christmas tree per round, no
matter how many trees you search.
balance: Santa's teleport does not announce where he's going.
fix: Fixed Santa not having a full head and beard of white hair.
fix: Fixed Santa not being genetically white-haired.
fix: Fixed Concentrated Barber's Aid not growing extreme amounts of
hair.
/🆑

The `box` var has been moved down from `/datum/outfit/job` to
`/datum/outfit`.

Added unlimited christmas tree with presents, for testing.

Santa's restriction against opening presents is now done by
TRAIT_CANNOT_OPEN_PRESENTS. Santa's ability to see inside presents is
done by the TRAIT_PRESENT_VISION, which also determines if Santa's Bag
will regenerate presents every 30 to 60 seconds.

Santa no longer starts with a breath mask and O2 tank, but instead has
an internals box. Santa no longer has a no-access gold ID, he can
teleport from room to room!

Gifts determine what type is inside them on initialization, rather than
when unwrapped.

- Reasoning -

Unlike last year, there are various possible methods of accessing
christmas trees spawners, allowing for an unlimited number of anything
presents. Cutting down the presents to one per round regardless of tree
count will avoid this.

Santa should be able to see what he's giving, because then he can reward
the naughty and nice children with different gifts.

* Missed a merge

* Adds present investigate logs, and visible messages

* Use the body+mind checking of mob.has_trait

* Less globals, more static vars on types; also event renaming
2018-12-16 12:44:53 +13:00
Jack Edge
c41e233631 Fixes bug where monophobia would rarely affect its sufferer
🆑 coiax
fix: Fixes bug where sufferers of monophobia would enter negative
stress levels when around people.
/🆑
2018-12-13 18:48:24 +00:00
kevinz000
18860d2346 Update storage.dm 2018-12-12 04:45:38 -08:00
moo
11f5068495 Merge pull request #41711 from coiax/disk-verifier-trait
Added TRAIT_DISK_VERIFIER, refactors how fake disk checks work slightly
2018-12-11 12:30:58 -05:00
moo
c8cbc8d89e Merge pull request #41549 from tralezab/patch-12
[READY FOR REAL] New Spell: Soul Tap!
2018-12-11 12:20:25 -05:00
Jordan Brown
f1d22a017e Fix TGS stuff (#41806)
Closes #41794
2018-12-10 14:50:48 +13:00
tralezab
52a3400de4 Merge remote-tracking branch 'upstream/master' into patch-12 2018-12-09 15:17:16 -08:00
monster860
376a6eddc6 Makes teleports use forceMove by default 2018-12-09 15:29:31 -05:00
Jack Edge
d895f9c511 Merge branch 'master' into disk-verifier-trait 2018-12-09 18:58:25 +00:00
coiax
277c8c078c Gibs now rot and generate miasma (#41782)
* Gibs now rot and generate miasma

🆑 coiax
add: Gibs will now rot if not cleaned, and produce small amounts of miasma, approximately
equal to a quarter of a corpse.
/🆑

Miasma is fun. Gives the janitor more of a reason to do work. It will only become
dangerous if you have a lot of gibs in a small space. So better keep those Hopline shutters
open.

* Rot component, for things that rot

* Whoops

* No longer processes, so doesn't need to stop
2018-12-10 00:29:42 +11: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
XDTM
fe4c77b4cb Vegetarian Quirk (#41800)
cl XDTM
add: Added the Vegetarian quirk, which costs 0 points and makes you dislike meat.
/cl

Because why not? Also, it could give a reason for the chef to prepare vegetarian dishes instead of the usual stuff.
2018-12-09 23:19:59 +13:00
coiax
84b64328b9 Improves code implementation of the Musician trait (#41742)
cl coiax
add: Any talented Musician can now use any instrument to lift
spirits, and ease burdens. They can now also use the space piano and minimog
to grant people the Good Music buffs, just like a handheld instrument.
/cl

A living mob with TRAIT_MUSICIAN will now apply the Good Music
status effect to everyone who can hear the music. The buff will
now apply even to players who have disabled instrument sounds.

The Good Music status effect lasts for 6 seconds after the
musician stops playing.

Added STATUS_EFFECT_REFRESH that just refreshes the duration
of a status effect, rather than instancing a new one.
2018-12-09 23:08:03 +13:00
coiax
40344ab093 Heirlooms have additional examine text, rather than being renamed (#41676)
cl coiax
add: Heirlooms are no longer named "Cherry family bag of dice", but
rather their heirloom status can be determined by the owner on examine.
/cl

Because names are inherent to an object when anyone looks at it, I feel
it can be somewhat confusing that you can tell that this screwdriver
is a precious family heirloom just because of its name, rather than
because of the significance that someone holds it.

Only the owner of the heirloom receives the special examine text; so I'm sure this could probably be used to bluff ownership of something non-standard, if and when heirlooms become more exotic.

Heirlooms still work in the same way though, mood bonus from holding, mood penalty if you don't have it.
2018-12-09 23:03:34 +13:00
tralezab
e68ad1829c Fix "severe severe monophobia" (#41850)
He's got more finesse than most goblins. He smashes windows with his fist
rather than his forehead.
2018-12-08 14:57:40 -08:00
Jordan Brown
2ff36e76f7 Merge pull request #41818 from XDTM/NotNormal
Fixes curse of normality alerts on hypnosis
2018-12-07 20:54:04 -05:00
moo
b0073fddb8 Merge pull request #41754 from coiax/always-in-the-way
Adds Physically Obstructive quirk
2018-12-06 12:06:03 -05:00
skoglol
81dd04ca4d Progress bar moved to above hud plane (#41803) 2018-12-06 00:02:01 -08:00
XDTM
e0df9bc724 Fixes curse of normality alerts on hypnosis 2018-12-05 11:19:20 +01: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
Jack Edge
ef4b2d32bc Deathsquad now has TRAIT_DISK_VERIFIER, and code review 2018-12-04 19:44:05 +00:00
Jack Edge
78f66f6fff Merge branch 'master' into disk-verifier-trait 2018-12-04 18:52:25 +00:00
Jack Edge
579ce52279 Sorted alphabetically 2018-12-03 02:43:12 +00:00
Jack Edge
564e38c10b Merge branch 'master' into always-in-the-way 2018-12-02 19:50:51 +00:00
XDTM
334a1d44f2 Adds the Curse of Madness to wizard spellbooks (#41496)
* Adds the Curse of Madness to the wizard's spellbook

* anti-magic check

* Update code/modules/antagonists/wizard/equipment/spellbook.dm

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

* Magic traumas + magic immunity prevents spellcasting

* feedback

* fix

* fax

* Added two new special traumas

* I'm not mad, everyone else is

* New minor trauma, godwoken gives holy

* stalking phantom trauma

* math

* heartbeat

* Custom message
2018-12-02 09:46:10 -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
coiax
7325357a48 Scrying orb now grants sixth sense (and xray) to whoever possesses it (#41643)
cl
add: A wizard's scrying orb now grants both xray vision, and the ability to hear the dead to whoever possesses it.
balance: However, as soon as the orb is no longer in your possession, these abilities fade.
/cl

This was @XDTM's idea, when he implemented near death experiences.

It works even when in your backpack.

This also adds the TRAIT_XRAY_VISION, for non-genetic, non-eyeball sources of xray.

Why? Having a wizard talking to ghosts means it looks like he's talking to thin air. Also, this makes scrying orb a little more active in its knowledge gathering. Ghosts will have the chance to mislead the wizard with whatever they're talking about.
2018-12-02 20:39:05 +13:00
XDTM
e053faabd0 Adds the hypnotic flash to the uplink (#41604)
cl XDTM
add: Added the Hypnotic Flash to the uplink for 7 TC.
add: The Hypnotic Flash temporarily confuses and pacifies those it's used on.
add: If the victim is in a mentally vulnerable state (hallucinating, insane, reduced mental activity) they will instead fall into a trance, and will be hypnotized by the next words they hear.
/cl

Controlled hypnosis for traitors. Usual caveats apply: Mindshield prevents the trance effect (but not the confusion/pacification) and it can still deconvert from hypnosis; a new hypnosis will override the previous one; and most importantly for any ambiguity the interpretation is mostly up to the victim, so it's not a 100% sure conversion (i'm hoping people won't use this clause to just ignore it).
2018-12-02 20:19:42 +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
Jack Edge
d641feba16 Adds Physically Obstructive quirk
🆑 coiax
add: Adds the Physically Obstructive negative quirk. A person with this
quirk can't swap places with other people when moving, akin to someone
always being in non-help intent.
/🆑

Adds the TRAIT_NOMOBSWAP to accomplish this.
2018-12-01 16:02:22 +00:00