From 8691cb4be69c3dfdbafb6ce9fb3397d34e903242 Mon Sep 17 00:00:00 2001 From: Optimism333 <81007356+Optimism333@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:29:03 -0700 Subject: [PATCH] A Less Evil PR (0 PQ Minimum For Most Combat Adventurer Roles, Important Town Roles) (#493) PQ affects pickchance of rare class pickprob --- .../jobs/job_types/roguetown/adventurer/types/_advclass.dm | 3 ++- .../job_types/roguetown/adventurer/types/combat/amazon.dm | 1 + .../job_types/roguetown/adventurer/types/combat/barbarian.dm | 1 + .../job_types/roguetown/adventurer/types/combat/cleric.dm | 1 + .../jobs/job_types/roguetown/adventurer/types/combat/dbomb.dm | 1 + .../roguetown/adventurer/types/combat/donator/swordmaster.dm | 1 + .../roguetown/adventurer/types/combat/dwarfranger.dm | 1 + .../jobs/job_types/roguetown/adventurer/types/combat/mage.dm | 1 + .../jobs/job_types/roguetown/adventurer/types/combat/monk.dm | 1 + .../job_types/roguetown/adventurer/types/combat/ranger.dm | 1 + .../roguetown/adventurer/types/combat/rare/assassin.dm | 1 + .../roguetown/adventurer/types/combat/rare/heartfelt.dm | 4 ++-- .../roguetown/adventurer/types/combat/rare/heartfelthand.dm | 4 ++-- .../roguetown/adventurer/types/combat/rare/sentinel.dm | 1 + .../roguetown/adventurer/types/combat/rare/swashbuckler.dm | 1 + .../roguetown/adventurer/types/combat/rare/treasurehunter.dm | 1 + .../jobs/job_types/roguetown/adventurer/types/combat/rogue.dm | 1 + .../job_types/roguetown/adventurer/types/combat/sorceress.dm | 1 + .../roguetown/adventurer/types/pilgrim/rare/grenzelhoft.dm | 1 + .../job_types/roguetown/adventurer/types/special/crusader.dm | 1 + code/modules/jobs/job_types/roguetown/church/priest.dm | 2 +- code/modules/jobs/job_types/roguetown/church/templar.dm | 1 + code/modules/jobs/job_types/roguetown/garrison/mayor.dm | 1 + code/modules/jobs/job_types/roguetown/garrison/veteran.dm | 1 + code/modules/jobs/job_types/roguetown/nobility/captain.dm | 2 +- code/modules/jobs/job_types/roguetown/nobility/lady.dm | 1 + 26 files changed, 29 insertions(+), 7 deletions(-) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/_advclass.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/_advclass.dm index 624ab96be0e..37ba3135781 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/_advclass.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/_advclass.dm @@ -93,7 +93,8 @@ if(!(get_playerquality(H.client.ckey) >= min_pq)) return FALSE - if(prob(pickprob)) + var/pq_prob = pickprob + max((get_playerquality(H.client.ckey))/2, 0) // Takes the base pick rate of the rare class and adds the client's pq divided by 2 or 0, whichever is higher. Allows a maximum of 65 pick probability at 100 pq + if(prob(pq_prob)) return TRUE // Basically the handler has a chance to plus up a class, heres a generic proc you can override to handle behavior related to it. diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/amazon.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/amazon.dm index 03c5723007c..024a80b3fff 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/amazon.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/amazon.dm @@ -5,6 +5,7 @@ allowed_races = list("Humen") outfit = /datum/outfit/job/roguetown/adventurer/amazon allowed_ages = list(AGE_ADULT, AGE_MIDDLEAGED) + min_pq = 0 category_tags = list(CTAG_ADVENTURER) cmode_music = 'sound/music/combat_barbarian.ogg' diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/barbarian.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/barbarian.dm index 765e2b0b903..e7684140f9c 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/barbarian.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/barbarian.dm @@ -6,6 +6,7 @@ allowed_sexes = list(MALE) allowed_races = list("Humen") outfit = /datum/outfit/job/roguetown/adventurer/barbarian + min_pq = 0 category_tags = list(CTAG_ADVENTURER) cmode_music = 'sound/music/combat_barbarian.ogg' diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/cleric.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/cleric.dm index ca6d9ab8f1e..b29101665ed 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/cleric.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/cleric.dm @@ -14,6 +14,7 @@ vampcompat = FALSE outfit = /datum/outfit/job/roguetown/adventurer/cleric category_tags = list(CTAG_ADVENTURER) + min_pq = 0 maximum_possible_slots = 4 /datum/outfit/job/roguetown/adventurer/cleric diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dbomb.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dbomb.dm index 58aec5b1940..936cf3b4767 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dbomb.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dbomb.dm @@ -4,6 +4,7 @@ allowed_sexes = list(MALE, FEMALE) allowed_races = list("Dwarf") outfit = /datum/outfit/job/roguetown/adventurer/dbomb + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/dbomb/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/donator/swordmaster.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/donator/swordmaster.dm index 31939013d37..449b71c047e 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/donator/swordmaster.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/donator/swordmaster.dm @@ -5,6 +5,7 @@ allowed_races = list("Humen") outfit = /datum/outfit/job/roguetown/adventurer/swordmaster maximum_possible_slots = 1 + min_pq = 2 pickprob = 15 category_tags = list(CTAG_ADVENTURER) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dwarfranger.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dwarfranger.dm index 43251edb665..cad0dced5ce 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dwarfranger.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/dwarfranger.dm @@ -6,6 +6,7 @@ allowed_sexes = list(MALE, FEMALE) allowed_races = list("Dwarf") outfit = /datum/outfit/job/roguetown/adventurer/dranger + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/dranger/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/mage.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/mage.dm index 5de0973f692..d3e337f6cf1 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/mage.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/mage.dm @@ -13,6 +13,7 @@ ) outfit = /datum/outfit/job/roguetown/adventurer/mage category_tags = list(CTAG_ADVENTURER) + min_pq = 0 maximum_possible_slots = 2 /datum/outfit/job/roguetown/adventurer/mage diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/monk.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/monk.dm index 03b2a6eb7b5..aab7b0b2de4 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/monk.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/monk.dm @@ -10,6 +10,7 @@ "Aasimar" ) outfit = /datum/outfit/job/roguetown/adventurer/monk + min_pq = 0 category_tags = list(CTAG_ADVENTURER) vampcompat = FALSE diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/ranger.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/ranger.dm index a1e5ff936d6..86659c05df3 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/ranger.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/ranger.dm @@ -12,6 +12,7 @@ "Aasimar" ) outfit = /datum/outfit/job/roguetown/adventurer/ranger + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/ranger/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/assassin.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/assassin.dm index 1513482520d..101d88cafc7 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/assassin.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/assassin.dm @@ -12,6 +12,7 @@ outfit = /datum/outfit/job/roguetown/adventurer/assassin category_tags = list(CTAG_ADVENTURER) maximum_possible_slots = 2 + min_pq = 0 pickprob = 100 /datum/outfit/job/roguetown/adventurer/assassin/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelt.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelt.dm index 35b32dde36f..f50b9966bf6 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelt.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelt.dm @@ -1,7 +1,7 @@ /datum/advclass/combat/heartfeltlord name = "Lord of Heartfelt" - tutorial = "You are the proud lord of heartfelt \ - but why did you come to the isle of enigma?" + tutorial = "You are the proud lord of Heartfelt, \ + but why have you come to Rockhill?" allowed_sexes = list(MALE) allowed_races = list("Humen") outfit = /datum/outfit/job/roguetown/adventurer/heartfeltlord diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelthand.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelthand.dm index 65e8a5e76c8..a5e49d2ae18 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelthand.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/heartfelthand.dm @@ -1,7 +1,7 @@ /datum/advclass/combat/heartfelthand name = "Hand of Heartfelt" - tutorial = "You serve your lord as the royal hand, taking care of all diplomatic actions in your relm. \ - maybe one day you will become lord too." + tutorial = "You serve your lord as hand, taking care of diplomatic actions within your realm, \ + but why have you come to Rockhill?" allowed_sexes = list(MALE) allowed_races = list("Humen") outfit = /datum/outfit/job/roguetown/adventurer/heartfelthand diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/sentinel.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/sentinel.dm index 4092b6842f9..e912f64e750 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/sentinel.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/sentinel.dm @@ -13,6 +13,7 @@ horse = /mob/living/simple_animal/hostile/retaliate/rogue/saigabuck/tame/saddled outfit = /datum/outfit/job/roguetown/adventurer/sentinel maximum_possible_slots = 1 + min_pq = 0 pickprob = 30 category_tags = list(CTAG_ADVENTURER) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/swashbuckler.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/swashbuckler.dm index c8c61fdb454..102c92b6a65 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/swashbuckler.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/swashbuckler.dm @@ -14,6 +14,7 @@ ) outfit = /datum/outfit/job/roguetown/adventurer/swashbuckler maximum_possible_slots = 1 + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/swashbuckler/pre_equip((mob/living/carbon/human/H)) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/treasurehunter.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/treasurehunter.dm index 1755cd3150b..2d454cbc2af 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/treasurehunter.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rare/treasurehunter.dm @@ -14,6 +14,7 @@ "Aasimar" ) outfit = /datum/outfit/job/roguetown/adventurer/gravedigger + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/gravedigger/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rogue.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rogue.dm index 02471c7ccb2..6471ed6bf65 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rogue.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/rogue.dm @@ -12,6 +12,7 @@ "Aasimar" ) outfit = /datum/outfit/job/roguetown/adventurer/rogue + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/rogue/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/sorceress.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/sorceress.dm index a4fbef1da2f..043fb9429fe 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/combat/sorceress.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/combat/sorceress.dm @@ -13,6 +13,7 @@ ) outfit = /datum/outfit/job/roguetown/adventurer/sorceress maximum_possible_slots = 2 + min_pq = 0 category_tags = list(CTAG_ADVENTURER) /datum/outfit/job/roguetown/adventurer/sorceress/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/pilgrim/rare/grenzelhoft.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/pilgrim/rare/grenzelhoft.dm index 7b4aa102c88..49cc28a9695 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/pilgrim/rare/grenzelhoft.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/pilgrim/rare/grenzelhoft.dm @@ -9,6 +9,7 @@ outfit = /datum/outfit/job/roguetown/adventurer/grenzelhoft category_tags = list(CTAG_PILGRIM) maximum_possible_slots = 1 + min_pq = 0 cmode_music = 'sound/music/combat_grenzelhoft.ogg' diff --git a/code/modules/jobs/job_types/roguetown/adventurer/types/special/crusader.dm b/code/modules/jobs/job_types/roguetown/adventurer/types/special/crusader.dm index b62fd318923..997c1cf4345 100644 --- a/code/modules/jobs/job_types/roguetown/adventurer/types/special/crusader.dm +++ b/code/modules/jobs/job_types/roguetown/adventurer/types/special/crusader.dm @@ -15,6 +15,7 @@ of one of the rival Orders dedicated to retaking the holy land. \ The 451st crusade is sure to be the last." + min_pq = 0 category_tags = list(CTAG_DISABLED) /datum/outfit/job/roguetown/adventurer/crusader diff --git a/code/modules/jobs/job_types/roguetown/church/priest.dm b/code/modules/jobs/job_types/roguetown/church/priest.dm index 96d57abe866..2a7b723ca01 100644 --- a/code/modules/jobs/job_types/roguetown/church/priest.dm +++ b/code/modules/jobs/job_types/roguetown/church/priest.dm @@ -23,7 +23,7 @@ display_order = JDO_PRIEST give_bank_account = 115 - min_pq = -4 + min_pq = 0 selection_color = "#c2a45d" /datum/outfit/job/roguetown/priest/pre_equip(mob/living/carbon/human/H) diff --git a/code/modules/jobs/job_types/roguetown/church/templar.dm b/code/modules/jobs/job_types/roguetown/church/templar.dm index 6d2a68b5e14..1e74e04a14e 100644 --- a/code/modules/jobs/job_types/roguetown/church/templar.dm +++ b/code/modules/jobs/job_types/roguetown/church/templar.dm @@ -17,6 +17,7 @@ spawn_positions = 1 display_order = JDO_TEMPLAR give_bank_account = 0 + min_pq = 0 /datum/outfit/job/roguetown/templar name = "Templar" diff --git a/code/modules/jobs/job_types/roguetown/garrison/mayor.dm b/code/modules/jobs/job_types/roguetown/garrison/mayor.dm index 7b9781f2a56..85e6d86eae7 100644 --- a/code/modules/jobs/job_types/roguetown/garrison/mayor.dm +++ b/code/modules/jobs/job_types/roguetown/garrison/mayor.dm @@ -21,6 +21,7 @@ outfit = /datum/outfit/job/roguetown/mayor display_order = JDO_CHIEF give_bank_account = 80 + min_pq = 0 cmode_music = 'sound/music/combat_bog.ogg' diff --git a/code/modules/jobs/job_types/roguetown/garrison/veteran.dm b/code/modules/jobs/job_types/roguetown/garrison/veteran.dm index 58985f91a20..5a2eedf5a42 100644 --- a/code/modules/jobs/job_types/roguetown/garrison/veteran.dm +++ b/code/modules/jobs/job_types/roguetown/garrison/veteran.dm @@ -25,6 +25,7 @@ outfit = /datum/outfit/job/roguetown/veteran give_bank_account = 50 + min_pq = 0 cmode_music = 'sound/music/combat_guard.ogg' diff --git a/code/modules/jobs/job_types/roguetown/nobility/captain.dm b/code/modules/jobs/job_types/roguetown/nobility/captain.dm index aaf0e6035c3..2aa0b37747e 100644 --- a/code/modules/jobs/job_types/roguetown/nobility/captain.dm +++ b/code/modules/jobs/job_types/roguetown/nobility/captain.dm @@ -19,7 +19,7 @@ bypass_lastclass = TRUE outfit = /datum/outfit/job/roguetown/captain give_bank_account = 120 - min_pq = -4 + min_pq = 0 /datum/job/roguetown/captain/after_spawn(mob/living/L, mob/M, latejoin = TRUE) ..() diff --git a/code/modules/jobs/job_types/roguetown/nobility/lady.dm b/code/modules/jobs/job_types/roguetown/nobility/lady.dm index 2ae23dc8959..8fe16a06a2a 100644 --- a/code/modules/jobs/job_types/roguetown/nobility/lady.dm +++ b/code/modules/jobs/job_types/roguetown/nobility/lady.dm @@ -19,6 +19,7 @@ display_order = JDO_LADY bypass_lastclass = TRUE give_bank_account = 500 + min_pq = 0 /datum/outfit/job/roguetown/lady/pre_equip(mob/living/carbon/human/H) . = ..()