Хроники PreludeHarbingers of WarAge of SplendorRise of DarknessScions of DestinyOath of BloodInterludeThe 1st Throne: The KamaelThe 1st Throne: HellboundThe 2nd Throne: GraciaThe 2nd Throne: FreyaChaotic Throne: High FiveGoddess of Destruction AwakeningGoddess of Destruction HarmonyGoddess of Destruction TautiGoddess of Destruction Glory DaysGoddess of Destruction LindviorValliance / Epeisodion / RaidersErtheia / Dimensional StrangersInfinite OdysseyHeliosGrand CursadeSalvationFafurionShadow of the Kamael9 u# R' D4 V* u9 l, Y( M! a
Сборка L2 Java
7 Y* m: O% \& p z" n8 V" L
, S: N) D. n. r" {1 J6 T$ C2 t- z/ }3 ~! L* x T. R% Y. ?
Доброго времени суток.
6 g6 A" }7 D0 |, D' e. n- N3 X9 [
: F9 P2 B4 j# q6 @7 h, R( h
$ E% V9 G9 G9 ~' {; R9 v% XЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
8 B" N1 v U- g1 sВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.5 R+ O- |" ]+ P
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.% c0 D+ A. R4 |& m# [
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.! t8 ]2 [& O/ f% }* Q8 x+ Y, G3 W
1 s" L* w: U( n
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
1 ^4 T e2 C* l5 \; u" v) @" Z+ P6 d5 U; E, e6 y" t8 H2 D2 x
* ^: [( G E; n+ ]На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково./ j$ C0 ]) ?6 s+ w) t# [' p, a
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
- V. w4 }& }4 Z5 m, h( RРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи., G9 L, q& |$ Y8 t( k% A
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
* y* s9 W3 f' }$ O1 D
[5 N5 k" b( i- h& ]2 V* o9 e2 _; i7 s# z# \, g. k
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.) A) V( T% W7 `2 ?2 i( P* F
Количество файлов пачнода должно быть равно количеству файлов геодаты.7 K3 v7 q/ h8 P! l8 K
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.$ g; y8 w6 k8 Q1 x: A- O; |+ D; m
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.; Z4 N" x) S9 S& w
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.0 x9 D' R# ?# I, `+ I$ c* o+ _
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам. ?$ {, |! y( U# l' E+ }
Установка геодаты на сборки без пачнода (Rebelion):
" y2 Z0 q& n$ TПокажу на примере L2Dream.: w7 G! K, R5 p3 ~8 _ `
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
4 j: H1 Z, T7 y8 P+ j( Y$ ~& t. U
' K2 b6 J1 L- m, \( \' u+ xC:\L2Dream\game\data\geodata
* ]0 R( Y* p9 k) b
0 N, @/ J3 I* Z! \* P8 z' ?: G0 `3 k6 U8 j
3 [4 A$ v# T& C. }/ n( h, }+ N9 g( ~0 p8 N
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
# E2 A) l1 g4 T/ X# V) ?Настройка.
% |: e" R! V1 Z, z7 F- C, R3 sИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
- @9 |0 Z2 s" A( U#================================================= ================================================== ====
! A# b9 g2 l4 ?/ P. r# ]# C# Даный файл является конфигуратором геодаты.
1 Q$ n" b* x9 M. l7 l& S7 S#% Z P4 Q4 h- E: o! V' \% |2 G
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
) k4 q& C- ?/ N#
+ F, \, [& B- i, z( b8 u# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
8 l L) ]' m# }' i# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.0 p6 N* w8 C; b6 z1 \ B
# Ну или просите прикрутить SSL., O5 p( s" z+ t/ U- D
#================================================= ================================================== ====
- w6 K0 V5 j7 _. I7 v
9 p8 V; _, {4 ?) y" k4 q0 ]5 @# P4 Y3 Z; e! Y# i5 }
# Включает/отключает геодату и поиск пути.% M9 k! \2 L5 T- j R* `
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
. O8 V% n9 `: c1 a! _! S7 x, X9 a# 0 = Геодата отключена.
# N1 N) R; S1 K0 k: D( L( m# 1 = Геодата будет загружена в геймсервер.+ f t6 d9 L. X* ~" c3 n2 X
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
' {* ]* j- ? s* N6 |1 S( A# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
: I; _9 y& G/ _ ^# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
9 C6 E) k4 j1 d# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
" b3 ^; \, Q9 p" w* k9 Y- HGeoData = 0
% ~+ T2 j4 q# m+ q
$ n% I$ z8 R( U$ K: l: a, o1 U, E. Z1 a4 t( m
# Хост для сервера геодаты.: V. L4 a% Z6 t$ o; r( z( Z+ o
# * Забиндит все интефейсы., ~% b- p3 e$ p
# Игнорируется при GeoData = 0 или GeoData = 1
8 ?- A& p1 z T- ZGeoServerHost = 127.0.0.1- \! P4 b3 w/ M8 S5 M* \4 m o' a$ ~
: U' o" W) v) B. b) L, @3 {1 T L+ G: G
# Куда будет пытатся коннектится клиент.0 ]% j c& J6 \8 ?/ Q) _
# Игнорируется при GeoData = 0 или GeoData = 1
$ K, o7 P- {$ E7 U0 o* bGeoClientTargetHost = 127.0.0.1
+ b. y9 O& x: k1 A
* }% d6 c1 m4 t5 h
9 O) u6 _$ D* w+ t- i# Порт для геодаты.
! e7 n( [3 o- V! ]# Сервер откроет на нем сокет." B: Q6 f6 ]# E1 T, u$ v
# Клиент будет пытатся подключится к нему.
4 j- D. o6 P) l) E6 N' @- o# Игнорируется при GeoData = 0 или GeoData = 1
8 k% c/ D3 x1 ^& G2 BGeoPort = 9050) T" S' n! a. ?. e0 S) L; u* V
0 L; Y1 H$ x% Y# Q" ]% Z% W0 X" |! P. _% ?$ h
# Сглаживает путь.
4 B8 }, X7 D! }" D, O4 c# Стоит отключать только для дебага.
4 j; l" K2 ^3 |4 Z" qPathClean = True: T* \) X! L0 @1 H+ r/ P
% F6 B4 \6 g* C, b; W E
7 @; n7 v; \! A& m( l
# Обрабатывать ли двери в геодате
. v2 j# \7 q7 |1 ]# Настройка влияет на ГеймСервер
& @! A7 s7 S% ]: M$ D2 jAllowDoors = False- q' u6 H# k3 e5 B& O) W1 t
" _2 I6 J$ n% h) |$ |
& Q* C* e3 h5 n+ PPathFindingBoost = True
6 F; h8 G1 r8 c% X& p) |PathFindArea = 2509 Z6 c6 P, R Y ^
Внимательно читаем,нам нужно это:
/ o9 w$ U4 n8 z) J1 m2 h( U1 W% x" E( I4 r- K+ t3 a9 v
9 [9 h8 F, P( f6 z
. L9 g7 s/ x- k) J" t1 _8 ` D+ G2 m" d% u- A g
# Включает/отключает геодату и поиск пути.& c% `) f! C( u7 O. u" T
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.$ E& Q* B& R0 v3 C! y( d
# 0 = Геодата отключена.
- T$ H6 l- d6 m, |6 P" n# 1 = Геодата будет загружена в геймсервер./ `- L3 a0 b! x% h$ F y" N# v7 q
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
/ Y* I' D' E Q# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
1 b; @7 L+ q/ N# x1 T# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,1 \, B; I1 ]4 D! p4 P9 v
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
. N$ [/ e H! U' S/ i% q$ LGeoData = 07 r" X" R) Z9 B5 f+ X+ [: D
# Q# e- H5 U/ Z4 e- ^
0 O, l* J; f0 v+ C6 {
, O, o. f5 [: ~& C+ U k
/ E' \9 R2 p; LВ этом параметре меняем 0 на 1.
- S, p, o9 Z* ]4 g& J* y4 q8 {2 ставим в том случае если всё таки решили поставить геосервер,его настройки:" ?* L- f4 u6 N z
# Хост для сервера геодаты.+ j+ b0 ?# \- g! d) x
# * Забиндит все интефейсы.) b9 }- C" N! `% A' t- |) Q
# Игнорируется при GeoData = 0 или GeoData = 1
_" @3 A, N2 c1 l& ?+ ?GeoServerHost = 127.0.0.1
\1 R {$ ~% N6 D& z. I C. b* s& W- |# j0 ?
; a; C3 ^% @( F5 m9 g# Куда будет пытатся коннектится клиент.- q2 d! F; j! I3 K
# Игнорируется при GeoData = 0 или GeoData = 1' l" n6 p. X) M2 v7 V
GeoClientTargetHost = 127.0.0.1. b0 p# A2 i' i# C" B
: Q4 M% L$ m& v2 P, V6 |/ T# G- Y. y' Q
$ p4 Q; }# I4 E% m/ Q; o# S9 p# Порт для геодаты.
6 F. b; u" R( c* ?% M9 E# Сервер откроет на нем сокет.+ G8 M4 k" Y* L9 L
# Клиент будет пытатся подключится к нему.9 ^. f% V. p. r6 b
# Игнорируется при GeoData = 0 или GeoData = 1+ I( U4 Z( D5 D, z7 Z9 S: m0 U
GeoPort = 9050
( C* n! C, n S& ]& ]5 d6 PЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:0 X( b, L1 p" G% a$ ?. Y
7 J) {5 h% Z$ ?6 N' }
$ ]8 L, e% ?8 B6 m6 N1 {5 t# T0 i/ w$ X3 ?' _1 @8 U8 y, x# q4 p
9 a& S/ y; M$ N' Q# g4 c# Z2 J$ Ljava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
% g' H6 j( Y2 D- e# G! d- E4 u
2 G6 X2 X9 a1 s
X0 ]. p! P7 e9 K& T2 m
& I& k3 d0 n! Z. H p1 N5 c' B. Q
9 o2 V; y5 L& k; tДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:' n0 K b- Z9 L7 @
& E3 v9 r. ^- m) @+ _9 u2 b3 C! l9 i6 J
3 U: H: G- Y7 m9 x* J
3 r0 z! H8 x; J# Обрабатывать ли двери в геодате
, v% v5 M6 j. _# Настройка влияет на ГеймСервер1 A5 J e- G% X! C$ M; y/ K2 A
AllowDoors = True
c8 i% o" H Q8 Z: }Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
9 j W3 a4 H& m! dПути размещения файлов геодаты:/ v4 n# [2 l$ w, p, T( @
! q* J+ G( N) @
3 w) r( k2 ]; ^/ PC:\L2jServer\gameserver\data\geodata
; J5 S; I' I+ v$ i) {% C, R; E* ?
$ y2 ]% `2 o- o) m# Z
2 a3 ] I& {0 V! l5 ?
3 |8 `+ [; x# P1 W5 k: c0 T- P+ \; R8 a8 V x5 s2 G7 Z% F
И патчнода: A& a7 m F! o8 p; H
' p9 t- g/ |3 B) O% q0 D- }' w; E. k' G& z
C:\L2jServer\gameserver\data\pathnode# T8 }' w8 }) |0 {
/ W! I8 [! |. Z9 ]$ d7 ~5 Z! O# n/ l
( d4 E9 P4 s( O9 s- X5 p1 {$ |
0 z7 A+ B5 A0 L& u+ U0 j. T5 tВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:! w0 T# x& a& y! H% q; k
1 l& J$ O3 ` J) ^' i2 Z+ d9 A9 j E* k. J% ^. B a
/ b& h/ z0 a p$ ~, ~9 H
5 H) R& i% m: U% b6 ^& j16_10( Q' y1 W1 I% d4 J
16_12. _+ i( U1 S6 U% Y' u6 @
16_18
' o9 P! D( l- S7 T. P* Q3 O16_19
/ a+ c( P; {- E; l$ }* s16_20: A8 n3 e9 \( N2 g4 S# s: Y8 B- \
16_21
/ z& [5 o& ~5 P9 B16_24
6 G& D3 n: x% ~6 s8 ?' I16_25% V. ^. m; l( D# i: B
17_10
, J! O, v' }# q$ Y17_11+ y0 L# C3 N. ^: z7 q& C
17_15) u2 F6 c& B- ?3 ^! _' U
17_16
/ X% `6 ^/ a% U" U- A: {# S17_179 ]4 g" m* S; M9 y: |' _* `, K6 l
17_19 g! z/ T8 o4 O
17_20* r) {! T: {! ?# ^( V" @' C
17_21- U+ A; W$ a, U1 A/ n
17_22
% W$ {3 I6 y: H/ M5 V17_23
9 z7 m7 Z' C+ t+ {( T* i; Q9 p17_24
9 e. E* q" {2 j' y' S, x% z* V17_25) j [* s! p! s- C0 c J# j& @
18_10
& ~% C5 {, k: ?3 g1 o, t18_11- A3 v/ n8 \/ u' c9 q5 I d
18_14! o ?! h; y8 }8 b" q3 o- b
18_152 V! F. v4 m1 J6 G% g
18_16
+ }+ F1 b* N+ `+ v18_19( b/ S& C! E7 r3 h9 x" r+ `
18_20
- T; \1 F& }' P( t4 W18_21
' ^0 q) x% w; a: O# ?9 d18_22
" X T2 g- t) Y7 o18_23$ h T3 `2 U" ^+ i+ Y+ v( l
18_24
8 y" O g; G ^; A2 a x. P18_25
2 Y5 p# J7 J/ U# ^ ^19_10
% v$ B. o( N! {19_11
9 y! l. {2 w! K- B2 q! F19_13
' I) B6 n) X/ ^19_14
- @% H+ g3 ^: }19_155 L1 m* [: E A7 w
19_16, x. l2 }7 |7 ?3 L$ j9 B
19_170 f ]0 f5 p. t
19_188 S: ?5 a+ c+ p+ `
19_19& }7 a8 B& W. O- d! ?9 S4 j
19_20
4 `3 ?0 i$ o4 G0 V. Q19_21
, ]! j% Q g: H7 m9 _( L, S" N) s% l19_22
3 ]8 t$ U+ ~& l: x/ k! l19_23
4 X& Y1 y" H5 o; I F5 }; d0 R19_24
/ m% J, x* d$ s: Z2 h19_25
( D; r7 k0 a( B) ], S& Z19_26
+ d( N @7 r6 z A* J, U! i, h8 L20_105 q6 x* @# d2 m/ D
20_11, x" l% }3 m8 g- j' l& @6 k4 I/ P
20 _13 I+ l: ~1 N* {) U" {1 j9 A
20_14
5 w9 I0 U( I$ c6 p20_15( b* R0 W$ k8 ]
20_16
2 P: d4 T* t' S7 C7 u20_17
* r$ ]2 q1 ?+ J20_18
0 V) i9 b( P2 z6 K8 X, U20_19 O) T' }' c( r# a
20_20' w9 H2 T9 K0 h' j6 ?& C2 K
20_21# S+ e6 c, }7 f2 k& g
20_22- F* i9 w, H$ y0 {
20_ 231 s" j9 H- l9 f' M
20_24
% @8 I2 M8 q$ n" v, `* ~: Q20_25& o' H+ n, V& g
20_26
. q( \" o5 X1 ~/ ~8 n6 {) o, K21_11
8 j7 J. [* |" N6 q; K21_14: r* F5 J& g& `
21_15
% R# j8 _* O+ @0 C' c21_163 L0 ?. y3 x) T! D( h) C
21_171 ?% I4 V! i1 E, m7 o8 k
21_18; c! c0 w B* x6 k! S9 f' F, d
21_19
+ u. e3 a+ v5 c+ A Y+ \21_206 w/ I! U0 }; r6 g
21_21- c4 M/ s, ~9 P# t7 o2 ]
21_22* R/ l2 W+ n4 f( h! G Q. z8 ]
21_23
. X, Y _# ~$ d. Z3 h- A S/ W21_241 u& L! P: n( i5 u3 `
21_25
" L6 j9 X' k6 |- ]22_135 Z- t& q# m4 l J; s7 l
22_147 x N* J# U) _2 k& R6 N) f, V
22_15
$ m' @# [) v3 p( O8 l. t0 G22_16" d+ J4 Q3 ]5 Z6 c1 K; k0 a! x( z
22_17% A1 o# r8 t5 Y/ C. w2 u' e8 c
22_186 K* n/ b2 y- \/ e' f
22_19
, i2 Q8 {8 x e* b; o" H& A22_20
4 h2 |: V3 b. D; J' ?9 K, o( f22_21
7 I# D" P" D: D, {22_22
5 V8 E% P4 B6 m5 l22_235 e$ z# R! H' J0 l" z
22_248 x" J0 z# b9 `+ P; X8 R2 {4 ~
22_25
1 c) A& p& o* P1 U0 U. h23_11
" b+ z, J5 g4 m( m* J& s0 _7 E( z23_12, f' r: L- P3 k: L
23_13
) X/ x. N, ?+ h. M+ ]0 C& _; x. v23_14& B3 y7 Q, k1 I9 v2 n
23_15
: X$ {9 @# {# [/ _/ K2 k6 }23_16
! E- A) ~, G* I- C$ T23_17
: ~+ S( r$ L" o23_18
! k* P* W D1 Z9 Q( l23_19
' T. L8 G9 ?7 R3 ^23_20
* J3 \1 v, ]8 s23_21
% H6 E7 N$ }4 @23_224 r, V) O- i5 a2 G/ n
23_234 \4 m M3 F% E* h. Z
23_243 y x: d3 ?# i' E$ Z5 z1 }
23_25
6 j, D- i$ e% ?- ] s5 G24_11# p w- `) G; x7 L# S. c0 K
24_12
: }, B( \8 ^6 j& {24_13
7 z" V3 X# r5 k ]24_14) }! Q# p7 A. I( z2 y
24_15; N: ~* `9 A9 r
24_16
/ h8 I3 u: ?- H" H! I24_173 Z' f/ c" c$ J- y5 l3 w
24_18! j3 e B1 L6 N" I
24_19
- N( `$ b, y( |, X$ z1 o4 X9 B24_205 Y( O# T' x1 m% x9 h2 J0 n
24_21
. ^- p9 X6 w+ o24_22
) J. @& u3 h3 }- Z2 j24_23
2 j* _) @1 ~& [3 k* v+ u5 m24_24
% s! }; ^) c- c6 q w" C% p24_25
/ m* E: g, _# J5 z25_11
$ Z% ]9 {7 D8 v0 \9 |0 X- \3 V0 q25 _12* N' z2 N7 K9 Q" L
25_148 h+ j& ~; j7 P* b3 {. Z' J, r/ r
25_15
/ z8 B/ l$ a: B$ s4 ~5 r) z" f25_16
& c7 L# w. r: D+ v2 J$ X& r& n25_17
5 {' q* r+ l$ w/ e _: ~' f25_18
$ w1 \/ x' `. ?1 h2 `25_19
1 h9 F8 _2 B8 `25_20
- Y0 [1 t; Z' s5 _5 ^8 b25_21
3 M2 \7 W" k6 r25_23
v4 N5 U5 n0 c+ ^$ p) J26_ 11 y" n J* @ e& h
26_12 W. R0 k( d( w! l) z
26_14
' o) g1 g' F G7 v& e) ~
% F9 @! c% |5 v2 k' ]' @2 G4 U& j2 @; R. k; n
5 g7 m5 A: S0 h; W5 j
0 j+ M8 v9 c, F1 G( u# {8 oВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.( Q; r( h% C) X9 i) o: G7 l
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:) r- S# ~$ i, V; D7 ^6 U: c" {
#------------------------------------------------------------- --------------
1 n: O6 ^. R q# E0 G# Geodata
3 E& q+ }: x0 Y7 q8 G# ----------------------------------------------------------------------- ----, c; z: Y {8 }& D! Y/ g, R
# GeoData options:
, a+ D8 Y1 `- B! z3 O# 0 = GeoData and PathFinding OFF (default)' x! }% l! a. P2 {+ n0 y
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
; @0 Y o. N* O5 Y2 }/ X# L2Playable movement. You need to download files for data/geodata folder.
0 M7 U7 b9 n% {- O2 H+ X4 g) A# Monsters can pass walls but not aggro (no line of sight) through them.
Y+ j" S$ L7 y- {0 k# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode+ D( S( t% c9 g0 x2 ]# t
# files if CellPathFinding not enabled) and all character moves go through
0 C9 \3 o( D; l# geodata checks (if a mob passes a wall, pathfinding didn't find a route9 Y# ]+ Y, l7 {, R" k; }5 u1 p
# but we allow attack and returning home).
. X9 G% w+ f/ \1 ^/ e; q# Recommended server memory minimum 2 GB, rather 3 GB.0 A6 J4 P: _# d$ [4 e* i
# Default: 0
( L% U0 ~2 D7 X! U3 p' FGeoData = 0, j9 I9 K. _8 E/ `: [
7 [! I: W4 W' p4 V5 N. t3 p: @$ p4 P
8 y$ W! D2 g4 i1 H! D
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
* N$ x" G9 ]1 T# If False, pathnode files are used. Uses a max number of nodes in calculation which can be adjusted in the algorithm if it needs to be faster.3 L Z4 [1 ]1 O, L) M+ X# ^; N
# Default: False
: b& `2 I- C8 f4 l9 dCellPathFinding = False( z* o3 T$ K& I
! M- C, d# b* j3 V. ^7 z9 N7 g4 L# ~. b# B6 w% P% e: P' ^
# True = Loads GeoData buffer's content into physical memory.
- e& w& {+ P( o: j) N9 O7 B4 R# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.0 Q) M( T% Y, A; ?
# Default: True
5 y1 p; ^# I+ [( ^ p" dForceGeodata = True
. j# t! h1 a. w- S- L9 z9 } H6 o( \3 ? W: ^( r
1 H: f: c/ R2 ]1 Z+ D# w
# This setting controls Client <--> Server Player coordinates synchronization:1 [% z$ w$ N* H
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
3 O& p' |5 {- u B/ `# n# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
' H5 h4 y$ g9 @0 P5 k. F2 e# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).1 X. y9 u# g3 o( ^# {# S9 d
# Server sends validation packet if client goes too far from server calculated coordinates.
( _+ `4 c* |. M/ f6 P, d, U# Default: -10 p0 T7 D( I! ]4 @( H8 b) E
CoordSynchronize = -1
) \0 R4 s% s# D8 p9 R' \. {# ~2 N$ G, D" `- V7 ]
. V7 x5 U$ y" X" d: c' `6 B
6 n9 K1 L7 x ]( }/ M5 w5 B; \2 R& B! f) S9 z
GeoData = 0( C/ w( `4 i+ z& X# \
& g s& F+ V9 ?: i% j. h# Y! S. m/ x- k* f
' m9 L- ~, r# h
5 `' M; \8 C9 N0 s, ?
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.1 I% `; b ^! M8 R9 Q5 w
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
, x/ U' e9 x! m8 H5 }4 @- F2 f/ k# E/ b6 N
* A: ~. e8 r. n
3 J6 q9 m* H+ x: X+ o( I4 o
+ ] R6 `8 }) Y( G2 @& k7 R6 G4 n# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
8 ]4 r3 K' k. m# If False, pathnode files are used. Uses a max number of nodes in calculation which can be adjusted in the algorithm if it needs to be faster.6 r3 y' ~5 c- I1 y' P
# Default: False) ^& a4 t. d% T* K1 x2 {2 N, j0 u! O
CellPathFinding = False# N* [' F# _/ S& N1 }3 U) ^. @
' \; M( C( w) j9 s. k( a4 k
+ D3 v0 f* O5 f# r6 C' H3 Q
X- ~- U O/ P# I
; O7 E2 x4 \: L3 P6 Y5 A
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.% }& {, {1 `& f8 x b
Пожалуй всё подробно написал, спецы дополняем если что то не учел.+ Z* k* R9 I) ]2 C8 N
" p" c& h" ~4 y/ @
/ ?/ f& Q$ l. u8 dНе забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
' ^' A; j4 l5 i& a' b3 c3 E
8 \1 f5 P) c6 Z! m0 uИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.4 a e8 F2 @' \0 g! c. G
( I& m; l( v5 t! I1 ? |
|