actions.dmi is way too cluttered and messy, and with inhands getting the axe I decided to fix this, too. I separated the major categories of actions into their own files, like antagonist-specific actions and spells. A full list of categories is found here:
actions_AI.dmi contains AI-specific actions;
actions_clockcult.dmi contains clockcult-specific actions, and scripture quickbind icons;
actions_cult.dmi contains cult-specific actions as well as sintouch;
actions_flightsuit.dmi contains flightsuit and flightpack actions;
actions_items.dmi contains minor item-specific actions such as the hierophant club and jetboots;
actions_mecha.dmi contains actions related to mechs;
actions_minor_antag.dmi contains antag-related actions with no other spot, like devils/abductors;
actions_revenant.dmi contains revenant ability icons;
actions_silicon.dmi contains minor silicon and console icons, like pAI and xenobiology consoles;
actions_slime.dmi contains slime actions;
actions_spells.dmi contains icons for all spells;
actions_xeno.dmi contains icons for all xeno actions; and
backgrounds.dmi contains backgrounds for the action buttons.
Add's a tool that lays cable as you walk , speeding up cable construction
add: Nanotrasen has begun production of the Rapid Cable Layer, a tool that helps you lay down cables faster
add: You can now craft ghetto RCLs with metal, a screwdriver, welder, and wrench. They hold less cable, and may fall apart or jam!
* Begins converting Ninjas into the new antagonist datum system. Does not compile. Work in progress.
* More work towards datumizing ninjas. Still not finished. Now compiles.
* Adds ninja to traitor panel.
* Add objectives now takes an arg for number of objectives.
* Event now actually ninjas the ninja.
* Ninja suit initialization now works.
* Cleans up the suit initialization code some.
* Suit initialization is now action rather than verb based.
* Now properly adds objectives and memories to the mind upon gaining datum.
* Starts to replace ninja verbs with actions.
* Hooks ninja abilities up to action buttons.
* Whoops, missed a verb. Gloves are next.
* Adds toggle ineraction type action button.
* Changes icons as per ChanglingRain's suggestions.
* Second round of changes for ChanglingRain
* Replaces sleeps with addtimers. It's ugly, but more CPU efficient.
* Fixes compile errors.
* Fixes compile error, again.
* Ghosts now have a language menu
🆑 coiax
add: Ghosts can now modify their own understood languages with the
language menu.
/🆑
- Language menu is now on /atom/movable, and can be opened by any atom
with the `open_language_menu` proc.
- Used for testing, and simulating what various station members hear.
* Language holders, I
* Language holder, II
* Dos line endings
* MIND LANGUAGES
* Fixes some mobs not having language holders in their minds
* Shadow languages
* How did you lose the holder?
* Mob level IC->Open Language Menu verb
* Gives draconic to silicons
* Lazy breeki
* Use of pre-initialized global lists for languages
* Fixes bugs with lazy holders
In cases where you're creating an image to use as an overlay, it makes more sense to use a mutable_appearance if you can. The image will create a static appearance for not just the image but also each intermediate step if you change vars along the way. The mutable appearance avoids this unnecessary and expensive process. The only situation that requires an image instead of a mutable_appearance is if the overlay is supposed to be directional. MA's ignore direction while images don't. I dunno why, probably another BYOND-ism.
I added a convenience function, mutable_appearance(), designed to emulate image(). Also went ahead and set the default plane of /mutable_appearance to FLOAT_PLANE because it's fucking 0 by default.
Several overlays that were image() calls were changed to just text strings when I could. overlays += "string" has the same result as overlays += image(icon, "string") and saves a proc call.
Two new items, one brand new, the other an RCD that works at range without any other bells and whistles.
The RLD allows you to create floor and wall lighting along with temporary (they use fuel like flares) glowsticks at range. It can also deconstruct lights. The best part of this feature (besides the visual "ammo" updating icons) is the ability to select absolutely any color you desire.
🆑 Robustin
add: Ranged RCD added to the game
add: Rapid Lighting Device (also ranged) has been added. It can create wall, floor, and temporary lights of any color you desire.
/🆑
* Initial burst of languages
* Scratchings of beginnings
* Code review I
* Compilation!
* You can now understand your own speech
* Fixes whispering
* Gets typecaches working again
* Remie's `PASS`ing
* Back to pass() to stop the compiler whining
* Why can't drones check their languages
* Everyone speaks how they should
* Removes world string debug stuff
* Currently failing to massage radio code into working
* The radio transmits the languages!
* ,0 to talk common
* Replaces speech wheel with language menu
* Observers can speak all languages
* pAIs now speak languages FOREVER
* New action button for language menu
* pAIs have an action button to open their language menu
* AIs can talk and all that
* AIs have a language menu button
* Fixes supermatter making strange noises
* Fixes AI holopads
* Fixes request consoles
* Fixes bots making strange sounds
* Meaningless MMI change
* Some caching of datums
* Brains in MMIs speak common
* Ratvarian AIs can only speak Ratvarian
* Tables can speak common, apparently
* Removes var in args
* Fixes the (AI Eye) problem
Thanks to Shadowmobile for their help with this one.
* Fixes tape recorders
* Fixes humans being able to speak in languages they did not know
* Adds some new posibrain names
Honk.
* The voice analyzer replies in the language you spoke to it
* Gives swarmers only swarmer language
* `initial_languages` var.
* OMNITONGUE, clockwork restrictions
* Fixes barmaid and bardrone language abilities
* Code review I
* Omnitongue correction
* Code review II
* Removes force_compose var
* Overlay queuing
* Fix SS flags
* Don't copy on assignment
* Flags processing
* Fix icon_smoothing
* MSO's helper proc
* Legacy detection
* Make it work
* Fixes shitcode
* Fix the flag
* |= -> +=
* OK, how did I fuck that up?
* shitcode
* Conditional assoc queue while initializing
* Cleanup everything
* Orange meme
* This isn't perfect, but its the best byond will give us.
* forgot about dir
* oh ya
* This was litterally the last thing i did last night before heading to bed
You can tell can't you?
* Fixes various shit
* Let's not ever pause
* Fix the flag
* Cleaned up some missing shit. Added image dummys
* Remove the one usage of FPRINT
* Jesus get rid of this
* Speeds up world init.
* Armor is now new inited for obj and the first level of subpaths.
* Actions is now lazyinited and deleted with empty.
* Actiontypes is now only inited when actually used and deleted once it pre-fills actions with the action buttons.
* Pipes now prefill their node list(s) in new() using new /list/ (count) syntax to speed up the list initaliztions and remove the init proc.
* Pipes no longer store their item version, instead creating it on the fly when deconned
* Walls no longer store their metal stacks, instead creating it on the fly when deconned.
* obj, walls, floor, plating, item, machinery, structure, pipe, pipenet, atom, and movable no longer have an (init) proc. (along with a few other smaller examples)
* Atmos can pass checking is now a var with the ability to have a proc be call in advance cases.
* (as a side effect, I had to fix a few things that were calling atmosCanPass rather then using the pre-calculated list, this should speed up chemfoam and flame effects greatly)
* Reverts upload limit
(remind me one day to defuck this, it could easily be a config thats not editable by vv to make changes easier)
* Makes apc update icon a bit faster.
APC new is some what high on the profile of world init, still not sure why, but this stood out as a waste of cpu so i fixed it.
* Fixes runtime with atmos backpack water tanks.
* Makes smoothing faster (and fixes turfs smoothing twice at init)
* Makes apcs init faster by replacing some spawns with addtimer
* fix transit turfs.
* You can now quickbind most Scripture to action buttons
* fixes
* short descs
* slow updating may be bad
* that'd be very bad
* no flickering
* center
* short&sweet
* fixes
Guvax is now targeted; invoking it charges your slab to bind and start converting the next target attacked in melee within 10 seconds. This makes your slab visible in-hand.
tweak: Above 5 Servants, the invocation to charge your slab is not whispered, and the conversion time is increased for each Servant above 5.
Using Guvax on an already bound target will stun them. The bound target can resist out, which will prevent conversion.
Sentinel's Compromise is now targeted, like Guvax, but can select any target in vision range.
Sentinel's Compromise now also removes holy water from the target Servant.
Clicking your slab will cancel these scriptures.
Both of these will change your cursor, to make it obvious they're active and you can't do anything else.
Convert times are faster at very high servant amounts, but it's much easier for 1-on-1 conversions to go wrong and have the target escape. (Though the binding makes early conversions slightly easier.)
Resist time for the binding is a flat 4 seconds, and moving/being moved while chanting will break it immediately.
Formula for conversion time is 5 + (0.5 for each valid servant above 5) seconds up to a maximum of 10 seconds at 15 servants.
* Plane master handling + new chemical Rotatium
A whole system to create, store, and access screen master objects from the hud. In case anybody actually wants to do anything relevant with them. Which will probably be me but whatever.
Moves things out to some planes that make sense.
click catcher -99
game 0
lighting 15
fullscreen 18
HUD 19
above HUD 20
Rotatium is more of a demonstration than something I really really love, but it is kinda neat so here you go. It rocks the game plane and lighting planes back and forth and also does light toxin damage. The longer it effects you, the stronger the rocking gets.
No pictures right now, I'll get some later. Sorry.
* Pay no attention to the commit behind the curtain
* Updates travis to 1346, the stable version for 510 for linux
* HIEROPHANT
* whoops
* that'd be hilarious but unwise
* BIRD_SCORE
* density
* BIRD THREAT
* maybe a threat tm
* danger boss
* it's always the paren
* bird murder
* recall
* no message
* yelling bird
* time
time
come on, time
time
shades
* A ruin!
* I think five blasts is enough
* birdboss wants you dead
* giant boss arena
* hierophant no longer literally unfightable
* smaller ruin?
* no longer innate
* can toggle friendly fire, teleport is AoE
* comments!
* just fucking spawn the arena wew
* heal on resetting
* not as common
* I cannot be trusted
* eeeh
* !
* keep it off the station
* as common as sin
* stop cheesing the boss you asshole
* this looks better
* that ruin didn't even exist what the fuck
* wew
* rip
* it doesn't need full healing if it heals for half when it resets
* good for fighting mobs
* rune where you are
* mechanics; armor doesn't fucking matter rip you
* armor matters but not much so
* )
* meaner than hell and more likely to kill you
* remove those beasts from my beautiful square house
* fix
* you should be able to tell what it's doing, even if you can't actually react to it
being totally unable to tell what the fuck just killed you is bad design, you should know how you died even if you couldn't do shit
rip 3x3 chaser
* start higher scale to the same
* the ruin that doesn't exist and costs 10 points to place
* now what's all this commented out stuff hmmmmmmmmmmm
what could it possibly be
* accurate
* tracking
* boring unused lore
* it needs to be open, oranges. open.
* I did that specifically to note which commit it was on ree
* oh there's a proc for that. duh.
* logging is good
* horrifying
* the marginal kindness of a giant bird boss
* ruin tweak
* idiot bird
* adjust
* Clockcult fixes and tweaks
* die but don't stay dead
* stay dead but never die
* instinct
* unreadable dark magic
* idiocy knows no bounds
* danger close
* like four fucking times faster
* superdynamics
🆑 MMMiracles
add: A giant wad of paper has been seen hurling through the nearby sector of SS13, officials deny existence of giant paper ball hurling through space because 'thats really fucking stupid'.
/🆑
Mjor the Creative, a wizard with the taste for the arts, has used his magical craft to form a home made of papier-mâché hurling through space because hes a wizard he can do whatever the fuck he wants. He uses his 'artistic' skill to conjure up minions to assist him when nosy people try to steal his priceless art.
He has two abilities he can use during a fight, one will summon copies of himself as mimics. Attacking a mimic does 50 brute to everyone around him and attacking him destroys all active mimics. The other ability lets him summon his crudely-drawn creations, bringing them to life to fight for him.
Killing him gives you access to his papier-mâché robe, a special collector's edition paper, and his priceless range of artwork. What more could you ask for?
The wizard's robe, when equipped, will allow the wearer to summon their own stickman allies. They are only loyal to who summoned them and will attack everything else. Ability has a cooldown between each use.
Boss code credit majority to @RemieRichards as it is a modified version of what she wrote up a couple months ago for one of my unfinished away missions.
* Silicons converted to the Ratvarian cause get an action button to communicate
* psna class actually both compiles and works, which is confusing
* no message
* Observers can auto-orbit meteors; space dust event
During a meteor shower, observers can automatically orbit
threatening meteors and watch them hit the station.
Added Major Space Dust event, which is a meteor shower
containing only space dust.
Reduced chance of RNG meteor event.
Fixes bug where meteors wouldn't move when spawned.
Added priority overlays to atoms, which will not be removed when overlays are cut and will always remain on top when new overlays are added. This requires everyone to use add_overlay() and cut_overlays() instead of overlays += and overlays.Cut(). These procs are found in __HELPERS/icons.dm, and the priority overlay list is found in game/atoms.dm. Everything else is replacing deprecated overlay manipulation.