* Remove duplicate initTemplateBounds method
* Move dmmRegex var to the type that actually uses it
* Keep a single, static map_loader datum
* Combine maploader into parsed_map
* Remove some redundant parameters from parsed_map/load
* Move file2text into parsed_map/New
* Narrow the scope of the map loading lock
* Remove redundant xcrdStart var
* Fix argument names in station reloader
* Move offsets from parsing to loading only
* Tidy argument handling on parsed_map/load
* Store modelCache, track nonexistent atom paths
* Use raw strings to specify the regexes
* Remove cropMap from parsed_map/New
* Don't parse maps twice when checking multi-z validity
Speeds up SSmapping init by approximately 10%.
* Bring the documentation (somewhat) up to speed
* No, I don't know why this fixes it
The game can use more bounties that require actual effort and cooperation to
complete, but give far higher rewards than the "collect some glass shards"
Assistant type bounties. Thanks again to Tlaltecuhtli for these ideas.
I added the following:
Engineering
Various atmos gases, price determined by how hard they are to acquire. I
deliberately left out Stimulum/Hypernobilium, as only a handful of players even
have an idea of how to make them. Plasma tank bounty got removed, since it's
just a case of "put tank into plasma canister and open valve".
Contained Tesla ball. The idea is to build a tesla setup inside the supply
shuttle, then ship it off. This pays a lot, since players have to purchase a
bunch of packs, get them unlocked+approved by heads of staff and finally
construct the whole thing inside a cramped shuttle. Materials alone cost about
14.000 credits for this one.
Tesla containment maintains power during the shuttle ride and it gets deleted
successfully on arrival at CentCom. As a failsafe, I've added both singulo and
tesla as 1 credit exports in case someone ships them over to CentCom without an
active bounty.
Mining
Almost everything you can craft from Lavaland fauna, from lava grilled steaks
over bone axes to goliath hide boats.
* Catpeople are nyow a species
* Fixes a runtime
* Fixes the issues with being forced ears when you chose none
* Neko --> Felinid
* P2
* Update
* Working this time I promise
I really like the Syndie lavaland base since it allows you to test deadly chem
mixes with impunity (read: without getting banned or having to set up a local
server). I have tweaked a few areas to let players experiment even further:
Chemistry related changes:
* Made the testing chamber airlock heatproof and added scrubbers/vents to
restore air after you've ignited the latest burnmix.
* Replaced loose grenade casings/assemblies with a vending machine inside
Chemistry.
* The vending machine contains casings, assemblies and one holy water bottle
for strange reagent/life reactions. If syndies are clinically bored, they can
use it to set up a monster shooting gallery as well.
* Chemical/soda/beer dispensers start emagged. This both allows syndies to
experiment with more chemicals and gives miners an incentive to come inside.
Non deconstructable, meaning you can't unwrench it.
* Added a smoke machine board to the warehouse, as well as more stock parts to
let players build more machinery and beakers for grenades.
Other changes:
* I added a cabinet with syndicate documents to the vault - this is valid for a
10.000 credit bounty at cargo.
* Replaced incinerator machinery with the proper "sydicatelava" subtypes; added
a DP vent and controller to the incinerator airlock.
* Set waste outlet volume_rate to 200 so that the chem test chamber can vent
gases quickly.
tweak: Fusion has been reworked to be a whole lot deadlier!
tweak: You can now use analyzers on gas mixtures holders (canisters, pipes, turfs, etc) that have undergone fusion to see the power of the fusion reaction that occurred.
balance: Several gases' fusion power and fusion's gas creation has been reworked to make its tier system more linear and less cheese-able.
Fusion, even after my rework, is still kinda lackluster in the 'risk <-> reward' department. It's pretty easy to bypass the consequences of fusion as it stands right now, so I wanted to change that. I think you can suspend your disbelief enough for the new effects. Also, there are a couple balance changes to fusion that I'll outline more below that I noticed happening and theorized could happen, so I tackled those here as well.
More specific reasoning for every change:
Addition of nuclear particles/tesla zap
As said before, I thought fusion should be more dangerous. As to why these specifically, I chose the addition of nuclear particles because I felt like it was at least decently thematically appropriate, and had a lot of potential to look visually interesting. The sprite is pretty much just a downscaled gumball with some added fluff. They all have random colors that are chosen when created, and fire out from the fusion holder's turf in random angles and with a 1 decisecond delay. I chose tesla zaps because.. well, they're pretty cool, felt reasonable enough (an extremely powerful release of energy goes well with fusion) and they mix up the damage types caused by fusion (brute from explosion, burn from zap, tox from radiation/particles). I added TESLA_FUSION_FLAGS because the tesla zaps defaultly just ended up exploding whatever they came out of (canisters usually) and ruined the whole thing.
BZ fusion power nerf, nitryl fusion power buff
These go hand in hand. When I first made BZ useful for fusion, I completely forgot (or maybe it just wasn't merged yet, don't remember) that xenobio started with a BZ canister. So, it was super easy to cheese high/super tier fusion by just stealing the canister from xenobio. Thus, I switched BZ's role in fusions progression to nitryl instead, which is harder to make and currently doesn't see much usefulness outside of making it for stimulum.
Fusion analyzing, addition of analyzer_results to datum/gas_mixture
I quickly realized after my fusion rework that there wasn't any ingame way to really quantify how good a fusion reaction was, which is a mistake on my part. Now, you can analyze the power of a fusion reaction and its tier after it happens. I added analyzer_results, since reaction_results worked in a matter that didn't fit what I wanted (reset completely every react() cycle) and I didn't want to change it. analyzer_results is only ever initialized when it's actually going to be used, which currently is only for fusion.
Overall fusion code cleanup
Pretty self-explanatory. I moved all the effects (radiation, tesla zap, etc) to one area instead of having it happen separately for every tier. Now the tiers just set variables used for those effects. Apologies if the diff is kinda hard to read.
Changes to gases created
Low tier is now BZ/CO2, mid tier is nitryl/N2O, high tier is stimulum/pluoxium, and super tier is tritium.
Gas creation numbers are lower across the board, mostly for bz/nitryl/stim.
BZ/nitryl/stim were added in low quantities to the tiers to help with the progression of the various tiers. It didn't really make sense that before, super tier fusion gave stimulum/pluox when the only feasible way to get super tier fusion was using stimulum, and the low tier rewards were straight up useless. Tritium for super tier was chosen because I think it's the gas with the most potential of causing a massive disaster in this scenario.
Plasma no longer counts towards gases fused
Before this change, I realized that you could just stack as much plasma as humanly possible and a minimum amount of trit to instantly get several thousand moles of BZ and potentially other gases for free. No thank you.
I'm still not 100% satisfied with fusion, so expect more PRs like this in the future.
* Photography Update
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Pictures logged in their own /data/picture_logs folder rather than normal logs
* Photos broke, retrying
* Persistence stuff
* I'm almost done I promise!
* Persistence mostly working, compile, etc etc
* Persistence mostly working, compile, etc etc
* Remove something really not needed from the PR
* Prevents duplication
* default to off
* removes check tick
* increase slots in albums to 21
* Allows for singular loading
* Update camera_image_capturing.dm
* Addresses review
* Anturk
* Update camera.dm
* Update misc.dm
* Update datum.dm
* Update camera.dm
This is a traitor item that allows you to deploy inside box that promptly turns invisible. If the box collides with a living being or vice versa, it will be temporarily revealed, pushing against the box will continue revealing it.
While the box is revealed, clicking on it will open the box as well as destroy it, clicking the action button while the box is deployed also destroys the box. Finally, you can't open airlocks while inside the box, that means you must exit the box > open > wait until cooldown > enter box if you're not a smart agent and wait for someone to open the door before sneaking behind them.
The box can be recognized as of syndicate nature due to a red label on its side.
add: The vault now contains an ore silo where the station's minerals are stored.
add: The station's ORM, recycling, and the labor camp send materials to the silo via bluespace.
add: Protolathes, techfabs, and circuit imprinters all pull materials from the silo via bluespace.
add: Those with vault access can view mineral logs and pause or remove any machine's access, or add machines with a multitool.
tweak: The ORM's alloy recipes are now available in engineering and science protolathes.
Adds an organ harvester. It's a machine. A human goes in, and the machine starts removing organs and limbs and ejects them right next to the machine. The process can be stopped at any time by either disabling power or prying it open.
The machine does not work if the subject has clothes or appears alive. The health scan can be disabled by emagging, but they'll still need to be naked.
It consists of 4 micro-manipulators, each tier making it faster, but it shouldn't ever really go below 2.4 seconds for every iteration, barring magic fuckery
It's basically a slower acting gibber, but it preserves all limbs and organs.
Useful in conjunction with either a limb grower, bounties, extra food, organ replacement or for something yet to come
* Add BSQL library v1.1.1.0
* Modify dbcore to use BSQL
* Add missing QDEL_NULL for connectOperation
* Moves BSQL_Shutdown() call to dbcore shutdown
* Fix passing the wrong argument to DBQuery/New()
* Darn it @Jordie0608. Fixes db calls without Connect check
No seriously please make sure I'm not breaking anything
* Queries with a null connection won't runtime
* Fix quoting
* Fix mistake
* Update BSQL to v1.1.2.0
* Update BSQL DMAPI to v1.0.1.0
* Fix connection instatiation
* Does the smart thing in regards to quoting
* Fix braces
* Update BSQL to 1.2.0.0. DMAPI to 1.1.0.0
* Execute/NextRow/MassInsert now have async parameter
* Build BSQL for tests
* Add missing apt source
* Def still need gcc-multilib
* Wut
* Revert "Wut"
This reverts commit d7c98a9a6b27f6db03e9f5cc534650d59d018048.
* Try this then
* Could it really be that simple?
* Literally running out of ideas here
* Update BSQL to v1.2.1.0 DMAPI to v1.1.1.0
* Update BSQL travis version
* Nothing about this makes sense tbqhwyfam
* Whoo boy
* No idea why this isn't working tbh
* Absolute madness
* Ahhhhhhhhhhhhh
* *deep breath*
* "though yet again i was frustrated by failure"
* Add BSQL to Dockerfile
* Pass through MassInsert async param
* BSQL to v1.3.0.0 DMAPI to 1.2.0.0
* Add timeout support
* Wait, something's fucky
* Wtf is this meme?
* Just get good lmao
* Just stop being shit lol
* Stupid verbose logging
* Remove verbosity
* Good god
* BSQL to v1.3.0.1 DMAPI to v1.2.0.1
* BSQL to v1.3.0.2
* Update BSQL travis version
* Update BSQL docker version
* Didn't mean to change that
* Strip connection information from debug logs and make it configgable
* Move this to where CONFIG_GET is defined
Added a new ghost verb that lets you change your ignore settings, allowing previously ignored popups to be un-ignored and notifications without an ignore button to be ignored
cl Floyd
del: removed beauty / dirtyness
balance: Mood no longer gives you hallucinations, instead makes you go into crit sooner
/cl
oranges requested these changes, i havn't coded in DM for a while so I might have made some mistakes
Changelings can now take the Pheromone Receptors ability to hunt down other changelings.
Changelings' 'Absorb another ling' objectives have been astoundingly difficult for a while now because lings haven't historically had any good way to identify each other. By the time a ling gets called on the radio, every bored validhunter on the station is already dragging it to the cremator while beating it, making the old yoink'n'succ borderline suicidal. Short of some sucker announcing his name and position over lingchat (a mistake most people only make once), changelings assigned to absorb other lings are nearly always SOL.
With this in mind, I've created 'pheromone receptors', a new changeling power. By tracking the unique but normally undetectable scent of other changelings, a hunter can track fellow lings and find their general location. Similar to the target pinpointer that all IA agents get, receptors help to locate other changelings, with a few important caveats:
They have a maximum range of 25 tiles. They will not give any indication of changelings outside this radius.
They have a minimum range of 10 tiles. The pinpointer will not display a direction for closer targets.
The pinpointer does not show its current target. It may switch randomly between targets at similar distances.
The pinpointer slows down chemical regeneration while active, similar to the 'mimic voice' ability.
The power has to be purchased for 2 points.
This power is not intended as a replacement for player skill in identifying changelings; rather, it's a supplement. Hunting lings can easily identify lone and out-of-place people as their targets. This encourages hunted changelings to stay mobile and in public, where it will be more difficult to confirm their identity. Well-hidden changelings might in turn be able to detect someone who's looking for them; This allows them to either slip away or arrange a confrontation.
Hopefully, with a way to accomplish this objective that's not random-ass luck, changelings might be able to start greentexting regularly again.
*No they won't, team objectives still exist.
* A Variety Of Updates
* Lovey Sprites!
* Adds implementation for listening status effects.
* Fixes implementation, uses defines instead of magic strings.
* Completely reworks status effect listeners
* Fixes Love Potions
* Fixes Approximately All The Things.jpg
* High Gravity - First Draft
* Replaces has_gravity defines for areas.
* Default gravity ztrait
* Adds some gravity effect and skips damage at gravity = 2
* Paralysis icon
* Antigravity grenades for some abuse
* Makes the damage treshold a define and makes alert description more accurate.
* Bluh
* Added multicamera mode for AIs
* Minor multicamera fixes
* Cameras near an AI multicamera eye now light up red
* Disabled AI multicamera mode without admin intervention
* Fixed AIs being able to use multicamera mode when they should not
cl
experimental: Chemistry now has something called specific heat. For the uninitiated, this is the thermal capacity of the reagent, much like how some atmospherics gases have different thermal capacities, making them able to absorb/release more energy per degree of temperature change!
rscadd: Plasma specific heat is 500J/K*unit, everything else is 200
/cl
* Reduces selfcharge gun processing/icon work
* More efficient gun overlays, adds old_ratio var
* oh my god it was calling the egun's update_icon?
* percent proc
* Attachment overlay overhaul
* Cut overlays in egun update
* ebow 1000% better overlay management
* Update gun.dm
* Pointless check
* Giving KA and children consistent icon behavior
* Update kinetic_accelerator.dm
* Fixed
* ..() readded
* ..() readded
* ..() readded
* Antur didnt catch this one heck
* Because confusing vars are apparently more maintainable
* Gun overlays 2: Electric boogaloo
* another one
* Chameleon guns are removed
* tentacles everywhere
* Adds VR Snowdin and Syndicate Trainer
* Replace var edit
* I did forget to add a few
* Adds one full outfit spawn
* internals too
* closet
* Extends same Z level check to monitor and emping
* restricted uplinks
* camera bug fixes
don't talk about the bees
outfit changes
More items
outfit fix
* Adds vr sleepers to runtime station
* More mapping fixes
* Adds telecomms to taunt your enemies
* More restrictions
* Some fixes
* badabing
* More fixes
* emag related changes
* forgot the ract
* Additions
* griff resistance mode
* minor changes
* Removes old centcom away map
* Pushes you out of VR if you try to ghost
* this is 🅱️roke
* this shit is not 🅱️roke
* as requested
(THE CODEX ASTARTES CALLS THIS MANEUVER: STEEL RAIN) [New sprite!]
* file
the boy
asdh
beacon overlays
first pass complete bring out the drinks boys
fixes!
fixes!
whups fix name
speed
makes coffin a crate to prevent runtimes
sprite fuckup:the musical
whups more fixes
why tf was screengen modified???
TO THE FILE
devices
changes things
p[omf pomf
uhg
alright fuk it
issue fix pt 1
in which i make merge conflicts my bitch
by fixing devices.dmi and tgui.js
oh shit
forgot about the items repath
hm
nah
merge conflict a
then all ya gotta do is whip
* shiv review me code reeeeeeeeeeeeeeee
* rebase conflict
* anturk
* asdf
* wooooeeeeeeh makin bacon
* dont forget about lil old me
* id like to give a shoutout, to my man spacemaniac. on the soul plane. rip in peice, my bugs. rip in peice
* spacy man what is ur spacy plan
* 1st
* 2nd
* organization also a thing
* so i figured out why defines didnt work sometimes across files. this fixes the last issue rn
* forgot to cop the commit
* fuck how am i so stupid
* adds comments and agrees with spacemaniac
* asdfghjk