Commit Graph

34470 Commits

Author SHA1 Message Date
Cameron Lennox e6f679d147 small hotfix for resurrect artifact (#19358) 2026-03-29 22:06:06 -04:00
Kashargul 7c7aa0d237 TG spawn panel port (#19293)
* TG spawn panel port

* .

* .

* click intercept

* .

* diagonals

* .

* .

* fix path search

* reduce that

* Fixes ghost click

* lol

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2026-03-29 19:01:27 -04:00
Cameron Lennox f2b1ea6322 makes tray yield mod actually work (#19353) 2026-03-29 23:03:57 +02:00
Cameron Lennox 13994707dc Fixes stasis bags from killing (#19349)
im DUMB

wtf

Update life.dm

Makes resurrection artifact not as jank

Allow fossil bags on belts
2026-03-28 20:44:09 +01:00
Cameron Lennox 8590089158 Fixes tesla_zap proc (#19351)
* move these

* gibs
2026-03-28 14:21:08 -04:00
Will 910f9df97c Fix central command being made of fire (lightning strike fix) (#19350)
* fix

* Update lightning_strike.dm
2026-03-28 12:57:46 +01:00
Will b13f03bcda Trolley tanker draining fix, and memory savings (#19341)
* fix trolly tankers and don't make lists on everything

* a better solution

* same line

* fix those too

* moved to correct file
2026-03-26 23:20:52 -04:00
Cameron Lennox 453080616b SM, Tesla, and general engineering adjustments [MDB IGNORE] [IDB IGNORE] (#19339)
* Update supermatter.dm

* fix

* clamps these

* gwah

* Stops tesla from zapping unwrenched coils

* tesla upgrade

* unglobals this

* fix these

* Update coil.dm

* Update coil.dm

* Descriptions

* Update coil.dm

* Update coil.dm

* Update coil.dm

* Update coil.dm

* Update coil.dm

* ranges

* UGH

* Update vorestation.dme

* meth

* monster math

* Update coil.dm

* Update coil.dm

* Update coil.dm

* THEY DID THE MATH

* the monster math

* egwah

* desc

* Update coil.dm

* Returns

* Update coil.dm

* Lowers amount gained

* this

* im dumb

* tesy

* Update coil.dm

* Update coil.dm

* fixes initial density on blast doors

* dot

* fixes these

* Mapper Tools

* icon

* these

* Fixes the sound following people

* recursive geigers

* Make this a proc

* Update supermatter.dm

* less ear destroying

* these

* makes canisters not get softlocked

* Hotkeys

* proper return

* Makes shield gen useful. Gets rid of a harddel

Adds hydromagnetic trap

* math

* Makes buttons more clear.

* lol

* Fixes ancient runtime

* Adds craftable mass driver buttons

* button

* fixes this

* Makes misclicks not destroy solar panels

* Update solar.dm

* fix this

* make them both numbers

* upports reflectors

* Update reflector.dm

* Update reflectors.dm

* solar panel and climbable

* Gets rid of 'as X'

* Adds account console

* Update vorestation.dme

* Craftable message server

* Update message_server.dm

* These

* con struct

* Update smartfridge.dm

* whoop

* edits
2026-03-26 22:20:06 -04:00
Will bf29ca396f Shovel digging refactor (#19345)
* fixes per pile lootable counts

* shovel digging element

* retooled to flag

* take two

* proc that

* sand digging

* collapse that system in too

* allow base loot

* desc

* potat

* fix that

* no making that on rocks

* oops

* var version

* prevent that dupe

* fixes

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2026-03-26 22:10:06 -04:00
Will c7644c7877 Xenobotany machines can be constructed (#19342)
* required

* fixes for contents

* prevent deconstruction while activated

* node already existed

* part stuff

* corrected nodes

* oops
2026-03-26 21:08:04 -04:00
Kashargul a64992c509 subsystem antag (#19338)
* antag subsystem

* antag subsystem
2026-03-26 21:06:54 -04:00
Kashargul f498ce0659 escape shuttle to subsystem (#19325)
* escape shuttle to subsystem

* .

* thank you github

* axe this, unused

* prevent comm computer server crash

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2026-03-26 20:49:17 -04:00
Kashargul a0c5678533 transfer to subsystem (#19323)
* transfer to subsystem

* ,

* .

* .
2026-03-26 18:30:32 -04:00
Kashargul 2388aaba11 subsystem access (#19337)
* init

* access to controller

* .
2026-03-26 18:04:19 -04:00
Cameron Lennox 9311e3e7eb Internal germ healing (#19327) 2026-03-26 15:50:07 +01:00
Kashargul c779adfeef move those back (#19336)
* move those back

* .
2026-03-25 23:17:33 +01:00
Cameron Lennox e73af74f1f Slip Prone Trait (#19303)
* Slip Prone

* Update vorestation.dme
2026-03-25 22:31:36 +01:00
Cameron Lennox e117d27b05 Robot Consumables (#19328)
* Consumables

* Update station.dm

* Update station.dm
2026-03-25 22:29:46 +01:00
Will 507a53422b Fix rig pai slot not accepting Btype card, and buffed rig ai movement distance (#19343)
* feeexxxx

* unneeded

* actually why over complicate
2026-03-25 22:25:19 +01:00
Will f9517853e0 Autolathe Disk Loading (#19331)
* disk loading autolathe

* rsf too

* oops

* kick ci
2026-03-24 01:54:56 -04:00
Will 3f5a509f55 Ammoboxes In Lathe (#19329)
* boxes!

* kill these

* chonky boxes

* dupe

* proper hacked state for ammoboxes
2026-03-24 01:54:14 -04:00
ARGUS c182831a0d BYTECRAWL: NtOS idle hacking game (#19306)
* BYTECRAWL: NtOS idle hacking game

Hack the world

* Add jobs clear command and expand explain with cipher table

commands/jobs.ts: jobs clear subcommand strips all failed jobs from the list
commands/autocomplete.ts: offer clear and --filter as first-arg completions after jobs
commands/meta.ts:
  - help jobs entry updated to document jobs clear
  - explain: new CIPHERS section with full abbrev/tier/name/types/uptime table;
    T4/T5 uptime warning highlighted; market section trimmed of inline tier list
  - explain tips: note added for jobs clear

* bytecrawl: ascend confirmation gate, sell all command

ascend now requires --confirm to execute; running ascend alone shows a
preview of the GHOST bonuses and a reset warning, matching the upgrade
--confirm pattern. sell all sells the entire cache at current market
prices, printing per-item lines and a total. autocomplete updated for
both: ascend offers --confirm alongside --preview, sell offers all as a
first-arg candidate.

* bytecrawl: merge connect into scan subcommand

scan <id> now probes a target directly; scan with no args or flags
still refreshes the list. connect command removed. autocomplete updated
to offer scan pool IDs at argPos 1 for scan (non-flag). constants and
help entries updated throughout.

* Unangy the belly lint

Make Linters happy

* fix(bytecrawl): resolve all remaining biome lint errors and warnings

* Exlpicitly return FALSE

* Make var h more verbose as handle

* unasterisk the react

he will be missed

* Add more Style points

get it

* remove stale bread

we dont need you

* forgor the other asterisks, not they gone for good
2026-03-24 01:19:36 -04:00
Will 795c98d2c8 removed hacked requirement from chem sprayer (#19330) 2026-03-23 17:54:18 -04:00
Will 48aaa61faf Circuitboard Unit Test (#19322)
* fix

* updated test

* types of

* correct boards

* fix those circuits

* clarity

* fix

* try again

* circuit test

* Revert "fix those circuits"

This reverts commit d4468d669a.

* Revert "correct boards"

This reverts commit b49b0d7f2e.

* Reapply "fix those circuits"

This reverts commit 1189ee9524.

* Reapply "correct boards"

This reverts commit af69adbfe8.
2026-03-23 17:51:53 -04:00
Will 5b92b952dc boop (#19321) 2026-03-23 11:21:46 -04:00
Cameron Lennox 4e0ce943c6 Small SM tweak (#19334) 2026-03-22 22:41:00 -04:00
Cameron Lennox cbc4151bfb Radiation Refactor (#19270)
* Part 1

* WIP

* The rest of these

* More stuff

* Whoops, did that wrong

* typo

* gweeen

* This all works

* SHOWER

* Rads

* awa

* rad

* Update life.dm

* edits

* Makes lvl 3 rads give you a warning.

You should already know by this point, but this makes it EXTRA clear you're getting fucked

* Update vorestation.dme

* aaa

* propagate

* gwah

* more fixes

* AAA

* Update radiation.dm

* Update radiation.dm

* mobs rads

* rads

* fix this

* Update _reagents.dm

* these

* Get rid of these

* rad

* Update config.txt

* fixed

* Update radiation_effects.dm
2026-03-22 12:29:09 -04:00
Will 8c24060294 Cable coils in lathe (#19324)
* cables in lathe

* cable count

* uh

* blacklist wires for now

* feedback
2026-03-21 23:59:46 -04:00
Kashargul 89fb9871e0 next set of admin verbs (#19260)
* next set of admin verbs

* invoke

* .

* a few more

* few more

* .

* few more

* some more

* move thos

* next

* some debug verbs

* axe the old mod loading

* del

* is local for some verbs

* few more

* .

* .

* .

* Add local narrate.

* Fixes this

Needed to be user.mob, since user is  the client and usr was the old user.mob

* fixes

* .

* .

* .

* .

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2026-03-21 17:16:41 -04:00
Aura Dusklight c6f10bfeb3 Convert species, organ_data, and rlimb_data to TG (#19277)
* First test batch bulk change

* remove desync'd old file

* Small change
2026-03-21 04:06:36 -04:00
Kashargul 418bc73c80 whitelist updates (#19288)
* whitelist updates

* migrate things to module

* .

* some more

* robot IDs are now handled by module

* special ids

* .

* .

* .

* .

* .

* .

* move that

* .

* initial

* admin whitelist TGUI

* .

* .

* lol
2026-03-20 20:16:13 -04:00
Will 0c8488b0ae Move autolathe design datums to techweb datums (#19202)
* testing makes me feel good

* invalid lists

* get rid of those boards

* show expected mats

* oop

* error

* wip techweb porting

* more techweb entries

* ported too

* disable those for now

* okay nevermind i guess

* already exists

* assemblies

* moar

* welding helmet

* many entries

* lol tg

* fix test

* again

* fixagain

* more moved

* update techweb test

* catch that too

* screeee

* more fixes

* missing announcement

* orphaned sleevecard

* some more fixing

* test

* more

* oops

* glasses

* illegal icons

* non starting

* it's starting

* messed up

* cleanup

* more generic stuff

* morrrreee

* the plastic set

* oops

* correct value

* barbed wires

* more cleaning

* many more

* gone

* cleanup

* no longer

* do not allow duped designs

* it's own node

* proper order no dupes

* last of the broken nodes

* fix bad path

* cleanup

* more test more limits

* gone

* almost done

* these are gone

* syringe gun

* bioregenerator design

* all moved

* organized and webbed

* more fixes

* oops

* cleaning up

* organization

* clean up

* organize

* organized

* didn't save

* wrong mat

* adds many missing ammo types

* svd doesn't exist

* 10mm pistol added

* magazines not casings

* these are pistols

* this is used by like, one weapon

* m1 is ancient

* this is hunting

* extremely botched untested lathe

* disk junk

* rough foundations

* slowly converting

* slowly building this

* local materials

* almost

* big reorganization

* more cleanup

* more cleaning

* lathe stuff

* small fixes

* oops

* many fixes

* mat fix

* more fixes

* actually isolate the hacked designs

* protolathe hacking

* imprinter hacking

* missing ammos

* sheet printing for autolathe

* fixs

* again

* fixed test

* test test

* fix

* fix

* WHY

* fix it...

* here we go

* material print

* on turf

* body disk

* consistant name

* Many weapons to hacked lathe

* missing node

* wrong section

* fixes

* this list should be unified

* ammo boxes

* don't do single shells anymore

* wat

* specifics

* snowflake

* not needed

* already available

* pickaxe too

* tweak

* removed unneeded node

* missing surgery items

* Apply suggestion from @Cameron-The-Raven

* Adds RMS

* typo

* illegal needs hacked

* disabled material weapons

* circuit testing

* STRING TEST

* test

* fixing some things

* huh?

* hidden circuits

* some flakey boards

* grammar

* fixes

* more hidden

* wrong board

* security cams

* alert consoles

* spaceheater is simple enough to not have one

* pcus

* cargo vendors

* tcomms stuff

* solar tracker circuit

* artifact stuff

* SM stuff

* illegal machines

* med machines

* no longer needed

* more stuff

* these are not standard

* moreeee

* doppler and more

* organized

* finishing

* oop

* use the define

* inheret

* dopper fixes

* space heater

* doing some organization

* explain the var

* some tweaks

* wrong one

* fixed test

* material test too

* simple roto gens

* use the define

* emergency power node

* tgui fixes for icons

* not needed

* color blended material designs

* icons for large research

* oops

* unshit that

* use stack here

* center math

* .

* .

* .

* .

* .

* unifi

* fix these

* NO COPYPASTA

* ILLEEGGALLL

* mandate descriptions

* agony

* actually lets do this

* use macros

* description

* desc

* desc

* desc

* desc

* desc

* desc

* gps desc

* telecomms component desc

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2026-03-20 19:38:00 -04:00
Kashargul 69b919507b allows to update player logs manually, 5 seconds cooldown (#19318)
* allows to update player logs manually, 5 seconds cooldwon

* eh

* .

* better

* .

* .

* .

* .

* .
2026-03-20 20:29:57 +01:00
Aura Dusklight 9247ab8e2f Fix diagonal movement of bots near walls (#19317) 2026-03-20 20:26:43 +01:00
ARGUS 5fda487e43 fix: update_dna no longer resets SE blocks, fixing morph gene wipe bug (#19291)
update_dna() was calling dna.ready_dna() which internally calls
ResetSE(), setting all SE blocks to rand(1,1024) (the OFF range).
Any subsequent domutcheck(MUTCHK_FORCED) call would then deactivate
every trait gene because all SE values read as inactive, including
the morph gene itself.

Replace dna.ready_dna(src) with dna.ResetUIFrom(src), which re-encodes
appearance DNA from the mob's current state without touching the SE
layer. Also correct the stale sync_organ_dna(dna) call to the correct
no-argument form matching the proc signature.

Affected call sites that triggered this bug: the morph appearance
editor, change_gender, add_marking, remove_marking,
change_priority_of_marking, and change_marking_color.

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2026-03-20 00:32:37 +01:00
ARGUS acc2f6046d Fix jukebox volume setting (#19312)
* Fi jukebox volume setting

Jukebox volume is a 0-1 not a 0-100
:fenneko:

* Apply 0-1 remap fixes to more media code
2026-03-20 00:29:50 +01:00
ARGUS 4e0ee95fec fix: MUTE trait no longer blocks say emotes (\! prefix) or radio say emotes (;\!) (#19302)
Noise language is used for audible emotes when '\!' is prefixed in say.
handle_speech_problems() was unconditionally clearing the message for
any mob with sdisabilities & MUTE, including Noise language pieces.

'*emote' in say() bypasses mute entirely by redirecting to emote()
before handle_speech_problems is reached. '\!emote' and ';\!emote' should
be consistent with that: MUTE suppresses speech but not emote actions.

Now, when MUTE is the sole reason the suppression block fires (not
silent or paralysis), Noise language pieces fall through to the parent
proc instead of being cleared.
2026-03-20 00:28:32 +01:00
ARGUS 1ebb3a4f40 Fix laptop card slot not being checked for software access (#19300)
can_run() only checked the user's worn/held ID via GetIdCard(), ignoring any
card inserted into the computer's RFID card slot. This caused access-locked
software to always show an RFID error for users relying on a slotted card.

Three fixes:
- can_run(): add explicit_card param; resolution order is explicit_card,
  then user.GetIdCard(), then computer.card_slot.stored_card
- run_program(): set TM.using_access from the slotted card when present,
  falling back to user.GetAccess()
- ntdownloader.dm: pass my_computer.card_slot.stored_card to can_run() so
  the software download list respects the slotted card
2026-03-20 00:24:27 +01:00
Cameron Lennox f6e3b50988 Gets rid of skip_some_updates (#19284) 2026-03-20 00:09:53 +01:00
Kashargul ad5a08fd0e fixes some bad spawn handling (#19315) 2026-03-19 23:12:02 +01:00
Kashargul 6c768b06ec reimplements attack and player logs (#19313)
* reomplements attack and player logs

* right log cat

* updates logging, makesDB optional

* regex serarch

* .

* .

* .

* sucks

* db load

* .

* .

* db logging
2026-03-19 22:37:45 +01:00
Kashargul 91ce60e01b next globs (#19292)
* next globs

* few more

* some more

* .

* should be added on map laod

* .

* that needs its own PR

* .
2026-03-18 21:27:27 +01:00
Kashargul 167bb4683f cleans that fully up (#19311)
* cleans that fully up

* .
2026-03-18 21:23:56 +01:00
Kashargul cc2b0c253d fix missing explo tall parent path (#19310)
* fix missing explo tall parent path

* Add icon_x and pixel_x properties to exploration sprites
2026-03-18 19:43:30 +01:00
Kashargul ab0aa84714 missing parent paths (#19309) 2026-03-18 10:12:25 +01:00
Kiabiato 2185fe56f1 Gooborg Standard and Exploration (#19297)
* Adds Gooborg sprites for Standard and Exploration

* fixes

* fixes

* fix meta

* fixes

* wrong order

* ..

* fix goo borg datums

* .

* .

* .

---------

Co-authored-by: Ryan Sundin <kiathef0x@04a6976511c5>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2026-03-17 22:25:50 +01:00
Olive f0efa3774f fixes keys (#19307) 2026-03-17 22:22:28 +01:00
ARGUS edf2ebb557 Fix Copy Slot sharing references between loadout slots (#19296)
copy_loadout used check_list_copy on the outer gear list only,
leaving the inner tweak metadata lists as shared references.
Modifications to gear tweaks in the copied slot would write
into the shared inner lists, affecting the original slot until
a save/reload cycle broke the reference.

Fix: deep copy both levels, matching the pattern used for
body_markings in 03_body.dm.
2026-03-17 20:20:25 +01:00
Olive 6cdc214508 adds new sprites (#19301) 2026-03-17 20:19:54 +01:00
Kashargul 4d99fe7027 copy slot needs to override (#19299)
* copy slot needs to override

* space

* Delete code/__defines/js_snippets.dm
2026-03-17 20:07:51 +01:00