# ---------------------------------------------------------------------------
# General Server Settings
# ---------------------------------------------------------------------------
# The defaults are set to be retail-like. If you modify any of these settings your server will deviate from being retail-like.
# Warning: 
# Please take extreme caution when changing anything. Also please understand what you are changing before you do so on a live server.

# ---------------------------------------------------------------------------
# Administrator
# ---------------------------------------------------------------------------

# If this option is set to True every newly created character will have access level 127. This means that every character created will have Administrator Privileges.
# Default: False
EverybodyHasAdminRights = False


# If True, only accounts with GM access can enter the server.
# Default: False
ServerGMOnly = False

# Enable GMs to have the glowing aura of a Hero character on login. 
# Notes:
#	GMs can do "///hero" on themselves and get this aura voluntarily.
#	It's advised to keep this off due to graphic lag.
# Default: False
GMHeroAura = False

# Whether GM logins in builder hide mode by default.
# Default: True
GMStartupBuilderHide = True

# Auto set invulnerable status to a GM on login.
# Default: False
GMStartupInvulnerable = True

# Auto set invisible status to a GM on login.
# Default: False
GMStartupInvisible = True

# Auto block private messages to a GM on login.
# Default: False
GMStartupSilence = False

# Auto list GMs in GM list (/gmlist) on login.
# Default: False
GMStartupAutoList = False

# Auto set diet mode on to a GM on login (affects your weight penalty).
# Default: False
GMStartupDietMode = False

# Item restrictions apply to GMs as well? (True = restricted usage)
# Default: True
GMItemRestriction = True

# Skill restrictions apply to GMs as well? (True = restricted usage)
# Default: True
GMSkillRestriction = True

# Allow GMs to drop/trade non-tradable and quest(drop only) items
# Default: False
GMTradeRestrictedItems = False

# Allow GMs to restart/exit while is fighting stance
# Default: True
GMRestartFighting = True

# Show the GM's name behind an announcement made by him
# example: "Announce: hi (HanWik)"
GMShowAnnouncerName = False

# Show the GM's name before an announcement made by him
# example: "Nyaran: hi"
GMShowCritAnnouncerName = False

# Give special skills for every GM
# 7029,7041-7064,7088-7096,23238-23249 (Master's Blessing)
# Default: False
GMGiveSpecialSkills = False

# Give special aura skills for every GM
# 7029,23238-23249,23253-23296 (Master's Blessing)
# Default: False
GMGiveSpecialAuraSkills = False

# Debug html paths for GM characters.
# Default: True
GMDebugHtmlPaths = True

# In case you are not satisfied with the retail-like implementation of //gmspeed",
# with this config you can rollback it to the old custom L2J version of the GM Speed.
# Default: False
UseSuperHasteAsGMSpeed = False


# ---------------------------------------------------------------------------
# Server Security
# ---------------------------------------------------------------------------

# Logging settings. Enabling these settings will significantly increase the amount of log data written to disk.
# This can lead to increased disk usage and depending on server load and player activity, may impact performance.
# Use these options carefully based on your logging needs and server capacity.

# Enable logging of player chat messages. Set to True if you need a record of all chat interactions.
# Default: False
LogChat = False

# Enable logging of item transactions (e.g., pickups, trades, sales). 
# This setting can be useful for tracking item movement but may lead to extensive logging on busy servers.
# Default: False
LogItems = False

# If LogItems is enabled, set this to True to only log important items, specifically Adena (in-game currency) and equippable items.
# This helps to reduce log volume by excluding common, low-value items.
# Default: False
LogItemsSmallLog = False

# If LogItems is enabled, set this to True to log only specific item IDs rather than all items.
# This is helpful if you only need logs for certain items, such as rare or high-value items.
# Default: False
LogItemsIdsOnly = False

# Specifies the item IDs to log when LogItemsIdsOnly is enabled.
# Enter item IDs separated by commas to track specific items, for example, rare items or in-game currency.
# Default: 4356 (Gold Einhasad)
LogItemsIdsList = 4356

# Enable logging for all actions involving item enchantments, such as success or failure of upgrades.
# This can help with tracking suspicious behavior but may create large log files if enchantment is frequently used.
# Default: False
LogItemEnchants = False

# Enable logging for all actions related to skill enchantments, including upgrades and modifications.
# Useful for monitoring skill progression but can lead to extensive logging on active servers.
# Default: False
LogSkillEnchants = False

# Enable audit logging for actions performed by Game Masters (GMs).
# This helps in tracking GM activities to ensure administrative actions are recorded for accountability.
# Default: False
GMAudit = False

# Check players for non-allowed skills
# Default: False
SkillCheckEnable = True

# If true, remove invalid skills from player and database.
# Report only, if false.
# Default: False
SkillCheckRemove = True

# Check also GM characters (only if SkillCheckEnable = True)
# Default: True
SkillCheckGM = False


# ---------------------------------------------------------------------------
# Optimization
# ---------------------------------------------------------------------------

# Items on ground management.
# Allow players to drop items on the ground.
# Default: True
AllowDiscardItem = True

# Delete dropped reward items from world after a specified amount of seconds. Disabled = 0.
# Default: 600
AutoDestroyDroppedItemAfter = 600

# Time in seconds after which dropped herb will be auto-destroyed
# Default: 60
AutoDestroyHerbTime = 60

# List of item id that will not be destroyed (separated by "," like 57,5575,6673).
# Notes:
#	Make sure the lists do NOT CONTAIN trailing spaces or spaces between the numbers!
#	Items on this list will be protected regardless of the following options.
# Default: 0
ListOfProtectedItems = 0

# This is the interval (in minutes), that the gameserver will update a players information such as location.
# The higher you set this number, there will be less character information saving so you will have less accessing of the database and your hard drive(s).
# The lower you set this number, there will be more frequent character information saving so you will have more access to the database and your hard drive(s).
# A value of 0 disables periodic saving.
# Independent of this setting the character is always saved after leaving the world.
# Default: 15
CharacterDataStoreInterval = 15

# This enables the server to only update items when saving the character.
# Enabling this greatly reduces DB usage and improves performance.
# WARNING: This option causes item loss during crashes.
# Default: False
LazyItemsUpdate = False

# When enabled, this forces (even if using lazy item updates) the items owned by the character to be updated into DB when saving its character.
# Default: True
UpdateItemsOnCharStore = True

# Also delete from world misc. items dropped by players (all except equip-able items).
# Notes:
#	Works only if AutoDestroyDroppedItemAfter is greater than 0.
# Default: False
DestroyPlayerDroppedItem = False

# Destroy dropped equippable items (armor, weapon, jewelry).
# Notes:
#	Works only if DestroyPlayerDroppedItem = True
# Default: False
DestroyEquipableItem = False

# Make all items destroyable.
# If enabled players can destroy all items!!!
DestroyAllItems = False

# Save dropped items into the database for restoring after restart.
# Default: False
SaveDroppedItem = False

# Enable/Disable the emptying of the stored dropped items table after items are loaded into memory (safety setting).
# If the server crashed before saving items, on next start old items will be restored and players may already have picked up some of them so this will prevent duplicates.
# Default: False
EmptyDroppedItemTableAfterLoad = False

# Time interval in minutes to save in DB items on ground. Disabled = 0.
# Notes:
#	If SaveDroppedItemInterval is disabled, items will be saved into the database only at server shutdown.
# Default: 60
SaveDroppedItemInterval = 60

# Delete all saved items from the database on next restart?
# Notes:
#	Works only if SaveDroppedItem = False.
# Default: False
ClearDroppedItemTable = False

# Delete invalid quest from players.
# Default: False
AutoDeleteInvalidQuestData = False

# Allow creating multiple non-stackable items at one time?
# Default: True
MultipleItemDrop = True

# Enable/Disable html caching.
# True = Load all html's into cache on server startup.
# False = Load html's into cache only on first time html is requested.
# Recommended for live servers: True
# Recommended for development: False
HtmCache = False

# Check if html files contain non ASCII characters.
# Default = True
CheckHtmlEncoding = True

# Minimum and maximum variables in seconds for NPC animation delay.
# You must keep MinNpcAnimation lower or equal to MaxNpcAnimation.
# Set values to 0 for disabling random animations.
# Default: 5
MinNpcAnimation = 5
# Default: 60
MaxNpcAnimation = 60
# Default: 5
MinMonsterAnimation = 5
# Default: 60
MaxMonsterAnimation = 60

# Grid options: Grids can turn themselves on and off.  This also affects the loading and processing of all AI tasks and (in the future) geodata within this grid.
# Turn on for a grid with a person in it is immediate, but it then turns on the 8 neighboring grids based on the specified number of seconds.
# Turn off for a grid and neighbors occurs after the specified number of seconds have passed during which a grid has had no players in or in any of its neighbors.
# The always on option allows to ignore all this and let all grids be active at all times (not suggested).
# Default: False
GridsAlwaysOn = True

# Default: 1
GridNeighborTurnOnTime = 1

# Default: 90
GridNeighborTurnOffTime = 90

# Correct buylist and multisell prices when lower than sell price.
# Default: True
CorrectPrices = True

# Item limit on multisell transaction.
# Max client allowed 999999
MultisellAmountLimit = 10000


# ---------------------------------------------------------------------------
# Falling Damage
# ---------------------------------------------------------------------------

# Allow characters to receive damage from falling.
# Default: True
EnableFallingDamage = True


# ---------------------------------------------------------------------------
# Skills & Effects
# ---------------------------------------------------------------------------

# Affect debuff time by the character resistances.
# If the option is false, the debuff time will be the one set in the skill xml.
DebuffDurationUsesResists = False


# ---------------------------------------------------------------------------
# Features
# ---------------------------------------------------------------------------

# Peace Zone Modes:
# 0 = Peace All the Time
# 1 = PVP During Siege for siege participants
# 2 = PVP All the Time
# Default: 0
PeaceZoneMode = 0

# Global Chat.
# Available Options: ON, OFF, GM, GLOBAL
# Default: ON
GlobalChat = ON

# Trade Chat.
# Available Options: ON, OFF, GM, GLOBAL
# Default: ON
TradeChat = ON

# Minimum level for chat, 0 = disable.
MinimumChatLevel = 0

# If you are experiencing problems with Warehouse transactions, feel free to disable them here.
# Default: True
AllowWarehouse = True

# Default: True
AllowRefund = True

# If True player can try on weapon and armor in shop.
# Default: True
AllowWear = True

# Default: 5
WearDelay = 5

#Adena cost to try on an item.
# Default: 10
WearPrice = 10

# Disable additional adena rewards for starter villages repeatable quests based on turning in items
# True = additional reward for 10+ items not given on quest turn in, False = get additional reward for 10+ items on quest turn in
# ATTENTION: enabling this option greatly decrease adena income capabilities on low levels.
# Default: False
AltVillagesRepQuestReward = False 


# ---------------------------------------------------------------------------
# Instances
# ---------------------------------------------------------------------------
# Restores the player to their previous instance (ie. an instanced area/dungeon) on EnterWorld.
# Default: False
RestorePlayerInstance = True

# Set whether summon skills can be used to summon players inside an instance.
# When enabled individual instances can have summoning disabled in instance xml's.
# DEFAULT NEEDS TO BE VERIFIED, MUST BE CHANGED HERE AND IN CONFIG.JAVA IF NOT CORRECT
# Default: False
AllowSummonInInstance = False

# When a player dies, is removed from instance after a fixed period of time.
# Time in seconds.
# Default: 60
EjectDeadPlayerTime = 60

# When is instance finished, is set time to destruction currency instance.
# Time in seconds.
# Default: 300
DefaultFinishTime = 300


# ---------------------------------------------------------------------------
# Misc Settings
# ---------------------------------------------------------------------------

# Default: True
AllowRace = True

# Default: True
AllowWater = True

# Default: True
AllowFishing = True

# Default: True
AllowBoat = True

# Boat broadcast radius.
# If players getting annoyed by boat shouts then radius can be decreased.
# Default: 20000
BoatBroadcastRadius = 20000

# Default: True
AllowCursedWeapons = True

# If false, always block party on event.
# If true, allows party if both are in the same event.
AllowPartyInSameEvent = True

# Show "data/html/servnews.htm" when a character enters world.
# Default: False
ShowServerNews = False

# Enable the Community Board.
# Default: True
EnableCommunityBoard = True

# Default Community Board page.
# Default: _bbshome
BBSDefault = _bbshome

# Enable chat filter
# Default = False
UseChatFilter = False

# Replace filter words with following chars
ChatFilterChars = ^_^

# Banchat for channels, split ";"
# GENERAL (white)
# SHOUT (!)
# WHISPER (")
# PARTY (#)
# CLAN (@)
# GM (//gmchat)
# PETITION_PLAYER (*)
# PETITION_GM (*)
# TRADE (+)
# ALLIANCE ($)
# ANNOUNCEMENT
# BOAT
# FRIEND
# MSNCHAT
# PARTYMATCH_ROOM
# PARTYROOM_COMMANDER (Yellow)
# PARTYROOM_ALL (Red)
# HERO_VOICE (%)
# CRITICAL_ANNOUNCE
# SCREEN_ANNOUNCE
# BATTLEFIELD
# MPCC_ROOM
# NPC_GENERAL
# NPC_SHOUT
# Default: GENERAL;SHOUT;TRADE;HERO_VOICE;WHISPER
BanChatChannels = GENERAL;SHOUT;TRADE;HERO_VOICE;WHISPER


# ---------------------------------------------------------------------------
# Manor
# ---------------------------------------------------------------------------

# Default: True
AllowManor = True

# Manor refresh time in military hours.
# Default: 20 (8pm)
AltManorRefreshTime = 20

# Manor refresh time (minutes).
# Default: 00 (start of the hour)
AltManorRefreshMin = 00

# Manor period approve time in military hours.
# Default: 6 (6am)
AltManorApproveTime = 6

# Manor period approve time (minutes).
# Default: 0
AltManorApproveMin = 0

# Manor maintenance time (minutes).
# Default: 6
AltManorMaintenanceMin = 6

# Manor Save Type.
# True = Save data into the database after every action
# Default: False
AltManorSaveAllActions = False

# Manor Save Period (used only if AltManorSaveAllActions = False)
# Default: 2 (hour)
AltManorSavePeriodRate = 2


# ---------------------------------------------------------------------------
# Lottery
# ---------------------------------------------------------------------------

# Default: True
AllowLottery = True

# Initial Lottery prize.
# Default: 50000
AltLotteryPrize = 50000

# Lottery Ticket Price
# Default: 2000
AltLotteryTicketPrice = 2000

# What part of jackpot amount should receive characters who pick 5 wining numbers
# Default: 0.6
AltLottery5NumberRate = 0.6

# What part of jackpot amount should receive characters who pick 4 wining numbers
# Default: 0.2
AltLottery4NumberRate = 0.2

# What part of jackpot amount should receive characters who pick 3 wining numbers
# Default: 0.2
AltLottery3NumberRate = 0.2

# How much Adena receive characters who pick two or less of the winning number
# Default: 200
AltLottery2and1NumberPrize = 200


# ---------------------------------------------------------------------------
# Fishing Tournament
# ---------------------------------------------------------------------------

# Enable or disable the Fishing Tournament system
AltFishChampionshipEnabled = True

# Item Id used as reward
AltFishChampionshipRewardItemId = 57

# Item count used as reward (for the 5 first winners)
AltFishChampionshipReward1 = 800000
AltFishChampionshipReward2 = 500000
AltFishChampionshipReward3 = 300000
AltFishChampionshipReward4 = 200000
AltFishChampionshipReward5 = 100000


# ---------------------------------------------------------------------------
# Item Auction
# ---------------------------------------------------------------------------

#
AltItemAuctionEnabled = True

# Number of days before auction cleared from database with all bids.
# Default: 14
AltItemAuctionExpiredAfter = 14

# Auction extends to specified amount of seconds if one or more new bids added.
# By default auction extends only two times, by 5 and 3 minutes, this custom value used after it.
# Values higher than 60s is not recommended.
# Default: 0
AltItemAuctionTimeExtendsOnBid = 0


# ---------------------------------------------------------------------------
# Dimension Rift
# ---------------------------------------------------------------------------

# Minimum party size to enter rift. Min = 2, Max = 9.
# If while inside the rift, the party becomes smaller, all members will be teleported back.
# Default: 2
RiftMinPartySize = 2

# Number of maximum jumps between rooms allowed, after this time party will be teleported back
# Default: 4
MaxRiftJumps = 4

# Time in ms the party has to wait until the mobs spawn when entering a room. C4 retail: 10s
# Default: 10000
RiftSpawnDelay = 10000

# Time between automatic jumps in seconds
# Default: 480
AutoJumpsDelayMin = 480

# Default: 600
AutoJumpsDelayMax = 600

# Time Multiplier for stay in the boss room
# Default: 1.5
BossRoomTimeMultiply = 1.5

# Cost in dimension fragments to enter the rift, each party member must own this amount
# Default: 18
RecruitCost = 18

# Default: 21
SoldierCost = 21

# Default: 24
OfficerCost = 24

# Default: 27
CaptainCost = 27

# Default: 30
CommanderCost = 30

# Default: 33
HeroCost = 33


# ---------------------------------------------------------------------------
# Punishment
# ---------------------------------------------------------------------------

# Player punishment for illegal actions:
# BROADCAST - broadcast warning to GMs only
# KICK - kick player (default)
# KICKBAN - kick and ban player
# JAIL - jail player
DefaultPunish = KICK

# This setting typically specifies the duration of the above punishment.
# Default: 0 (automatically sets to 100 years)
DefaultPunishParam = 0

# Apply default punish if player buy items for zero Adena.
# Default: True
OnlyGMItemsFree = True

# Jail is a PvP zone.
# Default: False
JailIsPvp = False

# Disable all chat in jail (except normal one)
# Default: True
JailDisableChat = True

# Disable all transaction in jail
# Trade/Store/Drop
# Default: False
JailDisableTransaction = False

# Enchant Skill Details Settings
# Default: 1,5
NormalEnchantCostMultipiler = 1
SafeEnchantCostMultipiler = 5

# ---------------------------------------------------------------------------
# Custom Components
# ---------------------------------------------------------------------------

# Default: False
CustomNpcData = True

# Default: False
CustomTeleportTable = True

# Default: False
CustomSkillsLoad = True

# Default: False
CustomItemsLoad = True

# Default: False
CustomMultisellLoad = True

# Default: False
CustomBuyListLoad = True
