forked from Ezzz-dev/OTHire
-
Notifications
You must be signed in to change notification settings - Fork 0
/
config.lua
356 lines (264 loc) · 11.3 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
-------- config.lua --------
-- Config file for OTServ --
----------------------------
-- data directory location
datadir = "data/"
-- map location
map = "data/world/world.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://otland.net"
-- server owner name
ownername = "Ezzz"
-- server owner email
owneremail = ""
-- world name
worldname = "OTHire"
-- world type
-- options: openpvp/pvp, optionalpvp/no-pvp, hardcorepvp/pvp-enforced
worldtype = "pvp"
-- Auto Stack items in containers (like in newer Tibia versions)
container_items_auto_stack = false
-- 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 = 10
-- Should only the player who did the last hit get the 15-minute pz lock?
last_hit_pzblock_only = 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
-- 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 = true
-- Enable this so items with height as parcels and boxes block players movement when stacked, as in 7.4
parcel_block = 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
-- In Oldschool you would get banned by doubling the needed month unjustified kills for red skull
kills_to_ban = 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
banishment_length = 7*86400 --seconds
final_banishment_length = 30*86400 --seconds
ip_banishment_length = 86400 --seconds
-- 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
-- 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
-- Rookgaard system
-- level_to_rook if player reach this level he is sento to newbie island at level 1
level_to_rook = 5
-- rook_temple_id newbie island temple id
rook_temple_id = 2
storage_sendrook = 49786
-- 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 = 2
-- Should the level requirements on runes be used [default: false]
use_rune_level_requirements = false
-- 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 = true
-- 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
-- Allow gamemaster multiclient login to everybody?
allow_gamemaster_multiclient = true
-- 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: true)
can_attack_invisible = 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?
--Old Tibia has this in 100%
pvp_damage = 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
-- 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
-- motd (the message box that you sometimes get before you choose characters)
motd = "Welcome to OTHire."
motdnum = "1"
-- login message
loginmsg = "Welcome to OTHire."
-- 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
-- What is the maximum number of packages the client can send per second?
max_packets_per_second = 35
-- 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 = false
-- 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 = "sha1"
-- 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
-- SQL type
-- options: mysql, sqlite, odbc or pgsql
sql_type = "mysql"
-- SQL connection part (mysql, pgsql, odbc)
sql_db = "otserv"
sql_host = "127.0.0.1"
sql_port = 3306
sql_user = "root"
sql_pass = ""
-- Guild War Fee
-- The addition 'war charge' to start a guild war (default: 1000)
-- To disable set to 0
guild_war_fee = 1000
-- 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 = false