73 Commits

Author SHA1 Message Date
Wildkins 025849f0fb Fix tool interaction runtime (#21835)
see title

base_item_interaction was passing src (the target) rather than
attacking_item as the obj/item/tool. i do not know how much this broke
but it certainly made the server upset with runtimes
2026-02-08 07:04:15 +00:00
Batrachophreno 5277251959 Tool behaviors port (#21663)
For a robust crafting system, I need a new materials framework.
For a new materials framework, I need to clean up reagents.
To clean up reagents, I need to pare down foods from reagent holders.
To pare down foods from reagent holders, I need to port edibility
components.
To port edibility components, I need to port processing components.
To port processing components, I need to port tool behaviors.

This is all back-end code, no new features or functionality from this.
2026-01-27 08:44:49 +00:00
Matt Atlas 7f191458cf Red nightshade nerfs. (#21227)
Red nightshade is an overly centralizing traitor/merc item because of
its practically zero downsides when compares to its massive benefits,
such as complete pain immunity and a whopping 1.25x damage multiplier on
all melee damage (for comparison, on an energy sword that's 42 damage
total, with 25 AP, meaning that its hits will penetrate EVERY armour in
the game). This makes melee not only insanely strong but basically
riskless in most situations, especially when combined with the esword's
parry mechanic.

Red nightshade's pain immunity has been removed in favour of a
painkiller effect of 75, more than mortaphenyl. The melee damage
multiplier has been reduced to a more sensical 1.1x.

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2025-08-25 10:42:13 +00:00
Fluffy 3185c10cf1 516 internal links (#20428)
Convert all (appropriate) links to use the required `byond://` for 516

Added a grep to detect incompatible ones
2025-02-20 22:54:10 +00:00
Fluffy 457a091d9a Clicks refactor (#20321)
Added various events to the dcs system in regards to click handling.
Refactored various mouse related procs.
Fixed MUI mask.
Fixed AI jump on double click.
Fixed some runtimes with the click handler system.
Updated the click handler system.
Fixed fireman carry.
2025-01-09 23:04:48 +00:00
Fluffy b8902e2e16 Runtime map now loads in ~11 seconds instead of ~40, sped up various other things (#19957)
Runtime map now has a bunch of new areas / items with often-tested
stuffs, and some hard-to-put-at-runtime stuffs.
Runtime map jobs now are positioned to make it faster to reach the
aforementioned often-tested stuffs.
Runtime map doesn't generate an overmap anymore by default, which speeds
up the process.
Runtime map now loads in ~11 seconds instead of ~40 seconds as it was
before.
Updated the maploader to be faster in parsing maps.
Bapi is not engaged anymore if we're only measuring the map size, which
speeds up the process.
In fastboot we do not generate the codexes anymore, which speeds up the
process.
In fastboot and if exoplanets and away sites are not enabled, we do not
parse the map templates anymore, which speeds up the process.
Updated the icon smoothing to be faster.
Optimized cargo area code.
Other optimizations.
2024-10-06 21:31:01 +00:00
Fluffy 9636363e60 Refactored the attack proc (#19908)
Refactored the attack proc signature.
Added signals and components for the attack proc.
Added signals and components for the attackby proc.
Adjusted some leftover attackby procs signatures.
Added grep test to ensure people don't keep adding attack/attackby procs
with the wrong signature.
2024-10-06 21:30:00 +00:00
Matt Atlas 1ed9d50295 Melee weapons now give audiovisual feedback when they miss a target. (#19734)
title

also adds relevant info to logs

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2024-08-02 17:34:21 +00:00
Fluffy 78348238a3 Removed the GELF logging infrastructure (#19577)
Removed the gelf logging infrastructure.
Refactored the various logging procs to be a direct call in light of the
above.
Removed ancilliary UDP related things.
2024-07-08 12:48:16 +00:00
Fluffy 3dc4cce9c2 Minor span refactoring (#19177)
Minor span refactoring
2024-05-19 16:37:29 +00:00
Fluffy ab23fbdb70 Function overloads condensation (#18939)
Unified most of the procs into one definition, so there are no duplicate
around the codebase.
Marked some of the above as overridable if a good enough case can be
made for them (eg. external dependency or unlikely to be used).
2024-04-19 21:19:41 +00:00
Fluffy 9afe761db3 Some refactors, DMDoc and UT (#18365)
* dsfa

* accessories fix

* fixed "has been hit by" message with intent check

* sdfa
2024-02-12 15:32:23 +00:00
Fluffy 849340274d sdaf (#18321) 2024-02-08 12:38:28 +00:00
Cody Brittain 06601c9ec3 Split up and rename var/flags (#17794)
* Split up and rename `var/flags`

* Various fixes

* CL

* Don't rename Phoron Guard phoron preset

---------

Co-authored-by: Cody Brittain <cbrittain10@live.com>
2023-11-22 16:27:51 +00:00
Geeves dd4c80d820 Gluttony Tweaks (#17158) 2023-08-28 19:49:49 +00:00
Fluffy b183188689 Better logging (#16164)
* Initial

* Cleared duplicates

* More work, get rid of log_error

* more

* log_debug() to macro LOG_DEBUG

* More work

* More

* Guh

* Maybe better?

* More work

* gah

* Dear lord

* *inserts swears here*

* gdi

* More work

* More

* dear lord

* fsdfsdafs

* rsdaf

* sadfasf

* sdafsad

* fgsd

* small fuckup fix

* jfsd

* sdafasf

* gdi

* sdfa

* sfdafgds

* sdafasdvf

* sdfasdfg

* sdfsga

* asdf

* dsfasfsagf

* ihibhbjh

* fsadf

* adfas

* sdafsad

* sdfasd

* fsda

* vhb

* asf

* for arrow

* removed source file-line logging, added header for tgui
2023-08-05 21:53:11 +00:00
Matt Atlas 31c73ead85 Ports the radiation subsystem and cleans up damage flags. (#15715) 2023-02-07 13:22:47 +01:00
Geeves 252436ae4d Genetic Skeletonization & Mutation Refactor (#15293) 2022-12-18 20:23:43 +01:00
sadkermit b14d38fc46 Red Nightshade Tweaks/Fixes/Buffs (#14178) 2022-06-07 12:43:54 +02:00
mikomyazaki e59589ec8a Gripper attackby fixes (#13571)
This cannot go wrong, can it?
2022-04-20 22:15:15 +02:00
Matt Atlas 17ba8f114e Fixes changeling typo, attacking while laying down and an icon runtime. (#11342) 2021-03-01 13:17:46 -03:00
Matt Atlas c30cd94024 Reworks armor damage reduction + armor components + more goodies. (#11106)
Ports Baystation12/Baystation12#27254 and Baystation12/Baystation12#24787 and everything inbetween I guess.

Note that this PR makes guns and armor overall stronger. Lasers also once again do organ damage.
2021-02-14 17:54:45 +02:00
Geeves 6a2899f99c Grab Buff (#10972)
Having someone in a grab now has a chance to transfer any disarm or weapon attack attempts on you to them.
2021-01-23 23:10:30 +02:00
Wowzewow (Wezzy) b684c7a224 Hit things with things with zero force (#10722) 2020-12-17 21:37:00 +01:00
Geeves 6822e76484 Martial Arts Mastery (#10089) 2020-11-17 10:28:04 +01:00
Matt Atlas d4666caaac Ports Goonchat from Baystation. (#9635)
changes:

    rscadd: "Ported a new chat system, Goonchat, that allows for cool things like changing font style, size, spacing, highlighting up to 5 strings in the chat, and DARK MODE."
    rscadd: "Repeated chat messages can now get compacted. You can disable this in goonchat settings."
    rscadd: "You can change icon style to any font on your system."
    tweak: "The game window has been altered a bit to adjust for this."
    rscdel: "Removed skin style prefs as they are no longer used."
2020-09-24 23:06:04 +03:00
Geeves 08964ec3f3 Hardsuit and Pickaxe Bugfixes (#9594) 2020-08-11 12:17:33 +02:00
Geeves 33ad8096fb The Great Spanning (#9320)
This PR get rid of all (most of) the span("thing", spans and replaces them with the SPAN_THING( variant, which has gained more popularity recently.
2020-07-12 15:53:28 +03:00
Geeves 097ea6cfbc Shielding Auras (#8760)
Ports Baystation12/Baystation12#19992 and Baystation12/Baystation12#27266.

    Added a personal shield device to the traitor tools uplink.
    Added a radiant shielding aura spell to Battlemage and Cleric.
    Added an exosuit shield drone to the mechfab.

This works, but I'm not entirely happy with the sprites. The personal shield has no on-mob shimmer, it uses a mindbatterer grenade as an icon sprite. The wizard radiant spell uses a pretty big and janky sprite as an on-mob, and the exosuit's shield sprite doesn't follow the dir the mech faces, but that one I can maybe fix on my own. If anyone knows about that last one, lemme know, Bay had code for it that we do not.
2020-05-15 23:37:27 +03:00
Matt Atlas bbecc7b461 Many vore improvements. (#7686) 2019-12-19 20:06:14 +01:00
Matt Atlas df0cd6189a Brainmed Update (#7502)
gamer time.
2019-12-10 20:41:15 +02:00
Geeves 713a001b80 Surgery Overhaul (#7507) 2019-12-02 20:13:32 +01:00
Matt Atlas 5da2a9c24b Splits organs into organ/internal (#7441) 2019-11-20 23:07:10 +01:00
OneOneThreeEight 617ea81020 Unapologetic Noobkiller Nerfs (#7003) 2019-09-24 13:18:02 +04:00
fernerr 2a2cc7d52e Ports table item autoalign from Bay (#6946)
Made it so items get their pixel x/y reset on pickup.
    Thrown items now also get their pixel placement slightly randomized.
    Tweaked the center of mass on a boatload of items to be more accurate to their sprite art.
    Replaced a bunch of randomized pixel placement code into a unifying proc; randpixel_xy() that uses an item's randpixel var.
2019-09-08 22:51:49 +03:00
Alberyk 15bfb052d7 Martial arts improvements and additions (#6094)
-adds framework for weapons based martial arts, implementing a very basic swordsmanship
-makes the martial art books more modular
-fixes some minor issues with some of the martial art code
-adds amohdan swordsmen gear, to be used in a future event/sold by the merchant
- fixes #6083
2019-03-10 23:38:00 +02:00
Alberyk e950f6b5fd Add new chemicals (#5168)
Adds new drugs:
-Red Nightshade: a drug that induce a berserk-like status, you see only red, can smash windows, stuns go away slower and etc
-Paxazide: a medicine that induces pacifism on the target, like the mutation
-Spectrocybin: a hallucinogenic that has a small chance of giving a glipse of the other hidden to mere mortals, can be found in a mushroom variety

Adds a new secret chem:
-Bottled Lightning: causes a tesla zap when in contact with someone's blood or when splashed on the ground

Also removes some broken/unused plants.
2018-08-30 20:09:08 +02:00
LordFowl ad00601b81 Ports /tg/ Brain Trauma (#3979) 2018-01-27 12:13:19 -06:00
Alberyk eb80d3ec68 Ports weapons cleaving and reaching features from polaris (#3969)
-axes, chainswords and longswords can now cleave, hitting targets around the user, ported from polaris
-added support for melee weapons that can hit targets two titles away, as well ported from polaris
2017-12-23 21:12:06 +02:00
skull132 fd6a8305a5 Letting skull touch logging is now strictly haram (#2476)
Turns out. I did a bad.
2017-05-27 18:56:22 +03:00
Ron 8386075565 Bug fixes (#2447)
Fixes #639
Fixes #2445
Fixes #1708
Makes succumb tell you if you can't succumb.
2017-05-25 14:42:57 +03:00
Werner 59e7377798 UDP Logging (#1997)
This implements UDP Logging with GELF.
It will allow full text search over all the logs and attributes sent over GELF to the log server.
2017-04-01 23:47:00 +03:00
NanakoAC 6cef8c9074 Attack Proc fixes (#1259)
Baymerge changed the attack proc, i think by removing a default value, and a lot of things broke because they weren't using the function correctly.

This proc does three main things.

Adds a default to /obj/item/proc/attack to target the chest when no target zone is supplied.

Fixes the lack of a target zone in many attack procs, properly defining it so it'll get passed to the parent, and ensure that bodypart-specific targeting works.

Removes most instances of code to retrieve the user's selected zone, and instead to use the zone passed into the attack function. saves duplication of effort.
2016-12-24 03:34:23 +02:00
skull132 87e041aa75 Merge remote-tracking branch 'bay12-upstream/master' into development 2016-10-07 00:58:39 +03:00
skull132 3d3dbcb8f0 JMP logs for days
Adds JMP messages to most forms of physical attacks.
2016-03-25 18:27:37 +02:00
mwerezak af52b475ff Fixes missing cooldowns, missing cult blade sound. 2015-09-09 15:15:43 -04:00
mwerezak 6e66ad307c Refactors bottle smashing, apply_hit_effect() now returns the blocked status. 2015-09-09 13:58:45 -04:00
mwerezak 080e365911 Prevents attacking yourself with items unless on harm intent 2015-09-08 23:51:40 -04:00
mwerezak 41f52b3dd7 Adds some documentation to item_attack.dm 2015-09-08 23:41:50 -04:00
mwerezak 068d02c28c Refactors various item attack() implementations
Replaced some attack() overrides with apply_hit_effect() or other attack
procs where appropriate.
Removed the attack() override from reagent_containers.
2015-09-08 23:39:33 -04:00