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
* Brain damage works on organ damage procs, some defib reworks
* Heart and Lung damaging effects and failure, liver damage and failure moved to its organ again
* Cleans up reused global
* Organ damage procs on living and living/carbon
* Changes brain damage procs again
* SR heals all organs on revive, no decay for cybernetic implants, stomach damage and fail effects.
* Damage and failure effects for the appendix, ears, and some touchups on the stomach
* Committing changes so I don't lose them
* Organs now cease decaying in the proper containers
* Organ Fridges
* Reverts map changes
* Adds coronary bypass, lobectomy, trying to deal with organ_stat runtime
* Actually fixes merge conflict
* Smartfridge tweaks
* Think I figured out map merger
* Evidently not
* Still runtiming with glass shards even after I remove the map changes?
* Fixes runtime error with brain_item
* Runtime fix on living/carbon/life
* Cleaning up old PR code
* Brain damage fix, moves defines to actually be in _DEFINES, under DNA since that's where organ slots were
* Wrong math operation used
* Brains in MMIs no longer decay
* Removes redundant variable, and defibs no longer work on heart attacks caused by failing hearts
* Removes misleading comment
* init freezes organs in case organ crates are added, morgue corpses are frozen, removes adjustLiverLoss
* Removes random spaces, scanners check brain damage severity now
* Swaps numbers for defines, fixes brain surgery, rebalances coronary bypass bleed since that was insane last I tested it
* List change
* Runs off of an index instead of using cut
* Brains can be put into organ fridges
* Fixes minor type, hotfix for cloning problem
* Removes pointless check
* Demon hearts no longer decay
* Nightmare hearts no longer decay
* Removes istype() check on process, sets can_decompose instead
* Condenses organ damage report
* Removes organ failure messages
* Less organ damage spam, implements organ threshold messages instead
* Brain damage messages go to owner, not source
* Self-examine shows damaged organs
* Minor code cleanup, adds autodoc comments to the new procs
* Inverts standard organ vars to prevent random organs decaying, adds a few more autodoc comments.
* Merged the booleans into a set of flags
* Healthy living improves organ healing rates
* dunno why this didn't update
* my actions have consequences
* Sets ORGAN_SYNTHETIC for overlooked robotics organs
* Doubles heart decay time
* 3 minute heart decay
* Lobectomy/Coronary_Bypass heal more
* removes hivemind spells from the changes
* Removes shuttle manipulator
* oops
* moves ui to ssshuttle
* fuck it lets just remove it.
* ooops
* Revert "fuck it lets just remove it."
This reverts commit 8a95879f21d3f4aad3d56e33fa90ebc1940c1e27.
* re-remove the old admin proc
Cables now autoconnect on cardinal directions. All cable placement has been completely stripped out and replaced with simple single cable per tile logic.
Low effort demo: https://www.youtube.com/watch?v=fXp8s6ORWbA
Yes I am aware that cutting it is not dropping wire, that version was bugged.
Cables no longer need a knot specifically placed to link to power objects. The sprite is automatically changed to represent this.
The only exception to this logic is that on smes units, due to the terminal being next to the output, they will not link there.
On a technical powernet side, this is the same as old cables once actually placed. They still use the existing powernet system, just the placement and connection works differently.
Old cables have been turned into "pipe cleaners" for wire art purposes. they work just like the old ones, just missing all the powernet functionality, and also you can put them on top of the floor.
Why It's Good For The Game
How obnoxious cables were to both map and work with in game has been something that has annoyed me for a really long time now.
This is both easier for new players to learn, and easier for experienced players to work with.
Along with making in game much more intuitive and easier, it makes mapping much easier as well. Mad lad wjohn was able to rip out all the mapping conversion in one day because of how much faster it is to work with.
cl actioninja and wjohn
add: Cables have been completely reworked. Simple per tile connection logic, automatically connects to things above it. Think minecraft redstone.
add: Old cables have been kept as pipe cleaner. They are non-functional in terms of power, but otherwise have the same connection logic. Also can go on top of tiles.
remove: mech cable layer has been removed because it was terrible shitcode nobody used
tweak: (sort of balance) cable stack sized has been reduced to 15.
/cl
Credits to Europaisch for help finding all the records stuff
Fixes a few issues I was not aware of with my initial PR
* Being agender is now a distinct DNA value (fixes agender spessmen
turning female when having their DNA referenced, like during cloning
and some rudimentary transformations)
* Neatens up preference code, more in line with previous code, fixes
an issue with male underwear not surviving preference loading and
defaulting to female underwear
* Allows agender spessmen to change their facial hair with mirrors
* Change medical, personnel, and security records from sex to gender
and add "Other" option (they currently display "plural" even for
agendered species like ethereals)
* The -san honorific now applies to plural gender instead of just
neuter with the Chinese Cartoons admin secret (highly important)
I have never really played genetics and only tested the DNA code with
cloning and rudimentary transformations while still in a body (which
causes it to reference the old body's DNA, like with cloning). Please
let me know if there's a better way to do this and/or if this is apt
to create issues.
* assemblies are shit fuck em
* maybe press commit before making a pr
* proxy stuff
* morestuff
* qol stuff
* only 1 wire
* revert that garbage that made me conflict
* changes
* wires
* adds small sprites for many of the large megafauna
moves fireball target code back to drake file
changes the speed of every megafauna mob to its move to delay so player controlled ones have the same speed
adds action abilities to each megafauna so players can select the type of attack they want
refactors pretty much all of the megafauna code to be simpler to edit and easier to read as well as have some consistency in where stuff like initialize goes
lesser ash drake now inherits alt click on instead of normal ash drake having it
hierophant no longer blinks on alt click as well
removes pointless check in legion code for ranged timer delay as the proc that calls openfire already checks that
adds icon for new bubblegum blood tracks
bubblegum blood no longer leaves footstep trails as it caused massive lag when many blood tiles were run over in a fight as well as being way too excessive
* fixes a megafauna bug where they could not attack while in space
megafauna can now move through space normally as they would anywhere else
bubblegum no longer runs from corpses and people dying
* fix the weird line errors
* lots of sins have been cleansed (0 = false 1 = true)
switch cases for player attack selection
bubblegum has been bug fixed a bit (steps can be blood warped to, adds blood warp ability)
bubblegum now has some slight additions to its attacks to keep the fight faster paced
bubblegums enrage mode now lasts longer and makes him move faster
legion now has their speed changed properly when they charge (wow this is an old fucking bug like old old)
bubblegum now tries to be aggressive towards people that are laying down (no more resting under bubblegum charges without consequences)
bubblegum now spawns slaughterlings when he devours targets
* fine tunes new bubblegum attacks and replaces some is_procs with defines
* fixes stupid snowflake stuff in bdm code
specifies in defines for bubblegum
lots of sleep_check_death now to avoid stupid stuff
removes need for hierophant_dying var as well as combines all the blast procs into one since they were so similar
Changelog
cl Naksu
admin: "Spawn reagent container" verb has been added to the Debug tab. It can be used to spawn reagent containers and grenades with fully customized contents.
/cl
* [SDQL2] Adds selector arrays
* SDQL2 documentation spec updated slightly
* SDQL2 selector array docs + tweaks
If a single list is the only result of a MAP statement,
meaning objs.len == 1, AND it's a list, it will unwrap
the result from its containing list and return it directly.
The selector array logic keeps track of the state of the query
when it starts the first Search. It won't change the state back
to Execute until the top-level is reached, which sets a var
to keep track.
* SDQL2 MAP change from objs.len to length(objs)
* [SDQL2] Reverts MAP list unwrap
* [SDQL] Move (expr) from expr, unary_expr to var
This should result in the same functionality but instead of expressions and unary_expressions processing sub expressions, variables do
This means that expression->value->variable is now completely recursable
* [SDQL2] Update selector list documentation
About The Pull Request
Fixes several annoying and unintentional things about asay.
Fixes#43370
Changelog
cl Nervere
fix: Default color for when custom asay colors is not enabled is now orange, not red.
fix: Asay is now properly bolded in lightmode.
fix: Asay is now properly bolded in darkmode.
tweak: Default color for when custom asay colors is enabled is now orange, not black.
/cl
closes#43370
* fuck you whoever made the last icon it was garbage
* ticket log fixes
* ticket log fixes
* changes colors from hardcode per line to a define
* some nicer darkmode colors
* asay and ooc name default fixes
* fuck you appveyer build again
* slight brightening of the default font color
* properly fixes tip of the round being hard to read
* better darkmode v1
* ever better colors
* slightly improved tip color + fixed scrolly bug
* updates skin.dmf as well as some small color tweaks
* slightly tweaked more readable info and admin shit
* span_class fix
* merges ooc fixes
* whoops
* MC and ticket screen fix
* no default darkmode
* skin fixes
* more obnoxious adminpm
* more obnoxious adminshit
* skin revert to ensure proper light theme.
* prevents weirdness with default whiteness
* Adds toggleable darkmode to the game! (Use the toggle darkmode verb if you want to use light mode)
* Removes a random linechange
* Undo unintentional changes
* Changes some forced font tags to use spans, which won't break darkmode.
* Fixes up some problems I found while testing
Darkmode is no longer default (this caused some issues with people getting a broken chat)
* Darkmode sucks less now
* Darkmode button now works again
* Play Internet Sound respects start time
For example, adding &t=400 to youtube links.
Doesn't try to parse the start time, youtube-dl does that for us already. Will probably work on most sites not just youtube.
* [Play Internet Sound] now supports end time too
Switched event handler for start to loadeddata from canplay
loadeddata fires when the first frame is available
this is quicker and more consistent than canplay, which tries
to predict at least a few moments of playability being
available before it fires
* [Internet Sound] music_extra_data now starts null
There is now a bitflag that controls all the ways a species can be
selected from the different methods of changing species, xeno spawn,
pride mirror, magic mirror etc.
The soviet and capitalist golems are no longer selectable from the pride
or magic mirrors (just the badmin one)
interesting thing I found, androids and synths (including military
synth) are acheivable via xeno extracts!