mirror of
https://github.com/otland/forgottenserver
synced 2026-08-15 16:32:07 -04:00
* refactor(protocol): remove legacy ProtocolOld impl * refactor(protocol): remove legacy ProtocolLogin impl * fix(data): cpplinter enum values --------- Co-authored-by: Ranieri Althoff <1993083+ranisalt@users.noreply.github.com>
186 lines
5.7 KiB
Text
186 lines
5.7 KiB
Text
-- Combat settings
|
|
-- NOTE: valid values for worldType are: "pvp", "no-pvp" and "pvp-enforced"
|
|
worldType = "pvp"
|
|
hotkeyAimbotEnabled = true
|
|
protectionLevel = 1
|
|
killsToRedSkull = 3
|
|
killsToBlackSkull = 6
|
|
pzLocked = 60000
|
|
removeChargesFromRunes = true
|
|
removeChargesFromPotions = true
|
|
removeWeaponAmmunition = true
|
|
removeWeaponCharges = true
|
|
timeToDecreaseFrags = 24 * 60 * 60
|
|
whiteSkullTime = 15 * 60
|
|
stairJumpExhaustion = 2000
|
|
experienceByKillingPlayers = false
|
|
expFromPlayersLevelRange = 75
|
|
|
|
-- Connection Config
|
|
-- NOTE: maxPlayers set to 0 means no limit
|
|
-- NOTE: allowWalkthrough is only applicable to players
|
|
-- NOTE: two-factor auth requires token and timestamp in session key
|
|
-- NOTE: statusCountMaxPlayersPerIp allows you to only count up to X players per IP in status response (0 = disabled)
|
|
ip = "127.0.0.1"
|
|
bindOnlyGlobalAddress = false
|
|
gameProtocolPort = 7172
|
|
statusProtocolPort = 7171
|
|
httpPort = 8080
|
|
httpWorkers = 1
|
|
maxPlayers = 0
|
|
onePlayerOnlinePerAccount = true
|
|
allowClones = false
|
|
allowWalkthrough = true
|
|
serverName = "Forgotten"
|
|
statusTimeout = 5000
|
|
statusCountMaxPlayersPerIp = 0
|
|
replaceKickOnLogin = true
|
|
maxPacketsPerSecond = 25
|
|
enableTwoFactorAuth = true
|
|
|
|
-- Pathfinding
|
|
-- pathfindingInterval handles how often paths are force drawn
|
|
-- pathfindingDelay delays any recently drawn paths from drawing again
|
|
-- pathfindingDelay does not delay pathfindingInterval
|
|
pathfindingInterval = 200
|
|
pathfindingDelay = 300
|
|
|
|
-- Deaths
|
|
-- NOTE: Leave deathLosePercent as -1 if you want to use the default
|
|
-- death penalty formula. For the old formula, set it to 10. For
|
|
-- no skill/experience loss, set it to 0.
|
|
deathLosePercent = -1
|
|
|
|
-- Houses
|
|
-- NOTE: set housePriceEachSQM to -1 to disable the ingame buy house functionality
|
|
-- NOTE: valid values for houseRentPeriod are: "daily", "weekly", "monthly", "yearly"
|
|
-- use any other value to disable the rent system
|
|
housePriceEachSQM = 1000
|
|
houseRentPeriod = "never"
|
|
houseOwnedByAccount = false
|
|
houseDoorShowPrice = true
|
|
onlyInvitedCanMoveHouseItems = true
|
|
|
|
-- Item Usage
|
|
timeBetweenActions = 200
|
|
timeBetweenExActions = 1000
|
|
|
|
-- Map
|
|
-- NOTE: set mapName WITHOUT .otbm at the end
|
|
mapName = "forgotten"
|
|
mapAuthor = "Komic"
|
|
|
|
-- Market
|
|
marketOfferDuration = 30 * 24 * 60 * 60
|
|
premiumToCreateMarketOffer = true
|
|
checkExpiredMarketOffersEachMinutes = 60
|
|
maxMarketOffersAtATimePerPlayer = 100
|
|
|
|
-- MySQL
|
|
mysqlHost = "127.0.0.1"
|
|
mysqlUser = "forgottenserver"
|
|
mysqlPass = ""
|
|
mysqlDatabase = "forgottenserver"
|
|
mysqlPort = 3306
|
|
mysqlSock = ""
|
|
|
|
-- Misc.
|
|
-- NOTE: classicAttackSpeed set to true makes players constantly attack at regular
|
|
-- intervals regardless of other actions such as item (potion) use. This setting
|
|
-- may cause high CPU usage with many players and potentially affect performance!
|
|
-- NOTE: forceMonsterTypesOnLoad loads all monster types on startup to validate them.
|
|
-- You can disable it to save some memory if you don't see any errors at startup.
|
|
-- checkDuplicateStorageKeys checks the values stored in the variables for duplicates.
|
|
allowChangeOutfit = true
|
|
freePremium = false
|
|
kickIdlePlayerAfterMinutes = 15
|
|
maxMessageBuffer = 4
|
|
emoteSpells = false
|
|
classicEquipmentSlots = false
|
|
classicAttackSpeed = false
|
|
showScriptsLogInConsole = false
|
|
showOnlineStatusInCharlist = false
|
|
yellMinimumLevel = 2
|
|
yellAlwaysAllowPremium = false
|
|
minimumLevelToSendPrivate = 1
|
|
premiumToSendPrivate = false
|
|
forceMonsterTypesOnLoad = true
|
|
cleanProtectionZones = false
|
|
checkDuplicateStorageKeys = false
|
|
|
|
-- VIP and Depot limits
|
|
-- NOTE: you can set custom limits per group in data/XML/groups.xml
|
|
vipFreeLimit = 20
|
|
vipPremiumLimit = 100
|
|
depotFreeLimit = 2000
|
|
depotPremiumLimit = 15000
|
|
|
|
-- Quest Tracker limits
|
|
questTrackerFreeLimit = 10
|
|
questTrackerPremiumLimit = 15
|
|
|
|
-- Server Save
|
|
-- NOTE: serverSaveNotifyDuration in minutes
|
|
serverSaveNotifyMessage = true
|
|
serverSaveNotifyDuration = 5
|
|
serverSaveCleanMap = false
|
|
serverSaveClose = false
|
|
serverSaveShutdown = true
|
|
|
|
-- Experience stages
|
|
-- NOTE: to use a flat experience multiplier, set experienceStages to nil
|
|
-- minlevel and multiplier are MANDATORY
|
|
-- maxlevel is OPTIONAL, but is considered infinite by default
|
|
-- to disable stages, create a stage with minlevel 1 and no maxlevel
|
|
experienceStages = {
|
|
{ minlevel = 1, maxlevel = 8, multiplier = 7 },
|
|
{ minlevel = 9, maxlevel = 20, multiplier = 6 },
|
|
{ minlevel = 21, maxlevel = 50, multiplier = 5 },
|
|
{ minlevel = 51, maxlevel = 100, multiplier = 4 },
|
|
{ minlevel = 101, multiplier = 3 }
|
|
}
|
|
|
|
-- Rates
|
|
-- NOTE: rateExp is not used if you have enabled stages above
|
|
rateExp = 5
|
|
rateSkill = 3
|
|
rateLoot = 2
|
|
rateMagic = 3
|
|
rateSpawn = 1
|
|
|
|
-- Breakable Mana Shield
|
|
useBreakableManaShield = true
|
|
|
|
-- Monster Despawn Config
|
|
-- despawnRange is the amount of floors a monster can be from its spawn position
|
|
-- despawnRadius is how many tiles away it can be from its spawn position
|
|
-- removeOnDespawn will remove the monster if true or teleport it back to its spawn position if false
|
|
-- walkToSpawnRadius is the allowed distance that the monster will stay away from spawn position when left with no targets, 0 to disable
|
|
-- monsterOverspawn can be used instead of removeOnDespawn option, this will start respawn process of the monster when it goes out of deSpawn* boundaries.
|
|
-- Setting both removeOnDespawn and monsterOverspawn to true prioritizes the latter.
|
|
deSpawnRange = 2
|
|
deSpawnRadius = 50
|
|
removeOnDespawn = true
|
|
walkToSpawnRadius = 15
|
|
monsterOverspawn = false
|
|
|
|
-- Stamina
|
|
staminaSystem = true
|
|
timeToRegenMinuteStamina = 3 * 60
|
|
timeToRegenMinutePremiumStamina = 6 * 60
|
|
|
|
-- Scripts
|
|
warnUnsafeScripts = true
|
|
convertUnsafeScripts = true
|
|
|
|
-- Startup
|
|
-- NOTE: defaultPriority only works on Windows and sets process
|
|
-- priority, valid values are: "normal", "above-normal", "high"
|
|
defaultPriority = "high"
|
|
startupDatabaseOptimization = false
|
|
|
|
-- Status Server Information
|
|
ownerName = ""
|
|
ownerEmail = ""
|
|
url = "https://otland.net/"
|
|
location = "Sweden"
|