mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-14 19:51:59 +00:00
Warning: Nanotrasen Confidential Proprietary Information (NCPI) must only be accessed and viewed within a Nanotrasen Virtual Environment (NVE, vNTOS-3). Employees in violation of this information ordnance will have their wages A) garnished, and B) sent to a labour camp up to a maximum of ten (10y) years. Questions regarding policies related to NCPI should be directed towards departmental heads or your sector Central Command Information Authority (CCIA) personnel. ## About The Pull Request Credentials Confirmed The Birdshot Engineering Revitalization Plan (formerly proposal Blindfold, now BERP) is a procurement effort to address growing maintenance liabilities and costs on the Skitter-MDR Class Orbital Station located in the Spinward Stellar Cluster (SSC, Sector 28-7b). Over the course of the previous year, ongoing analysis data has provided vital feedback since the station was once again brought into operation after 17 years of abandonment; and using this data, 4 options were outlined for the Blindfold Proposal. 1) Abandonment - No Cost. Operations on Birdshot will cease. 28-7b operations will be moderately impacted. 2) Procurement - Medium Cost. Replace offending station sections completely with low-cost, working alternatives. Operational gains in 28-7b expected. 3) Do Nothing - No Cost. Moderate long-term impacts to operations in 28-7b. 4) >>>_Was removed_ Option 2 was selected for BERP. Procurement efforts identified 3 solutions and later narrowed it down to 1. Following the selection process architects were brought in to draft up low-impact refits to the designated hulk. 5 selections made it past initial drafting, with 3 ultimately being selected for engineering board review. Penultimately draft proposal 3 was selected for the project and now awaits engineering certification. The draft plan is provided on the next page:  Following board certification, implementation of the plan will be commenced by 28-7b Nanotrasen Enigneering Corps. (NECs). Construction time-frame pending Project Foremans review. ## Why It's Good For The Game Birdshot Engineering is where this whole station began. Back then, things were going to look closer to Birdboat Station, but that became looser and more ill-defined as progress was made on the overall station. While I was satisfied of the decrepit feel of Birdshot Enigneering initially, I knew that at some point, it would require modification to better play into Birdshots strengths. I've had a long laundry list of a roadmap that I've wanted to implement since the station was added, and this was the top item. Tier Zero. Problema Numero Uno. You get the idea. This has been a year of drafting, redrafting, and redrafting everything until it fit Birdshot right. With this, we're nearly there. I see this being the definitive Engineering Department for this station for quite some time to come. However, this is still a draft and some elements are subject to change as I begin to work out some of the more minor kinks in the draft such as pipe locations and transit tubes. Presently Atmospherics is completely rebuilt from the bottom up. There is more space, enough to do projects, but you'll have to tear down some windows and walls to gain it. Nothing ventured, nothing gained. You also have most of the gas distro line outside. I'm a firm believer in enabling whatever antics ANY lunatic may have. Atmos techs can rest assured that outside lines are completely reconfigurable (and powered) enabling some... unique project prospects. You also gained an inside HFR and Spare burn chamber. Enjoy. The Engineering Common Areas are now inside the department proper instead of the satellite treatment in the original implementation. Security gets an actual outpost and engineers now have a proper office to file engineering documentation. They say that office colleagues can form tight bonds so let's see whose is stronger: Purples or Yellows? The Supermatter Engine is more of an upgrade over the previous model (Leaky SM is here to stay so deal with it). The room is larger with less rock, allowing some manner of greater customization, but I believe engineers will be more than happy to find that they now have a Burn Chamber of their own. I have zero clue of what they'll do with it, but I think any enterprising CE will be able to create something that even god should fear. Finally we have maint improvements. Nothing really to see here though maybe there's the beginning of something for the future if you care to speculate. I couldn't really keep the meandering maint of the previous rock, so instead we now have some pseudo dead-ends. It's all connected by transit tubes to the north (not shown) so you can slowly get around if you will it. Of course there's plenty of cut-throughs, not-so-finished sections, and opportunity for those who need it. Caution to the blind, this whole rock is spicy. Overall I'm happy with this and want to open it up in Draft Mode for initial thoughts. I have a rough timeline on finishing this that stretches out to the weekend, so the earlier comments are, the more likely I'll be able to MAYBE do something about it. Thanks for the patience and hopefully this is a doozy of an update for all our players. Previous Engineering Provided for Point of Reference:  closes #75590 ## Changelog 🆑 qol: Wholesale Revamp of Birdshots Engineering Department fix: Some Birdshot Amtospherics Concerns fix: Some Birdshot Engine Concerns /🆑
60 lines
4.0 KiB
Plaintext
60 lines
4.0 KiB
Plaintext
/// Verifies that there are no space turfs inside a station area, or on any planetary z-level. Sometimes, these are introduced during the load of the map and are not present in the DMM itself.
|
|
/// Let's just make sure that we have a stop-gap measure in place to catch these if they pop up so we don't put it onto production servers should something errant come up.
|
|
/datum/unit_test/mapload_space_verification
|
|
// This test is quite taxing time-wise, so let's run it later than other faster tests.
|
|
priority = TEST_LONGER
|
|
|
|
/datum/unit_test/mapload_space_verification/Run()
|
|
// Is our current map a planetary station (NO space turfs allowed)? If so, check for ANY space turfs.
|
|
if(SSmapping.is_planetary())
|
|
validate_planetary_map()
|
|
return
|
|
|
|
// Let's explicitly outline valid areas to catch anything that we're... okay with for now, because there are some valid use cases (though we should try to avoid them).
|
|
var/list/excluded_area_typecache = typecacheof(list(
|
|
// Space! This is likely an intentional space turf, so let's not worry about it.
|
|
/area/space,
|
|
// Transit areas have space turfs in a valid placement.
|
|
/area/shuttle/transit,
|
|
// Space Ruins do their own thing (dilapidated lattices over space turfs, for instance). Rather than fuss over it, let's just let it through.
|
|
/area/ruin/space,
|
|
// Same stipulation as space ruins, but they're (ruined) shuttles instead.
|
|
/area/shuttle/ruin,
|
|
/area/shuttle/abandoned,
|
|
// Solars have lattices over space turfs, and are a valid placement for space turfs in a station area.
|
|
/area/station/solars,
|
|
//Birdshot Atmos has a special area, so we'll exclude that from lints here.
|
|
/area/station/engineering/atmos/space_catwalk,
|
|
))
|
|
|
|
// We aren't planetary, so let's check area placements and ensure stuff lines up.
|
|
for(var/turf/iterated_turf in ALL_TURFS())
|
|
var/area/turf_area = get_area(iterated_turf)
|
|
if(!isspaceturf(iterated_turf) || is_type_in_typecache(turf_area, excluded_area_typecache))
|
|
continue // Alright, so let's assume we have intended behavior. If something yorks, we'll get a bare `/area` (maploader?) or a mapper is doing something they shouldn't be doing.
|
|
// We need turf_area.type for the error message because we have fifteen million ruin areas named "Unexplored Location" and it's completely unhelpful here.
|
|
TEST_FAIL("Space turf [iterated_turf.type] found in non-allowed area ([turf_area.type]) at [AREACOORD(iterated_turf)]! Please ensure that all space turfs are in an /area/space!")
|
|
|
|
|
|
/// Verifies that there are ZERO space turfs on a valid planetary station. We NEVER want space turfs here, so we do not check for /area/space here since something completely undesirable is happening.
|
|
/// There are also a few considerations specific to planetary stations included within, so let's spin it out into a separate proc for clarity.
|
|
/datum/unit_test/mapload_space_verification/proc/validate_planetary_map()
|
|
// We want to get both the station level and the mining level (if the two are seperate for any reason).
|
|
var/list/testable_levels = list()
|
|
testable_levels += SSmapping.levels_by_trait(ZTRAIT_STATION) // Station z-levels get to be in by default because they can derail an entire round and cause LINDA to weep if a space turf is present.
|
|
|
|
var/list/mining_levels = SSmapping.levels_by_trait(ZTRAIT_MINING)
|
|
// Add in mining levels should they exist, and dupecheck to make sure we don't have any duplicates because it's valid to have a station and mining level be the same.
|
|
for(var/mining_level in mining_levels)
|
|
if(mining_level in testable_levels)
|
|
continue
|
|
testable_levels += mining_level
|
|
|
|
for(var/level in testable_levels)
|
|
var/testable_turfs = Z_TURFS(level)
|
|
// Remember, any space turf is a failure.
|
|
for(var/turf/open/space/iterated_turf in testable_turfs)
|
|
// grab the type of the area that we're in too, because there's three different types of area types that have the name "Icemoon Wastes", for example
|
|
var/area/invalid_area = get_area(iterated_turf)
|
|
TEST_FAIL("Space turf found on planetary map! [AREACOORD(iterated_turf)] ([invalid_area.type]) Please verify the map file and remove any space turfs.")
|