Tweaked a hell of a lot of silicon code to make synthetics better.
Synths with scrambled codes that prevent them from being on robotics computers will now appear on Merc camera networks.
Both variants of the engineering borg can now deploy the malf borging machine.
Medical borgs no longer get polyacid sprays, instead getting Wulumunusha CMO Hyposprays, which cause muteness.
You must now be on help intent to use items like crowbars and screwdrivers on borgs. Otherwise you hit them with it.
A few issues:
Async response enums were bad.
Async requests didn't handle an unforeseen error properly.
Get pins were sending an input which would cause a crash of the DLL. (DLL is now fixed to not crash due to this.)
Implements Rust-g based HTTP requests. Removes old curl-based C library.
Features:
Adjustable method, body, headers.
Support for both HTTP and HTTPS.
Supports blocking (synchronous) operations, and non-blocking (asynchronous) operations.
The C++ UDP logging library has been swapped out with a rustg implementation. The rustg library uses non-blocking IO mode, and hopefully has less trouble than the C++ one. Though we'll have to see. It should error when the call is supposed to block.
The old library has been removed.
Adds a system for autobanning IPs which abuse the world/Topic API. The implementation is very analogous to fail2ban. All bans implemented are removed at round end, or at the start of the next round. This is to stop the windows firewall from getting clogged to hell. The system respects whitelisted IPs.
* Ports a psionic system from Bay.
* Rip out this shitcode.
* shitcoden't
* fixes
* it should work fully now
* Admin fixes
* Remove todos
* remove todos part 2
* Removes psi-armour. We don't need this for now.
* Skrell are now operants. Tweaks coercion.
* Adds thralls.
* Temp removal of psiarmour. Fixes psigrabs.
* Thrall assay.
* fixes
* More fixes
* unused define cleanup
* Log and powers
* Skrell powers are done.
* Update code/modules/psionics/events/mini_spasm.dm
Co-Authored-By: Geeves <ggrobler447@gmail.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-Authored-By: Geeves <ggrobler447@gmail.com>
* Update code/modules/psionics/equipment/cerebro_enhancers.dm
* did this work???
* jargon
* arrow's fixes
Co-authored-by: Geeves <ggrobler447@gmail.com>
tweak: "Security's base nonlethal equipment - tasers and rubbers - is now a bit better."
bugfix: "Fixed teargas doing practically nothing."
bugfix: "Fixed a lot of stuff not applying pain damage. Ow."
bugfix: "Fixed undefined values on the CMC."
bugfix: "Fixed dionae not regenerating damage."
Ports (and adjusts) Baystation12/Baystation12#12521 et al. Essentially brings our visualnet code up to the standard of three years ago, rather than five.
Side effects of merging may include but are not limited to loss of AI vision, helmet camera failure, garbage collection implosion, infinite turf loops, and unintended layer shenanigans.
High-level changes:
Overall, visualnet/chunk procs have been renamed and refactored to be clear as to their function.
Fix some layering issues related to magic numbers, these have been set to constants.
Visualnets now track source movement rather than overriding individual mob/obj procs.
Adds obfuscation underlay to complicate memory fudging to remove camera static.
Cameras now only add themselves to the cameranet if they're on open (non-restricted) networks.
Helmet cameras now use cameras themselves rather than network defines.
Adds a sorted object list insertion helper.
The Camera MIU (presently unused) should now function properly.
Unused cultnet / cult mask deleted because refactoring that would likely kill the few brain cells I have left
Adds a new config option that subtracts a flat value from power when going across z-levels in in iterative explosion modes. This should make it easier to balance explosions across z-levels.
Adds more of the Medical and Science uniform sprites. Still have stuff to do. My understanding of code is pretty limited so if anyone knows how to do any of the things I'm trying to do, please comment and tell me how. Otherwise, I'll keep trying to get them working. Also please if any merciful coder feels like looking over any changes out of the kindness of their heart while I'm working on this, please point out anything that might be broken or wrong.
Fixes#7122 - basically just makes IsJobAvailable() check for the player's selected alt-title rather than just the main title, so you can late-join as an 18-year-old medical intern again for example
Also first PR apologies in advance