-
Notifications
You must be signed in to change notification settings - Fork 276
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ports atmosian powergaming from TG: Who's the real piped piper now? #1179
Ports atmosian powergaming from TG: Who's the real piped piper now? #1179
Conversation
## About The Pull Request 1. `pre_attack()` was defined twice, removed one 2. `attackby()` does the exact same thing as `pre_attack()` for installing upgrades so removed that 3. Fixes runtime ![Screenshot (180)](https://user-images.githubusercontent.com/110812394/233941512-c2e23e40-cd53-4ed4-87be-59bcaea373d3.png) When you attempt to unwrench a pipe via the RPD but you interrupt the `do_after()` proc by moving. it doesn't need to crash but simply return if unwrenching was unsuccessful see `/obj/machinery/atmospherics/wrench_act()` ## Changelog :cl: refactor: removed duplicate `pre_attack()` & redundant `attackby()` procs which did the same thing fix: unnecessary crash when unwrenching pipes/devices with the RPD /:cl:
Lowercased RPD name and lowered the speeds for building atmos pipes/devices, reprogramming stuff and destroying stuff atmos 0.5s -> 0.3s reprogram/destroy 0.5s->0.3s Why It's Good For The Game QOL for atmos, makes big atmos/engi projects more viable Loose pipes/devices don't even have gas in them no point in taking a lot of time to destroy them, they don't cost any materials to make either so nothing is wasted This especially helps with fixing huge explosions since that leads to 50 pipe fittings being spammed everywhere and takes ages to clean up Changelog cl qol: Lowered the atmos build, reprogram, and destroy delays on the RPD /cl
RPD: <img width="398" alt="g6iMANATn2" src="https://github.com/tgstation/tgstation/assets/3625094/a6b986d0-fa7f-4f67-89df-6d62505e1e50"> Pipe dispenser machines: <img width="398" alt="eBxH3wMlPu" src="https://github.com/tgstation/tgstation/assets/3625094/cc49c3c2-dad6-40da-9e63-b2f0a20fa893"> GIF: ![dreamseeker_LN0XizcPi9](https://github.com/tgstation/tgstation/assets/3625094/c8e639d2-48d1-4a71-a8f7-b55300007203) ## About The Pull Request Updated RPD UI for: - Bigger color buttons - Faster selection of pipe type ## Why It's Good For The Game Less clicks and missclicks when working with RPD ## Changelog :cl: qol: RPD and Pipe Pispenser UI tweaks for better navigation code: RPD and Pipe Dispenser UI now on TS /:cl:
![image](https://github.com/tgstation/tgstation/assets/3625094/c046222f-9766-4d14-8538-40aabdd15645) ## About The Pull Request Fixes #75618 Regression after #75540 I didn't know that it reuses some components of RPD when I updated its UI. It led to layers breaking UI. ## Changelog :cl: fix: Plumbing RCD UI fixed /:cl:
Replaces air alarm variants with directional alarms and corresponding helper overlays, similar to APCs. ![image](https://user-images.githubusercontent.com/3625094/234709656-fac3d5c3-af04-496a-a28a-a3ca8d7e854f.png) Less var edits, easier management. :cl: qol: Mapping: Air alarm variants replaced with corresponding helpers /:cl:
## About The Pull Request To control vents and scrubbers in ordinance, burn and engine chambers, mappers extend the area outside of the walls towards a tile where they place the air alarm. With this PR, they can now assign `chamber_id` to an air alarm and connect to the chamber with an air sensor. There is a new map helper for this. Also, this connection can be done manually. You need to click on a sensor with a multi-tool, then unlock certain air alarm, and click with a multi-tool on it. This action will link sensor to an air alarm, reporting gas mixture from the sensor tile and giving control over the vents and scrubbers of the sensor's area. ### TLDR Before: <img width="718" alt="ordnance_before" src="https://user-images.githubusercontent.com/3625094/236577769-5d79871f-2dce-43be-a20a-e6669bfbc1c6.PNG"> After: <img width="638" alt="ordnance_after" src="https://user-images.githubusercontent.com/3625094/236577786-3c7e9c9f-1501-4747-bbe1-292fc4947b0d.PNG"> This is how the area is setup on meta station right now vs if it was setup with a link ![image](https://user-images.githubusercontent.com/3625094/236578327-531cfb6f-e0ac-4c03-927f-f5b05b9c74ab.png) This is also true for the supermatter chamber - you can make the air alarm display the gas mix in the actual chamber and avoid using mapping area hack there too. <img width="954" alt="supermatter_after" src="https://user-images.githubusercontent.com/3625094/236578528-4650b426-6bf0-4634-a5b0-cad7a50d5b01.PNG"> ## Why It's Good For The Game The area hack is no longer needed and you can place air alarm to control certain remote area wherever you want when you design a map. Even 3 air alarms next to each other controlling 3 different burn chambers. The air alarm will also report the gas mix on the actual tile of a sensor, instead of the gas mix before the air alarm, which is usually a normal habitable environment. Also, now you can build such chambers manually because there are no precise area editing tools available in-game to repeat the area hack. ## Changelog :cl: add: Air alarms can be connected to an area remotely via air sensor with multi-tool and corresponding access qol: Mapping: Added air alarm helper to link air alarm with certain chamber_id on map load /:cl:
![dreamseeker_3knwrXrSzO](https://user-images.githubusercontent.com/3625094/236828432-605f6c0a-10da-4e98-9c03-87931bc46704.gif) ![image](https://user-images.githubusercontent.com/3625094/236829631-c566d82b-90cc-400d-8565-0374282d5319.png) ## About The Pull Request Reopen of #74932 Resprites the air alarm and adds a new sprite that will be needed for an air alarm that is remotely connected to a sensor via #75187 Also fixed air alarm not checking air status on power change. ## Why It's Good For The Game Newer, more compact sprite. It will make it easier for map makers to stack remotely connected air alarms on a tile to make an air monitoring wall. ## Changelog :cl: image: New air alarm sprite fix: Air alarm properly updates status when powered /:cl:
![image](https://github.com/tgstation/tgstation/assets/3625094/6cb8384f-8d95-4821-9a4f-f38c57c1b4bd) ![image](https://github.com/tgstation/tgstation/assets/3625094/f54ad14d-35ae-411f-a197-69378cbee264) ## About The Pull Request The recent changes were aimed at better UX, yet there were reports about their flaws. This PR should address some of the concerns. The Devices tab was reduced, creating a new tab for Pumps and Valves, called "Binary" (perfect timing for such tab 🤭) No scrolling required now. Also moved options to the left side for less mouse movements and consistency with RCD and Plumbing RCD. ## Why It's Good For The Game Better UI according to feedback from the main users - atmos techs. ## Changelog :cl: qol: RPD UI: Devices split in two categories, options are aligned to the left /:cl:
## About The Pull Request Fixes tgstation/tgstation#74534 by making elder atmosian statue craftable. I am not 100% sure if this is the intended way for it to be able to be made or if it's even the right amount of materials but if I need to change it please let me know. ## Why It's Good For The Game Fixing issues is good, having uncraftable things is bad. ## Changelog :cl:Reality Overseer fix: makes elder atmosian statue craftable /:cl: --------- Co-authored-by: Mothblocks <[email protected]>
## About The Pull Request **1. Igniter's** Those things which you see in atmospheric's incineration chamber & ordanance lab used to ignite gases, they can now be crafted ![Igniter](https://github.com/tgstation/tgstation/assets/110812394/e59bfffb-2717-4d12-891f-0231f7ba5e7f) - **Interactions** a) attack with hand to turn it on/off b) use a multitool to change it's ID(how that's useful? keep reading) c) use welding tool to deconstruct it **2. Sparker's** No they aren't a new thing, you probably woudn't have noticed them but it's this thing in xenobiology lab for example, and you use the button to turn it on ![Screenshot (235)](https://github.com/tgstation/tgstation/assets/110812394/66009c31-9655-45a5-b9c3-017673cda04c) They function the same as igniter's(i.e. combust gases) except as the name implies they emit spark's to get the job done These can now also be made in the autolathe as a wall mount ![Sparker](https://github.com/tgstation/tgstation/assets/110812394/46392fde-0d27-455a-8a32-087f954a6385) Yup just stick it on a wall and your done - **Interactions** a) use a multitool to change it's ID(how that's useful? keep reading) b) use welding tool to deconstruct it To turn this on see the last section **3. Ignition Switch Controller** These function just like blast door controller's except they can control only sparker's & igniter's Also printable in autolathe ![Controller](https://github.com/tgstation/tgstation/assets/110812394/b378f7f1-3059-4865-8645-0c5a9b5c4011) - **How it work's(or a reminder if you already know)** a) First use multitool on sparker/igniter to set their ID's b) Use multitool on this controller to set it's ID to be the same as your sparker/igniter ID. If the igniter, sparker & this controller all share the same ID you can use this controller to turn all device's on/off at once c) stick it in a button frame & close d) use button Hot Stuff https://github.com/tgstation/tgstation/assets/110812394/8b59a71e-8992-428e-a629-5c371b5c0c3d Ok so really what's the actual difference's between an igniter & sparker 1. Igniter's are built on the floor while sparker's are mounted on wall's 2. Igniter's have `max_integrity = 300` while sparker's have it s normal `max_integrity = 100` so yeah igniter's are more durable than sparker's 3. Igniter's keep the turf hot continuously as long as it's on so they take up power continuously, so their operation cost is high whereas sparker's emit spark's only once and use power only that one time so they are cheaper to operate **Why it's good for the game** Make your own combustion chamber professionally and not in an improvised way. Honestly I'm tired of seeing people chuck in lit welding tool's/ Zipo lighter's to ignite the gases and we loose those item's so yeah now we have the tool's to do it the right way ## Changelog :cl: add: Igniter's can be crafted add: Spraker's can be printed in the autolathe add: ignition controller can be printed in the autolathe /:cl: --------- Co-authored-by: Fikou <[email protected]>
…m (#75869) ## About The Pull Request **1. Craftable & Removed from RPD UI** 1. Air sensor's are now craftable 2. You can turn them on/off with hand. Even though turning off the sensor will change it to a diffrent type[from `obj/machinery/air_sensor` -> `obj/item/air_sensor`] it's I/O port's are sill preserved when turning them on although you have to assign it a new name again which is usefull if you want to change the sensor's purpose in game. 3. They can now only be deconstructed by a welding tool and should be wrenched in place to turn them on. 4. Turned off air sensor's once unwrenched can be picked up like any regular item 5. Air sensor's are removed from the RPD UI because they don't go with pipes so it logically doesn't make sense to group them with pipe related device's Removed unused code in the process https://github.com/tgstation/tgstation/assets/110812394/3439a0f3-9c48-43ac-8f4b-98135435ec13 **2. New ID System** The problem with air sensor's is that each sensor is assigned a unique ID which is then stored in `GLOB.objects_by_id_tag` list. Each sensor name it's assigned based on the gas it's trying to sense(for naming only even though it can detect other gases) So if 2 sensor's having the same ID are made they will overwrite each other in this list leaving one sensor orphaned in the world which cannot be referenced because it's value was overwritten by a new sensor having the same ID in this list. The Solution? Rather than having all atmos computer's look up sensor's from this 1 global list make each computer keep track of all sensor's it's responsible for in it's own local list[which i called `connected_sensor's`] this way 2 sensor's can have randomly generated names in the global `GLOB.objects_by_id_tag` list but the computer will know what sensor to look up in this list based on the stored sensor ID's in the `connected_sensor's` list Basically what i am getting at is now you can make as many air sensor's as you wish but you will know have to connect that sensor to the computer using a multitool. Notice in the video how i made 2 sensor's called `Supermatter Chamber Sensor's`] and every time you try to connect an sensor which has the same name[`Supermatter Chamber Sensor's` in this case] they will ovewrite the old sensor in it's list as shown in the video https://github.com/tgstation/tgstation/assets/110812394/b5283c3b-c8a1-4b94-a6a8-8ba7a0007615 **Why it's good for the game** ![Screenshot (247)](https://github.com/tgstation/tgstation/assets/110812394/6a7eb501-4414-4f01-a6ef-3e9b70f4af06) I agree. Also air sensor's taking up a full Tab/Section in the RPD UI wasted a lot of UI space so that's removed now. Also making the air sensor's wrenchable and pickable item's was also requested in tgstation/tgstation#72019 (comment) so you relate them to device's like meter's Another huge issue was that the number of air sensor's you can make in the world was limited because each sensor in the world must have a unique ID but that's finally fixed now so yeah make as many sensor's as you want. ## Changelog :cl: add: air sensor's are craftable refactor: air sensor's can now be turned off by hand and can only be deconstructed by a welding tool refactor: removed `Params()` proc qol: unwrenched air sensors can be picked up & recycled like regular item's del: air sensor are removed from the RPD UI qol: air sensor's are no longer restricted by their unique ID's which mean you can craft as many air sensors as you want. /:cl: --------- Co-authored-by: Time-Green <[email protected]>
…319) ## About The Pull Request Fixes mousewheel changing the selected piping layer when the RCD is in-hands, but not in the active hand. Also dmdocs, changes some var names, grammar checks some stuff and adds balloon alerts when installing the wrench upgrade and reprogramming a pipe. Removes `activate()` proc that was just a `playsound()`, makes the sound used for that a define here so it's obvious why's the sound being played ## Why It's Good For The Game Closes #54844 (it was fixed at some point actually so you couldn't mousewheel to change layers on an RPD on your belt slot, but the in-hand inconsistency remained) Code's a little cleaner Installing an upgrade's a little more obvious ## Changelog :cl: fix: fixed RPD switching layers on mousescroll when not in active hand qol: installing an RPD wrench upgrade & reprogramming a pipe via RMB produces a balloon alert /:cl:
## About The Pull Request Fixes flipped transit tube stations being inaccessible and adds a new rotator disposal pipe which rotates the incoming atom 90 degrees no matter which direction the atom comes from. ![promo](https://github.com/tgstation/tgstation/assets/25363960/3cdb75f6-0540-4797-9972-935fae37db58) ## Why It's Good For The Game Adds new disposal pipe usage for cool projects and fixes a bug. ## Changelog :cl: add: New rotator disposal pipe. fix: Flipped transit tube stations are now accessible in the RPD again. image: New rotator disposal pipe sprite. /:cl: --------- Co-authored-by: Ghom <[email protected]>
## About The Pull Request Closes #79301 Saw this PR, realized how much this annoyed me whenever I played. Not a hard fix either, since RCD's were a perfect example. (In the future perhaps items that use upgrades like this could have one base type of disk, and a component for 'upgrade_disk_tool', but that's way, WAY out of my experience. Just something I noticed between the RPD and RCD disks.) ![ApplicationFrameHost_cfnBFrRVWv](https://github.com/tgstation/tgstation/assets/76465278/fbe5784e-ce5d-45b5-a5e5-5dfbfef93fdf) One on the Left already has the upgrade. Neither try to double-install it! (Shown for posterity) Ones on the right are installed both ways. One, the RPD on the Disk. The other, the Disk on the RPD! --- Actual PR changes: - New proc on the RPD called `install_upgrade()` - If the upgrade disk isn't installed, it installs it onto the RPD and deletes the disk. So, the same as the RCD one, but fewer checks since the RPD's got a lot fewer disks. But, easier to add new ones now. - Since `install_upgrade()` is a thing, the attack chain's code for how RPD's originally got upgraded is now much shorter. It still functions the same, though - nothing was removed in this PR! - Adds an attackby check - if the RPD's attacked by an upgrade disk it will try to `install_upgrade()`. So basically, what RCD's have. ## Why It's Good For The Game Consistency between the RPD and RCD upgrade-wise. The RPD's other method of installing (hitting the disk WITH the RPD) still works, but now players used to the RCD won't get confused. ## Changelog :cl: qol: The RPD now accepts upgrade disks inserted by hand, as well as their original method of hitting the disk with the RPD /:cl: --------- Co-authored-by: Mothblocks <[email protected]>
## About The Pull Request Lets you instantly delete pipes/atmos devices with the RPD rather than wait 0.2s ## Why It's Good For The Game Playing atmos is a pain because of how time consuming it is, 0.2s adds up. It's especially annoying if a bomb goes off and you have to click on every single little loose pipe/heatpipe/device and wait to get rid of them ## Changelog :cl: balance: Deleting and reprogramming pipes/devices with RPD is now INSTANT! /:cl:
… this disks icon path. yall okay?)
Adds a button to RPD tgui that lets you build multiple pipe layers with the RPD with 1 click Saves a lot of time when using multiple layers, especially all 5, and is very useful for SM setups and other convoluted atmos contraptions https://github.com/tgstation/tgstation/assets/46101244/04993fee-7b35-483f-8cb1-a8b58ff1246a 🆑 qol: You can now build multiple pipe layers with the RPD, with just 1 click! /🆑 Co-Authored-By: Ghom <[email protected]>
Its because it changes air alarms to a different item path, just gotta wait for other maps to dissapear from TM's before this can be TM'd itself |
@Gboster-0 is this still being worked on / maintained? |
was ready for quite some time, ima quickly rebase to master and resolve the conflicts |
eh, at this point just ping me on discord whenever this should be updated from upstream/master. Its been several months and i can't bother doing it for no reason anymore |
I believe we tested a large amount of this already, just needed a few rounds with the new stuff will merge |
About The Pull Request
flags_1
toobj_flags
tgstation/tgstation#80033Why It's Good For The Game
The new TGUI is much better, along with having more functionality
Images:
Changelog
🆑
add: the Rapid Pipe Dispenser was bumped up to modern TG, all fear the atmosian powergame
/:cl: