Хроники 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: y, s) e( M5 @! n2 R
Сборка L2 Java. }' @! \ J9 {* P
]6 z" [3 q5 l" g
, T, z8 [+ D- a; L1 Z0 `1 \: |Доброго времени суток." s8 \+ K0 p4 t. T# i) F: G2 H8 D* w
7 v' q: H6 J2 O; J) Q6 j) Y: Q
# F9 _- X) z* CЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
- o+ A3 p$ ^5 v; _Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
6 I, e+ k9 g9 p6 i. cДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
; g6 ]# t3 Y; ]% w0 e# M: Q: nПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
$ h% B* o b8 u' ?' F$ X6 {2 M
) Q& R! {: h2 p2 x! u9 g, v0 NВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
8 i+ F' o. B* y8 h7 z) y0 t d7 v0 q. e* u
" C6 G. I3 h' T5 q2 b' z- G n2 o- eНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
& r; r2 \1 A9 S( x* }! G( tГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
2 c3 ?( d6 L0 L. @: LРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.! m) m/ o' v" F: }9 G+ S( h
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
/ U1 I7 X6 y8 Z, U8 j& s, |2 M5 e0 B; b4 H* A( [1 J* d8 z( C0 n8 i3 O$ c( `
+ i2 U( n' T% P( b* jЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn." N9 Y/ }* q- S+ b( Y9 H; H6 t
Количество файлов пачнода должно быть равно количеству файлов геодаты.5 i, X+ i% R, t" X& {3 l9 `; e2 A
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.5 s* z; R. o8 [4 A
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
* j" ^( f! \* g$ cСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались. k7 N' F7 q# s$ U: V, O
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
8 Z: {4 d' r( z4 r* _# @- \4 eУстановка геодаты на сборки без пачнода (Rebelion):
0 k% {% i3 q7 T1 P! D. E3 B+ h' uПокажу на примере L2Dream.9 z: W# x. S% C( i. R7 r( z
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
- f K. _( j5 R8 w; V6 b
5 a, e+ z7 q6 }
2 X: o; z& A0 qC:\L2Dream\game\data\geodata* ~% g- U6 k( x: M6 P; ]+ Y
1 g3 o, } F% d, U6 r9 u* x
* n) a% E& z. n0 H& ?2 r& o
' W+ W- C* O. N1 {. m m1 ~. u- {6 w2 G8 V
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
: I( D y7 G# }, A" f+ e, SНастройка.7 ^; r( k3 n0 [) V
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
5 P: y3 E$ q6 S2 G& P6 z5 r#================================================= ================================================== ====
. A4 K* ~7 D T: w) Y- _6 @- T# Даный файл является конфигуратором геодаты.( T z7 y6 G; u
#
% r3 C9 D5 k& Q# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.) j, w( ]" r- ^- A8 a
#3 D) @7 y9 P7 ^7 |( X" B& }
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).( i5 w- k% g& I
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.% X; R' _) c" T2 n
# Ну или просите прикрутить SSL. ~# u9 j# i) I5 i f6 F( L9 q
#================================================= ================================================== ====3 B/ x& _$ b! D
2 x- x$ M% b x$ x
! r7 i/ E$ y7 V5 I' C) h# R# Включает/отключает геодату и поиск пути.
: d& y. S9 Z% R6 Y# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
& b G) i) I* z# _- D6 Q8 V# 0 = Геодата отключена.2 ]! {! }' U9 I/ j) W
# 1 = Геодата будет загружена в геймсервер.9 D# s8 x, E C; `
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
% ]/ j) z; o3 ~1 I* I5 w( ]# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
8 ~1 V6 M- l/ i0 Z0 ~# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,& L, t" |. R* p$ b( S% l$ X
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.3 n1 X5 A' i4 i& H. w
GeoData = 0- N4 W. z+ p2 Q: z6 d* a3 {
/ ^, n, R4 [; |# Z% |. n4 A7 i
3 q2 K3 z7 u S2 F# Хост для сервера геодаты.
$ K# S! a* w* ]/ |# * Забиндит все интефейсы.& Q! x# d. Q! t1 S
# Игнорируется при GeoData = 0 или GeoData = 1- M1 d3 F( t+ E
GeoServerHost = 127.0.0.1
+ O% v& L& P6 a. {9 _. S
) d4 f+ b: ?( s( r6 z+ z% E. ], H% P" ^' j
# Куда будет пытатся коннектится клиент.! G. d/ Z0 m- l
# Игнорируется при GeoData = 0 или GeoData = 12 Z. K% g, \/ x- S' u z
GeoClientTargetHost = 127.0.0.10 j5 b: ?" N# g
, e& w% }7 Y' A d
4 z- F$ H- \" B; |
# Порт для геодаты.
) I/ ?( [" ]2 `2 x9 h* X# Сервер откроет на нем сокет.
% D# |" g$ f7 }- a7 o) }7 k# Клиент будет пытатся подключится к нему.7 `2 D! y1 S& }& {1 P" D _
# Игнорируется при GeoData = 0 или GeoData = 1/ v0 O$ ^2 k; {/ l! }- `
GeoPort = 9050+ V/ h0 t9 Z3 V+ `3 U8 {5 ^
. n+ a* a' m ^7 D- h5 t9 z6 v! u
( W8 ^; K+ B- O/ \2 c/ a- i7 ~) H. u# Сглаживает путь.
% B% _. m+ c, S& N+ x7 G/ I) Y# Стоит отключать только для дебага.
: X1 | E N$ H- _9 m4 M5 Y9 s7 RPathClean = True" s% i8 W% H! A: Q: E3 S
+ S" I J, Z# T( f" d. K3 H* q0 k: h+ z
# Обрабатывать ли двери в геодате
7 r8 t6 R2 s% p8 s7 C# Настройка влияет на ГеймСервер* F7 O. t& i! U
AllowDoors = False& O. g W1 g' o6 X$ P
3 B5 n! t/ W% e/ p" T4 ?
( d1 t: z7 _/ M$ l, [5 N" uPathFindingBoost = True
J& u P* p3 Z1 g6 l+ C: @% EPathFindArea = 250+ F' p/ L5 ~( Q+ x
Внимательно читаем,нам нужно это:2 E- `8 `) P& L' ?+ [8 w6 E2 {
1 a" y; h: R* W: [1 [/ c: U% W
% h, D1 z9 ` V% I) f" o, {9 A$ G2 M0 ^+ ~! N
. v7 _9 M- Q2 O2 G2 u* F7 g, D# Включает/отключает геодату и поиск пути.3 I n, z7 M# _. `
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
) i7 l9 b& W( i. w# 0 = Геодата отключена.
* m5 ]+ e8 j0 P. O" r& d4 O! U# 1 = Геодата будет загружена в геймсервер.
G, a+ e+ e) `' a- T1 Y: N9 C( Y# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
/ @+ Z' }7 ^+ k$ d; J# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами% ?( p4 U% }3 m( v2 s2 u* d
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
$ f, o* r& e, j6 e! L( A. h, v# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
5 i/ Q' N% g! m& ^. E* QGeoData = 0
, K/ ~- d% r H$ @3 E
& `' T( \2 R; {4 B% b/ Z5 X! q& I& q+ `" W$ G
6 G- o# |, \; H0 j2 [3 U! b/ O
6 g; ?- S, w6 C8 cВ этом параметре меняем 0 на 1.
& @. v" Y/ o3 o* D! {8 ]9 g% s! c2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
! Z1 T: X6 G/ H# Хост для сервера геодаты.
5 R7 v8 W7 `# r& O$ v V4 g# * Забиндит все интефейсы.* A( P# O- N. _
# Игнорируется при GeoData = 0 или GeoData = 1+ c4 C! E" T. V% Y% V# D# }( e
GeoServerHost = 127.0.0.1& Z7 E! |$ c& B2 X1 {3 u2 f" ?
. ?0 q& u- ^5 L5 F% H
' k* d7 n, b- E6 T. ?
# Куда будет пытатся коннектится клиент.- } F; u3 f. E v9 s' |/ a5 }) y
# Игнорируется при GeoData = 0 или GeoData = 1
! [0 h/ A1 v I6 M( E8 o9 {4 R. EGeoClientTargetHost = 127.0.0.1
+ I9 A' ~ h1 z e! V' z4 ?/ K% |( P8 b8 h) b s' v
) X9 x c6 {2 r# ?! \6 M
# Порт для геодаты.
+ L) y7 V2 |2 P6 d5 _5 }" x# Сервер откроет на нем сокет.9 ]! b+ T) {3 U( ?' n& {
# Клиент будет пытатся подключится к нему.
. q0 K8 w; l& K6 S c# Игнорируется при GeoData = 0 или GeoData = 1
# l& _- L$ h. q2 A. V" S+ H+ n5 wGeoPort = 9050
0 c8 s3 c" b) nЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:* Z6 k' U8 _! b/ O
2 Q. B- q4 g: R2 P6 s* o6 V2 ~- x
4 u2 n( T2 J) {- [# D9 @# `. t! a' H4 y& k) P: j( l) B$ A3 {5 Q
& W% a) @: t- `1 ?0 }
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer" _. @( l8 `1 _0 \* C S
- y7 J0 M$ ]. d
: G! M& e! D6 ~9 m& E, Q/ }2 l" z2 Y b; s1 H) M2 K
, M4 ~' n3 a, [
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
' v# ?# }1 k, @5 R0 H- e( s! K; q! R) e& O2 O
0 y6 X: U# v) d( ]2 Q9 d+ a0 y0 y2 n& T% o4 f' Q
& S& H& Q6 j9 B7 y' m0 }( @' \# Обрабатывать ли двери в геодате
; x# p! N! e. q' e# |8 ?& y# Настройка влияет на ГеймСервер
, s* A I4 N8 ~" `AllowDoors = True' h. G( [4 n0 j B% A6 c
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.: p5 {6 D8 @ h4 O- k
Пути размещения файлов геодаты:
E% p. V% M( O- ?: Z% x) Z7 Y% e" \& h9 C
# |) `: t& ^& g; l5 H! U0 eC:\L2jServer\gameserver\data\geodata3 K. o/ ?# ?9 s4 E; a! f$ U
+ i# k; b5 g Z3 x0 i
3 M: x* N) U+ a/ f9 c5 N( e5 J
- I L0 R1 H0 i5 k4 Z8 D" z3 H* |
И патчнода:: Q' G' G# ~- \5 }
9 q1 a/ _( u9 {( ^- A" ]% F6 o8 Z7 k1 C, t) }
C:\L2jServer\gameserver\data\pathnode9 `2 R: Y T+ e% K: W
* m. P9 z2 N& e2 {6 A
6 N" ?2 d/ q) u. p3 l; A* r; o: d x8 U
7 X9 \ n* K9 |" d" S$ q
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
, k2 b# ]' V* B6 r
- c5 z& I4 P- m5 |; S' D' U F/ D
' X8 S, i- n' Q2 A# S: G& h7 I% K6 r& b; o$ e; c2 @
0 u! g5 x( y/ j2 h' N. l
16_10& \4 V, m8 l# T. P# W, M0 @: f
16_12
5 z9 z1 ?$ y0 [' Z- H0 A) W K. s16_18, w( I3 O5 k' B
16_196 l+ ^5 \8 `7 S8 e: ~
16_20) \4 r5 k: n8 |; d, L; a2 [
16_211 G# A! ^( K7 P6 D5 ~; S
16_24# d* r1 k$ A+ l; q+ f
16_25
$ u- t+ s9 T7 W17_10 z# A+ O' x: b* Y; Y
17_11
" h9 B/ y0 C! m( e5 ?4 x17_15
" ]6 b3 f! m+ }+ a- Z! ~17_16
; d$ S' U6 D* P! W* E17_17$ }1 O9 B/ L, u2 X* k+ ^
17_19" |& F, p7 W2 F6 K
17_20+ C+ I$ [; \5 l7 }1 O- N* ?. [
17_21
M# b: r7 T, h% F9 {5 y: J3 g' `17_22
2 ^" h. _$ n) V7 Z& x' U17_23
0 B! L @' T7 [6 x' C6 j y17_24, Z! Z6 B4 y+ K
17_254 K* d* i$ t6 N: o5 _" O; q8 [
18_10
) }4 R8 O% x- j18_11
" H2 F* K! r, E- L7 n18_14
2 T) @4 V. Q W% z' c18_15, x9 V. M$ h z
18_16( Z: U2 ^6 q7 \8 y6 Y
18_19
3 H" I' e4 y1 j; B6 j8 z18_20( b2 D5 z+ z" p: o7 I( v
18_216 E7 C; S, g/ l5 C+ k8 h# _5 Q- t
18_22
: F( Q" ~% D2 a6 B3 p- v3 @18_23; g( ?: d% G9 O! `" I+ _, U
18_24# {' A7 Y) v( y& X: x7 g' ]' F0 G
18_25
* m; ?- l8 V/ b. F- j19_10
* w3 M4 ^/ ?. x, i19_113 ~1 X) W$ g& @' y
19_13
4 }6 i% R' s3 [/ F3 M19_149 S4 f1 v7 Z E8 _
19_15
1 H# i/ ^8 V/ u" }- c' S' j19_16
* r$ ?9 j# |7 Z1 p0 t19_17
m5 ^( L6 u8 C% a8 ^ H6 s19_18* ~* Y$ t2 Q6 i: ?% {
19_19$ i) v! V: K* y0 P
19_20( F' X; |1 D- ], L7 c0 y% E
19_21
+ W/ H/ i F9 E; i& ?2 j19_22
4 s+ q+ N7 m0 `) B8 h& T8 n19_23
: a/ J# w& B. g, |+ ?: `3 u19_24- F' d9 _/ T# J2 Z. d
19_25
) h5 p; Y Y2 p- \4 ?19_26
; _" u3 a2 X6 F9 S20_10
1 H5 [8 W% z% ~; D/ c20_118 U/ Y0 o4 m$ y0 Z6 v
20 _13
U. ~9 `9 c# L3 B! C20_14
& B; @- q, M" f* u8 b20_158 J, G) @# D* W0 x6 x! Z
20_16
3 w5 y, c6 L/ c/ h1 K8 q20_17
! R7 a# X& W" E# Y9 J) u3 j20_184 `; f7 u- K' T7 N1 Z
20_19# l6 y9 G6 p/ ?1 I3 _( d8 U, l: V
20_20
: X; ~! Y* j9 e6 k9 x% K20_21
, S' r, Z$ o" a/ q5 r t0 b20_22
7 D* w. i9 m6 @" L3 w8 K20_ 23
, Y8 e" ^1 z1 U) a+ w" K! N& ?20_24! E$ D& r7 o7 a5 |; B+ ~% M& X. `/ g
20_25
$ G5 j7 u b: f20_269 h$ g& h8 X0 K" O1 W5 X( r
21_11
7 _; Q7 }2 S( g+ d% w4 X21_14+ R" y1 K2 D2 K& l( V
21_152 }" v [ ^- m+ h& b% f5 k
21_16
0 h" D/ A( j* q/ b! s; Y! B# ?21_17
; ^: u2 S# }% c21_18
; p" t: I6 M7 g7 a' Q/ x21_19+ l+ W: Z9 L2 R8 T
21_20
1 z# R9 Q( n7 n& P. { ^# L+ `21_21# i6 B3 z0 V# _( x& j# m
21_225 a. ]/ Q& _$ {& |4 D( v9 M5 g h
21_23# T2 W& C( y$ W+ ?8 p
21_246 i& {- Y5 u# C |7 C1 y
21_25
8 P: E8 ~" ^+ m4 P+ K7 @22_13
5 l1 ?3 j; Q$ ^22_140 [. J( M$ _4 s6 S- Y- T4 S) m
22_15
. N: b" |3 {/ f* ~22_16) ?6 h! ?2 l1 w; U' i8 C$ u
22_17
( |) ^8 F4 s0 K! m2 u* k22_183 ~ S* V* N# J( ^, G' F
22_196 H7 \- p! ^# z# m- X2 C
22_20
- O2 l/ V2 _/ o3 j y+ r22_215 f! O* O s3 c$ E. i% o! A
22_22
' i. y0 X2 C# S( v% [. U p22_23
* |8 [' ? d9 s22_24
: ]3 V0 G3 R8 c" u: J( J: m) a22_25) v" ]& h- h; x6 C4 B8 H
23_112 x3 y0 X0 ?2 K3 s+ u
23_12
( W/ @+ Y3 m i+ i t, e23_13" k! I! ~/ u7 w% |' q
23_14& h7 E- _; B$ X; b5 B$ y
23_156 U( E' @& W$ L8 k) f& W
23_16
$ J, o- @# f% ~3 ~5 z23_17* Q7 l+ f4 E& Q ^" Z8 `+ \3 R
23_18
. ]+ j1 m( \' c0 U0 W23_19
( {5 j3 v% A9 e" V- E3 P23_20' K: v+ ]9 g! l* v9 c
23_212 {/ L( e# x5 I. F% w2 p9 V
23_22
3 o& s+ g4 x+ m( j) F' b- J23_23
' T" `3 @% q( d, S! t23_24
3 y9 Z: O2 e3 E& n" k. e+ H; D& o. ?+ I23_25
$ c- o0 w" u. D! @/ Y8 _24_11( Z' u: X; c! h( y5 Q$ M( P
24_12+ A! c1 ^: h3 s, H, u
24_131 _7 ]( }" D4 T5 F# ?5 x* ?
24_14
) D# x; n. G) z' r' J/ c3 |% U M7 ~24_150 v) D7 H, j B# L
24_16* j9 O' K% h9 \7 A
24_17
+ t3 X5 o6 U7 D, U4 |5 L24_18
# L8 |. d4 x$ R- z) b1 B5 X24_190 x2 N' b0 f. }& \1 L
24_208 K: l4 U8 A. L; c! \
24_21
- `0 `, [4 d4 {" }1 s0 _( s6 p24_22
8 _% m2 v6 E" p2 v( J24_23
3 ]( d% ]$ _1 F0 L, S24_246 C' m' b L: [, Z) P# v
24_25
% M1 |7 K2 H8 k% `3 b3 m8 i; G( `7 S25_11
1 u$ D' ^& m# q" b/ H' N, J/ Y9 l1 |25 _12' {+ }, I- l7 Z4 h S% b- n
25_14* S' [: U: T: [: G: T
25_15
3 d) [4 Q& ~6 C25_16, |7 L: I$ A' y' `- S, |3 B h E
25_17# ~$ X( z: v" C0 Q
25_18
6 d5 u; E7 q# N j: h: t25_19
# Z- C# R6 n7 O0 n25_20
; x7 o4 b2 w, V! U25_21
* x4 W4 o4 {3 |25_23
, R5 |' A% ]; {. F3 x26_ 11
8 |* U: u V. F/ x3 u0 r; n* ?26_12& r( M a. X$ X6 S7 w
26_14 ~8 e, Z1 ]9 V: T7 i# T9 e5 e6 @
. y6 D) }- d6 b' r. p1 s
# ~( d3 H4 Q N+ ?- K5 u- T& A l4 e! i1 G1 t3 s4 I9 q
* n8 B/ \8 J4 W0 |; V$ c
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
( C0 q5 W& H6 i6 B# f! mНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:
7 X9 {1 U- A3 O$ q, V0 q#------------------------------------------------------------- --------------6 @1 _ U, P2 S& ~; Z
# Geodata
0 `% n' \2 m- e1 f# ----------------------------------------------------------------------- ----0 ~! Y0 J1 ]2 o* F! W2 {
# GeoData options:
, x9 G k9 m% k3 W3 D; Q# 0 = GeoData and PathFinding OFF (default)
; h _1 O7 K* a x( W8 T4 F3 R# 1 = GeoData is used to check Line Of Sight (LOS) targeting and# R! Y3 p, \( I. X$ b$ C# a/ ^
# L2Playable movement. You need to download files for data/geodata folder.
% W+ ~1 H! u* G) O% n# Monsters can pass walls but not aggro (no line of sight) through them.8 x" c2 U7 D, D1 @# O4 @7 V
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
$ P+ d" S! A2 b, s# files if CellPathFinding not enabled) and all character moves go through: I: ?2 q5 P: V' z
# geodata checks (if a mob passes a wall, pathfinding didn't find a route) g2 N0 T6 n" O
# but we allow attack and returning home).
( E9 w7 b7 K. t8 F9 Z% J* q# Recommended server memory minimum 2 GB, rather 3 GB.
5 x0 g' j- B1 [- V0 R( L' v6 c# Default: 0
% Y, K* z% ^6 W2 i* O& o! GGeoData = 0
8 W- P' E: w) S+ B4 D) k' ?+ s8 x& b5 a9 x6 ]
- I- B2 w$ q6 p* Q$ |, J
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.2 z5 R6 l' c% ~- @5 q7 B5 a. V
# 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.; ?# m- z6 h A$ I# d8 Z5 ]
# Default: False
& M* R$ L& w o1 w" B3 rCellPathFinding = False) A+ O! b$ j0 [* E2 o8 \* c
+ L: E3 j k, a
B4 K+ l. `: z ^( D0 S) B7 Z# True = Loads GeoData buffer's content into physical memory.: `; [& u! N; R: Y9 k) D
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
7 X" ~' R# ^2 r3 Q b9 i# Default: True; ]5 X: R2 v9 _8 g
ForceGeodata = True
% u$ c% ]' Y0 w. h
) {" d' ~+ F! M! ?+ S* h
6 y/ N1 T% [( C4 i f# This setting controls Client <--> Server Player coordinates synchronization:
3 D( v& f; u& y# l# a# -1 - Will synchronize only Z from Client --> Server. Default when no geodata., Q! j; {* f+ u, A9 U
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.8 Z( r; o+ \% i2 y# l3 |4 {, q. v
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).6 ^4 O. p# Y5 u/ ]3 y, f6 g- j
# Server sends validation packet if client goes too far from server calculated coordinates.
3 b) ?' w- s1 P ~& D1 Q+ \# Default: -1/ n2 t! H ?* ^3 R; t- ^
CoordSynchronize = -1
* p: y' j: C& L8 _# D. a2 k! [6 K! e& Z$ P/ S$ z8 L
- L2 V! R k( y
2 I# A x& V3 a" r8 }8 T+ W8 r4 |' ~$ J5 }1 l( B
GeoData = 0
% R/ k: A$ ~7 X2 t' Y/ E, z& Q$ ~" L' N2 A! O
3 y* t: [5 ?5 u1 V' y0 J
; ^: c1 X5 D, Z) P
) H) q0 W% K% k, e) R2 HСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену. `* }7 e$ ~3 m" [+ P' ]4 H
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
i4 a( P- F. X4 W0 H. D B& ?% h: ^2 d. K; ]9 `) `$ O2 @
8 e1 W Z. J& i$ g- }' c% `
, b4 ^5 K' W& T( d5 ^$ }
9 c$ e" x7 z+ I) F" x/ W2 G' |
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
& W X" ?4 t; c# 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.
8 W0 k) S$ A/ l/ A# Default: False \6 u* x& m' g u B5 c
CellPathFinding = False- [; h: F$ Q8 N. k5 x n7 y# c5 O
$ x. d) p& ]6 z' d
7 M+ b: Z- X$ d5 E' k% P7 P- m$ _# M6 B7 C: B3 H* ?) V( z! P& ~7 K
6 j3 G3 b/ {, g
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.& v4 T1 b4 V% r, l
Пожалуй всё подробно написал, спецы дополняем если что то не учел.6 c3 j4 R: {7 ?3 r/ [: b5 i! N
% a/ P+ \: A- w6 g; K
8 d% L! \+ L2 G: D$ \
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
* B' ?( X; \9 n& i5 O/ `) U1 `1 i& S5 @. a7 N6 q% C# [1 I
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
; w8 |8 d; ?% R7 i2 d* Z6 i A
# H& \( X' Y1 G/ U4 F |
|