* port ADMIN_VERB and friends
* some renaming
* dumb
* one more rename
* never search and replace this codebase
* fix TM issues, more renaming
* add a static analysis to shore up user verbs
* fix double message on roundstart
* remove macro we're not using yet
* convert remaining playsounds verbs
* convert more verbs i missed somehow
* why is this a completely different signature than everything else
* fix ui_interact arg
* fix logging view and others
* buncha issues caught in TM
* fix mentor tickets ui
* fix bug report viewing
* moron
* IMPORTANT MILESTONE, AIR IS BREATHABLE
* the vibrations of the SM in my headphones are pleasing (no stupid hotspots)
* sanity check, it all works
* SM is fine
* this will work first try
* linter
* "thank you, warriorstar" everyone says in unison
* Build Rust library
* finishing touches (hopefully)
* Build Rust library
* update gas_mixture.dm to include hydrogen burning
* Build Rust library
* hydrogen should be the right color on gas analyzers
* i JUST rebuilt it
* adds agent B and Hydrogen floors
* update the h2 canister
* caniser bad speling
* in aa we trust
* Build Rust library
* Build Rust library
---------
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
* LINDA -> MILLA
* Tiles now change their atmos mode properly.
* Fixed a bug that made walls generate supercold air when deconstructed/destroyed.
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Begone, var!
* MILLA -> milla
* Lint.
* More lint.
* Prevent negative/NaN atmos from spreading.
* Made fires start more reliably.
* Undef what the rest should not see.
* Enums are nice.
* Match LINDA better.
* Debugging verbs.
* Debug verb fixes.
* Labelled more lavaland stuff with ATMOS_MODE_LAVALAND
* Block superconductivity on a couple more things for Lavaland.
* Updated milla.dll
* Lavaland map fixes.
* Missed a spot.
* Begone, var! (again)
* Add libmilla_ci.so for continuous integration tests.
* Install/contributing instructions for MILLA.
* Directional plasmaglass windows on shuttles shouldn't stop protecting from heat after moving.
* Banish bad naming.
* Better naming and debug stats for SSair.
* Apply suggestions from code review
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Magic numbers and formatting.
* Don't screw up the temperature during reactions.
* Efficiency and readability.
* Fix hotspots.
* Removed redundant safety (MILLA will already output an error)
* Optimizations.
* oops
* TGS build script update.
* Change API of gas_mixture and how you get one from a turf.
* Get in there.
* so many vars
* MILLA binary updates.
* Lint
* Made MT cost more honest.
* Gave MILLA a read-only mode.
* More read-only vs synchronized mode work.
* Even more.
* Synchronize disposals.
* Updated a bunch of stuff to use SSair.synchronize or GM.synchronize.
* MILLA <3 Tracy
* lint
* cargo fmt
* more lint
* Test needed MILLA sync.
* Silence atmos machinery that's behaving as intended, but continue objecting to other potential failures to synchronize.
* Push new MILLA DLL
* Build MILLA
* Update PR instructions for MILLA.
* Add some fancy plasmaglass windows to the Lifebringers' ship.
* The golems remembered that they should insulate *all* their engines.
* First round of TM bugfixes.
* Build MILLA
* fix two lavaland ruin turf types
* bunch more maps
* fixes milla ci and makes the interesting turf verb better
* Solid turfs can no longer conduct heat (for now...)
* Made indoor tiles in beach and winter biodomes not lavaland air.
* Re-added random IT teleport, adjusted warning message
* Fixed a tinted window on Lavaland to be a plasglass window instead.
* Made firelocks and holofans heatproof
* Made RPD auto-wrench pipes if you have a wrench in your offhand.
* Runtime fixes.
* Made visuals update more reliably.
* Lint
* Update .github/CONTRIBUTING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* The Syndicate have installed tiny fans on their research base.
* The syndicate have figured out how to make plastitanium windows heatproof.
* This is getting out of hand. Now there are two of them.
* Un-break the auto-wrenching that I broke before committing.
* Build MILLA
* Build MILLA
* Massive MILLA refactor, assorted bugfixes.
* Build MILLA
* Explicit typing.
* Less sleeping/blocking.
* Build MILLA
* Yes, yes, this part can sleep.
* Build MILLA
* SSair reporting improvements.
* Build MILLA
* Please do not dock twice and splat yourself.
* Build MILLA
* Pls to not make SM go nuts.
* Build MILLA
* Build MILLA
* Added stricter lower bounds on plasmafire, fixing perpetually-burning SM.
* Build MILLA
* Lint
* Temporary logging, begone.
* Build MILLA
* Prevent hotspot strobing.
* Add in radiate_to_spess behavior.
* Build MILLA
* progress
* Compiling is good.
* bugfixes
* Progress.
* Ruins update.
* This one exists.
* Fixup temporary hotspots to last longer than one tick.
* Add/fix comments.
* Cut the slash.
* Fix test.
* No sleep for you.
* Build MILLA
* Prevent nested MILLA safety from runtiming.
* Build MILLA
* Runtime fix.
* Build MILLA
* Fix canisters not updating icon when gas contents change.
* Build MILLA
* Build MILLA
* Fixed an issue that made mechs very cold on environment air.
* Build MILLA
* oops
* Build MILLA
* Walls can make loud noises again.
* Build MILLA
* Fixes a rare runtime.
* Build MILLA
* Update .github/DOWNLOADING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Review suggestions
* Lint
* Build MILLA
* bound_mixtures now only contains mixtures that can be written
* Build MILLA
* Apply suggestions from code review
Co-authored-by: Matt <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* Restore the original async behavior of pyro anomalies.
* Build MILLA
* Build MILLA
* Make the safety assertion in /datum/milla_safe safer.
* Build MILLA
---------
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: GDN <Roanrichards1@Gmail.com>
* Globals work
* Double access works
* All other things
* Revert "All other things"
This reverts commit 6574442eb6.
* More changes that compile and work
* IT WORKS AAAAAA
* Changes even more .len to length()
* Apply suggestions from code review
* Update code/datums/mind.dm
* Update code/__HELPERS/sorts/InsertSort.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* Update code/__HELPERS/sanitize_values.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
---------
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* Lets get this show on the road
* Now were talking
* These matter
* Oh the joys of CI testing
* And this
* Wrong version
* Tweaks
* More tweaks
* Lets document this
* This too
* Upgrades this
* Fixed some sanity issues
* This too
* Screw it, this too
* More sanity
* And these
* This too
* Documentation
* This too
* Fixes **awful** scoreboard logic
* Why do we care about only half-absorbing someone
* Revert "Why do we care about only half-absorbing someone"
This reverts commit 8de1cfdf05.
* Refactors these
* Hashing
* Moxian tweaks
* Gas Mixture Refactor
* derp
* defined turf types
* fixes
* cuts turf visuals cost in half
* even better equalizing with planetary atmos
* remove volatile fuel
* comment and documentatino on turf gas vars
* Initial Commit - Trying to add DC to Travis
* Forgot to chmod
* This took too long
* Farie Fixes
* Fixes new code
* Job factions are fucking smelly
* Loadouts work again
* Runtime fixes
* Handlers converted, now to fix 3532 compile errors
* 3532 compile fixes later, got runtimes on startup
* Well the server loads now atleast
* Take 2
* Oops
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.
Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
This commit ports the base system of LINDA from TG. This version of linda
is the original version, with none of -tg-'s fixes, rewrites, or other
such improvements attached.
The mob ignite system has been 100% removed, as LINDA does not support
this normally. It may be added back in when the improvements and refactors
to LINDA have been ported.
- Added two new verbs to 'debug verbs'. The first outputs everything in the jobban records list to standard output, the 2nd applies a filter and only prints the things that contain the word.
- Fixed an old jobban bug which only checked if someone's ckey ends with the bannee's ckey to jobban them from the job. So perrorage getting banned would result in errorage having the ban in effect too.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5338 316c924e-a436-60f5-8080-3fe189b3f50e
- Trying to remove someone's jobban through 'show player panel' -> 'jobban' -> 'click on job' will still bring up the banning panel, with a note that you can't use the old panel, it will however now properly have the banned player's ckey inserted as the search criteria, instead of your ckey.
- Jump-to-mob now uses mob_list instead of sortmobs()
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5044 316c924e-a436-60f5-8080-3fe189b3f50e
- Moved 'reload admins' into the SERVER permission. It already had a check for R_SERVER when it was run, so it being in the debug list was likely a typo. There should probably be an ADVANCEDADMIN permission type or something, that contains the admin-related tools that you don't want all admins to have access to. A 'game masters only' list of verbs, so to speak.
- Edited admin_ranks.txt and the other dm files accordingly.
- Standardized diagnostics.dm
PS: I really love permission based admin verb assignment. So much easier to work with!
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5012 316c924e-a436-60f5-8080-3fe189b3f50e
SERVER HOSTS:
This commit replaces the existing admin-rank system. It is now more customizable.
Admin.txt essentially works the same as it always has. Each line should look like:
ckey - admin rank
There is now however, an admin_ranks.txt. This textfile allows you to define ranks like so:
admin rank +ADMIN +FUN +BUILD
the +KEYWORD are flags adding permissions to that rank. There are brief descriptions in the text-file explaining what they do.
You can now name the ranks anything you like, and give them the permissions you want them to have. This allows, for instance, ranks like:
Game Admin on disciplinary +ADMIN +BAN
This would give that game admin only the tools they need to admin. They would not have access to 'fun' verbs which control events and antags.
There's lots of things you can do. For instance, a coder rank whom can debug stuff but cannot do admin tasks:
Codermin +DEBUG +VAREDIT +SERVER
There's lots you can do. As it evolves it will hopefully become more flexible.
admin_ranks.txt defaults to use the old admin rank names.
Apologies in advance as there will be a lot of anomalies, such as ranks losing verbs they once had. Please let me know about any problems. I can fix them quite easily simply by moving verbs between the lists or splitting the lists up into new flags.
CODERS:
There is now a check_rights(flags) proc.
It check is usr is and admin and has -at least one of- the rights specified.
It checks > usr < not src, so keep that in mind!
If you need to check if something other than usr has specific tights, you can do if(holder.rights & R_ADMIN) etc.
KNOWN ISSUES:
+FUN probably needs to be split up into +MOBS and +EVENTS
In-game promotion/demotion is currently disabled. It will be readded after everything else works ok.
Erro's sql rights changes stuff is currently commented out. It will be re-added.
There are still many many verbs which need updating.
Apologies in advance for any inconvenience.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4991 316c924e-a436-60f5-8080-3fe189b3f50e
As a result, cyborg death squads were also removed.
This also fixes meteors and space dust so that they properly take into account the borders of the map. Please do not hardcode numbers when we have defines in place.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4374 316c924e-a436-60f5-8080-3fe189b3f50e
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...
Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)
These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.
Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.
If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.
Mob related in worlds before this commit: 1262
After: 4
I'm helping
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
goodies. (Among them are a modified traitor beacon, a cloaking device and a
closet full of resources so you can go build your own honk.)
These rooms will spawn at least out of range of space and the explored pathways,
so at the very least some mining is required to even detect them with mesons.
Adds a borg upgrade system. Right now, it just contians a borg reset module that
allows the borg to choose their module again. Adds some support code to borgs
to suppot flashproofing and renaming.
Adds a few various admin commands like a quick-list of objects (which is
hardcoded) and a command to break the local air group.
Revision: r3415
Author: VivianFoxfoot