* 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
* 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>
* 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
* 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
* 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>
* 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>
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>
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.
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
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.