forked from NebulaSS13/Nebula
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding the skeleton of Berg Karzerfeste.
- Loading branch information
1 parent
c5b39ff
commit c8d8177
Showing
16 changed files
with
240 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
/area/karzerfeste | ||
name = "Burg Karzerfeste" |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
#if !defined(USING_MAP_DATUM) | ||
|
||
#include "../../mods/content/matchmaking/_matchmaking.dme" | ||
#include "../../mods/content/mouse_highlights/_mouse_highlight.dme" | ||
#include "../../mods/content/scaling_descriptors.dm" | ||
#include "../../mods/species/drakes/_drakes.dme" // include before _fantasy.dme so overrides work | ||
#include "../../mods/content/fantasy/_fantasy.dme" | ||
#include "../../mods/pyrelight/_pyrelight.dme" // include after _fantasy.dme so overrides work | ||
|
||
#include "areas/_area.dm" | ||
#include "jobs/_job.dm" | ||
#include "levels/_level.dm" | ||
#include "levels/strata.dm" | ||
#include "outfits/_outfit.dm" | ||
|
||
#include "karzerfeste_currency.dm" | ||
#include "karzerfeste_events.dm" | ||
#include "karzerfeste_map.dm" | ||
#include "karzerfeste_skills.dm" | ||
#include "karzerfeste_testing.dm" | ||
#include "karzerfeste_turfs.dm" | ||
|
||
#define USING_MAP_DATUM /datum/map/karzerfeste | ||
|
||
#elif !defined(MAP_OVERRIDE) | ||
#warn A map has already been included, ignoring Berg Karzerfeste | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
/datum/map/shaded_hills | ||
starting_cash_choices = list( | ||
/decl/starting_cash_choice/none, | ||
/decl/starting_cash_choice/cash | ||
) | ||
default_currency = /decl/currency/imperial | ||
salary_modifier = 0.05 // turn the 300-400 base into 15-20 base | ||
|
||
/// Functionally identical to its parent type, but with a different name since it's not defined until later. | ||
/decl/starting_cash_choice/none | ||
name = "none" | ||
uid = "starting_cash_none" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
/datum/map/karzerfeste | ||
name = "karzerfeste" | ||
full_name = "Burg Karzerfeste" | ||
path = "karzerfeste" | ||
station_name = "Burg Karzerfeste" | ||
station_short = "Karzerfeste" | ||
|
||
// Leaving these for later replacement. | ||
dock_name = "shaded heights" | ||
boss_name = "the Splinter Kingdoms" | ||
boss_short = "Splinter Kingdoms" | ||
company_name = "whispers from the Deep" | ||
company_short = "the Deep" | ||
system_name = "Downlands" | ||
|
||
default_spawn = /decl/spawnpoint/arrivals | ||
allowed_latejoin_spawns = list( | ||
/decl/spawnpoint/arrivals | ||
) | ||
map_tech_level = MAP_TECH_LEVEL_MEDIEVAL | ||
survival_box_choices = list() | ||
passport_type = null | ||
_available_backpacks = list( | ||
/decl/backpack_outfit/sack | ||
) | ||
lobby_screens = list( | ||
'maps/karzerfeste/pyre_light.png' | ||
) | ||
lobby_tracks = list( | ||
/decl/music_track/dhaka, | ||
/decl/music_track/teller, | ||
/decl/music_track/suonatore | ||
) | ||
credit_sound = list( | ||
'sound/music/Miris-Magic-Dance.ogg' | ||
) | ||
game_year = -914 // in 2024, the year should be 1110, roughly a century after the fall of the Imperial Aegis | ||
|
||
char_preview_bgstate_options = list( | ||
"000", | ||
"midgrey", | ||
"FFF", | ||
"wood" = /turf/floor/wood::color, | ||
"mud", | ||
"grass" = /turf/floor/natural/grass::color, | ||
"rock" = /turf/floor/natural/rock/basalt::color, | ||
"brick" = /turf/wall/brick/sandstone::color | ||
) | ||
|
||
/decl/backpack_outfit/sack | ||
is_default = TRUE | ||
|
||
// TODO replace this | ||
/datum/map/karzerfeste/get_map_info() | ||
return "You're in the <b>[station_name]</b> of the [system_name], nestled between the mountains and the river and bisected by the decaying Queens' Road. On all sides, you are surrounded by untamed wilds, with only a small ruined fort, rebuilt into an inn, to the east as a sign of civilisation. \ | ||
Far from the control of [boss_name], you are free to carve forward a path to survival for yourself and your comrades however you wish. Strike the earth!" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/datum/map/shaded_hills | ||
event_container_mundane = /datum/event_container/mundane/fantasy | ||
event_container_moderate = /datum/event_container/moderate/fantasy | ||
event_container_major = /datum/event_container/major/fantasy | ||
|
||
// TODO: more appropriate events. | ||
/datum/event_container/mundane/fantasy | ||
available_events = list( | ||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 100) | ||
) | ||
|
||
/datum/event_container/moderate/fantasy | ||
available_events = list( | ||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 100) | ||
) | ||
|
||
/datum/event_container/major/fantasy | ||
available_events = list( | ||
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Nothing", /datum/event/nothing, 100) | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
/datum/map/karzefeste | ||
default_liquid_fuel_type = /decl/material/liquid/nutriment/plant_oil | ||
loadout_categories = list( | ||
/decl/loadout_category/fantasy/clothing, | ||
/decl/loadout_category/fantasy/utility | ||
) | ||
|
||
/datum/map/karzefeste/finalize_map_generation() | ||
. = ..() | ||
var/static/list/banned_weather = list( | ||
/decl/state/weather/snow/medium, | ||
/decl/state/weather/snow/heavy, | ||
/decl/state/weather/snow | ||
) | ||
var/datum/level_data/region = SSmapping.levels_by_id["karzefeste_region"] | ||
if(istype(region)) // if this is false, something has badly exploded | ||
SSweather.setup_weather_system(region, banned_states = banned_weather) | ||
|
||
/decl/spawnpoint/arrivals | ||
name = "Queens' Road" | ||
spawn_announcement = null |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
// Removal of space skills | ||
/datum/map/shaded_hills/get_available_skill_types() | ||
. = ..() | ||
. -= list( | ||
SKILL_EVA, | ||
SKILL_MECH, | ||
SKILL_PILOT, | ||
SKILL_COMPUTER, | ||
SKILL_FORENSICS, | ||
SKILL_ELECTRICAL, | ||
SKILL_ATMOS, | ||
SKILL_ENGINES, | ||
SKILL_DEVICES, | ||
SKILL_CONSTRUCTION, // Anything using this should be replaced with another skill. | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
/datum/map/karzerfeste | ||
apc_test_exempt_areas = list( | ||
/area/space = NO_SCRUBBER|NO_VENT|NO_APC, | ||
/area/karzerfeste = NO_SCRUBBER|NO_VENT|NO_APC | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
/turf/wall/natural/basalt/karzerfeste | ||
strata_override = /decl/strata/karzerfeste | ||
|
||
/turf/wall/natural/random/basalt/karzerfeste | ||
strata_override = /decl/strata/karzerfeste | ||
|
||
/turf/wall/natural/random/high_chance/basalt/karzerfeste | ||
strata_override = /decl/strata/karzerfeste |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
/datum/level_data/player_level/karzerfeste | ||
use_global_exterior_ambience = FALSE | ||
base_area = null | ||
base_turf = /turf/floor/natural/dirt | ||
abstract_type = /datum/level_data/player_level/karzerfeste | ||
ambient_light_level = 1 | ||
ambient_light_color = "#f3e6ca" | ||
strata = /decl/strata/karzerfeste | ||
exterior_atmosphere = list( | ||
/decl/material/gas/oxygen = MOLES_O2STANDARD, | ||
/decl/material/gas/nitrogen = MOLES_N2STANDARD | ||
) | ||
daycycle_type = /datum/daycycle/karzerfeste | ||
daycycle_id = "daycycle_karzerfeste" | ||
template_edge_padding = 0 // we use a strictly delineated subarea, no need for this guard | ||
var/submap_budget = 0 | ||
var/submap_category = null | ||
var/submap_area | ||
var/list/mobs_to_spawn = list() | ||
|
||
/datum/daycycle/karzerfeste | ||
cycle_duration = 2 HOURS // 1 hour of daylight, 1 hour of night | ||
|
||
// Randomized time of day to start at. | ||
/datum/daycycle/karzerfeste/New() | ||
time_in_cycle = rand(cycle_duration) | ||
..() | ||
|
||
/datum/level_data/player_level/karzerfeste/get_subtemplate_areas(template_category, blacklist, whitelist) | ||
return submap_area ? (islist(submap_area) ? submap_area : list(submap_area)) : null | ||
|
||
/datum/level_data/player_level/karzerfeste/get_subtemplate_budget() | ||
return submap_budget | ||
|
||
/datum/level_data/player_level/karzerfeste/get_subtemplate_category() | ||
return submap_category | ||
|
||
/datum/level_data/player_level/karzerfeste/after_generate_level() | ||
. = ..() | ||
if(length(mobs_to_spawn)) | ||
for(var/list/mob_category in mobs_to_spawn) | ||
var/list/mob_types = mob_category[1] | ||
var/mob_turf = mob_category[2] | ||
var/mob_count = mob_category[3] | ||
var/sanity = 1000 | ||
while(mob_count && sanity) | ||
sanity-- | ||
var/turf/place_mob_at = locate(rand(level_inner_min_x, level_inner_max_x), rand(level_inner_min_y, level_inner_max_y), level_z) | ||
if(istype(place_mob_at, mob_turf) && !(locate(/mob/living) in place_mob_at)) | ||
var/mob_type = pickweight(mob_types) | ||
new mob_type(place_mob_at) | ||
mob_count-- | ||
CHECK_TICK |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
// Simplified metal list. | ||
/decl/strata/karzerfeste | ||
name = "mountainous rock" | ||
base_materials = list(/decl/material/solid/stone/basalt) | ||
default_strata_candidate = FALSE | ||
ores_sparse = list( | ||
/decl/material/solid/quartz, | ||
/decl/material/solid/graphite, | ||
/decl/material/solid/tetrahedrite, | ||
/decl/material/solid/hematite | ||
) | ||
ores_rich = list( | ||
/decl/material/solid/gemstone/diamond, | ||
/decl/material/solid/metal/gold, | ||
/decl/material/solid/metal/platinum, | ||
/decl/material/solid/densegraphite, | ||
/decl/material/solid/galena | ||
) |
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters