From c630502c8d8573ae771ebce827edba627c232250 Mon Sep 17 00:00:00 2001 From: WarrentyExpired Date: Sun, 11 Oct 2026 08:59:37 -0400 Subject: [PATCH] #W# Added: There is now a delay setting for the dungeon bounty timers in Settings.cs. --- Projects/UOContent/Engines/Bounties/BountyBoard.cs | 4 ++-- Projects/UOContent/Engines/Bounties/BountyRegistry.cs | 10 +++++----- Projects/UOContent/Misc/ValidSettings.cs | 9 +++++++++ Projects/UOContent/Settings.cs | 1 + 4 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Projects/UOContent/Engines/Bounties/BountyBoard.cs b/Projects/UOContent/Engines/Bounties/BountyBoard.cs index 05514f6ca..ee6611cae 100644 --- a/Projects/UOContent/Engines/Bounties/BountyBoard.cs +++ b/Projects/UOContent/Engines/Bounties/BountyBoard.cs @@ -131,7 +131,7 @@ public class BountyBoardGump : Gump // Reset Profile and trigger the 60 minute cooldown profile.ActiveBountyID = -1; profile.CurrentKills = 0; - profile.NextAvailableTime = DateTime.UtcNow + TimeSpan.FromMinutes(60); + profile.NextAvailableTime = DateTime.UtcNow + TimeSpan.FromMinutes(ValidSettings.BountyBoardDelay()); } } } @@ -146,7 +146,7 @@ public class BountyBoardGump : Gump { profile.ActiveBountyID = -1; profile.CurrentKills = 0; - profile.NextAvailableTime = DateTime.UtcNow + TimeSpan.FromMinutes(60); + profile.NextAvailableTime = DateTime.UtcNow + TimeSpan.FromMinutes(ValidSettings.BountyBoardDelay()); _player.SendMessage(33, $"You paid the {cost} gold refusal fee and abandoned the bounty."); } else diff --git a/Projects/UOContent/Engines/Bounties/BountyRegistry.cs b/Projects/UOContent/Engines/Bounties/BountyRegistry.cs index 073178b48..8f86b8ff6 100644 --- a/Projects/UOContent/Engines/Bounties/BountyRegistry.cs +++ b/Projects/UOContent/Engines/Bounties/BountyRegistry.cs @@ -73,23 +73,23 @@ public static class BountyRegistry // ========================================== // TIER 2: Estimable Hunter (Fame 1250) - Rewards: 15 Tokens, 1200g // ========================================== - Add(2, new BountyDefinition(4, "Skeletal Knights in the Dungeon Deceit", new[] { typeof(SkeletalKnight) }, 10, 1250, 15, 1200, "Deceit")); - Add(2, new BountyDefinition(5, "Drakes in the Dungeon Destard", new[] { typeof(Drake) }, 10, 1250, 15, 1200, "Destard")); + Add(2, new BountyDefinition(5, "Skeletal Knights in the Dungeon Deceit", new[] { typeof(SkeletalKnight) }, 10, 1250, 15, 1200, "Deceit")); + Add(2, new BountyDefinition(6, "Drakes in the Dungeon Destard", new[] { typeof(Drake) }, 10, 1250, 15, 1200, "Destard")); // ========================================== // TIER 3: Great Slayer (Fame 2500) - Rewards: 30 Tokens, 2500g // ========================================== - Add(3, new BountyDefinition(6, "Despise Titans", new[] { typeof(Titan) }, 8, 2500, 30, 2500, "Despise")); + Add(3, new BountyDefinition(7, "Despise Titans", new[] { typeof(Titan) }, 8, 2500, 30, 2500, "Despise")); // ========================================== // TIER 4: Illustrious Champion (Fame 5000) - Rewards: 60 Tokens, 5000g // ========================================== - Add(4, new BountyDefinition(7, "Destard Dragons", new[] { typeof(Dragon) }, 3, 5000, 60, 5000, "Destard")); + Add(4, new BountyDefinition(8, "Destard Dragons", new[] { typeof(Dragon) }, 3, 5000, 60, 5000, "Destard")); // ========================================== // TIER 5: Glorious Lord (Fame 10000) - Rewards: 100 Tokens, 10000g // ========================================== - Add(5, new BountyDefinition(8, "Hythloth Balrons", new[] { typeof(Balron) }, 2, 10000, 100, 10000, "Hythloth")); + Add(5, new BountyDefinition(9, "Hythloth Balrons", new[] { typeof(Balron) }, 2, 10000, 100, 10000, "Hythloth")); } private static void Add(int tier, BountyDefinition bounty) diff --git a/Projects/UOContent/Misc/ValidSettings.cs b/Projects/UOContent/Misc/ValidSettings.cs index a533c351b..f06f6bac6 100644 --- a/Projects/UOContent/Misc/ValidSettings.cs +++ b/Projects/UOContent/Misc/ValidSettings.cs @@ -46,5 +46,14 @@ namespace Server return stable; } + public static double BountyBoardDelay() + { + int mins = Settings.S_DungeonBountyBoardDelay; + if ( mins > 1440 ) + mins = 1440; + if (mins < 1 ) + mins = 1; + return (double)mins; + } } } diff --git a/Projects/UOContent/Settings.cs b/Projects/UOContent/Settings.cs index 6efa1aa18..dfc77e540 100644 --- a/Projects/UOContent/Settings.cs +++ b/Projects/UOContent/Settings.cs @@ -7,5 +7,6 @@ namespace Server public static bool S_LineOfSight = true; // Mobs are hidden in Dungeons public static int S_BondDays = 1; // 1-30 Days to bond with pet public static int S_Stables = 3; // 0-20 Extra stable slots + public static int S_DungeonBountyBoardDelay = 60; //1440 minutes delay between bountie quests } }