Adds an opt-in 'youngPlayerSystem.enabled' server setting (default true) that, when set to false, disables the Young player system server-wide: - Account.Young and PlayerMobile.Young getters short-circuit to false. - New characters no longer receive Young status or a NewPlayerTicket. - All downstream Young checks (notoriety beneficial-action restriction, CheckYoungProtection, stealing penalties, YoungDeathTeleport, death-item movement, poison immunity, '(Young)' name suffix, CanLogout, renounce-young keyword/gump, BaseCreature.OnDeath fame penalty, OnLogin time-remaining message) become inert. Setters are intentionally left untouched so serialized account/player flags round-trip cleanly when the setting is later re-enabled.
17 lines
704 B
C#
17 lines
704 B
C#
namespace Server.Systems.FeatureFlags;
|
|
|
|
/// <summary>
|
|
/// Static boolean flags for UOContent hot paths.
|
|
/// Values are synced by FeatureFlagManager when flags change.
|
|
/// </summary>
|
|
public static class ContentFeatureFlags
|
|
{
|
|
public static bool VendorPurchase { get; set; } = true;
|
|
public static bool VendorSell { get; set; } = true;
|
|
public static bool PlayerVendors { get; set; } = true;
|
|
public static bool HousePlacement { get; set; } = true;
|
|
public static bool BoatPlacement { get; set; } = true;
|
|
public static bool BulkOrders { get; set; } = true;
|
|
public static bool PassiveDetectHidden { get; set; } = true;
|
|
public static bool YoungPlayerSystem { get; set; } = true;
|
|
}
|