mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-12 08:36:00 +01:00
docker-container
6 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
be1f231869 |
Lock R&D console boards by default (#94114)
## About The Pull Request This PR makes all R&D console boards that are either printed or sourced from tech storage start out locked. They can be unlocked by swiping them with an ID that has research access. R&D consoles can also be unlocked with an emag, but doing so will break their comms circuit as well, making all researched nodes broadcast over public comms. You can still emag the console itself after it's been constructed without breaking it in any way, while also silencing announcements instead. (that's definitely a noob trap, but it's out of scope for this PR) The reason why the tech storage board is locked as well is because the goal of this PR is to stop engineers from making R&D consoles, and engineers have access to tech storage. Leaving the board unlocked and moving it to secure tech storage would make engineers break in there every shift. The changelog basically has a FAQ for "Okay, so what do I do instead?", because I know people will be confused about what route they're intended to take when science closes their desk shutters for the umpteenth time this week. ## Why It's Good For The Game Engineering has a habit of making an R&D console every round to bypass having to ask science or a head of staff to research things. Locking the consoles at least makes engineers consider asking science to do science's job. Note that this doesn't solve the issue entirely, it just removes the easiest and most convenient way of bypassing science. Engineers can still break into R&D extremely easily using their wire knowledge, and do so regularly. More importantly though, this might shine some light on the fact that heads of department like the CE have remote access to the research network via their PDAs. This means engineers can ask the CE to research things for them. Asking people with access to the research network to research things is a lot better for roleplay and immersion than having engineering construct R&D consoles every shift. ## Changelog 🆑 balance: R&D console boards sourced from printing or tech storage are now locked by default. It's recommended to ask your respective head of department or the science department to complete research for you. Heads of department can remotely access the research network using their PDAs. /🆑 |
||
|
|
1880003270 |
Reworks silicon/ai access checking & fixes some ui_act's (#84964)
## About The Pull Request Currently to check for Silicon access, we do: ``if is silicon or is admin ghost or has unlimited silicon privileges or has machine remote in hand`` What has unlimited silicon privileges? Bots, Drones, and admin ghosts. To check for AI access, it just checks for AI instead of silicon, and doesnt check for unlimited silicon privileges. This was kinda silly, so I thought I should make this a little easier to understand. Now all silicon/ai traits come from ``AI_ACCESS_TRAIT`` or ``SILICON_ACCESS_TRAIT``. I made a single exception to keep Admin ghost, since now instead of being a var on the client, we moved it to using the same trait but giving it to the client instead, but since we have to keep parity with previous functionality (admins can spawn in and not have this on, it only works while as a ghost), I kept previous checks as well. No more type checks, removes a silly var on the mob level and another on the client. Now while I was doing this, I found a lot of tgui's ``ui_act`` still uses ``usr`` and the wrong args, so I fixed those wherever I saw them, and used a mass replace for the args. Other changes: - machinery's ``ui_act`` from https://github.com/tgstation/tgstation/pull/81250 had ``isAI`` replaced with ``HAS_AI_ACCESS``, this has been reverted. Machine wands and admin ghosts no longer get kicked off things not on cameras. This was my fault, I overlooked this when adding Human AI. - Human AI's wand gives AI control as long as it's in your hand, you can swap to your offhand. I hope this doesn't end up going horribly, otherwise I'll revert this part. It should let human AIs not have their UI closed on them when swapping to eat food or use their door wand or whatnot. - Bots previously had special checks to scan reagents and be unobservant, I replaced this with giving them the trait. I also fixed an instance of unobservant not being used, so now statues don't affect the basic creature, whatever that is. ## Why It's Good For The Game This is an easier to understand way of handling silicon access and makes these mobs more consistent between eachother. Other than what I've mentioned above, this should have no impact on gameplay itself. ## Changelog 🆑 fix: Statues don't count as eyes to creatures. fix: Human AIs and Admin ghosts no longer get kicked off of machines that aren't on cameranets. /🆑 |
||
|
|
fa31403353 |
LateInitialize is not allowed to call parent anymore (#82540)
## About The Pull Request I've seen a few cases in the past where LateInitialize is done cause of the init return value being set to do so for no real reason, I thought I should try to avoid that by ensuring LateInitialize isn't ever called without overriding. This fixes a ton of machine's LateInitialize not calling parent (mechpad, door buttons, message monitor, a lot of tram machines, abductor console, holodeck computer & disposal bin), avoiding having to set itself up to be connected to power. If they were intended to not connect to power, they should be using ``NO_POWER_USE`` instead. Also removes a ton of returns to LateInit when it's already getting it from parent regardless (many cases of that in machine code). ## Why It's Good For The Game I think this is better for coding standard reasons as well as just making sure we're not calling this proc on things that does absolutely nothing with them. A machine not using power can be seen evidently not using power with ``NO_POWER_USE``, not so much if it's LateInitialize not calling parent. ## Changelog 🆑 fix: Mech pads, door buttons, message monitors, tram machines, abductor consoles & holodeck computers now use power. /🆑 |
||
|
|
aa820c08fe |
Oldstation now has their own RND (#78132)
## About The Pull Request This PR does many things and I expect to be asked to atomize some stuff. ### Oldstation Additions Oldstation now has their own research server, generating their own points. To help alleviate major concerns, they have a few stuff to help with this: - They now have a pre-built operating computer - They now have an Autopsy scanner - They now have access to Experimental Dissection Experimental Dissection is the old dissection, giving research points in the form of paper notes on completion. They must be turned in to the RND server (only works on the Oldstation one, so you can't abuse this) for points. This was an idea I've had for some time, as Oldstation is used somewhat as a representation of how ss13 used to be (through its use of directional windows (before they got removed, but I'd like to bring them back), old IDs, RTGs, and old engines before they got removed from the game fully) Considering there are 11 alien mobs in Oldstation, there is 27.5k research points to get from alien corpses, enough to bring them up to speed with whatever they wish to do. This is their 'alternative' for experiments (which they can still do if they want, but it is very hard to do, outside of dissection which is needed for the node). This surgery isn't repeatable, isn't upgradable, and isn't removed by being healed. It is not mutually exclusive with autopsy (so you can't ruin yourself doing the wrong surgery). ### Other stuff - Ninjas now drain RND points from the server they drain from, rather than always hitting science - Syncing machines to research roundstart is now a macro, and now immediately syncs to a server on your Z-level. Machines will automatically connect to the Science servers if none else are available. ### non-player facing - Science, Admin, and Oldstation techwebs are now no longer vars on research, but stored in research's list of techwebs. - ``get_available_servers`` and ``find_valid_servers`` are now procs on the research subsystem, rather than the experisci component. - Oldstation code has been split into separate files. ## Why It's Good For The Game Oldstation is one of my favorite ruins, but it is also one of the largest complaints for RND (along with Golems) because they use the station's Science nodes & points (I recently tried de-hardcoding Science stuff to help prepare for this, but I didn't get everything in advance). The complaint stems from these ghost roles, who are meant to be a fun activity to do while waiting for the next round, using the station's research points for their own stuff, completely untrackable unless someone goes out of their way to grief a ghost spawn just for using points to get things they need. These roles make their own servers to drain the station, and I find that unfun and quite boring for everyone- it's also not very flavorful, why would Charliestation know of the station's RND to take advantage of it? This hopes to fix those issues, make Charliestation more worthwhile, and more flavorful. ## Changelog 🆑 fix: Getting a node researched now properly makes it no longer hidden. fix: Ninjas draining RD servers now drains it from the connected techweb, rather than sniping Science. balance: Machines will first try to connect to a techweb with servers on their z-level, with the Science techweb remaining as fallback. add: Oldstation RND, comes with their own Techweb and special surgery to gain research points through dissecting Xenomorphs. /🆑 |
||
|
|
ccf547c142 |
Adds an extra malf AI ability: Remote emagging. Also tidies up emag code and coverts a lot of things to balloon alerts (#76669)
## About The Pull Request New malf AI upgrade Remote safety overrides: Mid-cost, Mid-supply. Allows the AI to remotely emag things it can see and can access. 1. Very useful for psychological warfare (Emagging APCs to throw the crew off their trail) 2. Logically makes sense - why, of all things, can the AI not emag anything when it's fundumentally integrated with the station's electronics? 3. Generally speaking can only access things that make sense for it to access - it cannot emag ethereals, sadly In order for this to work, emag_act now returns a boolean, designating if the emag had any effect. While I was in there, I also added args to every single emag_act I could find and added far more feedback/converted a lot of things to balloon alerts to allow the AI to see if its emag had any effect. ## Why It's Good For The Game It just makes sense that the AI, the most electronically-sensitive entity in the game, would be able to emag things. Plus, more options given to malf that aren't strictly MURDER KILL MURDER are always a plus, especially if they allow for fancier plays. ## Changelog 🆑 add: New malf ability: Remote safety overrides. Allows the AI to remotely emag things it has access to. code: emag_act() now returns a boolean designating it's success in emagging code: All instances of emag_act() now have the proper arguments qol: Most usecases of emagging now have some kind of feedback, and existing feedback has been sanity checked and converted to balloon alerts. /🆑 |
||
|
|
4fcedc9226 |
R&D Monitoring console TGUI + Can see RD consoles (#72987)
## About The Pull Request I wrote this while constantly rushing lol This PR does many things, the largest is that the R&D Monitoring console (the RD's one) is now TGUI It also changes how researching loggings work, bringing the RD console and NtosRD app on par with eachother The type of person is also logged differently, instead of ``Cyborg: [name]`` and ``User: [name]``, humans do not have a prefix and cyborgs will say ``CYBORG [name]``. ``research_logs`` also works differently now to make it easier to reference each needed data from the list. Lastly, I added the ability to see R&D consoles from the console, and the ability to remotely un/lock them down. This currently is pretty useless as it can't control the tablet app variant, and anyone with Science access can just unlock it, however with some minor future changes I think this can be turned into a good way for the RD to get control of their department. Video demonstration, mostly (I made a few edits after this): https://user-images.githubusercontent.com/53777086/215005387-817106f4-5237-4f2e-b0ac-da28e6a17f9c.mp4 ## Why It's Good For The Game This console is overhyped by the game, being hidden behind an RD-locked Command-colored door, in the same room as one of the most damaging theft objectives, yet it is one of the most useless and forgotten consoles in R&D if you don't count everything outside of researching, experiments and robotics. This adds a nice TGUI menu while making it a little more worthwhile to use. ## Changelog 🆑 balance: The R&D monitoring console now shows R&D consoles and their locations. refactor: The R&D monitoring console now has a nice TGUI menu. /🆑 |