* refactor wip
* rerolling and qol
* space not valid
* travis be nice
* comment?
* new tablet sprites
* Start on uplink screen
* new suit sprite
* paper
* merge conflict
* Auto stash before merge of "contract-reroll" and "tgstation/master"
* rebase branch
* Revert "rebase branch"
This reverts commit 72e70fe8ccabfa6c750193a57beeec14b30a2533.
* Updated this old code to fork
* gives the clown hugbox
* Clown gets hugbox back
* Removed new boxes, changed box code
* Sorted line spaces
* Removed sauce
About The Pull Request
repaths clothing/under to be more sane
Also fixed a couple of bugs relating to pathing being incorrect, and modified a couple of bad descriptions and names
Also adds a map path updating script, which also helps show the full repath.
Why It's Good For The Game
improves maintainability, makes mapping easier, stages for a clothing dmi split
Changelog
cl
refactor: repathed all under clothing, keep an eye out for errors
/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
About The Pull Request
Beekit now gets one less beenade and has a lower chance, beesword has worse armor pen, does 2 less damage and injects 4 toxin as opposed to 4 histamine (could be looked at as a buff though). Plus I removed some pointless // remarks that I previously made but I doubt that really matters
Why It's Good For The Game
Pretty overpowered, hopefully this will make things better.
Changelog
cl
balance: Beekit now has a lesser chance of spawning and has one less grenade
balance: beesword now does 2 less damage, has worse armor penetration, and injects toxin as opposed to histamine
/cl
* Adds adjustLiverLoss & getLiverLoss procs to carbon
* Adds trophazole
Adds trophazole, a brute healer that makes doctors take a more holistic approach to heal, It is highly reagent efficient by converting nutriment to healing peptides. Creates an avenue for cooperation between kitchen and medbay.
* Adds rhigoxane
Rhigoxane is a chilly burn healer that works best in a spray bottle and is capable of extinguishing fires.
* Adds thializid
This tox healer has great potential and mixability, balanced by requiring the doctor to take note of the patients liver health as well as using proper dilution and an iv pole; that wont fit in a powergamers pocket.
* Charcoal + trans_to changes
Makes charcoal only work when ingested, and adds a new proc in reagent holder, lets trans_to react the transferred reagents if a method is chosen.
* Medical + Syndicate spray bottles
Medical spray bottles have been added to techweb under the biotech node for medical vapor application, alt click to change their skin.
Two suspicious spray bottles have been added as expensive contraband items in the chemdrobe. They have one extra spray range and a random suspicious skin from a pool of 8.
The large spray bottle and the space cleaner bottle also have new icons.
In addition trophazole and MMF have new colors.
* Adds chempacks
the IV medicine bag, or chem pack is the blood pack analogue for chems, it is easy to fill like a beaker but can also be permanently sealed to prevent spillage and mitigate tampering. It can be renamed with a pen. Both the new chem pack and the old blood pack have been added to the medical lathe and biotech node.
* Adds recipes to thializid and trophazole
Also fixes the rhigoxane recipe
* Medsprays are now medigels + fixes
chem packs can now be stored in the smartfridge and chem bag.
Medsprays were renamed medigels to reduce confusion. Calling them medical sprays made no sense since they apply chems through the patch method.
The lore for the new medigels is that they spray a thick gel onto the skin that dries into a film.
* minor fixes + mint frosting
I have tried to fix the problems people have pointed out. And the peptides now taste like mint frosting.
* Readds my cleaner sprites
* Adds liver damage to thializid + adds on_transfer proc
Thializid has a liver cost, the cost is worse if you have already sustained liver damage. Fixes weirdness by moving the reagent conversion effects from reaction_mob to on_transfer
* Fixes chem bag examine
The chem bag examine now werks, also fixed a typo in the description.
* Adds a clumsy check to sealing the chem pack
* Makes kelo, bicard and anti-tox unmixable.
I have retained the tricord recipe for now in case someone manages to collect all 3 through non-dispenser means. Think of it like collecting all the dragon balls but lame.
* Makes damp rag apply on_transfer effects
* glass and food now work with trophazole
glasses and food now call the on_transfer proc via trans_to
* Another round of fixes
Replaces 0/1 values with TRUE/FALSE where appropriate. Removes the debug printout from the spray bottle reskin. Replaces one instance of L.damage with C.GetLiverLoss().
* Rhigoxane recipe is now COOLER
200k was too warm since cryostylane cools down so much by itself upon mixing.
Now the chemist has to choose between adding oxygen for instant cooling or using the heater/cooler to conserve energy.
* Removes the seal() proc and moves its guts into AltClick
* Item_state switching moved to reskin_obj
* Fixes missing medical sprayer left inhand
the sprayer_med_yellow inhand sprite now has the correct name.
* Fixes inhand updating
* Update code/modules/mob/living/carbon/damage_procs.dm
Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
* Update code/modules/mob/living/carbon/damage_procs.dm
Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
* Tries to add typecache
* Moves the typecache and makes it static
* Payment generation rework and no repeated target
* Blacklist
* Remove pod explosion
* contractor baton
* darker highlight
* Slight increase for the higher paying contracts
* Victims get healing injected to bring them out of soft crit/crit
* pod send fix
* Text changes
* More text tweaks
* New baton - custom sprite/sound
* Better sound - fixes
* Stutter
* text
* classic_baton rework
* attack silicons still, and only show charging for new baton
* Properly attack/stun silicons where appropriate
* . list
About The Pull Request
Gives the specialist space suit supplied in the contract kit it's own custom sprite. Sorry about quality, compression seems to mess it up a bit.
When first assigning yourself to the tablet too, a greeting soundclip will play.
Sprite
Why It's Good For The Game
Laying down the foundation for it's own antag type.
Changelog
cl
add: Contract kit's specialist space suit now has its custom sprite.
add: Assigning to tablet now plays greeting soundclip.
/cl
The dish drive is a neat little machine but it has a few quirks that makes it a bit of a pain to use, so that's what I'm looking to fix.
Dish drive will still collect but no longer throw away your still perfectly usable dinnerware. Glasses are not disposable, despite what your average bar patron would like you to believe.
The bardrobe now sells a premium box with all the parts you need to build the dish drive (the board alone can still be found in the free category). Saves you the trouble of running around the station looking for parts instead of serving your patrons, but it's quite expensive. Make sure to tip your bartender.
cl
add: DIY Dish Drive Kit now available at your local bardrobe. Start saving those tips!
tweak: The Dish Drive no longer sends reusable items into the disposal bin
/cl
About The Pull Request
Adds an ammo system and printable ammunition to most mech weapons with a "rearm" function. Replaces the old system of generating ammo at a power cost. With the exception of the missile launcher and clusterbang launcher, all affected weapons have a storage capacity of ammunition equal to four-times the amount of ammo that the weapon can load (though the storage cache starts with only one full reload when printed from the mechfab). Ammo boxes are printed from the mechfab and also are available in the Sec protolathe, and each box will carry exactly one full reload. Ammo boxes are not terribly expensive, but reloading requires either an ally on foot to pop the ammo box in, or for you to hop out and do it yourself.
Missile tubes and the clusterbang launcher do not have an ammo storage cache, and so reloading them will reload the tubes directly. This is not the full extent of nerfs that the missiles need (I will do those in a separate PR since I suspect this one will be controversial) (read below), but removing the ability to reload missile pods without an ally or exiting the mech may help a bit.
The SRM-8 has been replaced with the new BRM-6 in tech webs. The BRM carries a smaller explosion and does not explode unless hitting a wall, door, shutter, or another mech, and only has six shots. The SRM-8 remains on the Mauler mech. If the BRM missile does not explode, it will deal 30 brute damage instead, and break.
Why It's Good For The Game
Currently, mech ballistic weapons function like reloadable lasers. You have an ammo counter, but it's one hundred percent based on your energy cell. This gives some flavor to ballistic weapons, making them actually feel different, and gives them a mini-niche in the form of good choices to use alongside an energy-draining mech ability (like the Gygax speed).
Use lasers when you won't need to worry about power and/or need burn damage.
Use ballistics when you want to save power and/or need brute damage.
The SRM-8 to BRM-6 change is being done here so that I don't have to wait until this PR is merged before starting it. The idea is to keep the reasons why you'd want to build a missile launcher (wall breaking and mech fighting) without also outclassing most other weapons burst damage potential. I'm not truly happy that the explosions deal zero damage to surrounding people even one tile away, but dealing no damage is better than the massive damage + stun that the current missile launcher does. Nuke Mauler has the old launcher, since I believe the consensus is that Nukie Mechs are already not generally worth the money.
Changelog
cl
balance: Mecha ballistics weapons now require ammo created from an Exosuit Fabricator or the Security Protolathe, though they will start with a full magazine and in most cases enough for one full reload. Reloading these weapons no longer chunks your power cell. Clown (and mime) mecha equipment have not changed.
balance: The SRM-8 Missile Launcher has been replaced with the BRM-6 Breaching Missile Launcher in techwebs (Nukie Mauler remains equipped with the SRM-8).
balance: Both Missile Launchers and the Clusterbang Launcher do not have an ammo cache, and cannot be reloaded by the pilot. Once the initial loaded ammo has been spent, you can use the appropriate ammo box to load the weapon directly.
add: Utility mechs that have a clamp equipped can load ammo from their own cargo hold into other mechs.
add: Nuke Ops can purchase spare ammo duffel bags for their mecha weapons, should they run low.
/cl
To-Do:
Add ammo to security protolathe
Get better ammo box sprites (hopefully)
Possibly adjust ammo counts for balance. Might make the flashbang launcher and/or cluster launcher behave like the missile pod.
Add functionality for the utility mechs to use clamps to load ammo from their cargo hold into another mech.
Ammo counts, for anyone wondering:
Weapon Magazine Size Total ammo at start* Maximum total ammo*
Scattershot† 40 (10) 80 (20) 200 (50)
Hades 24 48 120
Ultra AC 2† 300 (100) 600 (200) 1500 (500)
BRM-6 Missile Rack 6 6 6
SRM-8 Missile Rack 8 8 8
Flashbang Launcher 6 12 30
Cluster Launcher 3 3 3
*Total ammo is the amount in the weapon's magazine plus the stored ammo.
†The Scattershot lists its ammo as 40, but uses four per shot. So in reality, a single full reload gives you ten shots. Similarly, the UAC2 fires in three-round bursts, and so 300 rounds is 100 bursts.
Clown weapons (and the mime weapon) are all unaffected by this change.
About The Pull Request
Adds two new mime spells to the game. Both work like the invisible wall, i.e. they spawn an invisible item for a limited amount of time:
Invisible Chair: Summons a chair and has the mime sit in it. Perfect for crowded shuttles or staying put.
Invisible Box: Everyone's favorite stock mime routine! The mime summons a box (invisible to everyone but him, although you do get the message once spawned) that can store small items. When it disappears, the items are dropped.
To prevent massively overpowered mimes, the mime gets a spellbook at roundstart from which he can choose only one out of the three mime spells.
Why It's Good For The Game
The mime doesn't get nearly as much cool stuff as the clown, and these are pretty common pantomime routines to riff off.
Changelog
cl
add: After receiving many complaints about mimes who never pantomime, Nanotrasen has liquidated its mime personnel and hired new mimes who know more routines.
add: The mime gets the choice of two new spells: Invisible Chair and Invisible Box. They work much like the Invisible Wall spell does and disappear after a short span of time. The invisible chair can be buckled to like usual chairs; the box works like a standard inventory box item.
tweak: Mime spells are now granted via a spellbook that starts out in the mime's inventory. Mimes can choose one of these three.
/cl
* QoL and location bugfix
* QoL and bugfixes
* Further fixes
* Name fix
* Text changes
* revert delay
* Same fix for returning
* description update
* New TC generation
* Slight delay for ransom cut, so they can hear the beep
* Give a written guide
* Third item
Alright I'm sold, let's try it
* Forgot to add text changes in line with the new item
* Merge conflict
* In datum
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
* 1/4 done? maybe?
* more
* stuff
* incremental stuff
* stuff
* stuff & things
* mostly done but not yet
* stuffing
* stuffing 2: electric boogaloo
* Git Commit and the Kingdom of the Crystal Skull
* make it actually compile
* found more stuff
* fixes
* fix AI laws appearing out of order
* fix windows
* should be the remaining stuff
* this time for real
* i guess it should compile too
* fix sechuds
* Emag bounty computer to show contract connection
* Corrupted text helper
* WIP on corrupted text
* Randomly corrupt text when looking at connect screen
* Barebones accessible Syndicate bounties screen
* Contract barebones and Synd UI work
* Further text changes, antag checks
* Further UI changes, full contract generation with areas/target
* dropoff point checks, and move to uplink item for requesting bounties
* WIP contract uplink item
* Contract uplink and continued contract improvements
* Completed contract uplink, and continued contract work
* Droppod WIP
* Further droppod work
* Mob WIP
* Further mob WIP
* No mob
* Callback for putting in mob
* Further WIP with pod checks
* Better location picking and signal fix
* Further pod changes, WIP of payouts
* Overall finished payment/contract system
* Code cleanup
Revert changes to bounty console
Remove debug messages
* Small refactor
* Add kit with set and randomised items.
* Fix box
* Very minor flavor text for inserting into pod, plus roundend text
* Pod return sound
* Contract uplink slight styling changes
* We don't keep giving telecrystals until they literally can't hold anymore
* Ship them off to ninja base instead
* Nerf bring them dead, but give a nice boost for bring them alive
Overall this is a nerf, so we also throw in an agent card to the bundle
* Ship them back
* Minor text changes and slight TC change
* Always give the black and red variant space suit
* Error sounds
* Dropoff area locator
There's sometimes duplicates, i.e. security office - but only one of them will work. This shows you where to go.
* Small fixes
* Bugfix, further changing of TC
* Ransom wip
* Ransom system
* Few changes
* Properly pay for ransoms and appropriate logic for dropoffs
* Terminal sounds
* Talk on command channel when ransom is given, or if they were too late
* Change to announce system
* Announcements/auto pay ransom
* Proper wait
* Name pods properly
* Don't send blacklisted items
* fix
* Improvements
* Announcements are less huge...
* Not a file...
* Improvement
* Drop them not in a wall
* Halves eye blur and styles payment vend
* No memes allowed
About The Pull Request
Adds book of Insulationism to the chaplain's book options
Why It's Good For The Game
adds the option for Insulationism as a choice for the chaplain's
Changelog
cl
add: Added new chaplain book option
add: Added hypertool null rod option
imageadd: added Insuls book to storage.dmi
imageadd: added hypertool icon to device.dmi
/cl
About The Pull Request
Purification of a soulstone (hitting it with a bible as noncult) no longer destroys the stone, and releases a spirit. Instead, it purifies the stone, which is crew friendly and has a new sprite. Said stones can be placed into construct shells to create purified angelic constructs, which are easily distinguishable from cult/wizard constructs.
Why It's Good For The Game
Crew finding and using construct shells to create stealthy anti-cult constructs sucks. This PR would get rid of this shitty gameplay, and adds some new flavor to the whole cult/anti-cult dynamic.
Changelog
cl weeeeesoda
add: You can now purify soulstones! This can be done by any crew member using a bible on one.
add: Purified constructs can be created by using a purifed soulstone on a construct shell. Amongst their normal abilities, purified constructs can dispel cult runes by clicking on them.
del: Ability to place chaplains soulstone or mining soulstones in construct shells
imageadd: angelplasm, angelic sprites, purifed sprites
/cl
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
* Removes repeated line
* Description change for clothing items that can only store specific items
* Get all children of can_hold listed items.
* can_hold only needs the top most item, child items are dealt automatically
* cant_hold related change
* Text change
* Moves the item check to the line above, and removes the current.
* Same changes, but to belt/wallet code.
* Change to using signals instead
* Generic signal on datum/topic
* Cache typecache, and small signal change
* Small argument tweaks and remove unneeded lists
* Change to proc
* Change call can_holds/cant_holds to use new proc
* initial, and cleaned up display code
* Null check