* Unicode support Part 2 -- copytext()
This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.
I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````
with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.
This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.
* Makes the code functional
* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.
* Removes ninjaspeak since it's unused
* Intercom examine tells you about :i
If you're close enough to them
* Intercom exmaine message different depending on proximity
* Intercom examine isn't dynamic
* species can handle enviroment differently
* forgot slimes, removed environment check was a dupe
* slimes are now fixed, cleanup
* base living getting better math also
* ethereal lowered bodytemp, raised heat damage
* plasmamen were to cold
* old language thing in my fork
* min max to base proc that is better
* added item back, better docs
* better docs, moved a vars
* moved above vars in ethereals
* natural stabilization is fixed
* resist is better
* ashlizards needed more heat
* Comment updates
* fixed a comment
* better doc comment
* DB ticket procs
* Schema changes for DB tickets
* Schema version update
* Fixes requested by Jordie
* SQL updates
Adds a recipient column
* Still one dangling issue where this DOESN'T WORK
* Alright, this should work
* Requested SQL fixes
* Rogue changes
* less bad defaults
* utf8 for the utf8 gods
* aaaaaa
* Update tgstation_schema_prefixed.sql
* Update tgstation_schema.sql
* Update database_changelog.txt
Co-authored-by: Jordie <4343468+Jordie0608@users.noreply.github.com>
* Fuck it, still not working but the work is at least started
* ALRIGHT we got this shit working off of existing procs now, no bloat :arm:
* Alright take 2, it's still not removing 2/3 instead of 1/10
* Alright this still isn't working fully. Thoughts?
* Attempted calling purge alone.
* Where I got before calling it tonight
* Re-adds bools.
* Alright cool, now 2/3 of the body's chemicals are being purged at a time, if this is too high, let me know.
* Renames the surgery to "stomach pump" to better match it's effects.
* Fixes leftover sprites from the organ PR, forgot to rename fully.
* FINE COBBERT
* Added cult major loss if Narsie is destroyed.
* Minor corrections.
* Why did this compile?
* Minor fixes.
* Not bool
* Changed to defines as requested
dos mitigation that likely won't fully work but let's see anyways.
backstory:
byond's ban system will automatically ban world/Topic flooders. Sadly updating byond's internal ban list causes isbanned() to get called on all connected clients. Also sadly: it does this every time it sees the world/Topic flood on the same ip, causing every connected client gets checked repeatedly for every flood message world/Topic sees.
About The Pull Request
Removes the stun on the hook to bring it in line with other weapons losing their stun. Reduces the brute damage, adds stamina damage.
Why It's Good For The Game
Paralyze as a weapon mechanic is no longer supported, this brings the hook in line with other modern stamina-damage weapons. It also brings the hook's armor penetration down to something closer to an armor piercing rifle round, rather than being an absolutely perfect armor penetrator.
cl
balance: Removes hitstun on meathook
balance: Changes meathook's damage from 25 brute at 100 armor penetration to 20 brute, 20 stamina at 60 armor penetration
balance: Changes the bounty hunter's meathook to do 40 stamina damage instead of a stun, adds a half-second knockdown.
/cl
About The Pull Request
Round 2.
image
Adds a new tech to be unlocked within the B.E.P.I.S.'s major techs, called "Specialized Engineering". Within that tech are 2 new items, Heat Resistant Rods, and the Tinker's Gloves, as well as a new minor tech, the Survival Pen.
Heat Resistant Rods:
Have you ever wanted to expand Lavaland Base? Build a lava fortress worthy of your magnificence? Well, now you can! Using Heat Resistant Rods, you can make a catwalk to cross lava tiles, as well as build atop lava, without messy methods like using the RCD!
Tinker's Gloves:
This just in engineers, insulated gloves have new competition in town! The Tinker's gloves are complicated, overdesigned gloves that, while not very shockproof, allow for faster wall girder construction. No longer will you need to die of old age walling off an area when you're out of RCD ammo! Warning: This product contains no likeness to clockwork gauntlets used by the extinct cult of Rat'Var, and any such similarity is by no means intentional.
Survival Pen:
Have you ever been stuck on lavaland, trapped by your survival pod with just a few chairs, some titanium walls, and walls of ash closing in on you? Well THANK GOD you have your Rockbreaker brand Survival Pen! Allows for basic mining operations, and is portable like a standard pen!
BUT WAIT!
A watcher blocks your path. Thankfully, your expensive, diamond encrusted pen isn't just good for being the world's slowest pickaxe, it's ALSO coated in the one thing watchers crave: DIAMONDS. Toss the pen to draw the watcher's attention elsewhere.
Why It's Good For The Game
Starts to fill our B.E.P.I.S. Major Reward Techs, as intended, and fills a niche that doesn't get much play nowadays: Building on Lavaland. This was something I've had in the back of my mind since we did the first tests of the Disaster gamemode a few months ago, so each item here was made with the intention of improving the mining base should the station become un-livable. Lava-Proof Rods are beneficial in that you'll be able to cross and build over lava by the mid-end of the shift. RCDs still work as usual, but this way you won't have to worry about getting specialized engineering equipment as a member of cargo or science. The tinker's gloves are basically a variant of the nitrile gloves, but they grant a speed bonus to adding plating to metal girders, so that some kind of functional alternative to giving every engineer insulated gloves.
Survival Pens are quite honestly very niche, but getting dumb pens with extra functionality is a tradition of trade shows all over the world, so it feels right at home as a minor reward.
Also, does a tiny change to the doe sprites, just to look a little bit less old.
Changelog
cl
add: A new Technology has been implemented as a major reward in the B.E.P.I.S., Specialized Engineering, to appeal to engineering utility and new construction horizons.
tweak: Watchers will now actively consume diamond ore left lying around, alongside the new survival pens.
/cl
About The Pull Request
When #48236 was in progress, there was discussion about how a crew pinpointer was OP for paramedics. I immediately had an idea for a new one and made a PR to the paramedic PR. 81Denton asked me to make this its own PR after the paramedic PR was merged.
The proximity crew pinpointer does not point in the direction of the patient, but has a circle sprite that gets smaller larger as you get closer, so you have to search around, or combine it with the handheld crew monitor.
The circle is at maximum the smallest size after 29 tiles away, so you must be 28 or fewer tiles away for an indication that you are getting close. I welcome feedback on this. The handheld crew monitor can be used to find the area they are in.
proxpin
Demo video: https://youtu.be/_rXeJ49b-e8 (The pinpointer gets bigger rather than smaller now)
This is only attainable at the moment to paramedics as they spawn. Should it also be available elsewhere? now constructable from the Biological Technology techweb
Further changes
Moved Crew Pinpointer into premium nanomed items for 900 credits
Moved Handheld Crew monitor into premium nanomed items for 1750 credits, same price as before
Why It's Good For The Game
In #48236 it was stated that paramedics should start with the bare minimum equipment to do their job. The crew pinpointer that points them in exactly the right direction is pretty powerful, and this nerf will encourage them to either get used to the proximity one, or upgrade to the normal one at a price from the NanoMed or from techwebs.
Moving the Crew Monitor into premium was necessary to make it more of a luxury than an instant grab.
Feedback for nanomed premium prices on the normal pinpointer and the handheld monitor would help a lot
Changelog
cl JJRcop
add: New proximity crew pinpointer.
balance: Paramedic's crew pinpointer replaced with proximity crew pinpointer.
balance: The crew monitor was moved to premium items in nanomed, same with the handheld crew pinpointer
/cl
* update_icon() improvements
Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().
The rest of obj/item fuck it
* Suggested fixes, also passes the linter
* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON
* Actually this is better
* Signilzes datum/action to update its icon when its connected item does.
Adds a new emergency response team, the ERP! It stands for Emergency Response Party
the ERP includes:
-the coordinator: basically the captain of the operation, armed with a birthday cake, balloon and lots of fireworks to start the celebration
-the bouncer: the big boy, has a telebaton and an armor vest (if youre a loser you get a police hat too)
-the constructor: has tools, materials to build the party, disco tiles and an ethereal disco ball planter
-the cleaning service: your normal jannie, with his trusty mop, trash bag and cleaning grenades
-the comedian: a clown, armed with instruments, a bananium shield and chameleon suit/hat, for some comedy at the party
initial work
more work
more roulette work
more work
more
yet more
FINALLY
small fixes
use global colors for last spun box
no low memory mode
cleanup
nuke old roulette assets
kills remaining 2 usages
forgot this var
* Goof I will find you and I will berate you
holy hell
Calm and peaceful ahhhhh
I swear goofs pc failing was the biggest tragedy in gaming
Fixes some flags
More touchups
Now to squash
Goofs PC failing was the biggest tragady in GAMING
* Fixing some misspellings before the bee gets me
* GOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
* Full vehicle support
* Changes some flags around, "fixes" some bugs, makes being shocked less insane
* Makes spliting more reasonable, unfucks some shitty tesla code I copypasta'd into the sm, godspeed shitcode,
none noticed you.
* Removes my tesla_ignore_1 fix, another pr is up that should solve things, so we're just leaving it in for now,
gonna have to deal with merge conflicts when it gets merged, but that won't be too bad
* tfw
* Nothing to see here folks
* I'm a boomer
* The hero returns alive.
* Initial commit, boomerang batons and outback firing pins.
* Australicus is the lore in the game already, so #@$! it we'll pretend like #lore_general exists
* Name tweak.
* Fixes boomerang name, Inhands, accidently included a leftover sprite.