Хроники 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 Kamael0 ^# Z: R& k S+ t2 [: E5 l! {4 V
Сборка L2 Java
8 S5 \' T! i) [2 J& [ O
- n2 O8 R9 n1 e3 E6 m7 w! p# y. o6 H3 R, }( c' h
Доброго времени суток.
3 I; }" d6 ]7 a7 E; G9 N1 O% ]) [- Q7 B5 _ J. n
& M+ r3 U: \7 b
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
9 s( R, d6 i8 o- O$ ]! ~1 [Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
: a2 l! F7 ~+ U2 g; M: U) XДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
9 e% n n( f z# E9 xПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
+ l) m( N; `# F( X9 t/ l
: z- N) ~( s! c3 U" nВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:9 h( `% K! ~$ v; V0 y3 `
8 W3 N5 x: @ } f
# w! A; M* C8 u. ]5 E7 {2 c% n [
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.& r5 y, t; w8 h0 M2 A# f0 t
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
: e3 j6 u+ S3 ~1 @0 y% ZРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
4 W# |/ x( L8 C2 V! `* Q. ~У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
: q# x9 j, G) J) ^6 V! W, X& g9 e* o7 c' L2 r
5 w# h6 ^, }0 S8 a) t
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
I& r; \/ T6 z+ G6 D& lКоличество файлов пачнода должно быть равно количеству файлов геодаты.
& p- C# M# q, M- e/ RЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
8 E; M4 G8 \% s2 x4 j2 l0 V# qТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
$ `# j; [; K% _$ t, h4 `3 Z t, tСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.$ t/ g$ f- R _/ w9 b7 c# u
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.: W' L- c# T( o) f1 w
Установка геодаты на сборки без пачнода (Rebelion):
5 P5 O6 Z, X/ w# [ `5 R7 sПокажу на примере L2Dream.: Q" C5 a: _6 D
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
% o6 q- ~: o) _: y- D
7 S8 i& D9 s2 H
7 t! G0 z6 N8 m& S7 \C:\L2Dream\game\data\geodata* j) \# z1 E& q2 [ O6 M
$ P# N* ~' A4 _/ l3 q+ d& z. A
) j, I: M* P+ {# a* I' j" B& _! a6 R6 d8 @1 P R
/ n8 W% Q a3 x2 HНе в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
8 ^' E# i1 c6 _7 ^( PНастройка.
- n+ }/ k* B6 W, ?2 rИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
+ F. ? f/ r$ C( P$ Y$ V( G7 q#================================================= ================================================== ====" P* X, i! g% N; ]3 A9 S
# Даный файл является конфигуратором геодаты.! G9 }6 |) @0 D2 P7 N
#
+ O6 X# m* A1 B5 S# S# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.1 ^9 Y/ Z& ~1 k; m1 S
#+ O8 r% r% G# \5 M. U
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).- C/ H& ]$ m0 s+ ~4 Z
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы., s3 g* v2 s6 q4 X
# Ну или просите прикрутить SSL.
S4 a4 Z" y8 c#================================================= ================================================== ====
+ d7 x# y: B: M# S0 t- b7 D. s. M. T) D6 L" z' v* x6 E5 r
: ~/ W# O* Z4 m$ a4 `
# Включает/отключает геодату и поиск пути." w. H7 e! z, r. Q/ g/ A5 ?
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.5 W& A, ~% l, g$ Y$ ]
# 0 = Геодата отключена.
/ E# D% r% t7 Z# 1 = Геодата будет загружена в геймсервер.8 ~2 ~: V# A% A) U1 V/ Z$ W
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
+ `; B/ Q2 I; N. V# t# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами+ j6 K9 |6 s. C
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,6 [% x8 i: E6 t6 s7 O* M( r" [
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока. b6 l) V* Q2 e- V
GeoData = 0& ?4 `& T0 \3 C0 k9 ^9 L3 m: J
$ z% I% m0 p( ^: N- M
' J- G# U* h4 O' R) O* i# Хост для сервера геодаты.% ^* X3 C% ?- t8 p4 B( d
# * Забиндит все интефейсы.
9 a w% h1 f0 @# f# Игнорируется при GeoData = 0 или GeoData = 1+ Q+ x8 F% i1 I
GeoServerHost = 127.0.0.1
2 ~ O9 Z! Q% \6 k: R& l( m
4 @$ q2 Z2 q+ _8 M B
[% V5 M5 y( b) ^# Куда будет пытатся коннектится клиент.
0 @7 {) U1 o; y3 ?; e$ q% h7 l# Игнорируется при GeoData = 0 или GeoData = 1: [$ H3 \) l ?: l6 v
GeoClientTargetHost = 127.0.0.1
- w" i5 ^0 T& @1 L0 g Z& o) m! @+ `$ @, p7 ?
: y/ w2 j. L8 F* }
# Порт для геодаты.
# x% X1 m( N( I% ~# Сервер откроет на нем сокет.# z1 u5 s; p3 P i! I2 W0 j
# Клиент будет пытатся подключится к нему.2 s; j& v" D7 ], N3 k& }! [
# Игнорируется при GeoData = 0 или GeoData = 11 {* [2 Z' M& {
GeoPort = 9050# o& ?- I6 m) I1 J T/ ]( w3 K
5 f: j+ E& U7 Q' `3 G6 ~* X) i' v" \
4 a* M: ?* H' ?+ I* o
# Сглаживает путь.
7 h( t0 M4 E3 R3 x+ j# Стоит отключать только для дебага.2 ]& }4 M) T; Q
PathClean = True
* K* p) ?9 I. l, S2 K; v- Y! Z$ @, q" F& l0 s8 c2 A- D; ~
8 V7 }; c A) l ?6 A8 c# Обрабатывать ли двери в геодате
1 i. O0 y: [) m6 F5 B( N1 t# Настройка влияет на ГеймСервер
6 ]2 k! B" E5 T( k$ n6 o$ E% uAllowDoors = False! ? U9 [- y6 N/ N2 m4 e. Z
9 I7 F0 B% E% `9 I0 o4 i$ o$ p {0 c) @+ U1 E& L5 M8 i6 ~
PathFindingBoost = True
, H2 f+ r$ w# YPathFindArea = 250
# f* c9 T- v4 U/ f# M2 ?Внимательно читаем,нам нужно это:
, `: i0 u3 S1 `! j' b" N1 ^8 C7 Z' g/ ^. H, F' D- x _
) _* F! p. N" M# M6 f5 F
& c9 L+ m6 M i2 i. m
/ _4 y; u. Z/ T# Включает/отключает геодату и поиск пути.4 [( [& e8 m3 U+ u3 P. j# [9 b9 E
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
8 l4 h+ ^# l4 E' _2 Y4 P4 ]4 k. C# 0 = Геодата отключена.- Z# o, G4 z5 U& o, A" q9 \" w: h
# 1 = Геодата будет загружена в геймсервер.5 C3 d" c4 k+ {& z# }
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как# W4 D o0 R0 S+ r7 R% a
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами% L! o$ t: f+ q4 V. ^
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
$ z$ Z8 r3 @6 h! Z# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
4 P9 n2 K. S. E* FGeoData = 00 O. T+ f3 r- S) W7 S* P0 o8 Y* f
+ y$ b! ~. \5 P/ J; _! [5 o
- g5 g- I7 H# d$ [, i- x1 J
, ]5 T' U9 \2 |* P
/ i D+ r) r' Z/ U3 b3 @% C* `5 }/ cВ этом параметре меняем 0 на 1.' O% D4 g7 O8 y: U2 h7 ], Q
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:2 ~- l. h9 n; A- G) K1 J
# Хост для сервера геодаты.
F# |4 _6 W& J% t( m2 a. a# * Забиндит все интефейсы.9 D( g# k! f% V2 I& A: M: p. m
# Игнорируется при GeoData = 0 или GeoData = 1) W) K; s& b$ o
GeoServerHost = 127.0.0.1" r- N0 R: p$ Z+ t6 e; f( m
' d. G5 Y: a' P
) I! y7 l8 M9 y; L# Куда будет пытатся коннектится клиент.
9 S1 a7 m, U" A$ S( A# Игнорируется при GeoData = 0 или GeoData = 1
* o2 k/ }4 {, c( p! x' K' y# tGeoClientTargetHost = 127.0.0.1* t' ?$ r, Q# P E+ @& J
6 _, ?7 n' ]4 y P* X9 M
6 j! l% Y& U* m) h' T! Q' A/ z& t$ \# Порт для геодаты.1 y4 E2 m) `! \1 t! D
# Сервер откроет на нем сокет.9 L/ J% g; Y' G
# Клиент будет пытатся подключится к нему.
6 Y7 D/ @" ~9 k T- a# Игнорируется при GeoData = 0 или GeoData = 1
) w$ C6 s0 _/ Q% u* Y7 ZGeoPort = 9050
4 P2 W, C+ X* YЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
[3 f, F. r! u$ {3 F4 F, q/ J% |- j! M# S4 Z4 H
% Q2 K9 O6 {; w* C
( N* p4 D6 }' S6 E, W
. ?1 |8 P" f7 ~) q' rjava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
+ g. ]- ^3 ]/ f# D8 L$ i; D$ N& e$ A; ?; x3 g1 Y& N
5 }0 Z8 I" H5 O7 i9 Y: A6 i
: F( ]1 c- H& T: U W" l
# t$ D' o4 a, d. h# f2 Z! y- DДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
! @* D( S/ v+ q; `/ T v- L$ Q- D' Q& A" L# k2 I
) c# `5 O; t" R! v) R* \
% Y) K& { f& ?0 w
1 C4 A0 K( V# H8 B# Обрабатывать ли двери в геодате
" r; H) V% T- z9 f# Настройка влияет на ГеймСервер
2 t; Q [6 e6 }, I7 |# _, n4 N/ iAllowDoors = True
# p5 K, q0 U, h- rТеперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.% _( Z9 B0 o8 t* ^5 m0 t
Пути размещения файлов геодаты:
' w/ A) t7 `0 s' j* s+ H A0 p% u6 A. u$ a; [8 i( Z: i0 p/ g
) I6 U' b& z4 l4 q0 Z4 J0 y' v
C:\L2jServer\gameserver\data\geodata, l R! R7 o' h R( R. g0 k7 K
# I6 L% u# t' Q1 t6 Q7 R
- O( |7 [+ h v: ^6 B1 l0 ?# u
" e3 p2 a2 N2 n0 D! n
/ y4 s" W" K! cИ патчнода:
8 ^. w% s; [* {5 d# a- I r' l# q+ H: S& y3 n6 m7 `
+ k8 s" ?' ^- D6 M4 }# m4 P* BC:\L2jServer\gameserver\data\pathnode
! ]4 z5 D( P$ a; r( a7 I& M! V: W1 x4 i5 O
7 x1 _6 R" p8 E. N( e
6 a7 J% h# C* t% B w7 y7 T7 q8 x8 H {# h9 c, E; P
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:9 ~' d+ x2 o7 N" x! t
2 A8 i9 W7 h- E w6 T* d L- X7 |5 n0 O' C0 p. C" j
" y u0 Q3 R) ]+ i) K4 I' W4 \* g5 Z% Y/ I' @- w8 ]9 X( ?
16_10
& i; h3 v7 J4 G1 X/ L8 Z16_12( s( S& |: \8 ~) t; z3 f
16_18
- G2 H: m7 j) h2 n. c! t j16_19
: d! Y8 m( g6 }4 b* r16_20. O" u _6 h7 y# ~/ T5 M+ C
16_21
: x, C$ i8 b7 `% @ d2 }( f% b! q9 Q: D16_24
0 @ C. N: n* A# _+ w$ m0 ?+ C16_255 ?9 r( i3 M0 N& r. |3 W
17_10
/ H/ \6 e, j$ ]! s/ k4 d17_11
2 |' L$ z! ^7 x; C; i8 Z, R+ `17_15
" l- d4 K( T* b17_168 p( v# S2 s1 V. ? L
17_17/ E9 c( S s" i
17_19! K$ F. W" d1 ~2 _, ?
17_20. f' J! \# T" { U% o; Z
17_21
! f% U8 E; h; E9 Y- \' t17_22
, H3 c. Z; f9 u' K17_23
+ v; w; s! k# }( D5 J% ^: {2 h7 g17_24
. r3 d. w d% J17_25+ j2 h& x, l. w" k0 Y
18_10
/ {; |: w+ U8 H( r6 k" `18_11
* a9 W# `: ~4 l9 ~" l" }18_144 Q$ k& \) D1 x2 ~! L/ u
18_15) q H& }, a& L4 s, O9 ?" r3 j
18_16
6 {& h; h* K+ j& o) U( a18_19, c9 G) N: r, F
18_20# [1 H0 M. d0 n# F
18_21
* T' ]; T/ j- K$ V: h: c+ B18_22
9 a' I4 @ X8 r @18_23
4 d" Z& z( s9 F' \. {1 f18_24# ]7 C) n( h& D$ o, c5 I, q0 k
18_251 }' g4 f9 f: t9 u _4 r1 i/ d
19_10
" p% l. ?4 P1 G- `: V19_11+ m$ d, [3 E5 _) D3 {
19_131 Z8 y' O7 b6 ~
19_14
/ u" r {4 M- t2 D# p$ x19_15/ ]$ G6 q9 s5 f7 m8 [, B- O! R
19_165 E1 D* x- f4 V5 h$ W8 Z
19_17$ p$ D C, c. D5 V! H1 ~
19_18; {! d1 y% T! ?+ b' K2 j5 r
19_19; n, V1 c7 t4 s y( U' G2 ^
19_20
! w% e1 Z! `9 p) Z/ Q: h9 Q+ r( ~19_21
& @" r0 S. B) J* i q4 |5 H" c# I19_223 v% f' X5 O/ r9 b; L+ J4 p' G% V& I
19_232 K `" q2 R5 i2 X
19_24! m0 G8 X* x, i2 j$ g
19_25
1 s/ G2 U: A8 J& _19_26
* v+ X) q2 K W9 J& C' W20_10- i: Z$ Q* Y/ r8 @& ]0 v
20_11
! C8 |$ ^7 b7 T6 Y20 _13! a- g2 Y* |, \- O5 {
20_14
, k' m, o* p. b" G) V w20_157 m; S x7 u5 M7 k4 s
20_16& |6 r9 P O2 H7 E9 H9 R
20_17/ Z( q% o9 D' G) k
20_18
- f1 i# C( U2 s2 I1 D$ X1 Z" c20_19
$ D6 |, \ s! j2 W2 J20_20- i& m' R: a" g5 Z, }) L# U
20_21
5 t. y* `& N2 B8 r* s20_22
1 }. p4 U, F- b20_ 238 h6 ]1 I* K8 ?, {
20_24
5 s1 v( l5 l6 i' D1 n20_252 {0 E, [. S/ I% G
20_262 y8 \1 Z. L P _' F6 l( T- ]
21_11' l5 e) a8 C1 F' v! I* h
21_14
6 b% p* v( K& s% F3 ~3 A21_15- e3 V6 z! k' e: Y% [' ^
21_16! w+ l$ c7 `- R- A7 n
21_17
1 x M( ?4 i$ y21_18
6 S0 z& Y# N% _4 l3 U4 r: I21_19
' k) O* q, O- ~1 h, n7 Z$ A5 D" B* U21_209 s7 D1 u# C% d! |/ i
21_21
5 y! {# V$ k( p: J3 ?& {9 q9 w21_22
9 E$ A) \! c I% o& P. V+ Y21_23
7 y- K0 ^1 w4 y- i- y2 w; r% d% m21_24
/ d7 w: I3 G2 Z) S) u7 p21_25
. D- o1 y) O$ P% w; ^# I22_13
2 B% [) L, L1 D/ D4 e |0 |/ S- a22_14
% J$ P1 C5 @" F( P, S22_15- ~ o( ^# [0 k
22_16. U) _! Q/ O q8 o
22_17
5 e( f& F9 h+ j" l! N22_18
+ r; V$ T9 M% ~3 a) |- W8 I22_19
+ D2 {1 P% a4 O2 M1 B22_20
5 E9 E6 ^- N4 x5 O6 Y6 v4 c22_21
$ P$ [: _0 x. s; x5 V' D) f22_22
6 v* }; U6 B- J* `8 V) y22_23& y! ?" X. p9 p
22_24
+ F5 ~3 y- H) @& |, O) c22_250 M/ l% e# }% n( r8 g: ?/ R- J5 ^ U
23_11 g, T4 J- U. Z8 x" P
23_12
) w9 [; o$ O! s, D23_13- A, }6 d) i2 w M
23_14* W; U, m" Y3 E5 n/ a& @5 T! H
23_152 z5 h9 J: E8 b: r8 p
23_16: a7 n1 e5 X0 B& ~. E
23_17; ?" D% A. v4 ?/ _: k8 I! f$ N
23_182 a& `2 ^7 c$ y$ {; \
23_193 C: R4 s+ h! ]) O+ A5 F0 d6 x, E+ w
23_20
0 D/ g$ H4 g8 B# s, i+ k23_21
4 Q, f3 H, \: `3 Q23_22
" z( ^4 w, S% f, K1 k% [23_23
$ }2 X% X0 I: z- Y M6 K23_246 i" }2 C2 _5 V! W0 T& K+ F9 Q
23_25- E; k& H1 C6 x# c
24_11
, Z; j+ U5 c; Y" Z3 O# |24_128 d2 ~: ~, s, b8 w3 h, I: G
24_13
$ @5 l$ }6 [6 {( J8 c0 ~24_14
2 x0 {* Q+ L T/ F2 t5 {, J% b24_15
$ c" K2 P" I2 _0 ~2 m, h; J6 u2 V24_16
! }. K5 b# ]' _/ _ c7 h" q24_17
9 T* ]6 O$ T$ T24_18' W* P/ a# h, V. M5 K2 K
24_19( g9 Z0 d; {9 J6 z) p5 I' |* b
24_20 s O/ H( V! k" }5 @4 |
24_21
! K5 S/ N5 K! F24_22& d% x4 G% f# \5 {4 T
24_23
* R4 A% r/ F2 _6 W/ g24_24
; h$ \$ V4 m. J+ Z& L24_25
) v( _" p; k) P/ j" T/ F* c5 ]25_11
( s; A+ H, V. [: D25 _12
- [& G( Z7 M2 F* V+ t25_14
) F8 P) M% G5 Y" Q. D3 }- k5 Q h. _25_15
( m6 M, Y! w) V" J+ V1 v5 S q/ g25_16
: P/ }2 |1 F+ l( }25_17
; R- G* t, B: o V+ T$ Z! K25_18' A1 u! A" I0 y& Q' u
25_19" @' c) b, l+ b! H0 t! s
25_20
) I1 b7 v3 S6 ?2 K- c25_21
7 n; }. Y% [5 @25_23
7 @9 H( d- b" C* m6 _# k6 r26_ 11+ i) l9 J( c/ Z ^- @
26_12- o4 m% Q% H( \
26_149 k8 v6 N! j2 R3 M
* ]5 D% P/ G! Q9 I9 `
1 l5 j) ^% Q: ~' K
! ]1 w0 j" c8 P( D6 Y) R
5 A s2 f4 T. y! q1 Q8 i3 UВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
8 }4 {% K! {7 D, L UНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:6 w% c8 n5 M9 G/ q% @
#------------------------------------------------------------- --------------
3 {( p% \' E1 j+ {. R1 k# Geodata
; L8 F/ v" E2 r6 I' z2 O3 ^( N# ----------------------------------------------------------------------- ----
3 ~4 t& }1 T8 H! k6 o# GeoData options:8 q( v9 D. ^3 w" G% p' {
# 0 = GeoData and PathFinding OFF (default)
7 F" O, C6 w s8 G# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
9 A9 V% N3 y- w5 e7 g' {* D* X# L2Playable movement. You need to download files for data/geodata folder.3 V6 S& N4 s {3 {8 M
# Monsters can pass walls but not aggro (no line of sight) through them.6 X3 y l9 k8 o4 ` r. f' x
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
! z* o$ |# m' X7 G* ?# files if CellPathFinding not enabled) and all character moves go through( G1 F4 V. s% F0 i; P# F
# geodata checks (if a mob passes a wall, pathfinding didn't find a route2 b: D" n$ A2 w3 O6 K
# but we allow attack and returning home). K' a( y/ a d% m$ F2 K5 A
# Recommended server memory minimum 2 GB, rather 3 GB.9 u% N. y+ y( S) K
# Default: 0
5 A1 b3 Y' x% C0 n2 c, CGeoData = 0
! x3 u$ }1 n# V# `/ S( f5 B. U' n& J, |
' p3 G0 w* r# Z* Z' N/ L
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.$ v7 W5 f8 K1 O; y* H0 K& k; 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.& x+ J8 q* P4 P5 x( `- r0 _7 N
# Default: False6 H" O/ t5 f3 K# X! G& |' l
CellPathFinding = False
# n. D$ L" _. K& @4 F. ]. h: _8 w! R3 D
$ [3 l$ }* e; G1 m$ i, d8 x- A
# True = Loads GeoData buffer's content into physical memory.! G. O# U! R ?; y0 C1 H7 P: B7 D
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
2 K. ~% x5 ?/ }# Default: True
7 Y* Q, s- O- V* \" ]* ^9 JForceGeodata = True
0 e/ q9 {+ y: J
8 q3 s2 z* L) O7 L# e' j/ N+ u* @+ S
# This setting controls Client <--> Server Player coordinates synchronization:
7 U" ]7 G8 O& u/ G( {+ g' M# j# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.: [: |3 T& y0 N4 z6 G$ a
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.9 F8 x3 G0 ?3 w$ {2 W* v
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
5 M# ?- X& r/ Q" _) a5 l# Server sends validation packet if client goes too far from server calculated coordinates.
d) f }% r% v& t2 \# Default: -1+ V5 s3 I0 r9 v1 [3 s
CoordSynchronize = -1! d5 l0 N4 m8 F) D
6 P) ]+ O k) ^. z) u& |+ P+ F
/ S! o% J; d9 Z5 K9 V8 w
6 V( T$ I, d/ X$ b2 a
! b t2 ~3 b" O/ t9 k5 kGeoData = 0
6 i" W' ~8 R! ?+ g z' O6 o2 ~+ v% F% @- X
1 n! H& F/ B: f; y& H
r5 H; o& d* U$ K6 J& I* e5 k
8 I& [# b8 s, xСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.5 g- H7 }# Q" V, B* W0 y
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
" W5 f' K" e3 ?0 B9 ~+ o; V% {; L) m
* L+ g2 m% L: R# X) e
/ g6 e8 D$ K5 P9 u* ?' h4 E' R# E& \
1 B: m8 y% g+ w. w: U0 b- N
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.2 R# g: z( M; Y# F, w! ?3 ^0 D1 d
# 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.
" k' l; {( F0 H# k* j7 a6 s# Default: False
7 p$ q/ S% I- l0 A$ B7 yCellPathFinding = False
+ ~% Y. A6 k( \: i
) B3 R, }8 L/ |) ]0 ?/ o; y2 U# @4 J' e( @+ b+ ~7 @3 S
4 B% g: p, ? e% J# m
# \7 c) R+ F% j6 M7 u! b: @Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.# t8 }6 s2 l% P& V+ Y
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
F0 C; C( {6 h
" m; {/ @# f5 N+ k6 K2 Z: d+ P$ z1 M7 c. U4 H# `, X; y
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
& H+ U3 T* E: v9 G: s3 k4 ?3 b- \, n& F
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.2 K3 _( ]9 I6 q" m/ J
) K# U- w+ Q& @; Q$ U
|
|