Хроники 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% v7 G2 w7 h, @/ f% R7 ^
Сборка L2 Java
* m/ j" u q3 t+ d* F v) y" Q9 B7 m( Z8 P; i2 Y
2 b. t% R: G3 y1 z9 U5 s: m/ N
Доброго времени суток.
) X+ x6 B. ]! f* H% c
- x8 T2 p2 Q! ]& Y
7 l8 A0 ~6 _! M7 ^7 C$ M% t# d/ WЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
5 S) g. N) i, xВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
( N! ~8 `* ~. F p" ]- G' gДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.6 l) P* v/ f1 f5 ~$ N( v; ^
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
) R! b' i: O# y" b$ Z
$ x$ M- x, T( }, {4 h) z& H4 k: nВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
7 b) y" g/ }0 c& B$ x6 G' ] u' S1 O* W
& p$ j9 J2 j1 g/ }" ]& u
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.$ Q! f# y! ^5 B: L) D9 e" T0 x
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
% S& _: w1 k2 ~( j- E* z. x) `Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
1 l1 K9 x, e6 `& T/ r- QУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
$ Z" G) Y$ j7 u% y% t" b3 g4 |$ U- Z2 P# j# l4 t
; M$ j0 k7 d" N! M& KЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.# V }- F+ d. S% [
Количество файлов пачнода должно быть равно количеству файлов геодаты.
) ?6 g( Z5 F* f8 I! DЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.0 o) O9 @+ y5 W \& p* `8 }8 T/ Z i
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.8 b; b: ~9 J" P: T% G8 x
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.! n7 }) u# s" S% @5 G/ W, g5 Z
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.: |* T7 E3 h4 c% \. d
Установка геодаты на сборки без пачнода (Rebelion):( b1 z. y7 E1 s+ u. H
Покажу на примере L2Dream.2 A6 q H, \) k7 Z* D, ~5 ?7 g7 u
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:% y I% e5 j+ z; l5 A1 ^- s
6 g9 ]8 X9 a/ W0 a; B q
. S7 I6 O1 h8 q1 ~ M, |
C:\L2Dream\game\data\geodata, r2 G9 z* c1 l9 d1 X) }: l& c
: f- t. i3 Q$ k0 W* o" H, L A. E; }( m% C+ w8 N
}, m, W4 r& x4 R( e% a! ~. Q! E9 z/ A2 k& n0 J w
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.5 v4 u+ F/ L E- d8 a1 q
Настройка.# u+ o8 P# D4 k( K' T$ V5 b
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:+ g+ v, \7 |0 S
#================================================= ================================================== ====. V' _; v! a# N2 _4 s
# Даный файл является конфигуратором геодаты.
1 k( q$ S; s, Z8 t# S4 _& F/ X1 r2 L% d1 s#
$ s7 a N$ q3 k* X# k' u# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
3 n9 B5 A; ^3 q+ m/ w#) C$ T3 p5 j& H0 [
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
* b, a: `0 G) ^( @+ _: j# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.! m# i3 y0 D" L; v# e! N
# Ну или просите прикрутить SSL.4 I. f. o6 V. n" M' k# P& C
#================================================= ================================================== ====' C, T" ~" H' {: u% k
h5 c5 Z! L# B7 q m$ Q- }, _
$ v# u+ N; r0 j+ x# Включает/отключает геодату и поиск пути.2 D' K: `+ ~# y4 s& E
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
0 ]5 r+ a0 R' y# 0 = Геодата отключена.+ M+ n/ A7 X) |* B' i
# 1 = Геодата будет загружена в геймсервер.2 X7 h; |9 u: t o) v7 ], ]9 _4 `8 P A9 ^
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
* k9 W! ~! N9 N2 Y# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
: p# P( e" m& V- R: x7 W3 [# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока," D' u. s( ?: C( E4 E
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.0 {* N! `# a0 A2 i- `$ W
GeoData = 0) Q4 G. O4 V( q7 ^+ N
5 a6 a5 x1 [3 q4 d
a5 K3 ^; ~ Y% {# Хост для сервера геодаты.
& G( _9 x+ P" J$ h' y# * Забиндит все интефейсы.1 ]/ i7 m4 n$ I" h4 A6 _" P. L2 p
# Игнорируется при GeoData = 0 или GeoData = 19 n$ v* y' w: g+ g. f
GeoServerHost = 127.0.0.1
5 x0 M6 p9 O# K; L- B
3 j3 J/ o" M! U# S; b. m3 S5 a+ W6 o; V+ Y; C" Z2 M
# Куда будет пытатся коннектится клиент.- E& A0 }& U. y
# Игнорируется при GeoData = 0 или GeoData = 1
$ B/ y5 o. O% XGeoClientTargetHost = 127.0.0.16 k- w/ V: `0 I+ g+ |4 b
# z1 k" Q, t- M# p' P
1 d. L* q* V0 T% B) s |# Порт для геодаты.
, ~/ q9 }% }. W1 S2 G$ y) j# Сервер откроет на нем сокет.
% v( \# T8 d0 C5 j# Клиент будет пытатся подключится к нему.# M' e3 L& [! b
# Игнорируется при GeoData = 0 или GeoData = 1
& W9 U) d x/ O4 SGeoPort = 9050. O" p" E0 ~) O5 T8 J7 A
( }2 D2 j: g% n0 r2 f, [
1 ^( k# `+ Q& T* o# Сглаживает путь.& t- m0 b( }6 l) k3 ~0 l
# Стоит отключать только для дебага.3 l+ ?+ R4 T% M' A" e6 R$ n
PathClean = True
7 I4 C- v8 V+ Y9 f6 y3 p$ {) H* W
- I9 g2 ]' ?( T( U& X
# Обрабатывать ли двери в геодате9 \! H* U/ B% {6 d
# Настройка влияет на ГеймСервер/ a- u% p+ ]2 i0 x' L8 |
AllowDoors = False
9 n. T3 T8 p" F' E
j. p% _2 B$ g) O" E9 M F. u
7 d8 A# w9 k/ |9 s& ?; z# r3 A: |PathFindingBoost = True2 A& Y% r+ N+ Y2 A" v0 ^& @
PathFindArea = 250
/ \' y3 }6 e' }/ O& jВнимательно читаем,нам нужно это:5 r4 B2 r" c5 n0 j; l& Y. I
' L7 I2 F( ^" Q9 }1 _1 z C7 L* U7 g
3 \+ n3 c, @9 f
4 @/ R7 b3 m. n/ Z9 D7 z3 E* e
# Включает/отключает геодату и поиск пути.
, \ Y( f! h- @/ _" V: ^# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.: g! Y- M; a/ h% K) A/ u
# 0 = Геодата отключена.
2 v: g! s; i' S' R3 ^( H" e. L# 1 = Геодата будет загружена в геймсервер.
' G9 Z$ q$ r: u; t- g7 ?3 r# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
& M1 A# _, F& F4 E5 C! M+ q6 j# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
2 U$ k6 s# j" Y# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,7 Q7 p: H: p& H9 m5 c( e# \8 y
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
6 \9 `/ K; } fGeoData = 0- q9 ]& @ Z" ?1 {3 v
2 x5 N! y9 c% z
3 {5 ?0 P7 I4 Q
$ e1 h4 ~' O% |/ g, @: r% T) }4 s
В этом параметре меняем 0 на 1.
) W* |/ y5 ?1 P& b4 I/ Y2 z2 ставим в том случае если всё таки решили поставить геосервер,его настройки:: }) G g, C; H& k+ G
# Хост для сервера геодаты.+ t# H2 ]1 H8 O. T
# * Забиндит все интефейсы.# S" D6 s }4 ?; m" Q
# Игнорируется при GeoData = 0 или GeoData = 17 u; @, L# I9 E V4 P
GeoServerHost = 127.0.0.1
$ D6 E& _3 a9 |: o. u+ h4 i0 A: c8 X9 v# A, m6 g" c* h$ R
1 a; M! W) G0 Y. U4 s# Куда будет пытатся коннектится клиент.( O; c' t3 ~) d; D- J) ^7 f
# Игнорируется при GeoData = 0 или GeoData = 1
5 \; ]/ N/ E5 Z; X1 [5 aGeoClientTargetHost = 127.0.0.1
5 K3 W/ f7 W& S% Q- \ Y; L
1 Q# F0 X! w, v- |7 r/ ^2 j; X% w
7 A' A8 G6 H- j# Порт для геодаты.) }' V0 c$ K. O2 F4 N
# Сервер откроет на нем сокет.
& O1 D/ h; v2 \# l% {0 o) K3 ]# Клиент будет пытатся подключится к нему.8 B) S8 r5 ], m
# Игнорируется при GeoData = 0 или GeoData = 1
$ |; F2 _5 v1 G) [9 e7 `! J* o6 E9 ZGeoPort = 90500 o, |# C" f' F& ?* \# a: p
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:- V3 a f5 @. E: d0 w; T
! p6 O( k1 C7 o6 A
8 v# J" ]/ b0 z0 p2 P1 |; F- @4 J# \3 y2 _5 _" J' V
9 h8 w: b( ^7 p+ y. k; M
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
/ {+ i2 l3 _2 g$ F8 S
- }: j+ _5 G+ p
0 S" w7 \3 ^" x% z- V7 _
) P! j% u* w p T1 z
5 W6 W+ J, o9 W* M# lДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:& M9 E- s. ?' p9 I
) S+ z# Y. d4 @! \6 q4 I# q1 T9 @
$ {! r- z6 y& c3 L) a" O2 ~1 J9 b! }! R, x) M8 G( j! ]+ T3 V' H, S" I
; o0 }, L4 H7 m. C: n0 a
# Обрабатывать ли двери в геодате
# l! f8 Z+ |$ X+ d6 v; `# Настройка влияет на ГеймСервер, M% f5 {4 u$ R6 \; @6 M
AllowDoors = True! N. n* I- u4 D+ r9 l/ _
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.: f' W5 r) ?; G* N n1 [
Пути размещения файлов геодаты:
0 e" v7 {# G, z W- f2 B3 p! p( F) e( f) m
- s1 D& E1 Z' W6 A( SC:\L2jServer\gameserver\data\geodata' i6 [- k, n* H2 P
* }" g8 \# \- C* `2 ~$ r! S( A5 K
1 P! l, u2 M, Y* S6 j0 w6 M/ Q6 i. p) R! ]' w
( c" W0 k8 ?( w' D% ]8 Q2 C; KИ патчнода:% S: R$ ^: O. J2 G1 r
; }/ X1 a& A0 T6 b0 d* f' Y8 y2 H; a+ C0 G- G
C:\L2jServer\gameserver\data\pathnode
3 w2 t& s [7 e+ j3 X; _
2 c! o R8 L# E% F7 z
0 |5 \( h {2 a7 s
6 u4 }5 L6 ] s& k% ^7 g1 T ?( b& f0 h1 f! F7 y0 W
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:& }5 H* e5 P/ B8 @
, u' G. x. W; b$ e- [2 r' X
, I0 q9 e2 ~2 H( }& e. B$ c: w4 r" n( u7 Z2 X
, V3 R5 O# j( F( |. _: `16_10# U" H Z8 J9 }2 k" ^# s
16_12* c# H4 {4 w' O% h! z3 D2 ]
16_181 w+ H. p0 g/ [" P% ]
16_19, i5 V, V3 b7 r9 x- ]
16_20+ c8 ?: L: T; ?) V+ D! H3 B% N7 d6 f
16_21
, l0 E4 S9 A% y9 `/ _& q Y16_248 [: I: Z8 D9 ^0 x# M
16_25
$ V* V% t* w8 E" z/ r; h- ^17_10) @: p6 Q& E! I% [) x' b
17_11
' R5 {0 @ {& L5 O( p- l17_15" W$ k, X6 _ j5 j* W6 T8 `1 \
17_161 ?* m" H8 r, \" W
17_17. e% }8 S. j3 t/ `
17_19
" [" p0 f4 i4 P- C" i) _9 ^' w17_20
l) Y! Z* T m3 }- l2 G17_21; @ ^/ N. T, t- Z J1 l9 P
17_22
7 s5 Y& R, A1 e17_235 w: @9 _( l$ H* C6 }
17_246 z* W5 f$ x+ v B" J, i- m% O
17_25
; r e% z8 J( [0 Y$ K& Y18_10
, B' i4 G- v2 h% x18_11
8 o7 L! p/ D9 @- n7 i$ \) T- m18_14
0 ~ C( p, i# R18_15) h9 ^4 i+ ]6 c6 D
18_16
" |/ P0 F" D3 s& I18_19
3 K/ I0 z2 C- k9 Y* i5 N) p18_20$ k% r2 l! F2 j8 M. p/ K
18_21+ h& D! t5 {* }$ o* S5 {5 g$ T
18_22
0 L' L2 |4 I5 z" S5 Y4 q18_234 H- i9 x" C3 ]- l& b
18_24/ w/ Z# e m5 z9 w8 w2 A
18_25
1 o/ \- a( X9 V' O# Q19_10
- Z2 @! N9 E( S# Q" o1 i19_11
0 ^; ?; x' s/ U* f1 C( L19_13 }* n8 f6 |) g2 e
19_14
! [$ F+ Z: v' {19_15" F+ Y/ r: Y5 }; p( w U
19_169 y9 `0 N; F$ B1 x( r( R N
19_17
; O9 o* G* O& [- I! v; |# J4 h19_18 j' ^0 H3 X" U, q
19_19; Y6 e! s L; y; p% d
19_209 Y# K) Q9 g8 H: o6 v2 Z
19_21
. Q0 C1 w4 S8 z0 Y# t( }19_22
" ^: m; m V& c6 i, w- _19_23
6 I. Y9 c: F9 y; f7 X, @+ U# w; U19_24% H8 z% j: O& {' U2 N
19_25# `% U) [& b- | G8 Q E
19_26
$ e4 K/ ~! O% P# U: A20_10: q& r H9 V0 J; w% P4 n7 ]- O: k; h
20_11
( ?- X- P% t6 x" k' b y2 j20 _13
, C4 H9 f+ ]$ U; H1 E1 b4 T20_14
0 `. q& ?1 U. K1 _! F9 Q20_159 `' }* N( k8 o* e
20_16
! b; A+ N' O0 @# K) X' N6 B20_17
. |+ s, D( x2 e20_18
# c/ H4 Y: z6 |! N20_196 t5 e+ u Q1 o! Y) J; s" U i
20_20# r# v# e! q9 X7 ^+ T7 l' w
20_21. D5 ~ Q" L$ [) ^* G
20_22
0 R) n7 F) w. L8 C/ v p8 u1 Y4 G20_ 23
8 z* ]; W4 R! f4 L3 y20_24. p! C' o) f; t0 V2 J$ Q
20_25( d& f* ^" z" M9 W1 e3 A+ E
20_26
1 ]# e7 D" e- {. _# \5 c21_11) i4 s6 i: h3 G
21_14
; l, n! G! K' u$ I4 |5 Q8 m J21_15
" Q2 e3 m& N. d" I. h; V) A- @- q- G21_167 G6 Z W) I( j3 \ g2 ~
21_173 s) U4 E$ ~+ ^1 Q$ R' h
21_188 }( h' }+ }( ~6 T8 J
21_19
5 [1 ?! L6 E* m0 r6 w: X+ L5 h5 ?21_20
3 x) i A* `( u2 V1 n21_21
" W: O3 ^( ^; j f% g21_22
8 h- B& @4 N+ E21_23
# X- {* `& d! v4 j5 O21_24+ w" o0 f' f$ F# C3 Q1 k
21_25
6 ?2 r# Y2 h; |) B8 z- ~: }22_13
/ Q, y& Y. N! ?! q# M. O22_14$ j2 T6 }: i+ m' R) T4 f
22_15* H5 {: J- W7 l5 [$ ~$ y
22_16# @4 {' N' K- H
22_17
( m3 ^) m; M7 i% l4 @+ R' K" X22_18
& ]+ w8 E) I! D( p22_19
& ]8 v( J. f% J Y" d2 e; `+ Z8 L22_20
! Q- [# I% S, ? E% I22_21, Q6 X. X1 H/ P& [* u8 O1 _
22_22' P- h$ G: n3 @2 l( G+ o; P9 v
22_23
7 q3 c2 U, O9 o. f- M6 Q22_24
5 F' c$ Y+ z% ^ M. [- F* o22_257 d* L1 i, t) A+ K3 A m( P$ p# N
23_118 d3 \+ M' Y% D6 u, D) I
23_12
0 G1 D) W+ R) H# \7 q1 i& B23_13
8 A/ k9 S b8 u) z' b5 [' J23_14
+ L8 h5 d. r( `/ U( n/ G2 n1 C23_15
2 t0 a& q9 h/ N: w0 j23_162 \$ N5 y" m* `, o/ \) I( B
23_170 s1 a' i! ?) i$ p2 R; a" j
23_182 X2 X6 L7 n/ \7 w6 Z
23_19
' b& j, C. }* D& c/ S23_20
! I* T2 n6 i/ H23_21
$ @. ^& e" x* R4 w$ g23_22
$ O: ^* V% k, d23_23$ j* M; h1 e _$ J! I5 d/ _3 a5 d
23_246 u& \- w+ n8 ]( x
23_25, D1 @4 f6 ]/ T; n- F: ?
24_11: Y7 [3 b& {! a, ?6 ^: v
24_12
( y+ G) b4 u1 f0 e* R, a E. e24_130 [1 G, F, S3 r! X8 y) Y
24_14; \1 m; g2 z! g9 f: l6 n- o6 \
24_15
9 H8 Y. F5 j1 w24_16- o" A3 u3 r& Y
24_176 e* s6 J2 i$ q c
24_18
' w+ y# L; c/ s7 G8 r: V" }9 {24_198 ^: K6 F3 M e& a) e! U
24_20
2 E5 ?8 \$ i/ o! v' S$ v& e7 x24_21
/ i* w& O9 u2 n% R' V( ^24_22
/ ~; j" Q, t( A. C6 g24_23
+ V1 d( d& _4 T# C3 s/ |24_24
. `( i+ D4 G5 s% @7 N6 \9 i24_25
& }2 w! `2 q, O. I7 g8 T; t25_11; |# Z. K8 _. }
25 _12
i; `" e% Q8 O25_14
& ^5 I+ l: n) B* q& E25_15$ V' t+ ~3 H# f& S; r8 e
25_16- b+ ]2 B$ z: L0 {7 T. F
25_17' C' n, a8 z: ]3 ?
25_18
' `/ T# k' n6 ^0 m$ y25_19. r8 r, X z$ o$ f$ k
25_20; o& V. |( f; f! R ^* f& @
25_21
$ W! R, [% C& q v6 q" I+ m( E25_23! _1 G1 F* d& v5 N; p( B
26_ 11
% I- j& P" H- Q+ J- B26_12
n0 }! \" g' J, ?* S4 k26_14) l% o$ s2 H- V! |
/ R6 t- F) `" E# A. h* ~
v% a; r6 V K W0 W
0 t. J9 B4 {' Z* u% _8 A: Y7 j6 x, @4 a/ ?# ?6 e
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает./ A# o- E" N* h$ w$ r3 [
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:8 t: N+ L% O9 c3 J" L6 g7 B
#------------------------------------------------------------- --------------- n) J" ^+ m( e& M9 @
# Geodata N" W( R7 z. k1 R2 d4 |$ p
# ----------------------------------------------------------------------- ----5 p: i9 L: U2 G3 l1 o
# GeoData options:, x, Y# G$ b* a2 E9 p# k
# 0 = GeoData and PathFinding OFF (default)6 V4 U- H1 C0 C3 v3 ]. S
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and- b, e5 `, j5 D5 [5 W& P. |
# L2Playable movement. You need to download files for data/geodata folder.
" {8 c0 W0 R1 B2 F# Monsters can pass walls but not aggro (no line of sight) through them.
& e6 `4 M4 `2 Y; t3 B, u& P# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
' }0 \) S) O, |, f% Q9 d0 u, _# files if CellPathFinding not enabled) and all character moves go through1 P' n. j4 V3 }) T+ g
# geodata checks (if a mob passes a wall, pathfinding didn't find a route
h; Z* Q0 V) D6 |* ~# but we allow attack and returning home).0 C7 ?- Z9 M; E: ]5 P* h: v
# Recommended server memory minimum 2 GB, rather 3 GB.1 O: d, W( q& b) A: ]$ p) Z3 G7 O
# Default: 0- A2 q' H* Z- i! J7 x7 S& c
GeoData = 0
6 b7 `& j1 D, u# @, ?9 Q' G* N9 m' _, }
7 y$ A7 d0 ?. i# _7 Y5 m! _& P' P( t/ l$ j& {2 {% t* f
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.% R( n1 W" K& E$ ]0 b
# 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 s6 ?6 _; d) e3 R# Default: False9 Q3 v1 j6 ?& L _! O
CellPathFinding = False! {, A* `+ A2 X
+ I, g8 X# E% @- N3 U3 }3 x
; W; g% ^- E" [; j$ z1 f: y# True = Loads GeoData buffer's content into physical memory.; c3 o9 H8 }; U5 w
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
: G( L: @; y: b9 ~- J5 \' d& e4 \# ^# Default: True4 P/ z8 f; S9 q- D
ForceGeodata = True6 L$ P7 i+ H5 ?
. }; O0 ^2 \8 E. G' V. c: g% k
# Q6 O) W4 B, }# This setting controls Client <--> Server Player coordinates synchronization:6 Z/ K: s6 U2 T; L
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
8 L' }0 _& q, {- G# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
+ S$ t W1 R- O& C# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
' @" n. V9 T) j' y2 f# Server sends validation packet if client goes too far from server calculated coordinates.
" f' Z4 s/ J# S2 c# @# Default: -15 u, Y/ A: |0 d( i$ Y- b6 O; O
CoordSynchronize = -1! S' }% N5 u# F. h+ u
8 F( b; s# w2 H" L# S3 ~( s! ]
# i1 l1 } z$ a/ Y; v9 @+ z% [% i6 d+ L& t
; C! a n! g0 m$ a4 iGeoData = 0; O3 j5 W l- @" E
- Q6 c! m% G6 M/ p! d4 @0 L
- {& m. @( ^; d# P6 ]
$ }$ x( _9 `8 w/ n
+ F& ^- c) k& s1 `2 tСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
i& e( k1 `* g/ O2 C' bСтавим 2 если пачнод присутствует, так же включаем эту настройку:! g: F: ?. v* q- J
4 D+ n; Z6 }4 V! \. d& L
) b. P4 p% L2 F. Q* C8 s6 L; N# i7 ]
$ q# o' W; q, E8 ?5 k1 F- m4 l4 L& m8 o9 _/ _" J
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
$ m7 q7 N/ N7 z% d, B8 _# 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.
. a7 l* J- p4 C* J6 s# i' q# Default: False
2 P* x7 D5 J+ N" A! ?/ A( g) u% j) r3 ICellPathFinding = False
' W( K4 f: _2 D3 h2 }! \$ R8 d6 Y& }7 U7 M" i( o7 K% T
6 ^6 [9 S# }# M1 u0 U
) [6 @9 {3 P2 T0 I' e t& V7 v8 o7 J& [4 a! _6 s5 ?7 J
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
( |& o3 Z: v1 |9 u0 f, qПожалуй всё подробно написал, спецы дополняем если что то не учел.: B# k. }! A. Y, X& f8 h* t8 m
$ n S3 z5 D# N' [* M/ a1 f
3 \1 H9 N+ Q/ R* r& zНе забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.) [4 ]9 o4 {& w* C! s! y9 r4 i8 E
: ^- G+ n% u `: g0 h7 t/ ^И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
/ x. z9 P' A* j) H! `4 x9 {9 i8 h0 }
|
|