Skip to content
Open
2 changes: 2 additions & 0 deletions code/__DEFINES/~darkpack/storyteller_dice.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
#define ROLL_ADMIN "admin"
/// Output is show to no one and is not logged
#define ROLL_NONE "none"
/// Output is shown to the roller only if it's a success.
#define ROLL_PRIVATE_UNLESS_FAILURE "private_unless_failure"

/// Time at which the roll was recorded
#define OLD_ROLL_TIME 1
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/~darkpack/traits/declarations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -199,5 +199,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_GLOWING_EYES "glowing_eyes"
#define TRAIT_PROMETHEAN_CLAY "promethean_clay"
#define TRAIT_UNCONTROLLABLE "uncontrollable"
#define TRAIT_UNDOCUMENTED "undocumented" // GOVERNMENT

// END TRAIT DEFINES
1 change: 1 addition & 0 deletions code/_globalvars/traits/_traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -792,6 +792,7 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_WEAK_WILLED" = TRAIT_WEAK_WILLED, // DARKPACK EDIT ADD - MERITS_FLAWS
"TRAIT_WYRMTAINTED" = TRAIT_WYRMTAINTED, // DARKPACK EDIT ADD - WEREWOLF
"TRAIT_WYRMTAINTED_SPRITE" = TRAIT_WYRMTAINTED_SPRITE, // DARKPACK EDIT ADD - WEREWOLF
"TRAIT_UNDOCUMENTED" = TRAIT_UNDOCUMENTED, // CRIMSON GRID EDIT ADD - Undocumented quirk
),
/mob/living/carbon = list(
"TRAIT_BRAINLESS_CARBON" = TRAIT_BRAINLESS_CARBON,
Expand Down
1 change: 1 addition & 0 deletions code/_globalvars/traits/admin_tooling.dm
Original file line number Diff line number Diff line change
Expand Up @@ -458,6 +458,7 @@ GLOBAL_LIST_INIT(admin_visible_traits, list(
"TRAIT_WEAK_WILLED" = TRAIT_WEAK_WILLED, // DARKPACK EDIT ADD - MERITS_FLAWS
"TRAIT_WYRMTAINTED" = TRAIT_WYRMTAINTED, // DARKPACK EDIT ADD - WEREWOLF
"TRAIT_WYRMTAINTED_SPRITE" = TRAIT_WYRMTAINTED_SPRITE, // DARKPACK EDIT ADD - WEREWOLF
"TRAIT_UNDOCUMENTED" = TRAIT_UNDOCUMENTED, // CRIMSON GRID EDIT ADD - Undocumented quirk
),
/obj/item = list(
"TRAIT_APC_SHOCKING" = TRAIT_APC_SHOCKING,
Expand Down
4 changes: 4 additions & 0 deletions code/controllers/subsystem/processing/personality.dm
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ PROCESSING_SUBSYSTEM_DEF(personalities)
if(isnull(personality_key))
// Abstract personality, ignore
continue
/// CRIMSON GRID EDIT: Adds disabling specific personalities.
if(personality_type::disabled_vtm)
continue
/// CRIMSON GRID EDIT END
if(personalities_by_key[personality_key])
stack_trace("Personality save key collision! \
key: [personality_key] - \
Expand Down
3 changes: 3 additions & 0 deletions code/datums/dna/dna.dm
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,9 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block())
if(transfer_flags & COPY_DNA_BLOOD_TYPE)
new_dna.blood_type = blood_type
// DARKPACK EDIT CHANGE END
// CRIMSON GRID EDIT START - Adds country of origin to DNA to fix roundstart item assignment
new_dna.country_of_origin = country_of_origin
// CRIMSON GRID EDIT END
if(transfer_flags & COPY_DNA_SPECIES)
new_dna.species = new species.type
if(transfer_flags & COPY_DNA_MUTATIONS && holder?.can_mutate())
Expand Down
2 changes: 2 additions & 0 deletions code/modules/jobs/job_types/_job.dm
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@
account_id = bank_account.account_id
bank_account.replaceable = FALSE
// DARKPACK EDIT ADD - (Finance affects starting money)
/* CRIMSON EDIT - moved to the wallet population cuz we calc streetwise into it
var/finance = st_get_stat(STAT_FINANCE)
switch(finance)
if(0)
Expand All @@ -239,6 +240,7 @@
if(5)
bank_account.account_balance = rand(2000, 3000)
bank_account.paycheck_amount = 250
CRIMSON EDIT END */
// DARKPACK EDIT ADD END
add_mob_memory(/datum/memory/key/account, remembered_id = account_id)
add_mob_memory(/datum/memory/key/bank_pin, remembered_id = bank_account.bank_pin) // DARKPACK EDIT ADD
Expand Down
2 changes: 1 addition & 1 deletion config/game_options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -487,7 +487,7 @@ MICE_ROUNDSTART 10
ROUNDSTART_TRAITS

## Uncomment to disable human moods.
DISABLE_HUMAN_MOOD
#DISABLE_HUMAN_MOOD

## Enable night shifts
#ENABLE_NIGHT_SHIFTS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,6 @@
/datum/preference/choiced/country_of_origin/create_default_value()
return "United States"

/datum/preference/choiced/country_of_origin/apply_to_human(mob/living/carbon/human/target, value)
return

/datum/preference/choiced/state_of_origin
category = PREFERENCE_CATEGORY_NON_CONTEXTUAL
savefile_identifier = PREFERENCE_CHARACTER
Expand All @@ -48,6 +45,7 @@
return "California"

/datum/preference/choiced/state_of_origin/apply_to_human(mob/living/carbon/human/target, value)
target.dna.state_of_origin = value
return

/datum/preference/choiced/state_of_origin/is_accessible(datum/preferences/preferences)
Expand All @@ -58,6 +56,26 @@
return (country == "United States")

/datum/preference/choiced/country_of_origin/apply_to_human(mob/living/carbon/human/target, value)
// CRIMSON GRID EDIT - starting IDs
target.dna.country_of_origin = value // THIS SUCKS but it's what we gotta do
var/driving_skill = target.st_get_stat(STAT_DRIVE)
var/obj/item/card/drivers_license/license
var/list/belongings = target.gather_belongings()
var/obj/item/storage/wallet/darkpack/wallet = locate() in belongings
if(wallet)
if(value == "United States")
if(!driving_skill)
license = new /obj/item/card/drivers_license/state_issued_id(wallet)
else
license = new /obj/item/card/drivers_license(wallet)
license.link_human(target)
else
if(driving_skill)
license = new /obj/item/card/drivers_license/international(wallet)
license.link_human(target)
var/obj/item/passport/passport = new /obj/item/passport(wallet)
passport.link_human(target)
// CRIMSON GRID EDIT END
var/static/list/country_language_map
if(!country_language_map)
country_language_map = list(
Expand Down
27 changes: 18 additions & 9 deletions modular_darkpack/modules/cars/code/car.dm
Original file line number Diff line number Diff line change
Expand Up @@ -520,8 +520,7 @@
last_pos["y_pix"] = 0
for(var/mob/living/L in src)
if(L.client)
L.client.pixel_x = 0
L.client.pixel_y = 0
shake_camera(L, 0.5 SECONDS, 3)
if(istype(bumped_atom, /mob/living))
var/mob/living/L = bumped_atom
var/hit_dam = prev_speed
Expand All @@ -532,10 +531,16 @@
log_combat(driver, L, "hit with", src)
var/dam = prev_speed
if(driver)
var/driver_skill = clamp(driver.st_get_stat(STAT_DRIVE)/2, 1, 4)
dam = round(dam/driver_skill)
if(driver.st_get_stat(STAT_DRIVE)) // no protection at 0
var/driver_skill = clamp(driver.st_get_stat(STAT_DRIVE)/2, 1, 4)
dam = round(dam/driver_skill)
else
dam = round(dam)
if(driver.get_drunk_amount())
dam = dam * (1 + 100/driver.get_drunk_amount())
driver.apply_damage(prev_speed, BRUTE, BODY_ZONE_CHEST)
take_damage(dam)
var/drive_stat = driver.st_get_stat(STAT_DRIVE)
take_damage(drive_stat ? dam / drive_stat : dam)
return

/obj/darkpack_car/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change = TRUE)
Expand Down Expand Up @@ -709,19 +714,23 @@
if(SOUTH)
controlling(-1, 0)
if(SOUTHEAST)
controlling(-1, turn_speed)
if(SOUTHWEST)
controlling(-1, -turn_speed)
if(SOUTHWEST)
controlling(-1, turn_speed)
if(EAST)
controlling(0, turn_speed)
if(WEST)
controlling(0, -turn_speed)

/obj/darkpack_car/proc/controlling(adjusting_speed, adjusting_turn)
var/drift = clamp(driver.st_get_stat(STAT_DRIVE)/4, 0.25, 4)
var/drift
if(!driver.st_get_stat(STAT_DRIVE) || driver.get_drunk_amount()) // 0 drive???
drift = rand(0.05, 5)
else
drift = round(driver.st_get_stat(STAT_DRIVE)/2)
var/adjust_true = adjusting_turn
if(speed_in_pixels != 0)
movement_vector = SIMPLIFY_DEGREES(movement_vector+adjust_true)
movement_vector = SIMPLIFY_DEGREES(movement_vector+adjust_true*drift)
apply_vector_angle()
if(adjusting_speed)
if(on)
Expand Down
2 changes: 1 addition & 1 deletion modular_darkpack/modules/cars/code/car_actions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
var/mob/living/driver = owner
if(CONFIG_GET(flag/punishing_zero_dots) && driver.st_get_stat(STAT_DRIVE) < 1)
to_chat(owner, span_danger("You don't know what you're doing!"))
return FALSE
// return FALSE // CRIMSON GRID EDIT - now this is pod racing

if(!ISADVANCEDTOOLUSER(clicker))
return
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@
if(LOCK_OWNERSHIP_CAR)
if(CONFIG_GET(flag/punishing_zero_dots) && human.st_get_stat(STAT_DRIVE) < 1)
to_chat(human, span_danger("Shouldnt you learn how to drive before owning a car?"))
return
// return // CRIMSON GRID EDIT - now this is pod racing
ownership_question = "Is this my car?"
alert_title = "Vehicle"
if(LOCK_OWNERSHIP_APARTMENT)
Expand Down
9 changes: 7 additions & 2 deletions modular_darkpack/modules/doors/code/vampdoor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@
/// Number of successes needed to bash down
var/bash_successes_needed = 1

// MODULAR CRIMSON CITY EDIT - check door_improvements.dm
/*
/obj/structure/vampdoor/Initialize(mapload)
. = ..()

Expand All @@ -50,6 +52,7 @@
COMSIG_ATOM_MAGICALLY_UNLOCKED = PROC_REF(on_magic_unlock),
)
AddElement(/datum/element/connect_loc, loc_connections)
*/

/obj/structure/vampdoor/CanAStarPass(to_dir, datum/can_pass_info/pass_info)
return !density || !locked
Expand Down Expand Up @@ -216,7 +219,7 @@
to_chat(user, span_warning("[src] is locked!"))
else
toggle_door(user)

/* CRIMSON GUARD EDIT - See door_improvements.dm
/obj/structure/vampdoor/attack_hand_secondary(mob/user, list/modifiers)
. = ..()
if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN)
Expand Down Expand Up @@ -282,6 +285,7 @@
if(!has_keys)
to_chat(user, span_warning("You need a key to lock/unlock this door!"))
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
*/

/obj/structure/vampdoor/item_interaction(mob/living/user, obj/item/tool, list/modifiers)
if(istype(tool, /obj/item/door_repair_kit))
Expand Down Expand Up @@ -366,7 +370,7 @@
return toggle_lock(user)
if(!need_key)
return toggle_lock(user)

/* CRIMSON GRID EDIT - See door_improvements.dm
/obj/structure/vampdoor/proc/toggle_lock(mob/living/user)
playsound(src, lock_sound, 75, TRUE)
if(!locked)
Expand All @@ -379,6 +383,7 @@
proc_unlock("key")
locked = FALSE
return TRUE
*/

/obj/structure/vampdoor/proc/reset_transform()
pixel_z = initial(pixel_z)
Expand Down
15 changes: 13 additions & 2 deletions modular_darkpack/modules/economy/code/atm.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@
icon_state = "atm"
anchored = TRUE

max_integrity = 250
damage_deflection = 20
max_integrity = 500
damage_deflection = 50
armor_type = /datum/armor/atm_armor

light_color = COLOR_GREEN
light_range = 2
Expand All @@ -19,6 +20,16 @@
// Just because there is account selected does not nesicarrly indicate logged_in is true. (you still have to enter your pin)
var/datum/bank_account/logged_account

/datum/armor/atm_armor
melee = 100 // Stop fucking beating it to death you little shits
bullet = 100
laser = 100
energy = 100
bomb = 75
fire = 100
acid = 100
wound = 100

/obj/machinery/atm/Initialize(mapload)
. = ..()
if(mapload)
Expand Down
8 changes: 4 additions & 4 deletions modular_darkpack/modules/economy/code/credit_card.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
var/registered_name
var/datum/bank_account/registered_account
var/has_checked = FALSE
var/min_starting_wealth = 600
var/max_starting_wealth = 1000
var/min_starting_wealth = 0
var/max_starting_wealth = 0

/obj/item/card/credit/prince
icon_state = "card2"
Expand Down Expand Up @@ -98,7 +98,7 @@
registered_account.civilian_bounty?.on_reset(src)
LAZYREMOVE(registered_account.bank_cards, src)
registered_account = null

/* CRIMSON GRID EDIT - moved to other post_equip
/datum/outfit/job/vampire/post_equip(mob/living/carbon/human/user, visuals_only = FALSE)
. = ..()

Expand All @@ -114,7 +114,7 @@

if(account && account.account_id == user.account_id)
card.set_account(account)

*/

/obj/item/proc/GetCreditCard()
return null
Expand Down
3 changes: 2 additions & 1 deletion modular_darkpack/modules/economy/code/dollar.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@
righthand_file = null
ONFLOOR_ICON_HELPER('modular_darkpack/modules/deprecated/icons/onfloor.dmi')
w_class = WEIGHT_CLASS_TINY
full_w_class = WEIGHT_CLASS_TINY
resistance_flags = FLAMMABLE
max_amount = 1000
max_amount = 5000
merge_type = /obj/item/stack/dollar

/obj/item/stack/dollar/Initialize(mapload, new_amount, merge = TRUE, list/mat_override = null, mat_amt = 1)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
/datum/outfit/job/vampire/ert/national_guard
no_wallet = TRUE
no_credit_card = TRUE

/datum/outfit/job/vampire/ert/national_guard/sergeant
name = "National Guard Sergeant"
ears = /obj/item/radio/headset/darkpack/military
Expand Down
Loading
Loading