Ruins sanitization and unit test (#18923)

Properly split and use prefixes and suffixes, unit test to verify the
file exists and is not empty, and that the format convention is
respected
This commit is contained in:
Fluffy
2024-04-12 22:21:34 +00:00
committed by GitHub
parent 9bf73f93f2
commit 4e76fc5133
170 changed files with 870 additions and 302 deletions
+29 -4
View File
@@ -40,11 +40,30 @@
*/
var/list/sectors_blacklist = list()
/// Prefix part of the path to the dmm maps.
/**
* Static part of the ruin path, ie the folder
* have to start without a slash, and end with a slash
*
* eg. `away_site/`
*
* Gets combined with the other prefixes in the inheritance tree
* (under /New()) to form the relative path from the root of the codebase
* to the folder this ruin is in
*
* If you implement a subtype of another subtype, it is *your* responsibility to
* ensure that `/New()` chains the path correctly
*/
var/prefix = null
/// A list of suffix parts of paths of the dmm maps.
/// Combined with prefix to get the actual path.
/**
* The dynamic part of the ruin path, ie the files
*
* A `/list` with only the file names of the DMM files
*
* eg. `my_awesome_ruin.dmm`
*
* Gets combined with the prefix to form the path to the map files, that are loaded when the ruin loads
*/
var/list/suffixes = null
/// Template flags for this ruin
@@ -59,7 +78,13 @@
///Listed ruins are removed from the set of available spawns
var/list/ban_ruins
/datum/map_template/ruin/New()
/**
* Ensure to call the parent constructor *last*
*
* If you have subtypes and you change the `prefix`, it is *your* responsibility to
* chain your changed `prefix` here, before calling the parent constructor
*/
/datum/map_template/ruin/New(var/list/paths = null, rename = null)
// get the map paths
if (suffixes)
mappaths = list()
+2
View File
@@ -26,6 +26,8 @@
if(rename)
name = rename
..()
/datum/map_template/proc/preload_size(paths)
var/list/bounds = list(1.#INF, 1.#INF, 1.#INF, -1.#INF, -1.#INF, -1.#INF)
var/z_offset = 1 // needed to calculate z-bounds correctly
+47
View File
@@ -49,3 +49,50 @@
TEST_PASS("All the ruins in [src.name] loaded successfully!")
return UNIT_TEST_PASSED
/datum/unit_test/ruins_test/all_files_valid
name = "All Ruins Files Exist"
groups = list("generic") //This runs as a generic test as we only need to pass them once, not in every pod
/datum/unit_test/ruins_test/all_files_valid/start_test()
. = UNIT_TEST_PASSED
//Look into every ruin, and see if all the file paths are valid (the file exists)
//or otherwise do not respect the convention
for(var/ruin in subtypesof(/datum/map_template/ruin))
LOG_GITHUB_NOTICE("Testing files for ruin [ruin]")
var/datum/map_template/ruin/tested_ruin = new ruin()
for(var/path in tested_ruin.mappaths)
LOG_GITHUB_DEBUG("Now testing [path] for ruin [ruin]")
//Path format must be respected, start without a slash, and end with a slash
if(!initial(tested_ruin.prefix) || tested_ruin.prefix[1] == "/" || tested_ruin.prefix[length_char(tested_ruin.prefix)] != "/")
TEST_FAIL("Ruin [tested_ruin.name] has an invalid prefix path: [tested_ruin.prefix]")
. = UNIT_TEST_FAILED
//No subfolders in the suffixes list
var/regex/no_subfolders_in_suffixes = regex(@"[\\\/]+")
for(var/suffix in tested_ruin.suffixes)
LOG_GITHUB_DEBUG("Checking suffix [suffix]")
if(no_subfolders_in_suffixes.Find(suffix))
TEST_FAIL("Ruin [ruin] contains a slash or a backslash in the suffixes list!")
. = UNIT_TEST_FAILED
//See if the file actually exists
var/file_content = file2text(file(path))
if(!length(file_content))
TEST_FAIL("Ruin [ruin] - [path] have paths that do not exist or are empty!")
. = UNIT_TEST_FAILED
if(. == UNIT_TEST_PASSED)
TEST_PASS("All ruins have valid files!")
return UNIT_TEST_PASSED
else
TEST_FAIL("Some ruins have invalid paths, read above!")
return UNIT_TEST_FAILED
@@ -0,0 +1,41 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
# balance
# admin
# backend
# security
# refactor
#################################
# Your name.
author: FluffyGhost
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- code_imp: "Properly split and use prefixes and suffixes, unit test to verify the file exists and is not empty, and that the format convention is respected."
@@ -6,7 +6,8 @@
id = "abandoned_diner"//Arbitrary tag to make things work. This should be lowercase and unique
spawn_cost = 1
spawn_weight = 1
suffixes = list("away_site/abandoned_diner/abandoned_diner.dmm")
prefix = "away_site/abandoned_diner/"
suffixes = list("abandoned_diner.dmm")
sectors = list(ALL_CORPORATE_SECTORS)
sectors_blacklist = list(SECTOR_TAU_CETI, SECTOR_HANEUNIM)
@@ -6,7 +6,8 @@
id = "abandoned_industrial_station"//Arbitrary tag to make things work. This should be lowercase and unique
spawn_cost = 1
spawn_weight = 1
suffixes = list("away_site/abandoned_industrial/abandoned_industrial_station.dmm")
prefix = "away_site/abandoned_industrial/"
suffixes = list("abandoned_industrial_station.dmm")
sectors = list(ALL_POSSIBLE_SECTORS)
sectors_blacklist = list(SECTOR_TAU_CETI, SECTOR_HANEUNIM)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/cursed
name = "lone asteroid"
description = "A lone asteroid with a hangar. Latest data from this sector shows it as a Hephaestus mining station, two years ago."
suffixes = list("away_site/abandoned_mining/cursed.dmm")
prefix = "away_site/abandoned_mining/"
suffixes = list("cursed.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_HANEUNIM, SECTOR_BURZSIA, SECTOR_TAU_CETI) //you're not gonna have a station left alone for 2 years in the middle of inhabited space
spawn_weight = 1
@@ -2,7 +2,10 @@
name = "Abandoned Propellant Depot"
description = "Abandoned Propellant Depot."
id = "abandoned_propellant_depot"
suffixes = list("away_site/abandoned_propellant_depot/abandoned_propellant_depot.dmm")
prefix = "away_site/abandoned_propellant_depot/"
suffixes = list("abandoned_propellant_depot.dmm")
spawn_cost = 1
spawn_weight = 1
sectors = list(ALL_POSSIBLE_SECTORS)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/big_derelict
name = "large derelict"
description = "A very large derelict station. According to the starmap, it shouldn't exist."
suffixes = list("away_site/big_derelict/bigderelict.dmm")
prefix = "away_site/big_derelict/"
suffixes = list("bigderelict.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ, ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_HANEUNIM)
spawn_weight = 1
+4 -1
View File
@@ -4,7 +4,10 @@
spawn_cost = 1
spawn_weight = 1
description = "An arctic planet and an alien underground surface."
suffixes = list("away_site/blueriver/blueriver-1.dmm","away_site/blueriver/blueriver-2.dmm")
prefix = "away_site/blueriver/"
suffixes = list("blueriver-1.dmm","blueriver-2.dmm")
generate_mining_by_z = 2
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_BURZSIA, SECTOR_HANEUNIM, SECTOR_TAU_CETI, SECTOR_SRANDMARR) //it's a whole ass planet, shouldn't have it in predefined sectors
@@ -3,7 +3,10 @@
/datum/map_template/ruin/away_site/crashed_elyran_tanker
name = "Crashed Elyran Tanker"
description = "A small tanker, emitting a very faint IFF signal of civilian vessels registered in Elyra. It seems to be partially embedded into a small asteroid, and appears to be completely cold."
suffixes = list("away_site/crashed_elyran_tanker/crashed_elyran_tanker.dmm")
prefix = "away_site/crashed_elyran_tanker/"
suffixes = list("crashed_elyran_tanker.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ)
spawn_weight = 1
spawn_cost = 1
@@ -4,7 +4,10 @@
id = "crystal_planet_outpost"
spawn_cost = 1
spawn_weight = 1
suffixes = list("away_site/crystal_planet_outpost/crystal_planet_outpost.dmm")
prefix = "away_site/crystal_planet_outpost/"
suffixes = list("crystal_planet_outpost.dmm")
sectors = list(ALL_POSSIBLE_SECTORS)
sectors_blacklist = list(SECTOR_BURZSIA, SECTOR_HANEUNIM, SECTOR_SRANDMARR, SECTOR_TAU_CETI) //it's a whole planet, shouldn't have it in predefined sectors
unit_test_groups = list(1)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/first_aurora
name = "space station derelict"
description = "An abandoned space station."
suffixes = list("away_site/first_aurora/first_aurora.dmm")
prefix = "away_site/first_aurora/"
suffixes = list("first_aurora.dmm")
sectors = list(SECTOR_ROMANOVICH)
spawn_weight = 1
spawn_cost = 2
@@ -3,7 +3,10 @@
description = "derelict supply hub"
id = "hivebot_hub"
suffixes = list("away_site/hivebot_hub/hivebot_hub.dmm")
prefix = "away_site/hivebot_hub/"
suffixes = list("hivebot_hub.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ, ALL_COALITION_SECTORS)
spawn_weight = 1
spawn_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/idris_wreck
name = "Wrecked Idris Transport"
description = "An Idris vessel, set upon by pirates and left in ruins."
suffixes = list("away_site/idris_wreck/idris_wreck.dmm")
prefix = "away_site/idris_wreck/"
suffixes = list("idris_wreck.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_WEEPING_STARS, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE) //sectors that an idris ship might be passing through, but frontier enough that it could get raided
spawn_weight = 1
spawn_cost = 1
@@ -3,7 +3,10 @@
id = "point_verdant"
description = "A landing zone designated by local authorities within an SCC-affiliated spaceport. Accommodations have been made to ensure full visitation of any open facilities present."
sectors = list(SECTOR_HANEUNIM)
suffixes = list("away_site/konyang/point_verdant/point_verdant-1.dmm","away_site/konyang/point_verdant/point_verdant-2.dmm","away_site/konyang/point_verdant/point_verdant-3.dmm")
prefix = "away_site/konyang/point_verdant/"
suffixes = list("point_verdant-1.dmm", "point_verdant-2.dmm", "point_verdant-3.dmm")
spawn_weight = 1
spawn_cost = 1
template_flags = TEMPLATE_FLAG_PORT_SPAWN
+4 -1
View File
@@ -3,7 +3,10 @@
id = "magshield"
description = "It's an orbital shield station."
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_AEMAQ, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL, SECTOR_UUEOAESA, ALL_COALITION_SECTORS)
suffixes = list("away_site/magshield/magshield.dmm")
prefix = "away_site/magshield/"
suffixes = list("magshield.dmm")
spawn_weight = 1
spawn_cost = 1
@@ -9,7 +9,9 @@
id = "orion_automated_station" // arbitrary tag to make things work, this should be lowercase and unique
spawn_cost = 1
spawn_weight = 1
suffixes = list("away_site/orion/orion_automated_station.dmm")
prefix = "away_site/orion/"
suffixes = list("orion_automated_station.dmm")
sectors = list(ALL_CORPORATE_SECTORS)
sectors_blacklist = list(ALL_DANGEROUS_SECTORS)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/overgrown_mining_station
name = "overgrown_mining_station"
description = "An abandoned mining station with a dionae growing into it"
suffixes = list("away_site/overgrown_mining_station/overgrown_mining_station.dmm")
prefix = "away_site/overgrown_mining_station/"
suffixes = list("overgrown_mining_station.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE)
spawn_weight = 1
spawn_cost = 2
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/pirate_base
name = "pirate base"
description = "An asteroid with a occupied hangar carved into it."
suffixes = list("away_site/pirate_base/pirate_base.dmm")
prefix = "away_site/pirate_base/"
suffixes = list("pirate_base.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/racers
name = "unregistered station"
description = "A station that doesn't appear to have been legally registered. It has four large hangar bays and a small habitation module - and the signals emittered by its dying equipment seem to identify it as belonging to an underground racing group."
suffixes = list("away_site/racers/racers.dmm")
prefix = "away_site/racers/"
suffixes = list("racers.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ, ALL_COALITION_SECTORS)
spawn_weight = 1
spawn_cost = 2
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/grand_romanovich
name = "Grand Romanovich Casino"
description = "An adhomian style casino in Tau Ceti's space."
suffixes = list("away_site/romanovich/grand_romanovich.dmm")
prefix = "away_site/romanovich/"
suffixes = list("grand_romanovich.dmm")
sectors = list(SECTOR_ROMANOVICH)
spawn_weight = 1
ship_cost = 2
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/sensor_relay
name = "sensor relay"
description = "A ring-shaped installation with a powerful sensor suite. These stations were originally built during the pre-Interstellar War era by the Solarian Alliances Department of Colonization as a method of making interstellar travel safer. Thousands of these “beacon stations” were built by the Alliance and many were abandoned during the Interstellar War and its aftermath. While they have been mostly replaced in more developed sectors, such as Libertys Cradle and the Jewel Worlds, beacon stations are still a common sight in less developed sectors of the Orion Spur such as the Badlands and Weeping Stars."
suffixes = list("away_site/sensor_relay/sensor_relay.dmm")
prefix = "away_site/sensor_relay/"
suffixes = list("sensor_relay.dmm")
sectors = ALL_POSSIBLE_SECTORS
id = "sensor_relay"
template_flags = TEMPLATE_FLAG_SPAWN_GUARANTEED
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/shady
name = "shady asteroid"
description = "An asteroid with a hangar carved out inside it. Scans detect an unregistered structure within, with multiple lifeforms present."
suffixes = list("away_site/shady/shady.dmm")
prefix = "away_site/shady/"
suffixes = list("shady.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_BURZSIA, SECTOR_HANEUNIM)
spawn_weight = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/abandoned_bunker
name = "lone asteroid"
description = "A lone asteroid. Strange signals are coming from this one."
suffixes = list("away_site/sol_bunker/bunker.dmm")
prefix = "away_site/sol_bunker/"
suffixes = list("bunker.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_WEEPING_STARS)
spawn_weight = 1
spawn_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tajara_mining_jack
name = "adhomian mining outpost"
description = "An outpost used by the crew of mining jacks."
suffixes = list("away_site/tajara/mining_jack/mining_jack.dmm")
prefix = "away_site/tajara/mining_jack/"
suffixes = list("mining_jack.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/peoples_station
name = "People's Space Station"
description = "Built in the interwar period, the People's Space Station bears the prestige of being the first space installation designed, constructed, and manned by Tajara."
suffixes = list("away_site/tajara/peoples_station/peoples_station.dmm")
prefix = "away_site/tajara/peoples_station/"
suffixes = list("peoples_station.dmm")
sectors = list(SECTOR_SRANDMARR)
spawn_weight = 1
spawn_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/pra_satellite
name = "hadiist satellite"
description = "A People's Republic of Adhomai satellite used to survey the system."
suffixes = list("away_site/tajara/pra_satellite/pra_satellite.dmm")
prefix = "away_site/tajara/pra_satellite/"
suffixes = list("pra_satellite.dmm")
sectors = list(SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL)
spawn_weight = 1
spawn_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/saniorios_smuggler
name = "Sani'Orios"
description = "A gas giant composed of ammonia. Its planetary ring is home to several spaceship wrecks and hidden smuggler bases."
suffixes = list("away_site/tajara/saniorios_smuggler/saniorios_smuggler.dmm")
prefix = "away_site/tajara/saniorios_smuggler/"
suffixes = list("saniorios_smuggler.dmm")
sectors = list(SECTOR_SRANDMARR)
spawn_weight = 1
spawn_cost = 2
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tajara_scrapper
name = "adhomian scrapper outpost"
description = "An outpost used by Tajaran scrappers. It offers repair and scrapping services."
suffixes = list("away_site/tajara/scrapper/scrapper.dmm")
prefix = "away_site/tajara/scrapper/"
suffixes = list("scrapper.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tajara_safehouse
name = "abandoned outpost"
description = "A derelict space outpost."
suffixes = list("away_site/tajara/taj_safehouse/tajara_safehouse.dmm")
prefix = "away_site/tajara/taj_safehouse/"
suffixes = list("tajara_safehouse.dmm")
sectors = list(SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 2
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/wrecked_nt_ship
name = "wrecked NT ship"
description = "A wrecked ship once owned by NanoTrasen."
suffixes = list("away_site/wrecked_nt_ship/wrecked_nt_ship.dmm")
prefix = "away_site/wrecked_nt_ship/"
suffixes = list("wrecked_nt_ship.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS, SECTOR_SRANDMARR)
sectors_blacklist = list(SECTOR_BURZSIA, SECTOR_HANEUNIM) //NT has pretty much no presence in either of these, why would there be a wrecked ship
spawn_weight = 1
+7
View File
@@ -3,3 +3,10 @@
/datum/map_template/ruin/away_site
var/list/generate_mining_by_z
prefix = "maps/away/"
/datum/map_template/ruin/away_site/New(var/list/paths = null, rename = null)
//Apply the subfolder that all ruins are in, as the prefix will get overwritten
prefix = "maps/away/[prefix]"
..()
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tcaf_corvette
name = "Republican Fleet Corvette"
description = "A patrol vessel of Biesel's Republican Fleet."
suffixes = list("ships/biesel/tcaf_corvette/tcaf_corvette.dmm")
prefix = "ships/biesel/tcaf_corvette/"
suffixes = list("tcaf_corvette.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_BADLANDS, SECTOR_VALLEY_HALE)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tcfl_peacekeeper_ship
name = "TCFL Corvette"
description = "Serving as the very foundation of the SCC's (And more specifically, NanoTrasen's) fleet of asset protection vessels, the Cetus-class is versatile and durable, but also clumsy and somewhat underpowered in regards to its engine and propulsion. It features small weapon hardpoints in its thruster arms, and a massive hangar host to the design's interdiction counterpart - the Hydrus-class shuttle. This one appears to be a Decanus-class, the Tau Ceti Foreign Legion variation of the design."
suffixes = list("ships/tcfl_patrol/tcfl_peacekeeper_ship.dmm")
prefix = "ships/biesel/tcfl_patrol/"
suffixes = list("tcfl_peacekeeper_ship.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_VALLEY_HALE, SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/casino
name = "Casino"
description = "A casino ship!"
suffixes = list("ships/casino/casino.dmm")
prefix = "ships/casino/"
suffixes = list("casino.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_NEW_ANKARA, SECTOR_AEMAQ, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL, SECTOR_UUEOAESA, ALL_COALITION_SECTORS)
spawn_weight = 1
spawn_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/ranger_corvette
name = "Ranger Gunboat"
description = "The Xansan-class is not, in fact, a distinct design in of itself. It is instead Xanu Primes variant of the Lagos-class gunboat, a Solarian light attack ship design. While the Lagos-class has been out of service with the Alliances navy for centuries, the blueprints were captured during the Interstellar war by Xanu Prime militiamen from a regional naval shipyard during the opening stages of the conflict, and were immediately used to construct ships of the class for use by Xanu Primes burgeoning military. While the Xansan-class has been retired from Xanu service, the leftover ships were donated en masse to the Frontier Marshal Bureau, and the Rangers make use of the craft to this day, in spite of their advanced age."
suffixes = list("ships/coc/coc_ranger/coc_ship.dmm")
prefix = "ships/coc/coc_ranger/"
suffixes = list("coc_ship.dmm")
sectors = list(SECTOR_BADLANDS, ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_HANEUNIM, SECTOR_BURZSIA)
spawn_weight = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/coc_scarab
name = "Scarab Salvage Ship"
description = "Scarab salvage ship."
suffixes = list("ships/coc/coc_scarab/coc_scarab_deck_1.dmm", "ships/coc/coc_scarab/coc_scarab_deck_2.dmm")
prefix = "ships/coc/coc_scarab/"
suffixes = list("coc_scarab_deck_1.dmm", "coc_scarab_deck_2.dmm")
sectors = list(SECTOR_COALITION, SECTOR_WEEPING_STARS, SECTOR_ARUSHA, SECTOR_LIBERTYS_CRADLE)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/coc_surveyor
name = "COC Survey Ship"
description = "Coalition science ship."
suffixes = list("ships/coc/coc_surveyor/coc_surveyor.dmm")
prefix = "ships/coc/coc_surveyor/"
suffixes = list("coc_surveyor.dmm")
sectors = list(SECTOR_BADLANDS, ALL_COALITION_SECTORS, ALL_VOID_SECTORS)
sectors_blacklist = list(SECTOR_HANEUNIM, SECTOR_BURZSIA)
spawn_weight = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/gadpathur_patrol
name = "Gadpathurian Patrol Corvette"
description = "Gadpathur navy patrol ship."
suffixes = list("ships/coc/gadpathur_patrol/gadpathur_patrol.dmm")
prefix = "ships/coc/gadpathur_patrol/"
suffixes = list("gadpathur_patrol.dmm")
sectors = list(ALL_COALITION_SECTORS) //NOTE: Gadpathur patrols all of the Coalition, however, they are intentionally -not- present in Haneunim. Konyang and Gadpathur are not friendly as of the Amor Patriae arc.
sectors_blacklist = list(SECTOR_HANEUNIM, SECTOR_BURZSIA)
spawn_weight = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/diona_rokz_ship
name = "Rokz Clan Ship"
description = "A ship belonging to the Rokz voidtamer clan, a group of dionae who specialize in selling space fauna."
suffixes = list("ships/dionae/diona_rokz_ship/diona_rokz_ship.dmm")
prefix = "ships/dionae/diona_rokz_ship/"
suffixes = list("diona_rokz_ship.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_GAKAL, SECTOR_UUEOAESA)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/diona_serz_ship
name = "Serz Clan Ship"
description = "A ship belonging to the Serz voidtamer clan, a group of dionae who specialize in selling space fauna."
suffixes = list("ships/dionae/diona_serz_ship/diona_serz_ship.dmm")
prefix = "ships/dionae/diona_serz_ship/"
suffixes = list("diona_serz_ship.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_GAKAL, SECTOR_UUEOAESA)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/dominian_corvette
name = "Dominian Corvette"
description = "One of the most common ships in the Imperial Fleet, Lammergeier-class corvettes are often used as the vanguard of battlefleets entering a system marked for annexation into the glorious Empire as it is tasked to find and scout routes for the larger fleet. Though intended for scouting and screening work the Lammergeier is, like its larger counterparts, quite heavily armed and armored for a typical corvette. Any frontier savages who attempt to meet one with force of arms will soon find themselves staring down the barrels of Zhurongs finest weaponry, and the Fleet-trained Mazals entrusted to operate it. The heavy armament and sensors of the Lammergeier-class come at a cost: it lacks a shield generator and is much larger than a typical Solarian corvette, thus requiring a larger crew. Lammergeier-class captains are generally loyal Mazals, such as the citizens of Novi Jadran, and are authorized to take whatever measures are necessary to ensure their crew remains loyal to both Empire and Goddess. This ones transponder marks it as belonging to the Empires First Battlefleet a battle-hardened formation responsible for patrolling the region of the northern Sparring Sea between the Empire, Hegemony, and Republic of dominia."
suffixes = list("ships/dominia/dominian_corvette/dominian_corvette.dmm")
prefix = "ships/dominia/dominian_corvette/"
suffixes = list("dominian_corvette.dmm")
sectors = list(SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/dominian_science_vessel
name = "Dominian Science Vessel"
description = "Based on the Lammergeier-class corvette, this vessel has been repurposed by House Volvalaad for long range survey and scientific tasks. Due to its repurposement, the vessel features an enlarged hangar and shuttle, as well as scientific labs and a smaller defensive armament."
suffixes = list("ships/dominia/dominian_science_vessel/dominian_science_vessel.dmm")
prefix = "ships/dominia/dominian_science_vessel/"
suffixes = list("dominian_science_vessel.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, ALL_COALITION_SECTORS, SECTOR_BADLANDS)
sectors_blacklist = list(SECTOR_HANEUNIM)
spawn_weight = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/dominian_unathi
name = "Kazhkz Privateer Ship"
description = "Dominian Unathi pirates"
suffixes = list("ships/dominia/dominian_unathi_privateer/dominian_unathi_privateer.dmm")
prefix = "ships/dominia/dominian_unathi_privateer/"
suffixes = list("dominian_unathi_privateer.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_WEEPING_STARS)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "Hailstorm Ship"
id = "hailstorm_ship"
description = "A People's Volunteer Spacer Militia ship."
suffixes = list("ships/dpra/hailstorm/hailstorm_ship.dmm")
prefix = "ships/dpra/hailstorm/"
suffixes = list("hailstorm_ship.dmm")
ship_cost = 1
spawn_weight = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/hailstorm_shuttle)
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/ee_spy_ship
name = "Einstein Engines Research Ship"
description = "A research ship belonging to Einstein Engines, the Stellar Corporate Conglomerate's main competitor."
suffixes = list("ships/einstein/ee_spy_ship.dmm")
prefix = "ships/einstein/"
suffixes = list("ee_spy_ship.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/elyran_corvette
name = "Elyran Corvette"
description = "One of the first vessels from Elyra's recent military modernization efforts to enter active service, the Sahin-class has taken great strides in improved quality and survivability from previous designs and is on track to become the backbone of the Elyran Republic's border control efforts. Equipped and crewed to handle anti-piracy operations, border patrols, and even to assist with disaster relief, this vessel follows the Elyran Armed Force's doctrine of versatility and is capable of striking out on its own for weeks at a time without resupply if required."
suffixes = list("ships/elyra/elyra_corvette/elyra_corvette.dmm")
prefix = "ships/elyra/elyra_corvette/"
suffixes = list("elyra_corvette.dmm")
sectors = list(SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_NEW_ANKARA, SECTOR_AEMAQ)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/freebooter_ship
name = "Freebooter Ship"
description = "One of the most common sights in the Orion Spur, even outside of human space, is the Hephaestus-produced Ox-class freighter. Designed to haul significant amounts of cargo on well-charted routes between civilized systems, the Ox-class is the backbone of many interstellar markets outside of the United Syndicates of Himeo. Repurposed Ox-class freighters are often used by pirates throughout the Spur thanks to their large size and ease of maintenance and modification."
suffixes = list("ships/freebooter/freebooter_ship.dmm")
prefix = "ships/freebooter/"
suffixes = list("freebooter_ship.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ, SECTOR_SRANDMARR, ALL_COALITION_SECTORS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -2,7 +2,10 @@
name = "Golden Deep Merchant Vessel"
id = "golden_deep"
description = "A mercantile transport vessel, registered to the Golden Deep."
suffixes = list("ships/golden_deep/golden_deep_merchant.dmm")
prefix = "ships/golden_deep/"
suffixes = list("golden_deep_merchant.dmm")
ship_cost = 1
spawn_weight = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/hegemony_corvette
name = "Hegemony Corvette"
description = "Ship with lizards."
suffixes = list("ships/hegemony/hegemony_corvette/hegemony_corvette.dmm")
prefix = "ships/hegemony/hegemony_corvette/"
suffixes = list("hegemony_corvette.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_UUEOAESA)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "Merchants' Guild Freighter"
id = "merchants_guild"
description = "A freighter flying under the banner of the Izweski Hegemony Merchants' Guild."
suffixes = list("ships/hegemony/merchants_guild/merchant_freighter.dmm")
prefix = "ships/hegemony/merchants_guild/"
suffixes = list("merchant_freighter.dmm")
ship_cost = 1
spawn_weight = 0 //the merchants guild has gone bankrupt, don't spawn this until we figure out how to rework it.
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/miners_guild_station
name = "Miners' Guild Outpost"
description = "A station constructed by the Unathi Miners' Guild"
suffixes = list("ships/hegemony/miners_guild/miners_guild_station.dmm")
prefix = "ships/hegemony/miners_guild/"
suffixes = list("miners_guild_station.dmm")
spawn_weight = 1
ship_cost = 1
sectors = list(SECTOR_BADLANDS, SECTOR_UUEOAESA)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/cyclops_mining_vessel
name = "Cyclops Mining Vessel"
description = "This bulky vessel is designed and operated by Hephaestus Industries. From asteroid cracking to planetary operations, this ship can do it all. "
suffixes = list("ships/heph/cyclops/cyclops.dmm")
prefix = "ships/heph/cyclops/"
suffixes = list("cyclops.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_WEEPING_STARS, SECTOR_UUEOAESA, SECTOR_BURZSIA)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/heph_security
name = "Hephaestus Security Vessel"
description = "A vessel for protecting Hephaestus assets."
suffixes = list("ships/heph/heph_security/heph_security.dmm")
prefix = "ships/heph/heph_security/"
suffixes = list("heph_security.dmm")
sectors = list(SECTOR_BURZSIA, SECTOR_UUEOAESA, SECTOR_TAU_CETI, SECTOR_CORP_ZONE) //Sectors with heavy Hephaestus presence specifically. These guys aren't going to be out patrolling the Badlands, they're going to be sticking close to valuable Heph installations.
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/iac_rescue_ship
name = "IAC Rescue Ship"
description = "The Sanctuary-class rescue ship is a fast response medical vessel, based in large part off of the Asclepius-class medical transport, a much older and more widespread clinic ship, designed to operate mainly between planets rather than in open space. Most Sanctuary-class hulls are heavily refitted to accomodate for the new conditions in the Wildlands, sporting additional thrusters and a hangar bay, created from what was originally a waiting room. However, it is still limited by its origins, having only the bare minimum of crew and atmospherics facilities, as well as being rather obviously unarmed, often needing to return to port for repairs or supplies."
suffixes = list("ships/iac/iac_rescue_ship.dmm")
prefix = "ships/iac/"
suffixes = list("iac_rescue_ship.dmm")
sectors = list(SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, ALL_COALITION_SECTORS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/idris_cruiser
name = "Idris Cruiser"
description = "A small luxury cruiser run by Idris Incorporated's subsidiary, Celestial Cruises. The Argentum-class is more of a yacht than a proper cruise ship, and is easily dwarfed by the fleet's larger vessels. However, it makes up for its diminuitive size by its speed, flexibility, and low maintenance cost. It adopts a unique wandering business model, where it roams the Spur and caters to tired traveling vessel crews seeking a getaway among the stars. It comes with a bar and restaurant, a pool, a spa, and a viewing lounge, as well as four suites for overnight stayers."
suffixes = list("ships/idris/idris_cruiser.dmm")
prefix = "ships/idris/"
suffixes = list("idris_cruiser.dmm")
sectors = list(ALL_CORPORATE_SECTORS)
sectors_blacklist = list(ALL_DANGEROUS_SECTORS)
spawn_weight = 1
@@ -2,7 +2,10 @@
name = "kataphract ship"
id = "awaysite_kataphract_ship"
description = "Ship with lizard knights."
suffixes = list("ships/kataphracts/kataphract_ship.dmm")
prefix = "ships/kataphracts/"
suffixes = list("kataphract_ship.dmm")
ship_cost = 1
spawn_weight = 1
spawn_weight_sector_dependent = list(SECTOR_UUEOAESA=3)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/air_konyang
name = "Air Konyang"
description = "Air Konyang civilian transport."
suffixes = list("ships/konyang/air_konyang/air_konyang.dmm")
prefix = "ships/konyang/air_konyang/"
suffixes = list("air_konyang.dmm")
sectors = list(SECTOR_HANEUNIM)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "Einstein Engines Shuttle"
id = "einstein_shuttle"
description = "An Einstein Engines transport shuttle."
suffixes = list("ships/konyang/einstein_shuttle/einstein_shuttle.dmm")
prefix = "ships/konyang/einstein_shuttle/"
suffixes = list("einstein_shuttle.dmm")
spawn_weight = 1
ship_cost = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/einstein_shuttle)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/ipc_refugee_ship
name = "IPC Refugee Ship"
description = "The Akers-class freighter is an ancient design, dating back nearly two hundred years. It was considered a reliable freighter for its time, but is completely obsolete by modern standards, making it a rare sight outside of ship graveyards. Scans indicate this vessel in particular to be exceptionally run down, bearing severe structural damage across the whole ship. Damage appears to be from a mix of both meteors and ballistic armaments. Despite this, power signatures seem to indicate the vessel is still somehow operable."
suffixes = list("ships/konyang/ipc_refugee/ipc_refugee_ship.dmm")
prefix = "ships/konyang/ipc_refugee/"
suffixes = list("ipc_refugee_ship.dmm")
sectors = list(SECTOR_HANEUNIM, SECTOR_LIBERTYS_CRADLE)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/kasf_corvette
name = "KASF Corvette"
description = "An older design of patrol corvette that saw its fair share of service in its golden days among the Xanu fleets, the Sai-class corvette would be considered obsolete by modern standards were it not retrofitted with newer weaponry, sensors, and other ship systems. In recent decades this class of ship has largely been mothballed by Xanu, but a large number were reactivated and donated when Konyang declared independence from Sol and joined the Coalition of Colonies. Now it serves an important role in the KASF, commonly seen combatting pirates and controlling the flow of refugees from the Wildlands."
suffixes = list("ships/konyang/kasf_ship/kasf_ship.dmm")
prefix = "ships/konyang/kasf_ship/"
suffixes = list("kasf_ship.dmm")
id = "kasf_corvette"
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/kasf_shuttle)
@@ -2,7 +2,10 @@
name = "Konyang Wrecked Cargo Ship"
id = "konyang_wreck"
description = "Orion Express cargo ship, home to an unfortunate outbreak of infected IPCs."
suffixes = list("ships/konyang_wreck/konyang_wreck.dmm")
prefix = "ships/konyang/konyang_wreck/"
suffixes = list("konyang_wreck.dmm")
spawn_cost = 1
spawn_weight = 1
sectors = list(SECTOR_HANEUNIM)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/water_barge
name = "Water Barge"
description = "A PACHROM transport barge, exporting water."
suffixes = list("ships/konyang/water_barge/water_barge.dmm")
prefix = "ships/konyang/water_barge/"
suffixes = list("water_barge.dmm")
sectors = list(SECTOR_HANEUNIM)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "Her Majesty's Mercantile Flotilla Ship"
id = "nka_merchant"
description = "A merchant ship of the New Kingdom's Mercantile Flotilla."
suffixes = list("ships/nka/nka_merchant/nka_merchant.dmm")
prefix = "ships/nka/nka_merchant/"
suffixes = list("nka_merchant.dmm")
ship_cost = 1
spawn_weight = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/nka_merchant_shuttle)
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/orion_express_ship
name = "Orion Express Mobile Station"
description = "The Traveler-class mobile station is a relatively old design, but nonetheless venerable and one of the building blocks of interstellar commerce. While relatively small, is a treasured asset in the Orion Express corporation's fleet, and has been referred to as “the gas station of the stars”, offering food, supplies, and fuel to anyone who may need it."
suffixes = list("ships/orion/orion_express_ship.dmm")
prefix = "ships/orion/"
suffixes = list("orion_express_ship.dmm")
sectors = list(ALL_CORPORATE_SECTORS)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "Database Freighter"
id = "database_freighter"
description = "Made from adapted designs of the first freighter Tajara ever worked upon, Database freighters are PRA vessels made specially for gathering information on star systems and what passes through them."
suffixes = list("ships/pra/database_freighter/database_freighter.dmm")
prefix = "ships/pra/database_freighter/"
suffixes = list("database_freighter.dmm")
ship_cost = 1
spawn_weight = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/database_freighter_shuttle)
@@ -2,7 +2,10 @@
name = "Headmaster Ship"
id = "headmaster_ship"
description = "A People's Republic Orbital Fleet ship."
suffixes = list("ships/pra/headmaster/headmaster_ship.dmm")
prefix = "ships/pra/headmaster/"
suffixes = list("headmaster_ship.dmm")
ship_cost = 1
spawn_weight = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/headmaster_shuttle)
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/sadar_scout
name = "Unified Sadar Fleet Scout"
description = "The Boreas-class is a small and ancient class of expeditionary vessels dating back a couple hundreds years to when it was commissioned by the Solarian Department of Colonization for Colony Fleet SFE-528-RFS - better known now as the Scarab Fleet. Like most scarab ships, this one has been heavily modified with much of necessary equipment retrofitted and superfluous components stripped away."
suffixes = list("ships/sadar_scout/sadar_scout.dmm")
prefix = "ships/sadar_scout/"
suffixes = list("sadar_scout.dmm")
sectors = list(ALL_COALITION_SECTORS)
sectors_blacklist = list(SECTOR_HANEUNIM, SECTOR_BURZSIA)
spawn_weight = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/scc_scout_ship
name = "SCC Scout Ship"
description = "A small ship commonly fielded by the Stellar Corporate Conglomerate, the Serendipity-class, Hephaestus-designed and produced. It is supposed to be a small platform, entirely self-sufficient general-purpose scouting and surveying ship, the Serendipity is equipped with both a bluespace and a warp drive and two different engines."
suffixes = list("ships/scc/scc_scout_ship.dmm")
prefix = "ships/scc/"
suffixes = list("scc_scout_ship.dmm")
sectors = list(ALL_POSSIBLE_SECTORS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/fsf_patrol_ship
name = "FSF Corvette"
description = "A small corvette manufactured for the Solarian Navy by Hephaestus, the Montevideo-class is an anti-piracy vessel through and through - with a shuttle bay that takes up a third of the ship and only a single weapon hardpoint located in one arm of the ship, the Montevideo is designed for long-term, self-sufficient operations in inhabited space against small-time pirate vessels that would be unable to overcome the ship's lackluster armaments. Generous automation and streamlined equipment allows it to function with a very small crew."
suffixes = list("ships/sol_merc/fsf_patrol_ship.dmm")
prefix = "ships/sol_merc/"
suffixes = list("fsf_patrol_ship.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/sfa_patrol_ship
name = "SFA Corvette"
description = "A small ship that appears to be, at its core, a Montevideo-class corvette, a Solarian anti-piracy and patrol corvette designed with ample automation and streamlined equipment which allows for it to be manned by a small crew. This one, however, seems to have been host to a myriad of haphazard and radical modifications, and is scarcely identifiable as the original craft. Beyond the changes made to the ship itself, it also appears to have suffered extensive damage and wear, and seems to be near-derelict"
suffixes = list("ships/sol_pirate/sfa_patrol_ship.dmm")
prefix = "ships/sol_pirate/"
suffixes = list("sfa_patrol_ship.dmm")
sectors = list(SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
+4 -1
View File
@@ -2,7 +2,10 @@
name = "SSMD Corvette"
description = "A long-range reconnaissance corvette design in use by the Solarian Navy, the Uhlan-class is a relatively costly and somewhat uncommon ship to be seen in the Alliance's fleets, and is typically reserved for more elite (or at least better equipped and trained) units. Designed to operate alone or as part of a small task force with minimal support in unfriendly space, it is most commonly seen assigned to probing, surveillance, harassment, and strike operations. \
In spite of its small size, the Uhlan has relatively generous crew facilities and it is well-armed relative to its size and role, all made possible by extensive automation."
suffixes = list("ships/sol_ssmd/ssmd_ship.dmm")
prefix = "ships/sol_ssmd/"
suffixes = list("ssmd_ship.dmm")
sectors = list(SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/adhomian_circus
name = "Adhomian Traveling Circus"
description = "The N'hanzafu class is a bulky Adhomian freighter designed with a large crew and cargo in mind. This one is painted in bright colors."
suffixes = list("ships/tajara/circus/adhomian_circus.dmm")
prefix = "ships/tajara/circus/"
suffixes = list("adhomian_circus.dmm")
sectors = list(ALL_TAU_CETI_SECTORS, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tajaran_smuggler
name = "Adhomian Freighter"
description = "Built with reliability in mind, the Zhsram Freighter is one of the most common Adhomian designs. This vessel is cheap and has a sizeable cargo storage. It is frequently used by Tajaran traders and smugglers."
suffixes = list("ships/tajara/taj_smuggler/tajaran_smuggler.dmm")
prefix = "ships/tajara/taj_smuggler/"
suffixes = list("tajaran_smuggler.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL, SECTOR_WEEPING_STARS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tirakqi_smuggler
name = "Ti'Rakqi Smuggler"
description = "Featuring a respectable cargo bay, light frame, and large thruster nacelles, the Xroquv-class is one of the fastest federation freighters of this size. This one in particular appears to be refitted with expanded thruster nacelles and minor structural modifications. This one's transponder identifies it as belonging to an independent freighter."
suffixes = list("ships/tirakqi_smuggler/tirakqi_smuggler.dmm")
prefix = "ships/tirakqi_smuggler/"
suffixes = list("tirakqi_smuggler.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tramp_freighter
name = "Tramp Freighter"
description = "A freighter of mixed repute, the Catspaw-class is a rare independent design, and a favorite of small-scale freight businesses. It has a shielded cargo bay and an internal hangar, capable of accommodating a small shuttle. Its other features, however, are lacking - with cramped crew amenities and no defenses to speak of, the Catspaw is risky to operate in unpoliced space."
suffixes = list("ships/tramp_freighter/tramp_freighter.dmm")
prefix = "ships/tramp_freighter/"
suffixes = list("tramp_freighter.dmm")
sectors = list(SECTOR_TAU_CETI, SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_NEW_ANKARA, SECTOR_BADLANDS, SECTOR_AEMAQ, SECTOR_SRANDMARR, ALL_COALITION_SECTORS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/hiskyn
name = "Hiskyn Revanchists Ship"
description = "Ship with pirate lizards."
suffixes = list("ships/unathi_pirate/hiskyn/unathi_pirate_hiskyn.dmm")
prefix = "ships/unathi_pirate/hiskyn/"
suffixes = list("unathi_pirate_hiskyn.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_GAKAL)
spawn_weight = 1
ship_cost = 1
@@ -2,7 +2,10 @@
name = "empty sector"
id = "unathi_pirate"
description = "An empty sector."
suffixes = list("ships/unathi_pirate/izharshan/unathi_pirate_izharshan.dmm")
prefix = "ships/unathi_pirate/izharshan/"
suffixes = list("unathi_pirate_izharshan.dmm")
spawn_weight = 1
ship_cost = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/unathi_pirate_izharshan)
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/tarwa
name = "Tarwa Conglomerate Ship"
description = "Ship with pirate lizards, pirate plants"
suffixes = list("ships/unathi_pirate/tarwa/unathi_pirate_tarwa.dmm")
prefix = "ships/unathi_pirate/tarwa/"
suffixes = list("unathi_pirate_tarwa.dmm")
sectors = list(SECTOR_BADLANDS, SECTOR_GAKAL, SECTOR_LIGHTS_EDGE, SECTOR_WEEPING_STARS)
spawn_weight = 1
ship_cost = 1
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/militia_ship
name = "Militia Ship"
description = "An unarmed and extremely prolific design of large, self-sufficient shuttle, prized for its modularity. Found all throughout the spur, the Yak-class shuttle can be configured to conceivably serve in any role, though it is only rarely armed with ship-to-ship weapons. Manufactured by Hephaestus."
suffixes = list("ships/wildlands_milita/militia_ship.dmm")
prefix = "ships/wildlands_militia/"
suffixes = list("militia_ship.dmm")
sectors = list(SECTOR_ROMANOVICH, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS)
spawn_weight = 1
ship_cost = 1
@@ -18,7 +18,6 @@
"aad" = (
/obj/machinery/door/airlock/security{
name = "Brig";
req_access = null;
dir = 4
},
/turf/simulated/floor/tiled/dark,
@@ -105,10 +104,7 @@
/obj/item/paper_bin,
/obj/item/pen/multi,
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/tiled{
name = "cooled floor";
temperature = 278
},
/turf/simulated/floor/tiled/cooled,
/area/ship/militia_ship)
"aCd" = (
/obj/structure/bed/stool/chair/office/bridge/pilot{
@@ -156,20 +152,13 @@
/area/ship/militia_ship)
"aJd" = (
/obj/machinery/atmospherics/binary/pump/high_power{
dir = 1;
dir = 1
},
/turf/simulated/floor,
/area/ship/militia_ship)
"aMB" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/blackbox_recorder,
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/bluegrid{
name = "Server Base";
nitrogen = 500;
oxygen = 0;
temperature = 80
},
/turf/simulated/floor/bluegrid/cooled,
/area/ship/militia_ship)
"aOU" = (
/obj/machinery/light/small{
@@ -566,24 +555,15 @@
/obj/item/modular_computer/console/preset/civilian,
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/cobweb,
/turf/simulated/floor/tiled{
name = "cooled floor";
temperature = 278
},
/turf/simulated/floor/tiled/cooled,
/area/ship/militia_ship)
"fVv" = (
/obj/machinery/telecomms/allinone/ship,
/turf/simulated/floor/bluegrid{
name = "Server Base";
nitrogen = 500;
oxygen = 0;
temperature = 80
},
/turf/simulated/floor/bluegrid/cooled,
/area/ship/militia_ship)
"fZq" = (
/obj/machinery/door/airlock/security{
name = "Brig";
req_access = null;
dir = 1
},
/turf/simulated/floor/tiled/dark,
@@ -647,7 +627,7 @@
/area/ship/militia_ship)
"hdb" = (
/obj/machinery/atmospherics/portables_connector{
dir = 8;
dir = 8
},
/obj/machinery/portable_atmospherics/canister/carbon_dioxide,
/turf/simulated/floor,
@@ -666,10 +646,7 @@
dir = 8
},
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/tiled{
name = "cooled floor";
temperature = 278
},
/turf/simulated/floor/tiled/cooled,
/area/ship/militia_ship)
"hiw" = (
/obj/machinery/door/airlock/hatch{
@@ -801,7 +778,6 @@
"iGK" = (
/obj/machinery/door/airlock/glass{
name = "Dinner Hall";
req_access = null;
dir = 4
},
/obj/effect/floor_decal/corner/red/diagonal,
@@ -915,7 +891,6 @@
/obj/effect/floor_decal/corner/black/diagonal,
/obj/machinery/door/airlock/silver{
name = "Kitchen";
req_access = null;
dir = 4
},
/turf/simulated/floor/tiled/white,
@@ -1123,8 +1098,7 @@
/turf/simulated/floor/tiled/white,
/area/ship/militia_ship)
"ofY" = (
/obj/machinery/atmospherics/portables_connector{
},
/obj/machinery/atmospherics/portables_connector,
/obj/machinery/portable_atmospherics/canister/carbon_dioxide,
/turf/simulated/floor/shuttle/black,
/area/shuttle/militia_shuttle)
@@ -1165,9 +1139,7 @@
/turf/simulated/floor/shuttle/dark_blue,
/area/ship/militia_ship)
"piw" = (
/obj/structure/closet/secure_closet/kitchen_cabinet/standard{
req_access = null
},
/obj/structure/closet/secure_closet/kitchen_cabinet/standard,
/obj/item/reagent_containers/food/snacks/meat,
/obj/item/reagent_containers/food/snacks/meat,
/obj/item/reagent_containers/food/snacks/meat,
@@ -1262,7 +1234,6 @@
"qwS" = (
/obj/machinery/door/airlock/security{
name = "Dock";
req_access = null;
dir = 4
},
/turf/simulated/floor/shuttle/dark_blue,
@@ -1333,7 +1304,6 @@
"sGi" = (
/obj/machinery/door/airlock/security{
name = "Cockpit";
req_access = null;
dir = 1
},
/turf/simulated/floor/tiled/dark,
@@ -1482,7 +1452,6 @@
"vlC" = (
/obj/machinery/door/airlock/security{
name = "Captain's Quarters";
req_access = null;
dir = 1
},
/turf/simulated/floor/carpet/rubber,
@@ -1557,10 +1526,7 @@
/obj/machinery/light/small{
dir = 4
},
/turf/simulated/floor/tiled{
name = "cooled floor";
temperature = 278
},
/turf/simulated/floor/tiled/cooled,
/area/ship/militia_ship)
"vRq" = (
/turf/simulated/floor/tiled/dark,
@@ -1704,9 +1670,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/tiled/dark,
/area/ship/militia_ship)
"xAC" = (
/turf/simulated/wall/shuttle/space_ship/mercenary,
/area/ship/militia_ship)
"xHt" = (
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
dir = 8;
@@ -1728,9 +1691,7 @@
/turf/simulated/floor,
/area/ship/militia_ship)
"xPN" = (
/obj/machinery/computer/ship/helm{
req_access = null
},
/obj/machinery/computer/ship/helm,
/turf/simulated/floor/shuttle/black,
/area/shuttle/militia_shuttle)
"xQS" = (
@@ -32441,8 +32402,8 @@ mxc
xzv
uNN
yjk
xAC
xAC
mhS
mhS
aac
dTw
wLs
+4 -1
View File
@@ -2,7 +2,10 @@
name = "Yacht"
id = "awaysite_yacht"
description = "Tiny movable ship with spiders."
suffixes = list("ships/yacht/yacht.dmm")
prefix = "ships/yacht/"
suffixes = list("yacht.dmm")
spawn_cost = 0.5
spawn_weight = 0.5
sectors = list(SECTOR_ROMANOVICH, SECTOR_TAU_CETI, SECTOR_CORP_ZONE, SECTOR_VALLEY_HALE, SECTOR_BADLANDS, ALL_COALITION_SECTORS, SECTOR_NEW_ANKARA, SECTOR_AEMAQ, SECTOR_SRANDMARR, SECTOR_NRRAHRAHUL, SECTOR_GAKAL, SECTOR_UUEOAESA)
+4 -1
View File
@@ -1,7 +1,10 @@
/datum/map_template/ruin/away_site/yacht_civ
name = "Civilian Yacht"
description = "Civilian Yacht"
suffixes = list("ships/yacht_civ/yacht_civ.dmm")
prefix = "ships/yacht_civ/"
suffixes = list("yacht_civ.dmm")
sectors = list(ALL_POSSIBLE_SECTORS)
sectors_blacklist = list(ALL_DANGEROUS_SECTORS)
spawn_weight = 1
@@ -5,4 +5,6 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/abandoned_village.dmm")
prefix = "adhomai/"
suffixes = list("abandoned_village.dmm")
@@ -5,4 +5,6 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_abandoned_labor_camp.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_abandoned_labor_camp.dmm")
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_amohdan.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_amohdan.dmm")
//ghost roles
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list( "adhomai/adhomai_archeology.dmm")
prefix = "adhomai/"
suffixes = list( "adhomai_archeology.dmm")
/area/adhomai_archeology
name = "Adhomian Archeology Camp"
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_bar.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_bar.dmm")
/area/adhomai_bar
name = "Adhomian Inn"
@@ -5,7 +5,9 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_battlefield.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_battlefield.dmm")
/obj/effect/landmark/corpse/pra_soldier
name = "PRA Soldier"
@@ -5,4 +5,6 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_cavern.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_cavern.dmm")
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_cavern_geist.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_cavern_geist.dmm")
//ghost roles
@@ -5,4 +5,6 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_chemical_testing.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_chemical_testing.dmm")
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_deserter.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_deserter.dmm")
//ghost roles
@@ -4,7 +4,9 @@
description = "A fallout bunker built by the People's Republic of Adhomai after the armistice."
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_fallout_bunker.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_fallout_bunker.dmm")
/area/adhomai_fallout_bunker
name = "Fallout Bunker"
@@ -7,7 +7,9 @@
spawn_cost = 2
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_hunting.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_hunting.dmm")
/area/adhomai_hunting
name = "Adhomai Hunting Lodge"
@@ -5,7 +5,9 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_minefield.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_minefield.dmm")
/obj/structure/adhomai_minefield
name = "siik'maas sign"
@@ -5,7 +5,9 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_nuclear_waste.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_nuclear_waste.dmm")
/area/adhomai_nuclear_waste
name = "Radioactive Waste Disposal Site"
@@ -5,7 +5,9 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_nuclear_waste_makeshift.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_nuclear_waste_makeshift.dmm")
/area/adhomai_nuclear_waste_makeshift
name = "Makeshift Radioactive Waste Disposal Site"
@@ -5,4 +5,6 @@
template_flags = TEMPLATE_FLAG_NO_RUINS|TEMPLATE_FLAG_RUIN_STARTS_DISALLOWED
sectors = list(SECTOR_SRANDMARR)
suffixes = list("adhomai/adhomai_president_hadii_statue.dmm")
prefix = "adhomai/"
suffixes = list("adhomai_president_hadii_statue.dmm")

Some files were not shown because too many files have changed in this diff Show More