Хроники 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
1 _! W8 c+ u$ a: b/ w- l9 UСборка L2 Java$ M2 E# ]7 n$ B" V. y3 N7 q8 ]1 ?
2 Z9 [* h/ X5 F% b6 H+ {* B9 T
2 W$ V, ^& s6 OДоброго времени суток.
/ V5 l3 y+ u2 ?, u7 j2 b* t
. L" p# y. O0 _" E; K
$ `3 |* @* U3 {Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:- C8 f/ z$ C3 v0 ?
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.6 \7 \; F+ S3 J0 ~- ]! ~
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.- {% |% U7 g; h5 `. e; [
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.1 ^8 Z y! I1 h( x3 \& Q7 m$ w# a
) ?4 O k7 O7 c* a; L, @8 _3 nВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
- \! r5 A* d: a$ X7 z' w L: z4 R9 M
4 n& U. e! T7 D1 U5 a0 P% |# Z! s/ Q% x+ @* I
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.) S- c/ E k4 w
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...1 {% Q$ U+ I( l( ?7 l6 `% \# l
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.& Q; W* Q, L# M# u `
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.: W) z3 [" O, s) C
" A) z3 {# C. X" \: p
* k- h0 e- y+ j4 a% d# \
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.' g/ Y( I. K9 {" C& @" n1 O8 j
Количество файлов пачнода должно быть равно количеству файлов геодаты.1 o1 X: u2 f$ R/ M
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%. ?% ?! q8 P5 X$ d1 M
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.& w: f! \/ M* V# {
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
8 H) Y/ ? h5 O9 h4 r" g7 `Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.4 P$ h H) v8 y5 @" }
Установка геодаты на сборки без пачнода (Rebelion):7 e9 T" _3 k( K. F7 W2 d: @+ d
Покажу на примере L2Dream.
; n$ k. B/ l GПуть куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:1 G$ o1 M) R4 ` M1 s; {" J* C! y% w
, ~* |9 m! u3 U- @% n2 a6 n/ ^: C6 J) _9 j
C:\L2Dream\game\data\geodata
- [3 H( { ?) e# N/ U( O: e/ s# m8 O0 V
+ ] M& ~' d( q, `5 ]2 I5 b! Z+ _# v7 E) R6 ?
# w4 m& y2 C8 e3 Q
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
?! W+ e$ R3 _5 @Настройка.1 I4 ~, A! A# ^
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:7 U6 I, v6 `7 i4 i7 |! a0 Q
#================================================= ================================================== ====
2 f! R, h5 A" H$ ]& @) K0 }+ X S: F# Даный файл является конфигуратором геодаты.
9 }9 d. E3 [ ]. m" m" h# A#9 D7 }/ i: x0 K3 b) l
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
2 R/ t, ~2 [* o. Z/ O6 B4 \#
5 \0 F' j8 [5 T; T6 i: r1 k# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
2 F- o5 O R5 Z [+ t% M# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
# T9 g( t2 m+ }, A& r8 }- A# Ну или просите прикрутить SSL.
3 l8 h& o5 a( o! m#================================================= ================================================== ====
- n; U5 M( K" C( Q) s; A# X" p* C. a0 F
/ ]+ u. A4 p; z. ]% |# Включает/отключает геодату и поиск пути., E* Q8 `( a+ s
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
2 J0 m0 N; C/ L3 e# 0 = Геодата отключена.$ z& N! v3 [' n$ f) L& v0 z
# 1 = Геодата будет загружена в геймсервер.
8 T. ]6 D6 z1 H7 l: ]" D+ E# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
/ f+ n9 a: }0 M/ J) J! Y3 T2 X# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
9 [; C q+ P$ V% ]( V# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
. I. K- \. s/ t# @ v: V$ _& T# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
7 o' x5 ^/ c5 s9 z: D- b7 xGeoData = 0+ ?" Q& f( K' f; Q
. @* E$ k" }! U) I5 f7 [! f, ?+ r9 y7 o2 y' Y6 s; W
# Хост для сервера геодаты.
) a) \: D$ x, d2 o0 ^9 U# * Забиндит все интефейсы.
) j2 ?, _, ~7 S+ h9 }' m# Игнорируется при GeoData = 0 или GeoData = 1
" V$ W1 X y8 s9 u+ s! [GeoServerHost = 127.0.0.1* n/ ], f1 C+ M5 {5 D, L
. u* o7 y$ q2 k: p% r( k0 |5 @1 }8 i4 l0 C
# Куда будет пытатся коннектится клиент.
1 V$ Z; }/ r8 ~% b8 H# Игнорируется при GeoData = 0 или GeoData = 1
" w5 v9 @; U9 M% `$ h- vGeoClientTargetHost = 127.0.0.1
) |& ?6 e4 J$ F
% a' ^& G, q, T( @# V5 `/ E6 X
. t1 \1 U7 v) {% j9 {# s# Порт для геодаты.
" O+ _( }% \: Y$ q, E2 v# Сервер откроет на нем сокет.# A$ g: H8 f# w s8 p
# Клиент будет пытатся подключится к нему.
* H8 @3 e$ I5 i( M1 _$ {+ w1 Y# Игнорируется при GeoData = 0 или GeoData = 10 c! _5 j5 X/ r% S# E! K
GeoPort = 90500 u8 c- k. Y5 I( v$ _
' E P4 f; a: }' y- ? j
8 K8 [8 S5 r9 D% c1 Z# Сглаживает путь." P( D4 K5 k/ T% Z# ?. K6 F
# Стоит отключать только для дебага.+ Y: I& A r) c; L, {1 w3 s" F1 T
PathClean = True, M3 p- ], E S1 U) q3 L
8 J- ]# I0 e* ?+ D9 E
0 L. H0 h; C9 F; `, E! o# Обрабатывать ли двери в геодате' d6 s, q7 c: M- W O9 k
# Настройка влияет на ГеймСервер
9 Y/ _' b- B( a% X3 iAllowDoors = False
' t/ F4 z* O% H. `; N; |2 ~
* x4 j3 \- ~' B( `" f4 |7 D
1 s+ j2 O* R: a! L: E$ \PathFindingBoost = True0 t0 _, a3 u2 R2 m
PathFindArea = 2503 @' i2 o3 |' Y5 u5 ^ u
Внимательно читаем,нам нужно это:
! Q. i$ f& |8 ]& V0 L( s
7 X, k5 }) _2 W' t3 C
* H# a7 [/ U. H' o n; d {8 v- \# B- X' a
6 N7 ^2 \4 z) Z
# Включает/отключает геодату и поиск пути.# V* d+ D* w$ Z7 d) {: d
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
R5 b( h- d- c9 l# 0 = Геодата отключена.
0 O. P( p7 I5 m# 1 = Геодата будет загружена в геймсервер.' E7 P' P2 A2 `! S+ p" O
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
% R! w3 l8 Y% T1 e# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
! C* Y/ Z4 \, _3 F# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,' M. q3 I- ]8 B
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
. ?+ _- H* j o& L9 oGeoData = 0
' y. s* M! k! E8 R4 |& X. n2 I* W5 }3 R- \8 ]* T
# c8 A0 v* v4 U3 m. E1 n* Q/ p5 T3 y O' [
$ Y, c- ?7 w" S6 w0 CВ этом параметре меняем 0 на 1.$ j {7 F7 x! Z- C# ~6 s( v
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
! H6 o, z$ r, X, v- o9 W8 [4 T& m% l" y7 p# Хост для сервера геодаты.0 Y$ n& v2 o+ L O9 V
# * Забиндит все интефейсы.+ E2 c5 s& g* r& b9 M( V& |* j& r2 E
# Игнорируется при GeoData = 0 или GeoData = 1( f) {3 n' x" ]' I
GeoServerHost = 127.0.0.12 V! X( o4 a* F2 S6 m
5 e1 z7 {: { r/ N
5 i; v+ ~4 T8 E" \! j9 b# Куда будет пытатся коннектится клиент.
2 l4 C1 t# V) l5 r% E' Z0 [4 Z# Игнорируется при GeoData = 0 или GeoData = 1
2 o: @: c _, m& cGeoClientTargetHost = 127.0.0.1- G* f+ s/ S; H" \0 ^" f
$ B2 S/ u+ w e8 q; D, |* Z
2 ^4 `' _7 ~5 `, `4 S- K: a# Порт для геодаты.& g- D {# t$ M; \3 i5 P0 ^" |9 p
# Сервер откроет на нем сокет.4 \8 n! [% X4 T
# Клиент будет пытатся подключится к нему.
9 J# h3 f) J1 |# Игнорируется при GeoData = 0 или GeoData = 1; O( r9 b- `% s$ G
GeoPort = 9050
* c% v% B6 E6 Y4 \* I! @Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:; X6 H. }' }- a- p" I
, d9 m6 a9 ?+ P8 V& e2 r. Z6 x
1 I: L) F* O6 y9 i1 W( N0 }1 ]6 Z, F3 Q& @- p
# N7 K. i! p* A$ [& o
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
# O8 y+ o! h X& n2 |6 o5 ?! e% T: ` P0 L6 U K
8 E$ }5 Y0 X2 B! n
! `! t3 s" X+ B1 `0 E4 z
# h2 T! t# O' L8 W4 FДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:2 e( n$ m* D, }* B( y
4 R. u9 q2 z ?, F
$ T. \7 d* I$ c" ~
0 U2 E3 C+ h; ~6 ~2 O0 D
6 H& e7 `" |" T2 \
# Обрабатывать ли двери в геодате& s/ l! K0 y6 b2 u, R7 ]
# Настройка влияет на ГеймСервер4 s; b6 a! G: I" A0 D# |- s
AllowDoors = True+ C# l6 p, f4 T9 q6 ?! w- D! }! f2 t
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.+ ~: u5 K+ H. @, I6 n, t2 T
Пути размещения файлов геодаты:: Z0 ^+ Q5 [. w! ~$ V. G, b
5 T8 [+ V- q" i/ C! `/ r
; Z' W( v9 S, e" F* P4 YC:\L2jServer\gameserver\data\geodata
) D, r" f6 c& v+ O. n7 y0 y' h Z1 j$ y* W% u
) {! H ?' z Y. [! d) X
: K% R) t8 o+ v# d
6 C2 [1 s& f u5 mИ патчнода:! j& |8 H2 p7 E% @/ [
0 L. _5 A( S. F
" A2 }1 y% i3 u, v! L3 uC:\L2jServer\gameserver\data\pathnode
6 b5 w' o; Q7 a' f" h( b8 [7 |' F& V5 }$ [& K8 G, I) f
. J; H# {- H- R9 t0 _3 u" j8 k
. w' |! u( x% N& T& W
4 t! ?" V2 X1 v( }В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
# e3 l, j& x/ i, @; k8 R
+ _( r: `. [8 `7 D% Q9 G7 d" U! A8 X$ U
8 ~# a- [" v) _; D* ], s
& l) u% B7 Z5 ?( O16_10
! {! ^5 l6 { A16_12
8 N- e1 z0 T) P9 t16_18$ [$ b* ^+ N3 I, e7 q) R$ N
16_19. s7 I, b8 K' Y( C
16_20
2 Y& q' `. _/ V! C& _7 r1 u! j3 o$ t16_214 E( f {/ T5 j3 ]% N, i% L/ e
16_248 ]! n* G* w# R! z+ Z) t' i
16_250 G/ u; a6 y0 { n6 \7 j" r- h
17_10
7 ]) l6 k6 `, ^" @; C17_11; w6 c3 g T. H; l1 d, c
17_15
9 e7 }9 H! [" y) P9 `" Q17_16
5 E+ N2 E; h; f6 D. F* b17_17
0 ?5 m3 v, U% Y- ]) n2 a17_190 x; C' g% w" _; K# E
17_20
. [/ o8 m2 r9 W. K: o17_21 q9 n G7 [$ W- w' @
17_22
8 O+ I, p% w! Y* E8 f4 T: H m9 k17_23. @: f$ Q/ u# Z: x
17_24
+ R% m) ^. P6 R7 l* X6 E17_25; j) B. H" p# M1 l
18_102 o! l5 K) D n
18_117 J# Q1 x' s5 s" E1 ^1 k" t
18_14
. P/ y/ ^4 D5 q9 ?' W& \; L6 j4 l18_15% j6 p# o; e/ ~, A7 _- ^% h' h
18_16/ M; g$ h) `2 Q3 U& J! |7 C
18_19, t* y9 `% B# F+ M- Z2 T( _9 X' I
18_20$ V$ K# ~& {: P2 O$ k' K3 _2 [
18_21$ I: J ], |' u: Z6 ]
18_22( ]& c, H6 H9 O) s
18_239 p; P0 J) D$ U, x* U: G: _: U
18_240 D. \# c! K+ `1 C- ~7 a7 m2 x1 A
18_25
/ G' G' Q! D; h5 F. \) O1 P19_107 T6 n4 W! D) f( d* X0 B5 O( J$ E2 e
19_11
1 H. G7 F5 _, Z4 e5 K' b19_13
9 N/ }# M) q" I" E6 z+ @6 O# z' |19_14
: |- c( N5 G8 n6 G+ l7 z3 U19_15
5 t# c( K$ c5 c e4 G1 M4 n19_16
: s6 u* [5 [1 V9 C19_177 Q* F+ L" a$ \8 j6 P, x
19_18
" q# ~9 t3 P+ P7 m4 M19_19
: \; T! X( n9 [5 G5 |: w7 o( c* J5 N19_20
$ W) f2 p( X1 K: `$ N8 d19_21
6 r' }1 Q1 [7 b9 _ }/ }/ t19_22
" ~ z- s' K- a' U3 J* [6 \0 X19_23# w j* }2 S) h/ T) ?/ ~
19_242 Y7 s* j- G7 e/ l4 b* S
19_25
+ {" R$ ^4 ~; f19_267 x* x5 Z, m7 T+ R5 I
20_10- w/ a7 f8 ]4 k7 R3 K9 T
20_11+ j& j; z4 V" \" A# }& h4 G
20 _139 K3 Q$ M( N, O- l- c: W
20_14# ]6 V. D( z$ O- W1 C' W
20_15
% H3 n! Y* n+ T/ Z1 r; b20_16: b* L- Z N) P3 s, ]
20_170 l) r3 M- x/ o S7 ^) `
20_18
' o8 S1 U5 c7 n: ~20_19
- n; X# s9 H( }4 t) N20_20
1 E* o$ J, e$ J s20_21
$ ~! e. Z* H+ d* x" z$ ^6 i20_22: F1 T, o; y F/ e/ H
20_ 23, V+ {6 e0 W! Y- I; E; ~
20_24
r. J* w4 d$ p$ P1 P7 T20_25
9 T5 ^0 @1 ?# f; d3 K20_26; @: Y4 N r# M7 _
21_11
8 e9 ~ k3 x) w; t+ |, t* A21_14' v$ g+ h8 T9 r3 i! j
21_15
! r1 n" `3 C# v21_16+ k2 u3 \6 J. Y
21_17) j) _: V& W; S0 V1 n$ _3 u' `8 ?0 y
21_18
* Z6 ?- t* D& b6 _0 |* h. t21_19: }& n. B0 @7 ]3 w. ^+ b4 s
21_20
* G1 `- ^5 g1 _, _0 |; ^21_21' t) R8 w0 m: F9 A" p2 Z& M
21_22* f4 n$ N% r7 {$ ]( j) L E1 L1 C
21_23$ w- F" [! _- k4 K6 N
21_24
* X. j& X) j P5 C21_25) u+ z' u' x+ K6 \1 o1 ^& D( @# h% e
22_13
: w/ x' O6 ?, G3 v$ i9 k22_14
+ ~! C& j3 [* D22_15 `$ N/ A6 d# {/ u& e) e5 @ s/ {
22_164 E$ ~! D6 i6 c+ m4 h5 k
22_17$ r! I. U8 \' U3 B/ t7 W
22_18 q$ J5 e* s; z2 W1 v
22_19
1 q" h% a+ }& z22_20
' Y& q8 f0 u3 w' z* k* C22_21
$ k/ q1 q" X& r( x' C22_22
. M' S- v2 K% [( g; y5 i B22_23. z% `. k9 T. I4 r- |/ v
22_24! L0 [6 X k/ A. Q4 B
22_25' W7 B* t3 S& l$ E8 h
23_11
$ p- L% K7 ^2 p! u5 |2 O, C23_12& t C+ N. }+ L& v S( J0 d& l4 q; m
23_13" n6 R* W$ \# V& H( |* o
23_14# e% T( ~) ]* p; {9 @9 u: ~' j
23_15! b5 b5 M7 ~7 A
23_16
- Q$ Z' i$ C& P3 H, j23_172 j+ D' P$ Z( e5 q5 g4 D' Y9 c
23_183 S5 I6 k6 U W/ ^' U/ C
23_195 a1 S* |0 q0 }- P+ Q. w
23_201 d# u# S$ S( @* c( I# B
23_21: L4 e% u" r$ T8 q* v p
23_22
7 I) m; I. {" X- B4 W/ w& k23_23' z$ f9 N* @2 r1 Y
23_24, }; q- k t- ]: B% }
23_25
% Y, t T' i( o c- y24_117 U2 m( N# @ A7 _0 e' S
24_12
* K- G& Q- E7 R( o7 R$ @24_13
& N" p+ s. k! U/ I24_14
$ `4 N5 p+ r. j( B5 c24_155 y! L7 b. e3 a" L
24_16
: I' ]6 N7 }6 ? @$ A4 P# X' S24_17
# J7 B1 a# L n. `7 @2 y) k24_18. _2 \8 I0 X7 z9 V8 x6 p% @
24_19: n3 j2 |3 R3 O' Q4 \. t) [
24_204 |4 R. b, V: O) s2 g# j
24_219 U) n! s# `/ O* K9 u
24_22, S* ]! P1 r, r9 \6 L( J' ~( d
24_23# m" [1 b8 \" y2 g
24_24# u( m; a" D3 e& c/ ]
24_252 I- }8 ?5 ?2 q# @3 w& ^
25_116 L) i5 t& D4 C! U2 L7 W. i* p
25 _12- Y* F" t" N1 W7 _1 }
25_14
2 v8 X. C. A) f: o( o3 W9 z25_15 l+ C3 f/ Y# X a) |! H: b) B
25_165 n( w6 m( ~- }1 [
25_17
1 T0 t% z5 ?- U4 z$ E/ c2 ]25_182 V# K5 x" r& P D
25_19
) m) I+ E. q6 |. f5 m/ Q25_20
( A4 \3 O% ^0 T/ S. Z$ J25_21
4 J/ _( G% l% X25_23
# _* ]9 j5 \* Z% w$ z26_ 113 f3 ~. t* L: C+ }3 |
26_12- N- I# j9 o, |5 U& a+ s
26_14& s6 K* @4 N, w+ `
# X0 K3 V6 |5 d0 v# Y$ i$ L) q
5 p9 Z$ r! F5 ]
" |, b7 ?& b8 h! I2 m- ?5 i! f( t4 O: n$ ]4 k
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
0 A% ^, c' C" K1 o% kНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:5 o3 Q3 R/ ~' Q. W( b
#------------------------------------------------------------- --------------7 v3 e4 T6 r; I
# Geodata
9 }, e) m2 s6 D1 @3 Z6 C) r. x# ----------------------------------------------------------------------- ----
6 `( y! s8 e9 y. b# GeoData options:
) x' R* o. D- m' V. F( u! b/ x# 0 = GeoData and PathFinding OFF (default)% O/ q5 D) \) \& `) [6 U p4 G/ P
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
8 E) H! x! r. j6 i& N; k# L2Playable movement. You need to download files for data/geodata folder.3 q! {) M% {) G
# Monsters can pass walls but not aggro (no line of sight) through them.
5 H* a. w' N# O4 ^& J# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode7 U6 u0 X3 n) d" C( n4 j" R
# files if CellPathFinding not enabled) and all character moves go through% ~% A8 W+ w8 f6 W2 P E
# geodata checks (if a mob passes a wall, pathfinding didn't find a route
4 s" C8 P2 B; Y3 O$ q3 U, i# but we allow attack and returning home).5 ^# |$ z2 L7 v/ Y$ ^/ s/ e
# Recommended server memory minimum 2 GB, rather 3 GB.
! ]" [( d% e0 o3 J7 V* @4 Z# Default: 0
% n2 k: g5 h. W" U) UGeoData = 0% k6 W7 V% q9 ]9 ?* B
, Z6 b( C2 u; f5 e9 n* r* N& ^7 p# q8 |+ s2 }" X
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.$ w5 J* Y3 V& c& |0 S* H& V* o
# 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.) @4 I! N5 K9 N1 r `& G6 _
# Default: False `' S( P! ^2 _; q ^' h3 F
CellPathFinding = False
. r% G* {- R0 x1 J, U3 A% u& v( f" c! \8 j
2 ^7 ?* _4 o# f! q
# True = Loads GeoData buffer's content into physical memory.
6 C2 O8 O0 b( h# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.: _! `: G. Q8 z3 X# M1 H r, j
# Default: True. |) O" W, m- d
ForceGeodata = True2 c* J$ u4 T, v% B6 I8 n+ ]1 v
6 {8 D: R- Y1 x* y0 r5 s( s; {
7 j% _ z$ T% g, R' j# This setting controls Client <--> Server Player coordinates synchronization:. Y# E* l4 p) b% z1 Q7 J% N
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.2 i- T2 y. y( p$ D+ ^3 ~
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
2 b# M- E w& }3 H4 w# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
1 u/ w4 U: ~9 v& H) j# Server sends validation packet if client goes too far from server calculated coordinates.
& L* i; c- ?, B' h# Default: -1
0 m+ ]; N3 w; j, O# \3 N* y" u: GCoordSynchronize = -1
. ?0 }. a# D9 w: |# s3 t* a4 s+ I' \9 z
# \' ~, F0 I% {( q# W! D
" L; e: A% ?: ]! x
G' |$ i8 q" n& |! @% ?GeoData = 0
3 k' q2 t) V4 y! L3 g B" o" D3 G$ p; `- t- n2 N& b
5 T& I& z/ t& N: E# ^
6 n" w- M; T3 ?; c
& w: o8 Q! [: [, g+ d5 F
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.( l4 Q8 @. P' y5 B3 C
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
R; ]1 P# W' Q3 \$ x" u. B. V) O, D! s C @) |
4 ?% f' q- ]8 ?/ H
5 z/ e7 [- X1 R7 t
! @( E0 O' O6 ^- }; k1 H
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
! J+ z; c' S3 Y# 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 y z4 X7 F$ R% r; Z' I7 a
# Default: False. I9 d# ?8 a- U u5 t+ b# c
CellPathFinding = False2 L) }" B' }4 D* g; p0 J0 x$ `
, p9 t7 @& b; a) x8 d7 N2 E3 j
3 o6 q" z3 n! [5 V& L
E7 R+ z: P3 Q, G u. ]: T0 j* N: G- C9 ~: Z
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
% y6 T, X4 f$ j2 }$ m* |Пожалуй всё подробно написал, спецы дополняем если что то не учел.
* [- I& Q1 R' m( |+ G7 N+ l1 Z6 B* ]' B* A [7 v
! E( I( Y# }9 A: D2 u
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.5 \' R' w3 k2 F; j. J( T q$ g! y3 c1 D6 X
9 B& [7 B, m6 a! ]2 a' q) I
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации. l- }% c Q/ o+ e
& t7 h; f" d: ^' o7 u) J. P! D |
|