Хроники 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 Kamael& K* p, J2 U( r# q# c& t- A' K- E
Сборка L2 Java7 k% m/ D# A f6 w
/ J! i" o8 R: X' y9 g. O1 D. {, L& w
( s* V# s7 o, j( BДоброго времени суток.
, z2 t2 d9 B4 [, n- A `
5 K c1 x4 e+ Y% N) D3 a6 M* x$ X o( S" L# W3 B& X
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
T; E" o3 b( n& c0 F* TВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
h% E7 x* p Y5 X1 e2 p. r1 OДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
0 H: r' @ ~( B% \# M0 FПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
! v q* J6 g# @% c% K
1 H Y& a( S" n0 k/ rВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:, o9 l9 n0 S9 r1 F$ E+ A7 @
2 f& R$ `5 t) K. h2 f4 B9 a) [
, ?- z9 P* `; K- z3 ?9 D G
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
9 G: Y2 ?& F% ]Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
8 q% a9 W* I d0 Q" w3 R8 Z: x0 OРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
, ?( X; O& c0 [7 q/ o* X2 bУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.. W0 V7 s5 @, V5 S9 l! T4 K' ? o) j
, k0 B2 K5 w% A0 Q
- C8 s, d. A- p9 {5 W. j; a& T- }Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.4 H- c# k E8 A- j; j* N9 y
Количество файлов пачнода должно быть равно количеству файлов геодаты.
: y ?4 E. i" g& ]4 F+ jЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
& J5 Z& y, r b& K% UТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.( t4 f6 U8 j' f2 w3 N8 {
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались./ F; r: W' n4 s. Z0 {
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
* J; s) W3 F3 T/ N, j c9 gУстановка геодаты на сборки без пачнода (Rebelion):
0 Q* x5 X& i. @Покажу на примере L2Dream.
2 [! \) w2 F1 Q3 Z0 K8 |Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:' w8 U. y( h! [- @0 R# N9 j4 I/ ?
. Q: ~9 `* v' v4 P! u- q, c% _5 _# [
4 L6 E$ ~* Q ^
C:\L2Dream\game\data\geodata: h! N( a" ]9 r1 [4 ?
+ q- r# \% ^1 n3 G/ X2 k' r( m5 ^, q; f3 q. Q5 p
[) w% c- E# N2 ^ i' O( P+ g7 [; E& D5 J* c
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
% T! B) K5 ?* k6 i3 U' F* IНастройка.
8 I- `! C# u6 J+ s3 CИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:, a4 v1 y$ h' z- p( M* I8 ]2 j
#================================================= ================================================== ====" w) l3 `' u; o! D" h8 x u
# Даный файл является конфигуратором геодаты., U9 G0 A& H% K4 S! y' ~9 Y9 E! u
#, m3 s# e: M- q6 X8 Z8 \2 b
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.7 p% a9 z0 I: i" t. e) w0 L
#
% j2 L! O: [$ @% _6 G# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).5 l4 [. I- F3 i* h& v
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
" x2 d3 O6 F# e3 z# Ну или просите прикрутить SSL.1 S1 e$ A4 I/ G* j, G* H
#================================================= ================================================== ====
4 N+ N+ t0 U# m5 L+ O6 i( a3 u) w9 [& v: K
! x1 {8 n/ ?1 [* Z' G% \; J# Включает/отключает геодату и поиск пути.
' C# k' n4 d+ d5 S6 Y: ?% L# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.8 z) ^+ k3 D$ G7 K6 l
# 0 = Геодата отключена.) z: C2 X3 V9 e% g6 s! `" ]
# 1 = Геодата будет загружена в геймсервер.
, P, Q% i& @7 G" ~# `# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как) l1 Q: t( m: F6 ]$ ]- ], x
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами ?8 I0 l& T$ Y3 }' a0 F' B
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
8 K. D; E& r: }* w2 ^# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.) f* I& p) U l: e
GeoData = 0& }- A# u, y8 d/ S4 y- O
% N4 Y3 K5 C5 |% t4 m; c) ~: _
$ G0 B- X% r/ R% x! x, [ V0 p
# Хост для сервера геодаты.8 o4 r1 `, b0 N: s, i5 m2 u
# * Забиндит все интефейсы.2 @& v5 t" q/ n4 k( K. {5 Y
# Игнорируется при GeoData = 0 или GeoData = 1
* Z- F* g4 X/ F3 ~3 rGeoServerHost = 127.0.0.1# Q$ M% ^. }0 ^6 ?, r' u
" a/ n/ M2 q. u3 K& H' P& Q6 K! D# E, [ }/ t& Q6 s
# Куда будет пытатся коннектится клиент.; q+ a/ n) @6 i% @2 U
# Игнорируется при GeoData = 0 или GeoData = 1
- C) Q5 r9 o( K4 uGeoClientTargetHost = 127.0.0.1) \4 M, g+ K8 H) ?
9 B z! O3 t+ ? ?7 ~, W4 N# t8 @5 I$ |) j8 r
# Порт для геодаты.
7 G5 z" X0 a# \0 w- O+ X6 H' ]- v# Сервер откроет на нем сокет.% M8 b- `5 z/ b
# Клиент будет пытатся подключится к нему." F4 R! | M7 I
# Игнорируется при GeoData = 0 или GeoData = 18 p4 _6 w! O; e
GeoPort = 90507 h! _( z. S+ m& O
" E. B0 V3 `9 N, A8 D: b# X1 y1 A! L5 b4 [
# Сглаживает путь.
# F3 u6 Z# I; {8 `7 V U8 f# Стоит отключать только для дебага.
3 x1 |: z9 x5 @* YPathClean = True! m3 o! p/ d$ n- A, J7 j5 n
l5 p0 R2 S2 d
7 |& l) Z4 x1 r, A
# Обрабатывать ли двери в геодате4 X1 f; @% |2 i/ ^- z6 V
# Настройка влияет на ГеймСервер- v' V s. L! m& B6 C
AllowDoors = False
2 O# ^' d1 I% x* m) a2 M W" z
k. u& ]( ?/ P3 K) K+ ~! H: v) y. b G/ b' C( f
PathFindingBoost = True$ H0 C7 a( A, J+ z1 i3 t
PathFindArea = 250
5 r1 V8 S2 L/ c' H+ W# JВнимательно читаем,нам нужно это:
) `: L% |. V" i/ t. M3 J
# q) r9 ?4 D& k* k8 s
% s ^6 B3 i- z1 A/ |" M5 S" w. Y$ ~( a$ ?% V" p
% ]$ l3 e6 x" K& p
# Включает/отключает геодату и поиск пути.7 n" C k; l, ?/ q5 x' i8 a
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
& V0 z: M+ n" _9 j5 e$ H3 G# 0 = Геодата отключена.
5 g2 i& v4 g' z) T! g( Q( b+ ]# 1 = Геодата будет загружена в геймсервер.
( _8 e" [ X! x8 A8 D. y5 t/ a# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
8 |3 ]3 l2 F4 h( S( z: ?; a S# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
& k o/ e A% p4 q# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
% f" O$ i, c; j$ F/ Q% f3 K# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
- \! [) i2 f) I" n4 Y7 V R- GGeoData = 0
5 U8 M0 ^2 n$ ?- ~
! }3 z ]% O& F/ e4 f z
: d$ E/ k1 y4 E* L5 l) g& G
8 C, \8 l8 L) R$ z J, Z
1 ^1 y' L/ f# Z8 @$ ~7 EВ этом параметре меняем 0 на 1.' k! R! D. ]0 q% F- U' x
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
4 I( k4 w& k. A: `, {# Хост для сервера геодаты.
" o" i! W" O- ?+ L" |8 }# * Забиндит все интефейсы.3 ?1 ~, a7 H3 D/ ~. A: j( L
# Игнорируется при GeoData = 0 или GeoData = 1
/ ?' k; n& g7 O% G9 BGeoServerHost = 127.0.0.1
" {( n- }- @+ r% P7 u1 S! Z6 Q2 P0 _; q8 F/ e) z2 E
0 a4 Y: O% i0 s' Q2 [% {4 k
# Куда будет пытатся коннектится клиент.' `; x9 L$ f1 [0 j
# Игнорируется при GeoData = 0 или GeoData = 14 X4 y9 s5 `1 N
GeoClientTargetHost = 127.0.0.1
8 j# F% b- _) X6 [
% E- ^$ \% [3 d+ x' a Z: {
5 ]# C0 u8 h7 i0 h* I/ R# j9 S# Порт для геодаты.4 a& K0 g2 {2 g1 ~# L8 D ^ d
# Сервер откроет на нем сокет.8 h9 Z# [9 X( Z' C
# Клиент будет пытатся подключится к нему.
+ L. R2 n9 A7 l7 {& a& Y+ A; {# c0 n# Игнорируется при GeoData = 0 или GeoData = 1
& n) Q% G( ~6 M5 l- KGeoPort = 9050
3 F1 a& `4 s& F; i) ] }' |Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:* _2 X( _+ q" {' j" ?
2 D8 f& r0 P! H7 e1 ^8 ?' d) L0 P& z& a; {: t2 n+ g
# { `: W, ^ l/ I
+ z8 E% L5 N* E9 L
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
5 ^' o& i# h) |+ p; Y3 n, o8 q
* e: C( G$ B6 p% _9 g! S5 }
" @/ J6 @+ z9 Y% `5 D
( g1 I, A: ]' R# t5 h9 n
, o2 I: m3 [. t e9 t' X4 OДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:7 j1 o3 Q1 r$ q7 w6 T. Z ~% j
; K% r) }9 n# ]8 O+ ^# W1 a" N8 G$ Q" p4 N/ J, @6 g5 q* x7 ?
+ k! z9 w8 V$ S8 m6 T# K' k
* K! P' K! d+ u& J# Обрабатывать ли двери в геодате
; J& J7 V" H6 u+ q9 G' Q1 u# Настройка влияет на ГеймСервер
v# k$ x3 F1 ~" dAllowDoors = True/ ^0 {1 Y& f0 R/ V
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер. }$ k7 ]; N* V5 h! o% E
Пути размещения файлов геодаты:( ]6 s/ t( |5 k! x8 U$ O
) h! ?' U/ J1 @3 u& y& R9 `/ l) h2 w4 I4 O! X2 o7 ^9 x
C:\L2jServer\gameserver\data\geodata
% `: C# g6 D2 _- ~6 X8 G
* b4 }4 s D$ D4 j A+ Q: @$ @ y5 R3 n7 E" j7 S
- I# [# r G5 i3 m N8 N1 g4 X9 i: {, C- s3 ]
И патчнода:
+ _( `& v* M& Q( t) |* c; C
4 r4 ~/ S+ h3 z0 `- C, \& y) U: {6 o4 |
C:\L2jServer\gameserver\data\pathnode
( o& m* o" c6 A! N# t: B- C0 y* @/ K( w, H3 @! T5 L% T% w
$ ?- q2 a% a; e- w3 G
) H2 ?& S, ~* u5 @ W6 z {. _. u& t: `% U
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:! Y, Z4 c6 ^) V. ]! f& V9 y0 b
" L; f, B/ e5 b9 F9 m
3 ~9 ^. F5 _# p8 f4 h# i! X6 j3 h+ M
2 W# k( l, [( L0 E2 o1 l- |16_10' ], ?% H- {$ I
16_12% M# z/ w* Z! y) n) \+ C9 }
16_18
. T, f! v+ e) G/ [5 c6 v/ w16_19" u/ l. f7 z6 Y
16_204 i: Y. t2 _ m: d) d; T
16_218 }& V9 G# A" C+ T. U
16_24
8 A( u, o0 ]" U, X16_25
: O6 e4 W* s; a$ A. a5 k. O* ^17_10
; M0 T" H6 _3 t17_11# Z! |5 ?: x0 n- U' ?/ X
17_15
3 h& p7 E9 D) x9 w; r17_16& Q7 Z) r: Q& s& P- I
17_17
' O+ w/ D4 o& q17_19& }2 B) C9 ]1 W. H: k
17_20) j* ~5 q4 _! @9 J/ E. P
17_21
# v9 ^9 |! l5 h* M17_229 s. b1 U1 J, B& ]% b
17_23. U; R8 k' T/ C9 j( D/ I& C, x
17_24. n3 ]: h/ ?$ Q' p0 U4 ^( U
17_25- y! t7 ]3 h" V2 t2 @
18_10
, ? {- I1 H; p0 g. d9 T8 P9 Z( ]: S18_113 D' O: q, ~4 f" t5 ?
18_14
- `# d$ C- @0 P0 e2 s% J18_15
5 w$ p7 A6 O$ i: Q8 ?18_162 k! h$ e0 P: L- a$ n
18_19# p$ n* @5 i$ ]' f
18_20
3 @" ~% j- F4 U6 |1 N6 C0 x- o, f18_21* h3 p3 ?$ r% G( D9 t
18_22
" C( v0 U ?3 }( e# ~18_23: B @: Z! r9 o: p
18_24* A1 \3 y* K" e
18_258 C, G: X4 t# V
19_10
' y$ w: y& T+ I! p3 ~ h% j; k19_11
0 {6 P! m$ e) }% g19_13
* J a" u! o v9 s: l! d, s19_142 \( O0 L+ c$ Z, l6 m* |' ]& y/ R
19_15/ F5 T) \: T1 |- Z- O- v
19_16. | M5 a6 f+ A6 z" {6 Y
19_17 P$ }% l( \3 @ l
19_182 i* |: W9 ~- F' n C# _& r
19_190 h. v' J2 V8 a* l3 [
19_20
: b M* `. a+ o u. j; `1 E19_21
# ^3 i" F Y; c+ T% `+ E19_22# Z( ] ?) R# j \
19_23. J9 ~3 \) \3 l
19_24
9 m# t3 w( q3 w' n1 {19_25
( I. k$ q" T0 P, V: r; r9 c/ @( k19_26
8 e; N# @* M3 I. h20_10
+ O% a: \4 L+ {. a+ S20_11
& i1 Y8 z: d7 m- m& Q3 b# l$ Y5 j( u20 _13
8 q: j8 S7 ?3 {2 \6 D20_14
. K% N1 i! L. j- B. c20_152 _, V8 r6 t8 Q$ V V/ ^! S
20_16$ f; ]9 `% O) N9 J: q% G
20_17) G$ l$ Z A, L% r6 \
20_189 e7 z3 P9 S" j5 ]' z9 n! \& d
20_19
* G7 J6 _# y% V7 k! R20_20
) `* Z, c( b/ I, G20_21" n3 f: Z \# u
20_22
! p1 }: S: J# o6 u% Y$ p# X20_ 23
/ v; S1 R0 r/ F9 a20_24
, ?4 W$ O' m% |/ [20_25
+ d! O! n t0 O" a$ N! e20_26
9 U0 k; T, ^4 X7 K3 o L9 C5 F21_11
* }4 U& j2 [& N k0 {21_14
' _: Z4 I1 _. ~7 I* p6 \" i21_15
/ W4 y. _: s6 {- F" j21_16# g' m- j1 j% | g3 E' o. S
21_17
4 ]4 h5 G! [6 W/ z6 E21_18
. j! ]* s3 p; B: e21_19
1 `9 o" M# K7 [! T. s; K21_20
, u7 V7 g! Y ^6 G/ _21_21
# d) X+ F3 m! Z, M4 S21_22/ L! _4 L4 O, [7 Z0 c1 X8 G
21_23
& Z6 L) d: K7 i# r, ^: o) `21_24
0 g; m! l7 J1 N! ]) _( P5 v21_25 f, R* K7 U2 [) o) I
22_13
4 z* H q1 E3 G4 M22_147 p# W9 [/ M( d
22_15& @3 d, w! U6 v+ T+ C, Y
22_167 R6 ~& \+ W4 o! f1 E
22_17
3 b# F% j) P7 {4 G: n. Y( P22_183 i7 N5 j1 D3 V, K+ n
22_196 _1 \ `2 R _' W& h. @) @8 s
22_20" P% ]" l C8 a0 I) T
22_21) C/ |5 {8 ?* O+ L. u& O
22_22
# T Z4 y) @/ z9 J1 N8 v, j* @22_235 w1 L5 t0 A, V' Z: s; {
22_24
1 Y7 s% ?0 i/ I6 S" R22_25
I# m* P% e8 k7 B23_11
- {" r$ ^6 S" `8 M23_12
1 d3 w+ L7 p( f/ E# f3 p23_13" ~& u! J3 u, h* X# Y5 N
23_14
: d$ @ D3 y+ V8 i& E, D23_15/ k. j0 S: {& u
23_16
* m" t1 U: s' W7 V0 ^2 e' }23_17
* w2 r) X* M; L) C. n* [23_184 O D$ `3 O- @7 z* C9 B* R4 L; Y
23_19
* k2 F4 P1 K- A3 W* D( ^7 ^$ m23_205 n8 f0 s* ^, G& }& }0 r
23_21 g! p8 H/ H7 M5 j l f
23_22
0 Z+ C+ ~9 r3 g1 N23_23
}4 z! M2 `2 g23_244 M. p# z8 i! }. g/ h" B3 d9 m1 L9 I
23_25
" g4 J: [6 @9 t- h" z7 g, Q A24_11
# M4 b" z& V" _6 J7 x7 Y% L24_12/ t3 n+ _" q& w0 T( P
24_13# M$ j$ t* n( A4 ?
24_14; ^1 C$ U* D& t/ v
24_15& n1 _. ~: [- O6 ^
24_167 E! @! \- `! u( a' t
24_17
4 ?" P9 f; z3 X" C5 N24_18
8 v2 U9 Z" f% O$ q/ y- _1 A7 b3 K24_19
! O; T% f6 w2 y \5 F5 @$ C24_20; D0 p# t9 \( u& Y4 b) n. `5 k" M
24_21
5 ]+ s8 d/ u6 l3 Z; O24_22% q+ Y# A9 d, o- \
24_23
\$ z+ K: a% k) s24_24
@* R/ x2 d$ C! ] S: S24_256 Z2 x: i8 U1 i0 c! I
25_11
; Z$ p' T1 N: q7 M1 _) D. N25 _126 P4 T, c; ?& { h8 i/ L
25_14/ i, C% I& F. Y" z: [& `+ E9 _
25_153 A; u! ^0 h; m0 [' s6 w! i
25_16
4 Z8 f# G5 w. B8 S4 r: ]25_17
2 u& M2 c* m* P: T" h6 ]+ X1 g1 }25_18/ j* Y A4 r$ i @6 m
25_19/ N6 W D8 h# _, T; B
25_20- B, E% R' O$ ?3 v# o& M- F; ?
25_213 @& v% P' {5 ~% L5 r" J
25_230 Y$ _* {' ~! |0 x6 p, K
26_ 11
! J* X* m4 i) b) A4 L3 m26_129 a3 x7 e9 p* K" h7 p, u {
26_14& D8 f ^% M1 l9 u: G: T4 I: N) `
* V' E) b% ~5 L: c V
, j1 o9 K' s) ~- @, _ P$ O; I9 |5 U' |* u! g
* _" G: K4 a6 g: b/ b- S4 [4 H0 NВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает. ^- y9 u U$ f+ {# j5 @
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:2 b' B- N) s: X% q# I
#------------------------------------------------------------- --------------: n) b; u4 w- e, X
# Geodata1 J) S; r. i9 q$ H( a& T8 z
# ----------------------------------------------------------------------- ----+ j4 i0 c1 R0 r: Z$ T4 S& v
# GeoData options:
' u% k9 B R1 s7 J. s' I) S# 0 = GeoData and PathFinding OFF (default). {( y) ^. L6 r& P" ?
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
; \1 o- @( [7 [* M( ~# L2Playable movement. You need to download files for data/geodata folder.
/ m. u4 s8 w# M# Monsters can pass walls but not aggro (no line of sight) through them.
& g' N" }# b& W7 W* s8 a! k# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
; b, @( U* @0 V( O( R. m% f# files if CellPathFinding not enabled) and all character moves go through
4 T; Q* |: A4 s6 o& I# geodata checks (if a mob passes a wall, pathfinding didn't find a route8 H0 P0 \9 B( T! U% k
# but we allow attack and returning home).
( z; c0 C* O9 G# Recommended server memory minimum 2 GB, rather 3 GB.
0 Z9 I, e4 Z0 @# Default: 0
! }/ D" T3 F4 S7 DGeoData = 08 X& \, d; U8 h7 B
- v9 X0 K/ @8 Y) [2 v* D: V i8 j2 a% q1 k
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
2 B3 d# v2 b- g7 H+ 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.
0 q) g$ C- O0 X% P+ l8 y# Default: False3 N9 I( S3 C+ R4 e/ `* @
CellPathFinding = False
+ g6 Z1 a. ?& L+ i7 ~* n; E# g
5 A1 i* p8 O& C" w: y0 W# a: _: J ~1 ]( A1 o% o+ q
# True = Loads GeoData buffer's content into physical memory.
3 ?8 \' u$ G$ _5 _2 u# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory./ s" |1 S/ S+ N
# Default: True
6 ]! |1 b) M" @. T5 y4 C, QForceGeodata = True. @1 H5 H: i( I- [% l( c
5 k+ E4 b+ M }* o
& f% m% G# S3 A1 M$ r# Q# This setting controls Client <--> Server Player coordinates synchronization:
9 ^8 k, e* @; \0 s9 _" k4 Z# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
, a' F! n7 \( i- ?8 H8 i0 D# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
- v8 Z. N0 I* D0 T! S/ {# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
4 O4 ?: l, X, x. O0 g' }0 k# Server sends validation packet if client goes too far from server calculated coordinates., ^/ T( U4 Q+ I9 G
# Default: -1
9 ]3 V T, d* j# M9 W" HCoordSynchronize = -1
1 J, Y! ?1 b' s* _+ ]4 E* @; M$ w {' G7 e
1 y4 R/ [+ Y4 O( a# Q% `
. y: N, p% @0 l- i
1 r4 w( _# E/ b" E, ]4 sGeoData = 0
: l& e2 s; ?, t( z6 p- Y* z% q; H2 |2 y8 I9 L. `
, c' \1 N( w5 L# b
0 p) o5 Q) A! H: g
! x$ \; w) I) u& BСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену., y; @* Y( D% U( O; [+ h
Ставим 2 если пачнод присутствует, так же включаем эту настройку:2 b; S) f- E, }# g5 N z4 H
U3 N2 W7 t8 X# v* O
4 n! B( n3 e: R6 o6 ?0 [8 @( X/ C3 i6 c& Y) y* J
* n& w7 w" A, V0 Y! }+ \
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.) q L8 I, S( {
# 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.% j1 ?8 y$ e+ P& M: o
# Default: False
) R4 b0 A" |- u- r# ~! PCellPathFinding = False
) B% l: \6 {4 M8 F1 U8 N
5 E P* H& P7 [: v" N- Y+ a; }; m+ p2 p) }
" L# [! ~+ X u% P/ Z, f
+ y8 ?' w( {" M1 H7 yСтавим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
# ^/ D6 e$ V) {7 }0 Y& ?Пожалуй всё подробно написал, спецы дополняем если что то не учел.0 @$ B# b4 V/ I4 S* b; @
) S3 M7 f! j: p. n6 O* D
6 m% L/ M5 v8 \Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.- O0 `0 S: F0 @6 S
; w, d6 Y2 @2 A3 [) h! W. s2 a# h \" BИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации./ j& a& D2 A- T6 a; b
% i! d- N5 v1 G6 B. T: h, D0 e |
|