Хроники 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
# ^- l- e1 C' U9 W5 p0 L. o1 [3 XСборка L2 Java3 V; W* k5 Z! H" K/ a
) u4 g+ \1 U5 V2 a: g5 R b4 C" N& O* o0 { o
Доброго времени суток.
) M0 h5 u& t+ ~5 S, s* v
$ y3 e2 @5 R9 U5 B& h4 _
# v2 @. r: `" O7 g" W$ I0 s9 H' cЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:. x1 }+ `% ~$ v0 J
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
# D0 h4 l7 V- B, I% |0 j' k" ^+ pДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
: N7 ^; t) V l8 P9 d/ ~- `" nПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.0 H, k' A9 W0 u6 w9 c
+ q. r- f" F- {& Z# W& v+ y$ D( J) fВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:) {; d7 H; m4 x" d$ p5 Y
3 X( g( N. ?1 d$ J; @( C; k
# a% k$ o @0 j1 Y, v6 U8 X& uНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.. x% |! L& ~ Q8 H7 ?, \
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
, y3 T& R# ^% eРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.7 P5 F6 e( y" ]7 U/ c
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
5 g. y- I" ^- _
# p" {! ]& V( k. }2 R- G6 N; Y: g
- O1 }2 L9 p# lЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn./ C2 Y9 S4 ]% b5 r( C# W0 W# Y
Количество файлов пачнода должно быть равно количеству файлов геодаты.* D) B" n9 S; K5 U+ `6 Q ^4 R
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.' X. H; R* S, p+ t8 U+ F
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.- b4 j7 q6 b( i) i
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
! }; L) G- i+ k. N9 R' uТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
; g+ c; K. e" |' x5 U* P* W @8 aУстановка геодаты на сборки без пачнода (Rebelion):% c9 S7 J C1 _
Покажу на примере L2Dream.7 e9 o" ?4 Z+ }* H$ S- q. N
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:5 c8 S( I: I; l" R
) J) T; F7 s' K, q
$ W- I1 B' ? j( z8 P8 M3 S0 X
C:\L2Dream\game\data\geodata! n8 q5 U) z+ m0 V1 k
: q0 E- C. g/ t9 x
]0 h, v' s% B8 C! |) h
% J/ b; F0 H/ l( y- F: ^2 J( w# }" [& K% N! E/ M3 Y
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.0 i$ L5 s( r( @# x' M: y' [# s8 i; C
Настройка.
( F# f8 H# x$ N6 ]8 i6 w$ A5 QИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:3 A0 k H5 h- J) C! {% o+ V4 m5 L
#================================================= ================================================== ====
7 T7 O$ k: B: m# Даный файл является конфигуратором геодаты.
1 Z) H7 X+ K9 a# X8 u4 s, `2 H. T/ o#& v, K' ~1 J( \3 ^( f
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.7 Z# D, K o9 ?/ k8 P
#
5 N& o- C: P" U7 ] ^; M( h* k3 w# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
0 Z8 ]$ V7 L" a# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
% Q P i) Q4 e* n# Ну или просите прикрутить SSL., @/ D- ?0 Z8 Q( E1 C9 \+ C
#================================================= ================================================== ====
# L* c r: ^5 @' k# N' J6 ^: A- {% K$ H: K' Y" a+ ^6 [( t
( y/ t1 n5 B4 U# Включает/отключает геодату и поиск пути. \& R t, e. t
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
2 L/ o3 ]4 Y. G9 y# 0 = Геодата отключена." i3 e* S' \' }; @5 q* p
# 1 = Геодата будет загружена в геймсервер.% T0 x7 Y0 {& s, f* O/ H
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как; b! q- o* o1 h6 B0 d9 }6 a; ?
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами/ D: `; o }3 E, s& z2 Q& z4 C
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
6 |/ U# L/ Z) t3 L6 W' [4 M# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.. I& j3 {3 {1 o8 B" K, ]
GeoData = 0. `; S! ?$ L' x9 s' M9 u7 C
. G2 Z8 ]+ q! W2 ~+ m3 A( \
/ B/ |1 s1 x1 M+ `# Хост для сервера геодаты.
# ?1 U, x+ p4 ^* X+ E# * Забиндит все интефейсы.3 _, x4 M9 o5 z( E" E7 Z9 @) r
# Игнорируется при GeoData = 0 или GeoData = 1" L# O6 z( }- q
GeoServerHost = 127.0.0.19 |1 G# F; e L% r. a
1 g3 U* N$ s4 h
; s. g. q3 y. ]( [
# Куда будет пытатся коннектится клиент.: F) m' J; x$ M9 u
# Игнорируется при GeoData = 0 или GeoData = 18 r2 u) s+ n- M8 w( h, v
GeoClientTargetHost = 127.0.0.1! c: \+ d) l2 x9 b' X8 F1 o* q
' M4 G8 q" K& Q
% @$ O8 t9 b6 v& M# Порт для геодаты.4 t" I7 D$ f% Y, @- [ F
# Сервер откроет на нем сокет.
' M7 f% W# i3 W, g' n# Клиент будет пытатся подключится к нему.
6 W K/ a2 Q# A0 s$ Q1 o. I# Игнорируется при GeoData = 0 или GeoData = 1: z7 t P9 W( F# F' M' l' C
GeoPort = 90503 q' |" r- J, R& z: ^
( T1 v! S+ M6 m* B# `9 J* Z' ?
- e: b( H( p6 M# Сглаживает путь.
" q* r( a# p' V4 ^/ X0 `( v" h7 [# Стоит отключать только для дебага.0 a4 p8 u( W0 V* Q0 P/ c
PathClean = True$ U- [0 ?7 z, ?1 R
9 G6 h: H; K5 i u' a% l5 O5 D$ O
1 V( p: s; m, ~2 t/ b$ @2 A$ Z# Обрабатывать ли двери в геодате; X! T2 E9 @$ u! @! B0 [. A
# Настройка влияет на ГеймСервер
3 f8 {" w; p" F; {9 rAllowDoors = False
6 B* v9 N% n- J& o1 ]9 `1 d2 F5 w# J; R
2 T Z! N+ E7 r6 Y! Z+ q/ W
PathFindingBoost = True
) r0 ^) Y; q$ I" F) y3 ~2 gPathFindArea = 250
" v7 X; |4 |4 M( t9 A! i7 oВнимательно читаем,нам нужно это:5 w$ I; z) S* s* V# C: q3 d
( i) a! c8 c; J" V
/ K- z3 `0 `1 _5 u$ } ?: p" J. Z! `1 I# Y
! Y- L# Y$ e1 [) Q1 D5 f
# Включает/отключает геодату и поиск пути., i! U. V1 G1 v g8 R4 H7 a' X q
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.6 f2 o5 w1 K7 l7 X% S+ u
# 0 = Геодата отключена.* Q$ l* J( _- w ?( K2 u
# 1 = Геодата будет загружена в геймсервер." a+ e8 {& ^- Q
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как9 }" M: ]3 A. J I3 ^! H
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
$ Y$ s1 t Z; V( S# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,+ f. o; {- V% S9 x: v; O. b+ S
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
2 j( C9 j1 R/ RGeoData = 0
3 M7 u% }$ {4 H% B/ e9 M: V) s& n8 J6 r, A# z' K
/ E! t9 ~+ W. K- V/ I; D! O& b* Z
" F& T3 B, L3 J8 h% V# N2 N `, `) n
6 @. n) |2 B2 v0 L
В этом параметре меняем 0 на 1.
$ n7 q* I+ q2 D- v( _# v/ E2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
; V+ @7 |' l% M# Хост для сервера геодаты.
& l: ]( l& D) j, k# * Забиндит все интефейсы.
1 ^; g9 _: @0 A) ^; b2 L; O# l# c7 N# Игнорируется при GeoData = 0 или GeoData = 1) M- Z: {2 o: @9 _7 b" Y7 q
GeoServerHost = 127.0.0.1* ?- ?5 S: Y; j/ ?% @& [
; c1 D/ l9 w& C) J( A% k5 s6 V3 Q
" w: x. A' \ p5 @
# Куда будет пытатся коннектится клиент.$ \# Q: N# w/ G1 a! c& E2 i1 `# k
# Игнорируется при GeoData = 0 или GeoData = 1- V) w- `% i% H9 j
GeoClientTargetHost = 127.0.0.1; q' V/ |2 S( n r5 O( L
% R" L! T5 }5 k4 z6 h4 t$ R+ l" z, i0 A8 q$ |
# Порт для геодаты.
' Y7 a4 a1 M! C% F# Сервер откроет на нем сокет.
: M6 m0 @4 q) c* j$ K# Клиент будет пытатся подключится к нему.
/ \2 A& K; q" o- t2 R$ E5 N# Игнорируется при GeoData = 0 или GeoData = 1; @' |1 s$ R9 W6 ]. O
GeoPort = 9050
7 w) m7 \/ C# U( `8 l+ c; P$ \Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:( x2 L1 F* U' G. g# K. y
" f8 P# V/ ? g* S2 @1 O: L
. b9 ~, |4 H: P' U0 e; D" X- p* ~ Z8 T3 W; K, ]+ i0 J
5 m+ A" ~) }8 s1 \java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
, Z- o; E& V; t7 J" G, a9 E n, o( n( R! e! v+ s5 i; E0 i
$ N- S0 T) }( x$ k" r
" M i+ Z! e8 |) {" b& s- y, d
3 |! C8 C6 Y: b* G- eДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:7 l |# k5 O$ Q2 _6 l, u
" a# Q A$ }1 ?1 d. v8 [
9 b7 H8 I9 c8 a6 Y# ~5 L/ L9 u" ?
) x% B/ _+ r- T# L$ O
- A; J/ v! H+ c# Обрабатывать ли двери в геодате w4 r; a- N' D/ \9 ]
# Настройка влияет на ГеймСервер
! {! P6 S z. g3 `7 p% {AllowDoors = True
! T- l- p% j- v0 d( zТеперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.4 G$ b/ O9 E: R7 N2 x0 i
Пути размещения файлов геодаты:) |' t# r# y+ S; t+ r4 C
i4 D- g; F: ?2 H* d% B4 G, C! l. b5 U/ o) F: K! ^0 m
C:\L2jServer\gameserver\data\geodata, G# V; Q+ |2 h, D
0 N; V( k9 }6 H% {+ { W5 i3 w( J
1 v! e U s0 ?6 j* T) [0 ]: n
# A& i6 V/ x7 Z+ _4 C, ?. D2 `" @0 h! z r! O4 c A
И патчнода:
& g: Z4 n( |/ W) Y8 [* V) Z. x: h V. _. B) n8 z; W0 T
: _0 t* t- S1 n0 X1 v
C:\L2jServer\gameserver\data\pathnode" q! N+ e/ q. f. V
" P! @1 H. w2 V1 y n* {# |( { y* }
; p* ?8 Y9 q! \. Q- t2 e3 n0 ?3 ~: L) c
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:! y9 f% u& H. L: y8 w
& s A' V0 }1 H& e: s. j, B9 Q
0 J r' \3 ]5 f) w
: I x# q( j( Z( l0 R+ D& Q6 B) a9 w1 p! Q9 y
16_10
' ?, w& C" ^- {4 \2 D8 p9 a( `16_123 P- l* Q3 t1 {2 l
16_18
' R+ a8 `* p1 k7 D. S2 Y) D: C$ h16_19- P; h' k) H& A# J: z4 Y
16_20
# o$ ]! k7 c! A8 [16_21
! }. A" x9 L( q `: t, i16_24& Y9 Y$ I. M* f0 _
16_25
" {8 E' P) Y% x- V0 H' Q: f# I17_10- T, k, k, y7 v; G% J4 k4 H
17_11
. s. ]9 T' [! g3 ?17_15
. W) H' D3 @5 r/ P' H% j! D/ v17_16, R, w0 {5 m' z1 [
17_17
' K+ C" S. W! {9 G0 d) l1 U7 J' f17_19$ j* l/ u8 W4 E) F8 W2 ~
17_20
; ] T+ S2 m8 M" r" A2 n17_21! e6 E$ G: Y& r8 `* p4 v" @; s
17_22+ A# N3 Y! x' e* B" b" i9 V# u
17_23
1 B& A5 D' ]# M, |* s9 U- B* d8 u17_24( z* d! w* m6 ~" O/ S7 f
17_25
! m! e5 A G7 `& z5 h/ Q7 u18_10
& C( K! z/ R* b+ X18_11+ ?: g; c4 A/ m
18_14
$ m4 {0 J0 [* j4 x$ Y18_15
0 O" ^( t+ V% @( P- }- L18_16# \( P+ c% ~$ L% _- [9 S
18_19
# V# c5 q" w3 P7 f4 z9 T7 T18_20/ x1 r& R' V9 {6 |; A
18_212 t7 T+ R. ]; L5 R) q% i9 ^, G
18_22% M( v' F& q& S* h. j2 `
18_23
5 b/ {6 A2 E# n& p7 l, ~18_24
& A, B4 ]0 K$ E18_25- {9 ?9 |9 I6 X: @% l+ Y! P* [
19_10
4 j8 q. u1 m: z& O {8 H19_11
6 `6 [3 ~# E( |2 m19_13
3 p# r4 O9 _! F) f* _19_14/ _1 U5 _( t* O) x; o4 e2 G
19_153 e( G$ B0 b9 h# {/ \& E5 o
19_16" |$ I1 [& X! Y, |; L a
19_172 K A- Z5 h2 a, \
19_18
8 e9 ]2 S. d4 L5 S+ t0 i4 i19_19
4 p, J) x# l# [6 u& A$ \- B1 s& q19_20
- j: e- P7 e8 A. b0 f7 p% W! [5 ~19_21( p9 q* n( T% e. y$ c
19_22
' l# [5 ~8 d% f8 l F, u3 |! S19_239 f8 ^$ [& b3 G, f; \- O
19_24: Q9 q, _+ d: L
19_25
/ n* q* k+ F0 T) R' b8 q- h# I- ^19_26
* J- H' p1 v: m20_10
# `; _: t1 a+ N2 }" |& l' G; N20_11
9 o o5 _3 d& N+ ^20 _13
: k/ w* V, r5 `. d0 ^20_148 S/ Q, |+ X8 V2 @. P- O0 f
20_155 Q% N$ ]; {8 Z; W: [1 u
20_16
! J6 t1 B) r! i6 x, F1 U$ K20_17
5 _: B$ _9 S1 t n' V4 t20_18! w+ g4 ^7 C y' c
20_19
1 [7 b$ P/ ?: z& a20_20( h% \) e/ r7 {+ z! Z0 ?
20_21
6 u2 `6 p9 g! n, `' M20_22
S! `% ` e+ t5 _/ f20_ 234 F/ {9 k$ v0 M( c! S5 L$ F
20_24: E) z7 Z- c1 m2 c
20_25
1 q; g/ A. m( S6 M4 ?9 \20_26
& f* h2 Q. t3 W) V6 ]4 N' ~4 H21_11
0 X# d; R Z9 F h21_14& p2 s! f' P: V. J
21_15
4 H1 c! j2 W/ p3 \7 @8 L21_16: A# A9 g8 w* T3 ]
21_17+ j( b0 f9 F8 q! `+ M
21_18
5 s5 W& ~8 Y* F/ d3 X; k$ k21_19
1 ]- R {6 A/ [: {' b7 ^/ Z7 z8 _6 I21_20
4 Z# A: Y+ Q/ K21_21% F; Q6 x2 i% O: H: S+ T
21_22, j D5 l3 y. b+ Q% i' q3 C
21_236 f- M# a7 x s2 s1 e* b3 C
21_24
$ D& y- b" L9 c4 `5 M" E+ a21_25( K' {7 \) |6 M8 D; k
22_13
7 L8 M# r* N! w9 V8 @8 x, R22_14" Q8 n6 G4 T% h
22_15
5 V/ o- s+ s! z8 O I$ \0 x4 x22_16
3 W; }9 h1 m4 m* k! @) ~22_17
( p/ _( R7 z$ r6 {. t* c. E4 E' Q22_184 n5 u9 [) F' `/ w' L! G+ B# c
22_198 K+ u; ]* p& ^, C5 b; a1 t
22_20
* K3 e2 o$ }% E2 J4 e* u1 r/ s22_211 y" y' ] u1 S/ T
22_22
) `1 Q" {2 n. y22_23
/ {: E$ Y0 q# l0 D4 {& M. J22_24+ ]1 J7 ?" s* h1 S2 g* Q" t- f
22_255 K( N! X, [, Z) ^' O
23_11
2 z( v4 U; {6 U3 `. I23_12! S, B0 T. B( r5 ^9 P8 G7 o% d4 p
23_13: y- g% V- \8 b; T% Z
23_14
M# u0 @/ ^9 n: r H! G. ]/ H23_15, m5 a' m% j: Y Y4 U
23_16: }- ]) q& i* K/ }/ Y) N
23_17
8 F: Y! P" O5 Y. p. ^23_18, W; K# Q6 `, b6 ~+ X
23_19
5 c9 k6 j' j) O, {" N23_20
3 W, r+ @- @6 e! q! G6 B23_21
, g2 g3 z' U+ b" b23_22& m* j6 h8 u, X+ v/ k
23_23! ~5 a% |& s. @( X2 c/ h2 Q
23_24
" x3 X6 \5 r4 }23_25
' s( Y. |4 z% E' Y$ e- B" i0 V2 N! h24_11
% |! j, F* l( Q" t, l5 x24_12
, `) h2 C) H' _! |. M24_13+ [. V2 F9 Q. W5 z: J
24_14
- u' b, Z6 B1 d24_15) ], W! L2 E# H' T6 p
24_166 e3 n3 M ?* k$ R: r- ]
24_17
; d' n% r G" } i3 ?' f24_180 F3 t: t" \3 |4 S2 u0 y: o
24_19' U" J; y' [ K: R5 |9 ^; F
24_20
5 z9 B* F; S0 \- X24_21: \" X, Q- P4 H v5 z
24_22% {5 a6 Y% M$ Q2 a: ~$ X
24_23
/ W: v7 o7 F8 |8 U24_24
& {; P4 {0 O2 H. R c24_25# F$ {- z/ ~9 j, T0 y/ b) R
25_11) o ~9 ^+ w7 ^3 d
25 _128 @6 U: K3 @4 i! K* i( y* y
25_14
# P& I' h. M/ I2 H7 d25_15
' X! a0 e& P O F25_16
o6 z5 J$ k) Q/ C25_176 H C* `3 ?5 L4 O* ~* r; K
25_18
9 _9 W8 [" X9 g" h5 y9 S25_19
4 ?7 h, y' X$ y# v25_20
3 p* \1 ~5 ]" G$ T! o25_213 x3 e& }) W, Z% Q9 l7 u
25_23' y+ N# E6 s! O& L
26_ 11
+ v1 Q& i7 e7 w( Y D6 e1 s26_12
5 A" O; M5 p: r0 [26_14
( s: z- ?1 _- j' i0 H9 T% f& ~, B
U% d0 x7 w8 d0 S! l- C
1 O: U. A! `6 Q3 A
' k8 r* @6 x0 @& N, _В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.0 J5 G' h# {+ }
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:9 u% ^* W" B+ T. S2 _
#------------------------------------------------------------- --------------4 N5 M; i" b# n) v
# Geodata
: M# A7 _$ m; b# ----------------------------------------------------------------------- ----
" K2 a* H2 e w5 ]( f! }( T# GeoData options:0 Q" l0 Q% U6 {, D7 L) m* n( X. G W
# 0 = GeoData and PathFinding OFF (default)
5 i& f7 ]7 `% @# q/ l# H8 P! k# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
* ]! x7 N3 M5 R+ f5 K5 t# L2Playable movement. You need to download files for data/geodata folder.5 x* y% z3 T0 n/ o: A0 m
# Monsters can pass walls but not aggro (no line of sight) through them.
) X& I8 X1 w+ ]2 o3 |$ _7 u# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
6 w6 k2 O* t: r4 _$ J- U0 W- }# files if CellPathFinding not enabled) and all character moves go through, g3 g9 q/ c( z0 n2 R
# geodata checks (if a mob passes a wall, pathfinding didn't find a route; P( Q3 m; Y5 L) V7 P- [! p
# but we allow attack and returning home).. y4 n: f1 y( [" A
# Recommended server memory minimum 2 GB, rather 3 GB.+ y- r$ s" Z8 b- x: _9 Y
# Default: 07 v |: I# Y2 v" Y7 M! P
GeoData = 0
; m% r1 ]& O4 l4 H5 [- [2 e! s5 y7 I9 D4 V3 O: h$ P2 D
2 z: n- n5 U1 e
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.. g3 q+ y7 `8 Q
# 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.
; s" q2 Q% B+ c! q5 O# Default: False; g% n6 L# }6 D% W
CellPathFinding = False6 [. w% y, K$ e) q% ]
1 R, _( E1 f; T+ o* z! y6 k) v: X9 \9 |% a( {- C" k
# True = Loads GeoData buffer's content into physical memory.4 n& i4 @4 T7 B# a5 }
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
7 [1 A; l& V7 J. E1 x J; M0 `+ J# Default: True( J/ ^! J" R5 g7 |% A7 }- o( Z% S
ForceGeodata = True+ X& P* N" n' f% b
% Y) { z/ ?1 Q6 g; B- k& P
# F l: B+ @* x5 |- s9 z# This setting controls Client <--> Server Player coordinates synchronization:- y a4 `6 C) C: r7 T
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
- q( y0 b, `( z% \* v# T# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
8 c2 a3 |6 m u q; @+ ]# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).& \; W; n+ c5 q. U
# Server sends validation packet if client goes too far from server calculated coordinates. G Y1 j7 y0 `) E2 P9 E' ^* r$ r
# Default: -15 } y8 D# h3 A2 s: p G
CoordSynchronize = -1
, o- P3 ~- n1 o# g% O" Z
+ H/ r$ T- k% f. u0 z7 m4 G( w4 }! u0 p6 w* j
! M% B' |! ?7 W* A& a9 _! c
' R1 g$ A5 L& ]* d2 Y* F8 KGeoData = 0
. l" s2 s, k- d+ U6 V& S- F& V" S- u+ m. W T
6 Y3 H! J( G- I' B0 d" J
9 j+ t8 Y* W* d) m( Y
) ]+ l; L4 [7 ~/ i$ X8 t+ [9 s) aСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
+ o `, U3 q7 {8 E3 P' n: D2 K PСтавим 2 если пачнод присутствует, так же включаем эту настройку:) q5 Y: m) n8 C8 D; ]" k0 M2 ~& A5 v
7 D. Z0 L. f# s' q
, _5 p7 q `# e# {6 q1 o
6 q# R/ z" _1 C3 M a
2 B" l# m) W/ C5 s# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.0 R; S0 Y k- X3 b( ]4 k, I
# 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. C$ R$ ?* M7 z" G9 u B/ N% H
# Default: False& s o7 R: P1 Y! s4 C) L3 A
CellPathFinding = False) v8 [& F! A) i5 [# U
" @4 r% L$ s, | }
N5 ]6 t5 W, n1 x5 I! y* ^* |( k0 X2 P' ~- w
7 f- B% ]8 F; J. D; X. Y! `, WСтавим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.4 ?6 c$ o' s( F$ K X3 L$ f9 J
Пожалуй всё подробно написал, спецы дополняем если что то не учел.2 v/ J% v9 Z( n5 l6 T# r
1 r, w; Q/ T5 y R
3 `2 \3 [ d. A
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
; v8 D+ b" ~5 {% q# r& O! T$ A2 f% O! ^/ \- W' |9 `
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
# q% l( P9 ~& _6 P9 `$ f# ]# @0 }4 l: h6 ^( i! l- e" {
|
|