* Moves chef's CQC area whitelist into the mapping config and better balances chef CQC as a result.
* a
* a
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Removes the Chameleon Skillchip from the game. (#57620)
* Removes the Chameleon Skillchip from the game.
* Update CentCom_skyrat_z2.dmm
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
* Changes fireman carrying from a trait on gloves to a skillchip (#56593)
* Changes fireman carrying from a trait on gloves to a skillchip
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
* Move origin of chef CQC to skillchip (#56437)
One more intrinsic property of a job that has been moved to an
extrinsic, that won't likely affect many rounds, but now makes more
aspects "lootable".
* Move origin of chef CQC to skillchip
Co-authored-by: coiax <yellowbounder@gmail.com>
* fixes various grammar issues (#56446)
fixes misspellings of 'permanently'
fixes grammar with bandaging wounds on yourself
* fixes various grammar issues
Co-authored-by: elle <54373583+dermondarble@users.noreply.github.com>
* Rework job food/alchohol benefits into livers (#55721)
By moving the "special behaviour" of something like security officers
eating donuts, or engineers losing radiation by drinking Screwdrivers,
into traits on the liver, this makes the "origin" of that behaviour more
clearly defined, rather than something that's attached to the mind of
the person. (For example, now if a wizard mindswaps into a Security
Officer, they too can now digest donuts good.)
Having this behaviour be partially visible to the more medically
inclined members of the station (like doctors, and the chaplain for
"entrails reading mystic" themes), means that a dismembered liver tells
a story to those who know how to read it.
Some jobs have more "benefits" than others, for example the only thing
that the liver of a Quartermaster gives them is a sense of inadequacy
when consuming royal carpet.
Clowns having livers that honk make them easier to identify, and plays
into the retconned "bike horns are clown livers lore"? Also, why not cut
out a clown's liver then honk them with it? You monster.
* Rework job food/alchohol benefits into livers
Co-authored-by: coiax <jack@billbuddy.co.uk>
* Tweak the RD's suplexing ability into a skillchip (#55870)
Although this doesn't change the power level of the Research Director,
it's important to rework "job title" checks into traits or something
similar.
Moving job title specific behaviour out of checks by job name and into
traits means there's more flexibility to trigger behaviour. If an admin
feels the station really needs the ability, they can var edit it in, or
spawn the chip.
* Tweak the RD's suplexing ability into a skillchip
Co-authored-by: coiax <yellowbounder@gmail.com>
* Move psychologist immunity from mind to skillchip (#55813)
Skillchips are neat, and this is the sort of "job-specific skill" that can remain job specific, but still gainable in the shift through in-universe means.
The logic behind the skillchip is that the supermatter is psychically sensitive, hence the hallucinations and headaches from looking at it and projecting the "correct mental aura" will help it calm down. But that is lore following mechanics.
Refactors skillchips to be able to automatically apply more than one trait.
* Move psychologist immunity from mind to skillchip
Co-authored-by: coiax <yellowbounder@gmail.com>
* Moves cooldown setting after early return check (#55999)
Library console printers no longer become unavaible after failing to print something.
* Printer cooldown fix
Co-authored-by: interestingusernam3 <51925758+interestingusernam3@users.noreply.github.com>
* Merge pull request #55834 from coiax/k33p-th4t-d15k
Move disk verification into skillchip
* Move disk verification into skillchip
Co-authored-by: Jordan Brown <Cyberboss@users.noreply.github.com>
* Re-assesses 99% of vending prices through Arconomics to match player resources and round-length. (#54715)
* The Re-pricening
* Rewritten and adjusted for paycheck defines.
* I made the map changes finally.
* And the refills too.
* "OH YEAH REPLACING IT ALL WITH DEFINES AND SCALING IT THE EXCEL DOCUMENT WILL BE EASY, ARCANE!!!"
* And the premium ones too.
* Accidently spoiled a future pr due to dme bleedover
* Re-assesses 99% of vending prices through Arconomics to match player resources and round-length.
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
* Refactors occupant to use setter (#54373)
This is to make it easier to attach a signal to the setting of the occupant.
* Refactors occupant to use setter
Co-authored-by: nicbn <nicolas.nattis@gmail.com>
* Enforce preserving parent proc return values across ui_act call stacks (#53964)
All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.
* Enforce preserving parent proc return values across ui_act call stacks
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Machines now store their components in their contents. (#52970)
Machine parts are now located in the machine instead of nullspace.
* Machines now store their components in their contents.
Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
* Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
* Fully removes devil and affiliated shitcode
* weh
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is
Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>
Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
* Opacity refactor (#52881)
Moves all opacity var manipulation to a proc which sends a signal.
light_blocker element for movable opaque atoms made, which tracks its movement and updates the affected turfs for proper lighting updates.
has_opaque_atom boolean replaced by the opacity_sources lazylist to keep track of the sources, and a directional_opacity which serves a similar function but also allows for future expansion with on-border opaque objects (not yet implemented).
Some opacity-related sight procs optimized as a result of this.
Some variables moved to the object's definition.
A define or two added into the mix for clarity.
Some code cleaning, like turning booleans into their defines.
One file renamed for clarity.
Changelog
cl
balance: Mechs no longer block sight. It's a non-trivial cost for the lighting system with little to no gain.
/cl
* Opacity refactor
Co-authored-by: Rohesie <rohesie@gmail.com>
* Personalized combat messages part 2 (#52890)
Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
* Personalized combat messages part 2
* Update misc.dm
Co-authored-by: kingofkosmos <riki.sundberg@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
* [Ready] CDN browser assets! (#52681)
Rewrites the asset_cache system to handle sending assets to a CDN via a webroot.
see https://github.com/MrStonedOne/tgstation/blob/asset-cdn/code/modules/asset_cache/readme.md
Fixed a lot of bugs with assets, removed some dead code.
Changes:
Moved asset cache code to transport datums, the currently loaded one is located at SSassets.transport, asset cache calls made before the config is loaded use the simple browse_rsc transport.
Added subsystem call for when the config loads or reloads.
Added a webroot CDN asset transport. assets are saved to a file in a format based on the file's hash (currently md5).
Assets that don't use get_asset_url or get_url_mappings (such as browser assets referred to by static html files like changelog.html or static css files) can be saved to browse_rsc even when in cdn asset mode by setting legacy to TRUE on the datum returned by register_assets
Added a system for saving assets on a cdn in a hash based namespace (folder), assets within the same namespace will always be able to refer to each other by relative names. (used to allow cdn'ing font awesome without having to make something that regenerates it's css files.).
The simple/namespaced asset cache datum helper will handle generating a namespace composed of the combined md5 of everything in the same datum, as well as registering them properly.
Moved external resource from a snowflake loaded file to a config entry, added it to resources.txt
To ensure the system breaks in local testing in any situation that wouldn't work in cdn mode, the simple transport will mutate the filenames of non-legacy and non-namespaced assets and return this with get_asset_url.
Simple transport's passive send of all roundstart assets to all clients is now a config that defaults to off. this is to break race conditions during local testings from devs accidentally relying on this instead of using send() properly.
cl
refactor: Interface assets (js/css/images) can now be managed using an external webserver instead of byond's one at a time file transfer queue.
admin: Adds admin verb toggle-cdn that allows admins to disable the external webserver asset transport and revert to the old system. Useful if the webserver backing this goes down (thanks cloudflare).
config: New config file, resources.txt, (must be loaded by an $include statement from the main config)
server: The external_rsc_urls.txt config has been moved to the main config system.
/cl
Porting notes:
Interface webpages must refer to their assets (css/js/image/etc) by a generated url, or the asset must register itself as a legacy asset. The system is designed to break in localtest (on simple/legacy mode) in most situations that would break in cdn mode.
Requires latest tgui.
The webserver must set the proper CORS headers for font files or font awesome (and other fonts) won't load.
/tg/'s webserver config: https://gist.github.com/MrStonedOne/523388b2f161af832292d98a8aad0eae
* [Ready] CDN browser assets!
Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
* Color standardization, vars moved, and signals (#52574)
Defined all the existing light_color values.
Moved their definitions to colors.dm
Made white the default color. It was so already, but that was very obscured.
Moved the atom light-related variables to the atom definition.
Wrapped changes to variables such as light_color into procs that report the event through signals.
Moved the light_on variable to the atom level, also adding a signal for its changing, to represent toggling lights.
Cleaned up a little bit of code in where new variables were defined before redefinitions.
This is all atomization to reduce changes in #52413
None of this affect gameplay at all, it's all code cleaning and refactoring.
There's more colors to standardize, a search for color = will find lots of targets, and I see little need to have both the LIGHT_COLOR and COLOR patterns, but I don't want to make this PR bigger than it already is.
* Color standardization, vars moved, and signals
Co-authored-by: Rohesie <rohesie@gmail.com>
* Simple skills framework.
* Map changes.
* Adds skillchips to vendor
* Adds skill stations to the map.
* Circuitboards
* Fix typo
* Some minimal instability
* Fixes,tweaks etc
* Suggest better names or we'll end up with these.
* sharpness thing
* tgui build
* Makes wine from booze synthetizer show to wine tasters.
* Makes wine from dispenser have taste for wine tasters.
* Apply suggestions from code review
Co-authored-by: Rohesie <rohesie@gmail.com>
* Swaps to carbon var.
* wordy helper proc
* While i'm at it, other relaymoves
Co-authored-by: Rohesie <rohesie@gmail.com>
* INVOKE_ASYNC
Replaces a zero-delay timer with INVOKE_ASYNC
* More timers
Switches out some more zero-delay timers for `INVOKE_ASYNC`
* lib_codex_gigas
One last switch
* Converts everything to use setAnchored() + other fixes
* Fixed singulo debug
* singulo again
* forgot to move the vv_edit proc
* caught that this time :)
* changes
* Update code/game/atoms_movable.dm
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
* Case of lower
* More changes
* Ruins the nice 420 diff, brainfart when doing the second batch of conversions
* More changes
* Next batch. I think
* Converts even more paths
* Restarts bots
* Capital Free Zone
* Come on travis, do something
* Renames areas
* Bots, please stop dying
* Updates CONTRIBUTING.md and updates a few paths I missed.
* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger