89 Commits
Author SHA1 Message Date
BatrachophrenoandGitHub af6c74d917 Verb organization stuff (#21131)
Currently, only Preferences Verbs use subcategories. As a result, all
other Verb tabs are only organized alphabetically, meaning that a single
mechanic (ie. languages) has its governing Verbs scattered rather than
grouped together.

Verb organization by Tab handles broad organization - IC, OOC, Objects,
etc.- highly effectively but requires the user to click-navigate to
other Tabs to access any other verbs.

Verb organization within a Tab can be handled by A.) subcategories and
B.) Verb name prefixes (such as Earphones - *****). The first option is
the clearest and cleanest, but consumes additional vertical space. The
second option conserves vertical space at the cost of visual clarity.

This PR attempts to reorganize Verbs by their Tabs, Subcategories, and
prefixes with the following priorities in mind:
- Minimal disruption; any radical change must be justified (don't move
shit around just for the sake of moving shit around.)
- Verbs which share common functions (such as Languages) should be
grouped together.
- Maintainability. Contributors should not need to memorize an
excessively convoluted Subcategories list; Subcategories must be
intuitive and simple.
- Subcategories should be used judiciously when grouping Verbs to
conserve vertical space. Example: Instead of creating a Subcategory for
Emotes, just rename Audible Emote and Visual Emote to Emote (Audible)
and Emote (Visual).
- Subcategories should highlight uncommon or unusual verbs when
reasonable. Example: There are several animal husbandry-related Verbs,
and because most characters will not have access to those verbs
regularly, we can be less conservative with space (because they'll be
gone most of the time) for the sake of emphasizing their availability.

This PR covers the IC, OOC, and Object Tabs.

Subcategories:
OOC.Chat (Chat functions)
- AOOC
- LOOC
- Devsay (moved from Special Verbs)
- Dsay (moved from Special Verbs)
- OOC

OOC.Debug (Fix shit)
- Fit viewport
- Fix chat
- Refresh TGUI

OOC.Round (Round information)
- Check Gamemode Probability
- Check Round Info
- Custom Event Info
- Vote

IC.Antag (Antag verbs w/o their own tab)
- Invite to the Loyalists
- Invite to the Revolutionaries
- Set Ambition

IC.Critters (More critter stuff than you'd expect there to be)
- Befriend Carp (Previous name 'Become Friends')
- Befriend Cat (Previous name 'Become Friends')
- Befriend Dog
- Befriend Ives
- Name Alien Species
- Name Animal

IC.Language (Language-related stuff)
- Check Default Language
- Check Known Languages
- Set Default Language

IC.Maneuver (Movement, positioning, etc.)
- Adjust walk speed
- Do Pushup
- Face Direction
- Look Down
- Look Up
- Move Downwards
- Move Upwards
- Rest

Object.Equipped (Equipped object stuff, mostly for drip)
- Adjust Badge
- Adjust Bag Straps (Backpacks)
- Adjust Goggles
- Adjust Mask
- Adjust Welding Goggles
- Adjust Welding Mask
- Change Glasses Layer
- Change Pants Layer
- Change Wrist Radio Layer
- Change Wristwear Layer
- Check Time
- Flip Badge
- Flip Belt
- Flip Eyepatch
- Flip Hat
- Flip ID card (ID card)
- Flip Radio (Clip-on radio)
- Flip Wristwear
- Fold Collar
- Lock Antenna(e)
- Point At Watch
- Raise Shroud
- Roll Up Cape Mantle
- Roll Up/Down Jumpsuit
- Roll Up/Down Sleeves
- Switch Belt Layer
- Switch ID Layer
- Switch Lanyard Layer
- Switch Shoe Layer
- Toggle Aviators (Like a dozen variants)
- Toggle Ceremonial Garment Lights
- Toggle Coat Buttons
- Toggle Coat Zipper
- Toggle Hair Coverage (For hats helmets etc)
- Toggle Hair Coverage (FOR BABY CARP!!!!!)
- Toggle Helmet Camera
- Toggle Hood
- Toggle Lyodsuit Mask
- Toggle Poncho Tail Coverage
- Toggle Shirt Buttons
- Toggle Suit Sensors
- Toggle Visor (Pilot helmet)
- Toggle Waistcoat Buttons
- Transform Holoclothing
- Voidsuit - Eject Suit Cooler
- Voidsuit - Eject Tank
- Voidsuit - Toggle Helmet

Object.Held (If you're HOLDING it, its probably relevant to you rn)
- Activate Held Object (Silicons; moved from IC)
- Alter Beacon's Signal (Radio beacon)
- Change Bite Size (Utensils)
- Change Pen Colour
- Choose Colour (Paint sprayer)
- Choose Decal (Paint sprayer)
- Choose Direction (Paint sprayer)
- Choose Preset Colour (Paint sprayer)
- Describe Prototype
- Draw Boot Knife
- Empty Bee Net
- Empty Spray Bottle
- Holster
- Name Gun
- Name Prototype
- Plant Flag (Flags)
- Print Plant Report
- Remove Chopsticks
- Remove Top
- Set Detector High-Bound (Light meter)
- Set Detector Low-Bound (Light meter)
- Set Hailer Message (Hailer)
- Set Timer (Timer igniter)
- Set Valve Pressure (Pneumatic cannon)
- Show Held Item
- Spin Cylinder (Revolvers)
- Switch Verbosity (Health analyzer)
- Toggle Chainsaw Power (Chainsaw)
- Toggle Flashlight Brightness (Flashlights)
- Toggle Gun Safety
- Toggle Hazard Vest
- Toggle Pinpointer Mode (Pinpointer)
- Toggle Mister (Backpack water tank. Goes into/out of hands)
- Twist Cap
- Use Scope
- Wield Pick/Drill
- Wield Two-Handed Weapon (Two-handed weapons)

Object.Cards (I fucking hate cards!!!)
- Deck - Deal
- Deck - Draw
- Deck - Pick
- Hand - Pick
- Turn Hand Into Deck

Object.Earphones (Enough here to separate out)
- Eject Music Cartridge
- Change Volume
- Next Song
- Pause/Unpause
- Play/Stop
- Previous Song

Object.Jetpack (This is probably really important to see quickly)
- Toggle Jetpack
- Toggle Jetpack Stabilization

Object.Tape Recorder (Enough here to separate out)
- Start Recording
- Stop Recording
- Clear Memory
- Playback Memory
- Print Transcript
- Eject Portable Storage

**IC tab example:**
<img width="1061" height="277" alt="Screenshot 2025-08-09 101813"
src="https://github.com/user-attachments/assets/a2afe92d-34fd-4160-bf68-b459a4195e26"
/>
**Objects tab example:**
<img width="1100" height="472" alt="Screenshot 2025-08-09 101807"
src="https://github.com/user-attachments/assets/a36e4c76-594e-4569-93ba-ffcda57e8760"
/>
2025-08-11 15:12:56 +00:00
BatrachophrenoandGitHub 387cee9243 Object Examine Text Overhaul (#20923)
Extends and reworks how various extended information text (desc_info,
desc_build, desc_upgrades) are handled to make object interactions and
mechanics A.) much more clearly documented in-game and B.) much easier
to support from the back-end.

Almost certainly a candidate for test merge.

Assembly/Disassembly instructions are noticeably sporadic, largely due
to our current lack of a unified framework. That's a future thing I'd
like to attack so that it can be handled programmatically, but for now I
only targeted the biggest culprits as I came across them.

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
2025-07-21 15:35:14 +00:00
Wowzewow (Wezzy)andGitHub 702472583c Scarcity and Supply Chain (#20760)
- rscadd: "Adds Lavatory vendors to the public bathrooms, that dispense
hygiene goods."
- refactor: "Migrates bartender's supply of 6 pack beers and Sencha teas
to the cargo database."
  - refactor: "Migrates impact wrenches to the cargo database."
- balance: "Removes the extraneous dylovene, kelotane, bicaridine and
coagzulug in medical. Migrates medication to the medication closet."
- balance: "Removes the unused Nanomed Minis in medical. Replaces the
surgery side Nanomed Plus with a Nanomed Mini."
- balance: "Removes the two large medical kits from medical storage, and
the kit in the exam room. Moves the wheelchairs from the morgue lift to
medical storage."
- rscadd: "Adds cranberries to the game. Now you can actually make
cranberry juice!"
- refactor: "Juices found in soda machines, booze dispensers and the
booze-o-mat have been migrated to the cargo database."
- rscadd: "Cream and fatshouters milk cartons can be ordered from
cargo."
- balance: "Certain juices are now cartons when separated in a
CondiMaster."
- balance: "Removed coffee, milk and sugar from soda machines, as they
are made redundant by CoffeeMasters."
- balance: "Non-CoffeeMaster coffee machines now just dispense coffee
instead of espresso."

TL;DR
- Juices aren't free anymore - get them from supply, the botanist, or
alternative means.
- Soda machines don't dispense coffee, milk and sugar anymore. Since we
have coffee machines already.
- Migrates the stuff in the bar that just got shoved in through mapping
that shouldve been a cargo order in the first place.
- Adds lavatory vendors, which helps to replace manually mapped in
toiletries.
- Removes the extra medical supplies from medical that end up basically
unused for most rounds.
- Adds more things that can be ordered from supply.
- Un-powercreeps the impact wrench. It's made screwdrivers and wrenches
obsolete. Imagine if all of Medical's hyposprays were the CMO hypospray.
That's how it basically is right now.

It's going to be mildly inconvenient, sure. But I have full faith that
people will get used to it in a month. I feel kind of vindicated after
the suit sensors removal PR that the mass-complaints have ceased to be
an issue, and I feel it's going to be the same case here.

Anyway, yes, it's rather silly that the Big Ass Flagship doesn't
immediately have the latest and greatest stuff, but this is thinking
towards long term towards NBT2, where we'll definitely be running a lot
more slim.

**Also, please. Don't brigade this pull request. Just ping me in the
general Discord if you have anything to bring up. I'll try respond to
you if I'm available.**
2025-05-18 14:13:48 +00:00
FluffyandGitHub a3a4d46fa7 Hitby refactor (#19624)
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.
2024-07-28 20:52:08 +00:00
FluffyandGitHub 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
FluffyandGitHub 3dc4cce9c2 Minor span refactoring (#19177)
Minor span refactoring
2024-05-19 16:37:29 +00:00
4423d03f2f Adds examine boxes. (#18370)
* Adds examine boxes.

* lint

* what kind of dreams did you dream?

* unlimited

* midgardsormr

* sdsd

* fixes

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2024-02-11 21:58:20 +00:00
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
Wowzewow (Wezzy)andGitHub 7182934323 Friday the Thirteenth Bugfixes (#17594)
Title
2023-10-16 19:27:31 +00:00
Wowzewow (Wezzy)andGitHub fd26ff32e2 Fixes Examine Crashes (#17430)
* Fixes Examine Crashes

* fukken indentations
2023-09-27 10:22:04 +00:00
ce5ac79e3c Split examine verb and function, and improve it (#17251)
* Split examine verb and function, and include adjacency and distance checking in examine function

* Fix various issues

* Update code/modules/mob/examinations.dm

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>

* Add required define vars

* Update code/game/objects/items/stacks/wrap.dm

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>

---------

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
2023-09-09 08:07:36 +00:00
dd482c63af Update the codebase to 515. (#15553)
* Update the codebase to 515.

* edit that

* WHOOPS

* maor

* maybe works

* libcall and shit

* do that too

* remove that

* auxtools isnt updated so get rid of it

* actually remove auxtools lol

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2023-01-23 21:21:37 +01:00
FluffyandGitHub 04d89f212a Singletons + refactor of /datum/observ + refactor of /decl/ into /singleton/ (#15519) 2023-01-10 19:22:14 +01:00
Matt AtlasandGitHub b1869884c1 Revert "Singletons + refactor of /datum/observ (#15487)" (#15515) 2023-01-05 19:21:22 +01:00
FluffyandGitHub 0ddcf0817a Singletons + refactor of /datum/observ (#15487) 2023-01-05 18:41:40 +01:00
SparkyandGitHub d33581feaf Nozzle spray display fix. (#15368) 2022-12-20 18:37:10 +01:00
GeevesandGitHub f064546916 Spray Tweaks (#15283) 2022-12-16 12:12:05 +01:00
desvenandGitHub d095294844 Fixes the sterilizine hand sprite not matching the new icon (#12548)
* code

* changelog

* bump
2021-09-24 18:16:08 -03:00
Casper3667andGitHub 78cedded21 Adds sterilizine to medical (#11550) 2021-03-29 12:32:06 -03:00
MarinaGryphonandGitHub c720e947ed /decl/chem (#10538) 2021-01-17 00:11:28 +02:00
Wowzewow (Wezzy)andGitHub 307c214541 makes w_class use defines (#9848) 2020-09-06 17:37:56 -03:00
Wowzewow (Wezzy)andGitHub 7114d3525f More new sounds and fixes equip sounds (#9464) 2020-08-12 11:17:39 +02:00
MarinaGryphonandGitHub 37c80988ce Converts Reagents to Typepaths and Centralises Reagent Spawning (#9140)
Converts reagents to use typepaths instead of IDs.
    Centralises reagent spawning in a lot of places to use reagents_to_add instead of a variety of custom methods or initialise overrides.
2020-07-05 20:47:48 +03:00
Wowzewow (Wezzy)andGitHub fad8415a8e Pickup, Drop and Equip sounds (#8861) 2020-05-22 15:40:00 -03:00
Wowzewow (Wezzy)andGitHub 723c711022 Inhands : the final fuckening (#8696) 2020-04-24 11:36:00 +02:00
Wowzewow (Wezzy)andGitHub b9b42f4f8f Janitor, hydroponics and medical inhands (#8456) 2020-03-21 13:36:49 +01:00
mikomyazakiandGitHub 1f30e4675d Using a gun whilst cloaked will decloak you. (#8317) 2020-02-23 02:45:02 -03:00
GeevesandGitHub d93a0030db Makes All Guns Contained Sprites (#8105) 2020-01-31 20:27:03 +01:00
WernerandGitHub cb4a712851 Enforces Lineendings and adds Editorconfig (#7657) 2019-12-21 16:19:24 +01:00
DoxxmedearlyandErki 1d35f2ec00 Stop spraying yourself (#7667)
Fixes #7666
Since you can spray people and objects, it would spray your coat (and therefore you) if you clicked on it.
Added a check to make sure the thing you're spraying isn't on your person.

Removed redundant safety checks for pepperspray.
2019-12-13 16:24:45 +02:00
WernerandGitHub af16a489a6 Removes Weapons (#7415)
* Adds icon and hitsound where needed.

* Moves alt_attack to /obj/item and deletes weapons.dm

* Replaced /obj/item/weapon with /obj/item

* Fixes merge issues.

* Fix merge issues.
2019-11-16 18:36:13 +01:00
fernerrandErki 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
AlberykandWerner d04533698b Fixes two missing sprites (#6651) 2019-07-03 18:18:28 +02:00
KaedwuffandErki 34bcb59a65 Chaplain Buffs (#6246)
-Adds an aspergillum, which will hold up to 10u of liquids, such as holy water, and spray out out to adjacent squares, such as those occupied by filthy vampires. It also makes a pretty jingle sound when you do so. The sprite was provided by Dronz.
-Removes the buggy null item box, and replaces it with obsidian shards that can be reassembled at will to whatever null item shape you crave.
-Null items can now be mounted on poncho backs
-Some backend updates to spraybottle code that will let you change the sound effect of a spray-object if someone makes one in the future.
2019-04-20 22:59:14 +03:00
LordFowlandErki 8d436c4a03 Converts all necessary << outputs into the to_chat() macro. (#6076)
This PR will lead us towards the Promised Day, for in its wake there shall be much celebration and ecstasy as this world becomes a world suitable for developer hegemony. The first strike is thusly;

All << is converted into to_chat().
2019-03-10 23:39:03 +02:00
BurgerLUAandErki 1620d81661 Extinguisher + Container Reworks (#4793)
Reworked how slipping on tiles work. If there is too much lube/water on one tile, it will spread to all adjacent tiles.

Fixed a potential bug where spilling copious amounts of water on a tile will turn it to ice.

Containers are much more saner now. They all share a standard system, unless specified.

You can drink from any open holdable container using help intent. You can splash the contents of the container on anything via harm intent.

Sinks are more saner, you can refill or empty them easier with various refill amounts.

Removed silly exclusive cyborg limb checking for hyposprays.

Added a new chemsprayer, the "Xenoblaster" which is a significantly weaker chem sprayer. Two can be found in xenobiology.

Large reagent containers (beer kegs, water tanks, fuel tanks) now share a system together. Both can leak their reagents via harm intent with a wrench, and bother can accept any sort of reagent, with exception to the fuel tank.

Large reagent container leaking happens over time as opposed to just leaking every time it moves.

New chemical, Monoammonium phosphate. Monoammonium phosphate is a fertilizer and also a potent fire extinguishing and preventing chemical. It can be made with 1 part ammonia, 1 part sulfuric acid, 1 part sodium, 1 part phosphorus.

All extinguishers now have monoammonium phosphate in them instead of water.

Extinguishers can hold any reagent, however they must be filled using an extinguisher refiller cartridge. These can be ordered or found in atmospherics.

Nerfed the extinguisher range so it only sprays in a 3x3 radius.

Mini-extinguishers spray in a 1x1 radius.

Adds Monoammonium phosphate containers across the station.

Most watertanks are replaced with Monoammonium phosphate containers.
2018-08-05 20:14:00 +03:00
ErkiandGitHub 7b1bcdc8f3 October Bugfix Bonanza (#3767)
Fixes #3742 - someone unfucked the fix again.
Resolves #3740 and resolves #3739.
Fixes #1558 - a 10 month long meme is dead.
Resolves #3720 by making robo-eyes immune only to the eye stinging effects of pepperspray. Let there be equality amongst the synths.
Fixes #3676 - tested, shouldn't break. It was double-calling set_death_timer.
Fixes #3672 and fixes #3658 - that was my bad on not noticing the diff around hologram.icon = icon vs add_overlay(icon).
Fixes #3762 - I'm surprised this didn't fuck over more.
2017-10-29 19:03:24 +02:00
RonandErki 752b0ba5e9 Converts reagent containers to Initialize, fixes hand-chew cool down and moves suit sensor Z-level list (#3367)
Converts all reagent containers to use Initialize, fixes the hand-chew cool down so it's no longer for everyone, and moves the suit sensor Z-level to the global.dm right above the station name so anyone else using the code can't miss it.

Closes #3363
Closes #3361
Closes #3362
2017-09-02 21:35:58 +03:00
Wernerandskull132 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
NanakoACandskull132 3080c20428 Diona fixes and Tweaks (#1871)
I'm currently in bugfixing mode to prepare for next update. This PR is a package of fixes for some outstanding issues related to diona that have caused complaints, and a few minor tweaks.

Fixed diona not having a mouth. This wasn't intended, even in bay. It was caused by a fuckup with typing order. Although there were hacky fixes i could do, i opted for the most correct fix, which was re-pathing all diona external organs to be /obj/item/organ/external/BODYPART/diona, whereas before they were /obj/item/organ/external/diona/BODYPART

This approach is the most flexible and future proof. Having all heads behave properly as heads is more important than having base behaviour for diona organs. That can be handled with vars and flags. This did involve duplicating quite a few vars to all that were part of the main class, but its worth it.

Rebalanced Plant-b-gone, requested repeatedly by garn. In general it got heavily nerfed, but carefully tuned. It now slightly outdamages a diona's base regen rate, but not by much. Reagent permeability is also factored in now so equipment can protect against it. Some radium treatment will make it a non issue

Also increased the click cooldown for spraybottles used on mobs. it was pretty broken at 4 dc.

Fixed nymphs getting Tau Ceti Basic for free upon evolving. Now they'll only have it if they had it as a nymph. (this doesnt affect diona that directly join as gestalt)

Added another ear slot for diona, so they can wear two headsets, or a mouse. Often requested

Adjusted diona air consumption. They have a mechanic whereby they consume gases from the environment for nutrition. Ive just made this actually remove said gases. Consumption is significantly below the rate of replacement so it wont be an issue anywhere with a vent, but they can cause air alarms if they hang around too long in an unventilated room.

Fixed a devouring bug where a creature could get stuck marked as devouring something (but not actually doing so) and be unable to start devouring it. Instead of rejection, trying to devour something you're already eating now cancels.
2017-03-05 02:07:37 +02:00
Ryan784andskull132 a52092b294 Fixes #1789 and most alt-clicking related bugs (#1808)
Fix for the alt-clicking related bugs; users being able to alt-click and
have it work regardless of distance.
2017-02-24 19:30:09 +02:00
skull132 87e041aa75 Merge remote-tracking branch 'bay12-upstream/master' into development 2016-10-07 00:58:39 +03:00
NanakoACandskull132 1ecd7629ae Safeties for sprays, fixes #403 (#516)
Pepperspray no longer makes a spraying sound when the safety is on
Spraybottles can now be locked with an alt click
2016-07-05 23:33:56 +03:00
NanakoAC a96d655632 Fixed Sterilizine not sterilising wounds. Also tweaked spraybottle message visibility
*Sterilizine will now reduce the germ level of all wounds on the mob on
contact, proportional to the quantity sprayed
*Spraybottles will now display the "<Person> sprays <otherperson> with
the <spraybottle>" message when spraying on any mob
2016-05-22 10:53:04 +01:00
skull132 fe48f26d71 Porting forensics from Aurora. 2016-02-01 17:08:47 +02:00
Zuhayr 1244c4a5fd Porting forensics from Aurora. 2015-10-24 02:15:06 +10:30
Kelenius bed03443d1 Merge branch 'dev' into ofClicksAndCooldowns
Conflicts:
	code/ZAS/Airflow.dm
	code/__defines/items_clothing.dm
2015-08-21 16:15:07 +03:00
KeleniusandZuhayr 7c1d9b5614 Mech chargers are now a single machine
Can be built and upgraded
Resolves #5215
2015-08-16 06:07:36 -07:00
PsiOmega 3a08e2884a Merge remote-tracking branch 'upstream/master' into dev-freeze
Conflicts:
	code/game/objects/structures/crates_lockers/largecrate.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/research/circuitprinter.dm
2015-08-15 10:52:17 +02:00
mwerezak 133bc96344 Fixes #10645
Sets unacidable where appropriate.
2015-08-14 23:20:10 -04:00