Commit Graph

158 Commits

Author SHA1 Message Date
Rob Bailey
a5de1c1b5e [READY] Reinforced windows are harder to get through (#45609)
About The Pull Request

full tile Reinforced windows now require a melee item over 11 damage to damage, have 150 health, and 90 melee armor. This is approximately 2 minutes of sustained beating with a toolbox.
full tile reinforced Plasmaglass windows now require a melee item over 21 damage to damage, have 200 health, and 95 melee resistance. This is approximately 3 minutes of sustained beating with a toolbox.
dir windows have been given the appropriate halved health values.

Current deconstruction steps:

    heat one way screws (welder, 18 seconds, harm intent required)
    unscrew one way screws (screwdriver, 8 seconds)
    pop out panel (crowbar, 5 seconds)
    cut connecting bars (wirecutter, 3 seconds)
    unbolt frame (wrench, 5 seconds)
    theoretical fastest time: 39 seconds
    more practical time: 45 seconds

if the bolts are heated and then not unscrewed within 30 seconds they cool off again, and must be heated again

Construction is the same as before except the crowbar levering step takes 10 seconds instead of 3.
Why It's Good For The Game

Getting into places you shouldn't be is currently way too easy.
This change forces you to hack in, disassemble the window, or target a weak point like a windoor.
At the moment, it is possible to smash down what is intended to be a secure window with an item you get in your bag at roundstart for free. This is stupid. It should require some planning or at least thinking to be able to make your way in places you should not be.

Oranges has talked in the past about departments being designed like impenetrable fortresses with shutters everywhere, and this happens because reinforced windows are far too weak and unreliable to be able to have as effective defense of any department against even underequipped and underprepared people. This leads to the introduction of shutters which are too strong and difficult to deal with in most cases.

This is part of some plans to make departments more secure overall while still providing ample avenues for determined or properly prepared individuals able to get in if they want to. Despite having more plans along with this, this is a standalone change as is. This is not a "this will only work with later changes I'm totally going to do" situation
Changelog

cl
balance: Reinforced windows now require a melee item over 11 damage to damage, have 150 health, and 90 melee armor. This is approximately 2 minutes of sustained beating with a toolbox.
balance: Plasmaglass windows now require a melee item over 21 damage to damage, have 200 health, and 90 melee resistance. This is approximately 3 minutes of sustained beating with a toolbox.
/cl
2019-08-09 11:03:59 +12:00
zxaber
532a891b74 Mediborg Beaker Storage Apparatus (#45494)
* Pull request commit apparatus

* words

* better comments

* small bits

* beaker breaker

* better beaker breaker

* Superior Signals

* new signals for update_icon

* compile_overalys
2019-08-07 15:58:30 -04:00
kevinz000
c6d710d40e VV refactors 2 - Actually not indefinitely WIP (#45217)
About The Pull Request

The thing other than ruining maps that I was working on
Refactors VV to use a more standard way of doing topic dropdown options rather than a huge if/else chain
Marking datums is now a right click option
Moves a few files around too/few procs
Why It's Good For The Game

Makes it easier to add more VV dropdown options in the future, and moving href list keys to defines make misspelling them harder.
Changelog

cl
add: Oh yeah also added a "return value of proccall" option for VV var editing.
refactor: View Variables has been refactored. It should now be easier to make VV dropdown options.
/cl
2019-08-03 14:43:26 +12:00
Time-Green
ceeff661a0 [READY] Plumbing (#44833)
cl Time-Green
add: Adds plumbing pipes and some hidden plumbing related machines. They're not available in-game yet.
sprites: Geyser and geyser pump sprites created by Mey-Ha-Zah!
/cl
Adds the following objects:

    Fluid ducts . Like atmos pipe, but for reagents. They're smart and can be seperated by layer and color

    Geysers. They spawn on lavaland and can be harvested with liquid pumps or just beakers.

    Liquid pumps. For pumping geysers. They need to be on a wire node and connected to a duct network.

    Plumbable reagent dispenser subtype.

    New plumbing RPD specific RPD.

    Plungers. The reinforced plunger can be used for plunging geysers to activate them. They currently serve no other function and can't be worn as a hat yet.

They're all disabled and admin only.

Adds the following systems:

    Ductnet datum. They pretty much say "hey, we're connected"

    Plumbing component. You can turn any movable atom into a plumbable thing. Comes with overlays and everything. They're essential for everything that has input and outputs, except pipes. That means you can have machines connected to both atmospheric pipes and fluid ducts. They only connect with layer 3 ducts.

    Fluid subsystem that handles the processing on the plumbing machinery and other plumbing related stuff.

Basically atmospherics but with reagents. Reagents are pressurized and thus transferred instantly, to avoid those stupid leftovers in pipes no one likes. I am PRing it now because if I were to add a dozen or so associated machines, it would be too much of a pain to manage/review in one PR. It would also be a massive waste if people didn't even want it in the first place.

Also yes all of this works (as far as I know)

Things I plan to add in later PR's

    Layers / colors (maybe) done
    Machinery (Stuff like chemical processors, filters, special mixing chambers and factories)
    Make geysers more interesting, so chemists/atmostechs/cargotechs/assistants can go to lavaland and get some exotic stuff.
    Pipe fractures. Damaged pipes could do the cartooney water soaker beam coming out to shoot at people cause why the fuck not.

Code concerns:

    Connecting is handled through pipes only. Not sure if this is the best approach. This means plumbing devices cant directly connect to each other without pipes. I could add some exceptions to handle it. I could also take connecting away from pipes and make it a global proc, with alot of exceptions since it'd be handling both plumbing machinery and the ducts.

    Reagent transferring. Basically the transfer is instantaneous from A to B. I did this because stuff getting stuck in pipes could pose some serious mixing problems with chemistry, since it's alot more delicate than atmos. I could understand if people would want it to be like atmos. It wouldn't be difficult to change.

Also for testing I suggest you set the pipe_dispenser to category 3 to print fluid ducts. My tests were done with
/obj/structure/geyser
/obj/structure/reagent_dispensers/plumbed/storage
/obj/item/plunger/reinforced
/obj/machinery/power/liquid_pump
/obj/item/pipe_dispenser/plumbing
that and standard tools for setting things up
2019-07-09 11:58:02 +12:00
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
vuonojenmustaturska
2d74a86353 [READY] Cleans up saycode by removing random hook stubs and using a signal where relevant (#44320)
About The Pull Request

This PR removes speech message and span hooks from dna, mutations, pierrot throat disease, species, tongues, masks, hats, held items, brain traumas and a carbon proc overload handling tonguelessness.

Tonguelessness is now handled by tongue removal registering for the speech signal and the hook being deregistered by having a tongue put in.

Also cleans up some /atom/movable/proc/get_spans() overloads that called the empty parent or overloaded the parent to do the exact same thing as the parent proc did.

Also cleans up calls to radio.talk_into() where the caller would often, as a result of copypasta, provide the proc with fresh copies of the proc's default values for proc args, and makes say_quote() better by giving it a default spans value so that none of the callers have to provide the same default one.
Why It's Good For The Game
Changelog

cl Naksu
code: Cleaned up saycode
/cl

* start with this

* oh man this looks so good

* hats are dead

* /obj/item/proc/speechModification is dead

* brain traumas and get_held_item_speechspans() are dead

* these should be static

* unfortunately we still need this

* /mob/living/carbon/treat_message(message) is kill

* clean up get_spans()

* dunk get_spans, modifies_speech for brain traumas, some superfluous static stuff

* move stuff around

* return values
2019-06-06 18:35:06 +12:00
RaveRadbury
701d0c78c0 [READY] pAI Journalism Update (#43654)
* Fresh start

Wow this has been an adventure. Hopefully this works and I can start rebuilding this PR.

* Functional build

Lacks software integration, costs, purchase enabling, etc.

* Removes pAI Action HUD

Also changes some frame data on icons, slowing them.

* adds check for pAI in newscaster.dm

* tweak job title for consistency

* capitalization

* correctly types pai in newscaster.dm

Co-Authored-By: RaveRadbury <3204033+RaveRadbury@users.noreply.github.com>

* adds in wire fix PR vars to hopefully fix it all

* reset pai.dm to hopefully fix this replace issue.

* That didn't fix anything. Reverting.

* One more time, taken from upstream master.

* put the newscaster stuff back into pai.dm

* Re-adds job title for newscaster
2019-04-25 14:10:43 -04:00
William Wallace
a944c2a362 Ghosts can analyze gas mixes and some new objects can be analyzed (#43502)
* Ghosts can analyze gas mixes and some new objects can be analyzed

* Replace show_air_status_to with atmosanalyzer_scan
2019-04-16 21:46:36 +12:00
ShizCalev
05f2ac7317 Cleans up (mostly) defunt crit_fail var (#42908) 2019-03-01 13:45:30 +01:00
Emmett Gaines
e6182966cb Removes an unused movement var and proc (#40416) 2018-09-24 13:18:14 +03:00
kevinz000
9eec1f8db2 Adds move force and move resist, movement/pushing/pulling tweaks (#39556)
* Removes anchroed from mobs, adds move force/resist

* Move force and move resist

* WIP, still has debug messages.

* Fixes

* Update living.dm

* Anchored removal

* Stuff

* Unit tests

* Removes anchored from dview

* DME

* Update anchored_mobs.dm

* Fix

* No ghost spacewind

* Update mulebot.dm

* Update temporary_visual.dm

* Update forcefields.dm

* Update step_triggers.dm

* Update portals.dm

* Update alien_acid.dm

* Update bump_teleporter.dm

* Update landmarks.dm

* Update countdown.dm

* Update blessing.dm

* Update shieldgen.dm

* Update containment_field.dm

* Update field_generator.dm

* Update singularity.dm

* Update atmosmachinery.dm

* Update door.dm

* Update gravitygenerator.dm

* Update door.dm

* Update effects.dm

* Update temporary_visual.dm

* Update bump_teleporter.dm

* Update forcefields.dm

* Update landmarks.dm

* Update portals.dm

* Fixes

* Throwforce annnd done, finally

* Fixes

* Haha I'm dumb sometimes
2018-09-15 05:08:30 -04:00
Tad Hardesty
ba887b39ed Refactor status displays 2018-08-25 01:34:30 -07:00
vuonojenmustaturska
51bf3f597e Fix constructed directional windows leaking atmos, wrap setting of the anchored var on objects (#38934)
* Wrap setting anchored for structures, fix atmos bug

* forgot this

* Add a signal for setanchored

* move setanchored to obj

* machinery, also some structure stuff

* tabbing
2018-07-06 14:27:35 -04:00
ShizCalev
c33c2f725e Fixes TGUI runtime (#38797)
ui_interact was being called on usr instead of M
2018-06-30 01:21:03 -07:00
Tad Hardesty
47f55b48a7 Move throwforce up to atom/movable (#38689) 2018-06-26 16:26:33 -04:00
AnturK
41dbcba0db Fixes AI's being unable to call shuttle using comm console. (#38534)
* Fixes AI's being unable to call shuttle using comm console.

* Lets get rid of double negatives

* viewvers for
2018-06-20 17:38:51 -07:00
cacogen
5c7613c4ff You can see what other people eat or drink (#38395)
* Makes drinking message visible to others

* Makes swallow message visible to other people

* Adds visible messages for eating

* Update snacks.dm

* Update snacks.dm

* Update objs.dm

* Update drinkingglass.dm

* Update pen.dm

* Update drinkingglass.dm

* Update drinkingglass.dm

* Update drinkingglass.dm

* Update drinks.dm

* Update condiment.dm

* Update snacks.dm

* Adds a few extra reagents to the borg shaker

* Update drinkingglass.dm

* Update drinkingglass.dm

* removes blood as a borg shaker reagent
2018-06-13 05:34:54 -04:00
vuonojenmustaturska
ccf8fc5bc5 Kills off three more flags from flags_2 (#37529)
code: More flags have been moved to their appropriate places
SLOWS_WHILE_IN_HAND
FROZEN
NO_MAT_REDEMPTION

all moved to item_flags
2018-04-30 10:32:23 +12:00
kevinz000
f300a5c155 Interaction/Attack Hand Refactor (#36405) 2018-03-23 11:20:54 +01:00
ACCount
1f5b59190d NTNet airlocks (#35947)
* Standardizes access checks

* Makes SS Networks init before SS Atoms to prevent NTNet interfaces from initializing before them

* Adds passkey support to NTNet packets

* Adds NTNet support to airlocks, makes door remote use NTNet

* Access levels given by jobs are now shuffled

* Access code improvements

* Adds IC card readers

* Fixes a delay issue with opening/closing airlocks with NTNet or signalers

* code review memes

* Renames plaintext_passkey to encrypted_passkey

* death by thousand nitpicks
2018-03-08 18:39:17 -05:00
Ashe Higgs
b9a7e3ef6b Reskinning now shows options in chat (#35910) 2018-02-24 00:03:22 -05:00
vuonojenmustaturska
180ddba385 revert 2018-02-19 22:08:33 +02:00
vuonojenmustaturska
ee370ada3f Removes on_mob_turn, on_mob_move and intercept_user_move, speeding up movement (#35679)
* honk

* qdel memes
2018-02-16 01:39:59 -05:00
ShizCalev
3cb6ab32d2 Cleans up some duplicate canusetopic warnings 2018-02-11 09:56:43 -05:00
vuonojenmustaturska
97d4e59d87 Armor datums (#34793)
* Draft 1

* requested changes

* fixes & refactoring & vv support

* one more vars access

* there we go

* change arg name

* Update lava.dm

* Update armor.dm

* Update armor.dm

* Update armor.dm

* fixes

* Update datumvars.dm

* Update goliath_hide.dm

* Update objs.dm

* 0 -> none in checkrights()

* Update armor.dm

* Update datumvars.dm

* Update armor.dm

* Adds magic armor type

this did not exist before

* two missing things from previous commit

* I shouldn't webeditor at work
2018-01-25 10:27:36 -05:00
vuonojenmustaturska
6406896df1 Replaces a bunch of obj vars (and emagged on machinery/items) with obj_flags (#34078)
* It works, but is it worth it?

* bitfield helpers take 1

* Would this work?

* remove dangling debug code

* rebase & fixes

* vv bitfield stuff, reading

* DNM oceans of shitcode DNM

* honk

* honk2

* plonk

* rebase & fix
2018-01-22 20:19:46 +01:00
arsserpentarium
c86fc91b55 [READY]Pulling claw 2 (#33817)
Pulling claw is integrated circuit,which allows drones to pull things.
2018-01-12 09:02:56 +13:00
ShizCalev
b0f24a892b Fixes bartender suit having an adjust state (#32968) 2017-11-22 13:40:11 -05:00
oranges
c4d570ca07 Add the ability to osay from the viewvar dropdown (#32804) 2017-11-17 04:48:53 -05:00
Emmett Gaines
825ab4def4 [512] The great \ref purge (#31824)
* The great \ref purge

* cleanup
2017-10-28 17:20:04 -04:00
kevinz000
8d647ff524 Flying mobs now clip past non flying mobs, various flightsuit/iontrail/movement tweaks/code improvements/bugfixes (#30570)
* this will end horribly

* s

* kek

* wew

* i dont know what an atomized pr is

* lets hope this doesnt blow up

* ok

* Update living.dm

* Update flightsuit.dm

* Update living.dm

* Update living.dm
2017-10-13 18:09:20 -06:00
XDTM
35d8a55926 Adds H.E.C.K. suits, spraycan_paintable component, and reworks item's attackby() (#30525)
* Adds hostile environiment suits

* NOBODY SAW THIS

* the CURSE

* c

* No more stun removal

* fix

* a

* in the chest

* back

* Fixes

* duh

* fucking helmets fucking secbots fucking past coders

* yeah

* REEEEE

* revert to here

* this better work

* cyberboss

* Update effects.dm

* check for charges

* B U L K

* spraycans

* READY

* the if, man

* why the fuck did it convert to spaces

* Fix it
2017-10-05 11:52:47 -04:00
KorPhaeron
72389743db ismachinery define 2017-10-03 18:13:21 -05:00
MoreRobustThanYou
808c780353 Remove /obj/proc/gang_contraband_value() (#30744)
unused
2017-09-15 19:18:15 -05:00
Jordan Brown
84b1e3d71e [s] Adds a security token to all admin hrefs (#29839)
There's a certain issue of people spoofing real byond links to admins. Now all links should come with a generated key that is validated when the Topic is run.

Added DEBUG_ADMIN_HREFS to debug this system while we test it (Allows hrefs without tokens and complains about it in the logs)

Just add [HrefToken()] as a parameter to all admin hrefs. Anything that ends up running through VV or Holder will be verified
2017-09-09 12:15:53 +10:00
ExcessiveUseOfCobblestone
1e17bb7b83 Adds Archaeology Component (#30220)
* The future of archaeology

* pirate pad transfer is godawful

* pp transfer, part deus

* Revert "pp transfer, part deus"

This reverts commit f6e48f71f59f834f0b9e02a2ab2bb1bc1bda1b6a.

* hmmm!

* Edits How This Works

* Dig Check

* you can no longer chaindig + MrPerson req

* All MrPersons

* I need to squash soon [tm]

* replaces define

* fixes #literally everything

* forgot why i set it to highlander

* Review

* Removes How2 and Fixes Travis

How2 was outdated so idgaf

* Review 2, Cyberboss Boogaloo

had to move SSblackbox now that W is a more localized var.

* archdrop list is null now

* It won't let me edit that space sorry

* GOTCHA

* yes i used the web editor, no i am not sorry

* cyber

* ..()
2017-09-08 11:01:30 -04:00
Jordan Brown
641ba9c145 Merge pull request #29940 2017-08-17 10:13:00 -04:00
AnturK
94a5f4570a Fixes dumping from inside the lockers (#29896) 2017-08-17 18:57:30 +12:00
Ian Turk
1b7ca8c0e5 Resolved merge conflicts 2017-08-16 08:33:24 -06:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
Ian Turk
371f1ba4f0 Replace all secondary flags with bitflags stored in the flags_2 var 2017-08-15 16:01:35 -06:00
kevinz000
6539fa2cb5 Refactors flightsuit code to hopefully be less dumb (#28033)
Refactors flightsuit code to be less crappy
2017-07-11 11:23:02 +12:00
Jordan Brown
691ba8d67f Removes the need for specifying obj_integrity (#29030) 2017-07-06 11:23:38 -03:00
Really-Good-Soda-Flavor
40de86de35 Moves reskinning items to /obj (#28558) 2017-06-21 15:19:17 -03:00
kevinz000
235ebfa1c2 Adds glowing cybernetic eyes to R&D - No functions except for flashlight! (#27941)
* MY SNOWFLAKE IS TOO STRONG FOR YOU

* rnd design

* Update eyes.dm

* wew

* k

* fix

* ready

* Update eyes.dm

* Update eyes.dm

* updates

* lazylists are shit but whatever

* runtimes funtimes, and case sensitiveness

* cyberbossy

* cyberboss making me break things

* checks for implantation first..

* better

* tested

* dirs

* efficiency

* all gud
2017-06-12 10:15:57 +02:00
kevinz000
cc340cb73b stuff 2017-06-03 14:00:14 -07:00
coiax
b633cd6ba2 Moves languages to a holder datum, gives mind its own language holder (#26776)
* Ghosts now have a language menu

🆑 coiax
add: Ghosts can now modify their own understood languages with the
language menu.
/🆑

- Language menu is now on /atom/movable, and can be opened by any atom
with the `open_language_menu` proc.
- Used for testing, and simulating what various station members hear.

* Language holders, I

* Language holder, II

* Dos line endings

* MIND LANGUAGES

* Fixes some mobs not having language holders in their minds

* Shadow languages

* How did you lose the holder?

* Mob level IC->Open Language Menu verb

* Gives draconic to silicons

* Lazy breeki

* Use of pre-initialized global lists for languages

* Fixes bugs with lazy holders
2017-05-05 15:12:27 +02:00
Cyberboss
5ace376e4a Initialize Refactor (#25981)
Shouldn't break anything, stops warning spam, logs errors qdel style at the end of the game.

Initialize now expects a hint to be returned, one of:
INITIALIZE_HINT_NORMAL - Does nothing, returned by the root proc
INITIALIZE_HINT_LATELOAD - Call atom/proc/LateInitialize
INITIALIZE_HINT_QDEL - Calls qdel on the atom

LateInitialize currently defaults to the old re-calling behavior so there should be no issues with that.
Things that didn't return a hint or fucked up somehow will be logged less loudly than they were before

No more world start warnings!
2017-04-27 09:02:29 +12:00
Cyberboss
b9c54f517f Minor refactors (#26305)
obj/on_log changed to atom/on_log. Boolean parameter in
No admin irc message now checked in client/Del instead of mob/Logout
Removed an empty New()
1 -> TRUE
removed a potential crash in mob/Login
2017-04-23 09:52:47 +12:00
coiax
7554b5f454 Language datums; removes the talk wheel (#25333)
* Initial burst of languages

* Scratchings of beginnings

* Code review I

* Compilation!

* You can now understand your own speech

* Fixes whispering

* Gets typecaches working again

* Remie's `PASS`ing

* Back to pass() to stop the compiler whining

* Why can't drones check their languages

* Everyone speaks how they should

* Removes world string debug stuff

* Currently failing to massage radio code into working

* The radio transmits the languages!

* ,0 to talk common

* Replaces speech wheel with language menu

* Observers can speak all languages

* pAIs now speak languages FOREVER

* New action button for language menu

* pAIs have an action button to open their language menu

* AIs can talk and all that

* AIs have a language menu button

* Fixes supermatter making strange noises

* Fixes AI holopads

* Fixes request consoles

* Fixes bots making strange sounds

* Meaningless MMI change

* Some caching of datums

* Brains in MMIs speak common

* Ratvarian AIs can only speak Ratvarian

* Tables can speak common, apparently

* Removes var in args

* Fixes the (AI Eye) problem

Thanks to Shadowmobile for their help with this one.

* Fixes tape recorders

* Fixes humans being able to speak in languages they did not know

* Adds some new posibrain names

Honk.

* The voice analyzer replies in the language you spoke to it

* Gives swarmers only swarmer language

* `initial_languages` var.

* OMNITONGUE, clockwork restrictions

* Fixes barmaid and bardrone language abilities

* Code review I

* Omnitongue correction

* Code review II

* Removes force_compose var
2017-04-02 21:03:40 +02:00