-
Notifications
You must be signed in to change notification settings - Fork 9
/
config.lua
419 lines (311 loc) · 13.7 KB
/
config.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
-------- config.lua --------
-- Config file for OTServ --
----------------------------
-- data directory location
datadir = "data/"
-- map location
map = "data/world/map.otbm"
-- Type of map storage,
-- 'relational' - Slower, but possible to run database queries to change all items to another id for example.
-- 'binary' - Faster, but you cannot run DB queries.
-- To switch, load server with the current type, change the type in config.lua
-- type /reload config and the save the server with /closeserver serversave
map_store_type = "binary"
-- mapkind
-- options: OTBM for binary map, XML for OTX map
mapkind = "OTBM"
-- server name
servername = "OTServ"
-- server location
location = "Germany"
-- server ip (the ip that server listens on)
ip = "127.0.0.1"
-- login server port
-- This should be the port used for connecting with IP changers etc.
login_port = "7171"
-- game server port
-- game server must be on it's own port (due to limits of the protocol)
game_port = "7172"
-- status port
-- Used by status protocol connections, should be same as login
-- to work correctly with server lists etc.
status_port = "7171"
-- admin port
-- Port used by the OTAdmin protocol
admin_port = "7171"
-- server url
url = "http://otfans.net"
-- server owner name
ownername = "Tliff"
-- server owner email
owneremail = "[email protected]"
-- world name
worldname = "OpenTibia"
-- world type
-- options: openpvp/pvp, optionalpvp/no-pvp, hardcorepvp/pvp-enforced
worldtype = "openpvp"
-- does player rate (from lua functions) count on experience gained from killings players on pvp-e worlds?
rates_for_player_killing = false
-- exhausted time in ms (1000 = 1 second) for "yell" speak type
exhausted = 30000
-- exhausted time in ms (1000 = 1 second) for aggressive spells/weapons
fightexhausted = 2000
-- exhausted time in ms (1000 = 1 second) for none-aggressive spells
healexhausted = 1000
-- exhausted time in ms (1000 = 1 second) for floor changing
stairhop_exhausted = 2000
-- how many ms to add if the player is already exhausted and tries to cast a spell/yells (1000 = 1 second)
exhaustedadd = 5000
-- how long does the player has to stay out of fight to get pz unlocked in ms (1000 = 1 second)
in_fight_duration = 60000
-- how long a field belongs to a player before it no longer causes PZ lock for the owner
field_ownership_duration = 5000
-- When a player dies, how many of the assisting players (ie. how many of those who made damage) should be stored in database?
death_assist_count = 19
-- Should only the player who did the last hit get the 15-minute pz lock?
last_hit_pzblock_only = true
-- enable (advanced, item based) hotkeys?
enablehotkeys = true
-- minimum amount of time between actions ('Use') (1000 = 1 second)
minactioninterval = 200
-- minimum amount of time between extended actions ('Use with...') (1000 = 1 second)
minactionexinterval = 1000
-- house rent period
-- options: daily, weekly, monthly
houserentperiod = "monthly"
-- whether or not to check for premium accounts when using beds
premonlybeds = true
-- Should the server use account balance system or depot system for paying houses?
use_balance_house_paying = true
-- How long time the red skull will last in seconds (default 30 days)
red_skull_duration = 30*24*60*60
-- How long time the black skull will last in seconds (default 45 days)
black_skull_duration = 45*24*60*60
-- White skull duration, how long a player will get pz locked/white skull
unjust_skull_duration = 15*60*1000
-- Enable this and players will get pzlocked regardless of being the aggressor or not (<8.5 this was set to true)
defensive_pz_lock = false
-- How many players you need to kill to gain a red skull per day/week/month
-- Set 0 to disable
kills_per_day_red_skull = 3
kills_per_week_red_skull = 5
kills_per_month_red_skull = 10
-- How many players you need to kill to gain a black skull per day/week/month
-- Set 0 to disable
kills_per_day_black_skull = 6
kills_per_week_black_skull = 10
kills_per_month_black_skull = 20
-- Broadcast violation window banishments
broadcast_banishments = "no"
-- Violation window config
max_violation_comment_size = 255
notations_to_banishment = 3
warnings_to_final_banishment = 4
warnings_to_deletion = 5
-- in seconds
banishment_length = 7*86400
final_banishment_length = 30*86400
ip_banishment_length = 86400
-- Extra experience % per player when sharing experience
party_exp_mul = 5
-- Anti-MageBomb system
-- This system works as in Tibia, time in milliseconds
login_attack_delay = 10*1000
-- AFK Configuration (in milliseconds, but use values for minutes)
-- Maximum time a player can stay away from keyboard before being kicked
max_idle_time = 16*60*1000
-- Player will be warned about being kicked at this time
max_idle_time_warning = 15*60*1000
-- Should just premium players be able to use addons?
addons_only_for_premium = true
-- Exp Stages configuration is in /data/exp_stages.lua
experience_stages = false
-- rates (experience, skill, magic level, loot and spawn)
rate_exp = 1
rate_exp_pvp = 0
rate_skill = 1
rate_mag = 1
rate_loot = 1
rate_spawn = 1
-- how much of the xp won by a summon is given to its master
summons_give_exp = 0.5
--Displays the skill advanced to when advancing in skills (melee) [default: "no"]
--Example: "You advanced to sword fighting 17. "
show_new_skill_level = false
--Displays amount of health healed.
--Similar to the way damage is shown, except in green numbers (Example: +17) [default: "no"]
show_healing = false
--Use orange text for spells rather than traditional text [default: "no"]
--NOTE: The orange text will not be displayed on the default channel
orange_spell_text = false
-- Configuration for death messages
-- Should the client show the popup window after a death? [default: "yes"]
show_death_window = true
-- What message should be sent for the player, after its own death? Use "" to disable.
death_msg = "You are dead."
--should players be able to rope creatures (like at older versions of tibia)?
can_rope_creatures = true
--how many floors away of a player should a monster be to become idle?
--WARNING: setting this as any number bigger than 3 may increase CPU usage and
--setting this to any value smaller than 2 will make nearly impossible to rope monsters from a hole
height_minimum_for_idle = 3
-- Stamina Configuration
-- Gain stamina rate - 1 second offline = X milliseconds of stamina
rate_stamina_gain = 334
-- Slow gain stamina rate. This is used if you are gaining stamina that gives extra experience
-- 1 second offline = X milliseconds of stamina
slow_rate_stamina_gain = 100
-- Loss stamina rate - works as other rates
rate_stamina_loss = 1
-- For how many milliseconds (from 42 hours) you get extra experience from monsters
stamina_extra_experience_duration = 2 * 60 * 60 * 1000
-- How much extra XP you get 0.5 is 50% extra
stamina_extra_experience_rate = 0.5
-- If true, only premium players gain extra experience
stamina_extra_experience_onlyprem = true
-- For how many milliseconds after killing a monster stamina will keep being removed
hunting_kill_duration = pzlocked
-- Should the level requirements on runes be used [default: true]
use_rune_level_requirements = true
-- Remove ammunition
-- If false, ammunition will not be removed when using distance weapons
-- (or other weapons that use ammunition)
remove_ammunition = true
-- Remove rune charges
-- This only applies to runes done using the default functions.
-- Custom runes made using actions will not be affected.
remove_rune_charges = true
-- Remove weapon charges
-- Set to false to disable charges disappearing from weapons on use
remove_weapon_charges = true
-- Distance weapon configuration
-- Should exhaustion and action time be checked for using a distance weapon?
distance_weapon_interrupt_swing = true
-- Wands configuration exhaustion
-- Should exhaustion and action time be checked for using wands?
wands_interrupt_swing = true
-- maximum amount of items inside of a container (including the items inside of any container inside of it)
-- Use 0 for infinite
max_amount_items_inside_containers = 2000
-- maximum amount of containers inside of a player inventory
-- it fixes some CPU bug so it's not recommended to change this value to very high
max_containers_inside_player_inventory = 100
--maximal length for chains of containers (i.e, a container inside of a container which is inside of a container...)
max_deepness_of_chain_of_containers = 500
--should OTServ bind only global IP address ?
bind_only_global_address = false
-- How many items can be stacked in a single tile (all type of tiles)(client side)? DO NOT CHANGE IT UNLESS THAT YOU KNOW WHAT YOU ARE DOING
max_stack_size = 1000
-- How many items can be stacked in a normal tile ? (0 = max_stack_size)
tile_limit = 0
-- How many items can be stacked in a protection zone tile ? (0 = max_stack_size)
protection_tile_limit = 0
-- How many items can be stacked in a house zone tile ? (0 = max_stack_size)
house_tile_limit = 0
-- fist fighting configuration
-- How strong should be the attack using bare hands (fist fighting)?
fist_strength = 7
-- Guild War Fee
-- The addition 'war charge' to start a guild war (default: 1000)
-- To disable set to 0
guild_war_fee = 1000
-- Allow gamemaster multiclient login to everybody?
allow_gamemaster_multiclient = false
-- despawn configs
-- how many floors can a monster go from his spawn before despawning
despawnrange = 2
-- how many square metters can a monster be far from his spawn before despawning
despawnradius = 50
--should players be able to hit invisible creatures using not AOE runes? (default: false)
can_attack_invisible = false
--should players be able to pass through each other if they can't attack each other (non-pvp servers/tiles or levels too low for PvP)?
--this option also controls if they can pass through magic wall/wild growth casted by players with those restrictions
can_pass_through = true
--should magic walls (and wild growth) disappear when a player walks upon it? (non-pvp servers/tiles or casted by chars who are too low)?
magic_wall_disappear_on_walk = true
--players with a level smaller than this number can't be attacked by other players. Set it to to 0 to disable
min_pvp_level = 0
--how much % of the total damage players actually receive when attacked by other players?
pvp_damage = 50
--how much % of the total damage black skulled players actually receive when attacked by other players?
pvp_damage_at_black_skulls = 100
--should pvp restrictions apply to summons too?
-- (experimental code - requires otserv to be compiled with flag __MIN_PVP_LEVEL_APPLIES_TO_SUMMONS__)
min_pvp_level_applies_to_summons = true
-- How many milliseconds (1 sec = 1000) we should wait until the player will be pushed by another player.
push_interval = 2000
-- How many milliseconds a player should wait until he can move another item after moving one (0 disables it)
move_item_interval = 500
-- max number of messages a player can say before getting muted (default 4), set to 0 to disable muting
maxmessagebuffer = 4
-- max amount of none stackable items that a NPC will sell to a player at the same time
npc_max_nonestackable_sell_amount = 100
-- if you doesn't wish to see errors like this: "Error: Expected an integer/boolean parameter"
--(it means that you are missing an return somewhere but this is not so important and is just spamming your console on a production server) then set this to false
lua_excepted_type_errors_enabled = false
-- if this is set to false, guild wars end immediatelly when frag_limit is reached (it ends in-game)
-- (on cipsoft tibia the guild wars just end when server (re)starts - set this to true to emulate original tibia)
guild_wars_end_only_on_startup = true
-- motd (the message box that you sometimes get before you choose characters)
motd = "Welcome to OTServ 0.6.3!"
motdnum = "1"
-- login message
loginmsg = "Welcome to OTServ 0.6.3. For help visit http://otfans.net."
-- how many logins attempts until ip is temporary disabled
-- set to 0 to disable
logintries = 5
-- how long the retry timeout until a new login can be made (without disabling the ip)
retrytimeout = 5000
-- how long the player need to wait until the ip is allowed again
logintimeout = 60 * 1000
-- how deep queryDestination should look for free slots (default -1, infinite)
player_querydestination_deepness = -1
-- allow clones (multiple logins of the same char)
allowclones = false
-- only one player online per account
checkaccounts = true
-- max number of players allowed
maxplayers = "900"
-- save client debug assertion reports
-- to use this option you have to create file called client_assertions.txt and make sure after client crash to change IP to otserv one then click "send".
saveclientdebug = true
-- Set the max query interval for retrieving status information
-- default: 5 minutes / IP
-- set to 0 to disable
statustimeout = 30 * 1000
-- accounts password type
-- options: plain, md5, sha1
passwordtype = "plain"
-- Password salt
-- Offers better security against rainbow table attacks etc.
passwordsalt = ""
-- House configuration (game_class)
-- House tile price
house_tile_price = 100
-- Only premium players can buy houses?
house_only_premium = true
-- Level to buy houses
house_level = 1
-- Show house price and its rent price when looking at its door?
-- PS: This info is going to be shown just if house has no owner
show_house_prices = false
-- max packets per second to elemeniate spamming of packets to server
-- 0 disabled
max_packets_per_second = 50
-- SQL type
-- options: mysql, sqlite, odbc or pgsql
sql_type = "sqlite"
-- SQL connection part
sql_db = "db.s3db"
-- "otserv" -- use this for MySQL/PgSQL
-- "Your Source" -- ODBC
-- Additional connection settings for mysql, pgsql and odbc
sql_host = "127.0.0.1"
sql_port = 3306
-- 5432 -- use this port for PgSQL
sql_user = "root"
sql_pass = ""
-- Enable Cast System? (true or false)
enableCast = true
-- Set Cast Viewers Limit
max_cast_viewers = 50