Хроники 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
; E3 i( {# Z/ u1 [$ \Сборка L2 Java
7 Q) S9 j5 ] ?4 s- p' B3 H& m6 i
) H% r! W( M1 M! lДоброго времени суток.9 a5 X' g+ m* E, r2 W
2 E3 O) O/ C2 T' [" ^
8 ? Y( v/ G; V5 W8 DЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
. h' S4 c9 f h; rВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
, S' F- [: W, D/ G; @# f2 e: @Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.$ Q# s7 Z D; U: H
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
& \8 R! Q; \) q4 u2 r# D& r# R% n( l: L& L5 k$ M1 r
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
4 q0 W, Z. {" e
' M' f: r: ^3 p8 B6 w
. ~5 H. T' a, Z$ A, yНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
$ L# y. c0 ~+ k8 [Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...3 ~+ k/ T$ w# b3 _ B3 S
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
; X3 n/ c' y" S0 OУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.. z3 p" n' I7 S- S
' R5 P# P I8 Q
5 t+ Z2 t3 e" G. |5 |. e& C1 s2 V7 qЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.4 G. b% }, e: M; y
Количество файлов пачнода должно быть равно количеству файлов геодаты.5 j4 K9 v$ ]: V
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
" Z! f6 g" I, I/ F. l7 _3 C: g6 [2 @Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
# C% b0 z' f7 u0 X, o: ZСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
- |4 }0 {& B- L) fТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
& B8 X9 U# P1 A+ }8 e$ fУстановка геодаты на сборки без пачнода (Rebelion):
2 Q& f7 G5 L. @( j5 RПокажу на примере L2Dream.
- [% K4 M4 @) F& fПуть куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:+ l1 s# h2 x, [, N8 X
4 a6 t, J7 G' i0 i( { y7 I
% ^; z4 S( {3 o5 x3 C+ f2 WC:\L2Dream\game\data\geodata& Q# i- S0 W# h# \/ w2 u
1 G4 r6 I2 ]2 F/ [! v3 d
8 y A2 i0 b5 H: Q$ `' `, o4 E d
, L" p1 ]6 H3 j( ~Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
. F& j$ |, P1 LНастройка.
+ v. t% ^8 h: m3 v; z0 b @Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:# I6 q# f( s% ]2 J
#================================================= ================================================== ====5 M/ p y- i9 g4 o4 M$ s
# Даный файл является конфигуратором геодаты.
4 q+ @' R T! L6 m4 u8 ^4 v% w#0 H _9 W9 t# y! A2 f; |
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.! ^: x# J u- Q
#
% D) Q) k; {3 C7 j) K0 B U# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
+ O) t$ N) @, Q# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.' u* |: Z/ K* A1 l6 |. L7 C# M+ X
# Ну или просите прикрутить SSL.
' o. Z1 J# s+ S' \( c& R/ G+ }#================================================= ================================================== ====
+ q! t* W9 f. |; o. |+ F! e$ b4 V
2 w1 Q- a. N: k! O4 c2 s, v1 M( v5 E4 Z! ^) H( `4 c# a6 L1 E) }& S0 b
# Включает/отключает геодату и поиск пути.1 E5 s9 R" m4 L
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.- E8 x3 l6 E, u* b1 `$ K
# 0 = Геодата отключена.
' Y% z8 X: d5 q+ x8 ^% z4 {! M# 1 = Геодата будет загружена в геймсервер.1 n& Q# j3 `& `+ x* P4 L! u
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
$ f. F+ k' y. C, L: o* q5 d( ]# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
4 ~, v. m* N3 T/ J! W# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,% Q# _, ]$ K* \2 k7 w1 R a
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока." O7 h/ o, a8 T/ X# k$ {
GeoData = 03 L; ^+ b8 ^9 w) p' q0 \
2 \' {; _; X' g) j- X
: ?$ E3 w/ x5 ]& C4 B; G
# Хост для сервера геодаты.# w9 W1 b. y2 M+ k
# * Забиндит все интефейсы.4 O; t; z8 V" j8 w# M5 }: R
# Игнорируется при GeoData = 0 или GeoData = 1
8 P# F4 ]7 u8 |; z$ wGeoServerHost = 127.0.0.1
1 u: h% ? w/ H) Z) U \4 O5 `" ^" w" F0 |
7 o- j3 S, B$ ^; s# U+ z# Куда будет пытатся коннектится клиент.
8 K) @$ D/ O5 l4 E9 Z+ |/ @ J& i# Игнорируется при GeoData = 0 или GeoData = 16 V f6 `) {% D( G' d
GeoClientTargetHost = 127.0.0.1
2 n" H5 U- m' | l# A; A- U2 {
& k k# i3 P# A* r% g9 r& {) E# T! ~$ J9 y# [
# Порт для геодаты. q# }7 p) C* _7 i
# Сервер откроет на нем сокет.! v+ x' k3 U0 M8 r. z! `" q
# Клиент будет пытатся подключится к нему.
* N: |$ M: c" s+ H4 D7 t, ~# Игнорируется при GeoData = 0 или GeoData = 11 r) ?) h4 p- W6 ]' `
GeoPort = 9050* C$ \ s5 l7 Y- J$ B
( W+ J: c9 ?9 [* o) E, o
/ d+ f' _. g" j7 w3 M# Сглаживает путь.
. V2 S9 u9 v! @' j" e* L# Стоит отключать только для дебага.
9 x2 [! M+ D e! }, }& DPathClean = True+ C1 f# N4 n# l) `$ `" M* J
6 F9 |. i3 { N9 w7 k7 G: P
- e) j$ x8 o2 Y8 t/ z3 j/ K0 F
# Обрабатывать ли двери в геодате
& [% }0 g5 B/ @" G3 v) G1 ?3 ^# Настройка влияет на ГеймСервер9 f+ Z- ^& Z5 P5 K9 ]6 P7 _
AllowDoors = False! a9 A; S0 D$ I6 J/ n
& J+ s+ |( H- X% J! \9 d8 ?1 }) R- J+ ^# ~! P7 w
PathFindingBoost = True
5 _7 }) i7 J4 m, e9 ~PathFindArea = 250
' N- v8 \2 [7 [2 Y; A) c% F- y: tВнимательно читаем,нам нужно это:7 @0 d+ |" @) D* K
9 S4 U- z8 p' P4 |# V5 j6 N `6 K: l( j) P5 \" M! t, f
4 x) s# }& u8 t2 w% r3 t3 v
; C( ]! @6 `0 {- E* U$ x" l T) o
# Включает/отключает геодату и поиск пути.
. F, m. v$ l$ U- F# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
$ f* S/ A1 H" D& ? v# 0 = Геодата отключена.1 j& D8 k. K# B) w
# 1 = Геодата будет загружена в геймсервер.8 q* _! G* _3 Q! ~; j/ o* {* U" b
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как/ s# `' L9 `0 h/ {( n3 S
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами! _$ n, ~. X1 D7 d# g
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
* l6 b* w! F& o" I6 ~5 M+ M7 S# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.- @9 g3 Y3 v3 G' A5 X y+ K
GeoData = 07 Q1 V& y% G0 J' i( u
" U* C9 X# ~- r8 C4 l+ E% T) v
- u; E) P. p2 X2 G" H7 s+ h! U; Q' [* {2 }5 f
: [' z2 g- [7 KВ этом параметре меняем 0 на 1.
l% K% n- q# E, c3 v& j2 ставим в том случае если всё таки решили поставить геосервер,его настройки:/ D. S: ]* l) @( D% s" j% i+ g+ W$ i8 L7 F
# Хост для сервера геодаты.
% K. K6 {8 `( c4 I: d, n# b( R' b# * Забиндит все интефейсы.
: U, G# e8 \4 e0 ]* S$ s# Игнорируется при GeoData = 0 или GeoData = 1
5 z+ }, k! Q4 yGeoServerHost = 127.0.0.1
% I9 G' }+ o& P6 u! j# L" Y$ A$ h. ~7 G0 p6 e; Q
9 q" ]$ @6 Z: m( G4 k2 G7 o1 V# Куда будет пытатся коннектится клиент./ T t+ V7 v1 A0 ^1 Z/ I! c' J' f
# Игнорируется при GeoData = 0 или GeoData = 1; o' p" W% }5 d5 a5 S, Z
GeoClientTargetHost = 127.0.0.1# ?( c5 y6 o/ R& a4 x6 A3 C
# B* t; j$ j- ]
1 j- L3 K; q8 l, C' l# Порт для геодаты.
7 V# W5 h) N! J: V# R+ ^- c# Сервер откроет на нем сокет.' p+ v* [: f$ a/ q' M$ |
# Клиент будет пытатся подключится к нему.
8 O% j. r6 v* B/ W6 y& [2 u# Игнорируется при GeoData = 0 или GeoData = 1
0 k% O r4 i2 E: b! v& dGeoPort = 9050
' ^4 h1 ?, C4 Q6 I _ f8 MЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
2 z5 Q1 }( _; Q S: `) g
0 D* _$ p3 e1 {, W
# U5 q2 u$ j5 p+ j [; Y- ^
0 S7 \( z" A k9 g2 }/ K8 y$ Y5 p) \% C3 a
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer* O5 `& j8 y& Q1 \6 m' K) M* U
" w6 {& k. ?; e8 ~: p& Z
4 C0 \; I, K* f/ P+ O7 X! Y
2 q. J' s( L7 S& Q: @" ?4 D
3 [+ p# o, Y7 l, F X0 v% iДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
4 U D0 _% |: ]/ a7 c0 J$ R- C0 _/ o
2 u6 n/ W l6 {( g' O2 ~
3 ~; D" t6 h- T4 q4 j. C5 Z ` N% M. x% P5 v1 O% n6 h# v
# Обрабатывать ли двери в геодате
0 p/ U; C3 d0 c# \) O8 }- P# Настройка влияет на ГеймСервер
0 h# m8 h' H$ j- @AllowDoors = True I9 e0 q+ L6 d: n5 J
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.) {6 I9 N% s) ]
Пути размещения файлов геодаты:
1 o7 L- f$ \# b/ c7 N$ c: F4 Z. X+ v$ g. p) H( ]
7 g- I7 g" y+ W7 l: R
C:\L2jServer\gameserver\data\geodata
4 E' ~, x0 D& ]! Q& W$ I: G2 G, n: j( ^- i& g+ \
( h3 F3 _% C* i0 ^1 g! X
3 }( M1 s' H7 u- Y' }
( _4 `0 ~4 {6 h" Q, d# m9 Y
И патчнода:: r; Q! l- H' p. j9 h
* t; I3 l; y: r6 g- _6 C+ w! }& C) v: J/ z! f
8 Q% g0 H. I. f, _C:\L2jServer\gameserver\data\pathnode% n& ?) c. _, Q1 h5 {7 o) F
" U# R* F' c1 Z4 U+ ?
: n: z4 t5 q4 N& h/ P" p
& h& ]6 u5 ]# R7 ]& H
& @' p! H9 z- _# R5 I( GВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:1 r/ c5 Z3 e. P/ }, X1 m1 w4 l. K
1 |$ b; N) R9 B: m
' X% B8 S2 T# s( G! J$ T6 a# y/ n
/ O( r0 k3 p! f) u
: w4 T3 x6 y2 l3 l" X16_10& L- a' h4 B4 p$ P% J7 Y4 B
16_12& N. f# s* t6 b& G7 P3 y
16_18
: E4 b: G$ ?6 U8 [4 h) A16_19( x3 [) }* x5 A9 v
16_204 B) C+ w) J) |- ~
16_21
8 |: d( q& }, A' g) Z) N7 a16_24* b/ z2 H2 h$ [7 j' P# M
16_253 Q! Z4 d9 s6 ^) `
17_10
5 C( U! a& y6 B4 H# Q+ u5 g17_111 { J+ {6 p" t8 v" N
17_15
' y! D8 g4 v) e17_16+ D8 A! R, p! p8 k! D
17_177 E+ C. F+ E7 `: z
17_19
7 K8 N: O1 V- C; {( m17_20
5 C. _ @$ k- ~; {2 J$ r7 g17_21# F2 n# S0 B2 f; `6 r, G
17_22* n# m! l& z3 M. y: r
17_23
3 S4 r- D g. h+ p" L17_24
$ X* G- d* y! h# ~17_25
# r2 w& g% k$ S$ t18_10
t* p; U' F& e; ~; l6 Q18_11% S9 a; V8 m S5 I
18_14
7 {2 s* q7 g8 w6 l: e; [18_15
3 V- o7 W- q) w. x9 V18_16
6 P# e2 ^: k6 D3 M" L/ a18_198 R2 t+ n# l! p. ]/ W
18_20
5 c9 u! k9 j5 ?9 t5 |; ]3 u18_215 h# [# t% S2 C9 U- D* P" G
18_22
: G/ L1 I# D( H& l, Q5 e0 z18_23
+ Q* g9 r' g; J18_24
! ~# ]) @) F3 ?% \7 l& o( J18_25" P% i$ P; w, r$ S% T$ Z# E3 Q
19_10' d3 o2 G3 H. f$ ^) }
19_11
9 D1 n$ h+ R) z. q, q: k$ Z3 s19_13 A2 E' ~8 N6 N/ ^2 k4 i
19_14+ Z7 {5 W! |; }
19_151 a- R% a1 q0 B& W7 V
19_16& E. F3 g7 f! G |( [5 ~4 d
19_173 r' G5 F( \+ o; C
19_18
( ~: u% I$ s/ o8 b/ J19_19. b8 q# j. O" S9 R8 E8 l; U P7 @
19_20+ X$ ?- a3 q4 J% R
19_21. Q. P* V+ j6 [- M! o
19_22
/ Q- ^& o' e$ s1 y0 u3 K19_23
6 T) \0 p& p. n( J' U; Q6 M19_24" t. ]7 w3 o: q# a% N* d6 }7 B
19_25/ ]3 O; l! G1 a' T
19_266 x+ M. p, e5 ]" g8 g6 x/ |
20_10
- p& R6 @. Z7 P, i% I# b+ S20_11- E+ B6 o! t! F d+ g: ?
20 _13
' I1 S M* B1 M( _9 n1 g x8 L20_14& a9 e# S. w$ u7 T
20_152 r0 K4 p6 F/ U0 `! ]; W
20_16& l1 f$ R3 G* i
20_17) A2 @0 u* e# S' f$ i* J
20_18$ D9 R2 |. [& j) ^# h7 m; C
20_198 ^) n7 T3 O' J# Z' ~, d8 e
20_20
* ~/ e, p; H+ c0 J; V20_21. j) @3 L# J3 e4 E+ L
20_22
9 X* ]+ x9 ^( i20_ 23. ^9 m$ e/ c$ N$ E a+ x
20_24# L5 f6 B* P% C
20_25
" ^% d9 f$ K7 k3 z; h3 r/ @20_26
+ E1 C& e# c o: Z6 E6 o21_110 f$ V( U8 k4 V8 {! I; S9 o2 Q
21_148 C9 m% i4 U6 D" G9 h& h
21_15
: @/ E# c' P# m, _21_16' K% ]3 w8 }5 v' k
21_170 n0 b# G$ [/ N
21_18. p; C( p2 k* _6 ?- V9 h z9 z
21_19' O4 e7 C' _. Y* J. P$ e7 Z Q' I, _
21_20! ?6 q# Z2 F' p4 L
21_21
0 x: ^1 E, p3 U) v! `, ^21_22
. `$ S. ^6 }+ q4 _) [' R3 E6 M21_23) F) I, b% e6 u0 F2 x3 N
21_248 o: L5 d: x; e. }
21_25
/ A) ~1 R" q! ]22_13
$ a0 b! c" p7 W0 F! L) e" g22_14& L+ F4 A, s5 A0 x6 w; v
22_15
( T, h* I d. V& o+ N! F22_162 S" ?: |3 @. g% X3 O8 O
22_17" r3 m! p0 @- R2 w) J& d
22_18
) r# @$ @2 ]9 P7 e' V3 Z5 G22_19
$ i; f3 L2 A3 {! t& ^22_20
0 Y' e' m% J# v6 K4 T) o$ a22_21
* y' s7 ^( i. D! B& U22_22
5 }* T0 ?* V: s ~* }0 ?22_236 j# `# r) R9 D6 I( t8 p! v( L
22_24
6 i, P3 J0 _9 _$ [% {- t22_25! \8 |3 t7 s/ c% ]6 g3 S G% B
23_11
" H0 x/ d) g1 z/ q! N23_12( Y1 j. g* F; f* a6 b0 F5 y7 p
23_13
' g: p9 D: K, e! f7 M# n23_14
$ W2 u$ M; {- l23_15: |( i% w. F# `2 }. \
23_16; }6 N7 Z8 a0 w4 `: H6 o, F( K
23_17
8 s: ?; G" I* e& ~; ?4 P23_18) U6 [ y. O0 N
23_19
; G" j3 r h; t, y0 M" c9 s# j23_20 G f# K) v# s1 P8 b- a/ b/ `2 O: Y
23_21
/ M8 Q' f! ^5 e. i23_22# C3 B2 K4 p* U5 M6 c/ v0 ?% l9 f$ V' Y
23_23
1 L' k/ y9 G2 L4 |23_24
. v T+ y8 C" C; T23_25+ u( q" B. [( p2 `+ r9 v. |7 p! e5 {
24_11: l6 H3 K4 k7 D; l o
24_12
' O5 u! k0 x, B24_138 } b' u2 ^' @
24_14
" }3 L! k9 I) W0 @" M24_158 Z& [( \: c1 P3 L
24_16
8 S9 ^3 o+ Q, o* i# C% i24_17# @& z: T; T+ V: T
24_18: ~' }' y! r# S6 N4 T
24_19
4 b( B0 w, G* ~) F2 M" K" [- v24_20
* a9 @2 \8 d! f% w+ G k( w24_21
; H) g0 n/ N& h1 K24_227 O D! M4 E n( F
24_23
# M. |* C6 m, Q6 b p5 [( Z24_246 d a1 A5 n0 W
24_251 L& r% V! C7 j4 E$ Z2 v/ J( N
25_11
& Q' O( O' S# B: I25 _12
. P. U# }& i- U( z25_14( ^ ^, g; P2 c b# `! b2 C. `
25_15
0 V) g6 }4 @6 N25_16; y7 P4 `6 N- G) ]9 A
25_17
+ @1 }4 U6 U$ ?# z; l y5 o25_18) }$ n9 m, o7 a& ~2 T
25_19# K+ }. X! R7 a! `+ ]/ ?" K! _
25_20
: g; t+ Z Q! I4 T+ r25_21
5 D' u+ O2 g F: E: F' Z25_237 k! ?+ ~& E& w
26_ 113 Q9 o3 C& T C' M+ s
26_12- O1 x4 G3 i3 y
26_14
# e" D# A# M. G8 ?5 n( q7 J6 j& z. F- ]% [+ h: h
( H( R! B. f0 a n- a/ e7 T0 o3 p
8 C* u$ k+ K1 \# l7 F; P
( T$ G, Y" N! x' G7 e4 G; A4 pВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
9 D. }; Y5 x4 S y& W, S5 hНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:) y1 x2 j; N& m8 r/ r
#------------------------------------------------------------- --------------
' N5 v+ c) r$ L3 l8 V1 Z# Geodata$ Z+ B3 m& r- C( s6 T. u* P0 L# z4 r0 _! m
# ----------------------------------------------------------------------- ----
* ^) M; o, d7 q B4 I1 c: j# GeoData options:' N9 A, v+ {" l( `) t/ b
# 0 = GeoData and PathFinding OFF (default)
% G& t O8 q) d3 I g% N# 1 = GeoData is used to check Line Of Sight (LOS) targeting and2 D& I1 K7 N4 P- v5 }+ O& {+ V* k
# L2Playable movement. You need to download files for data/geodata folder., |! N. }% n* [; j/ R( F5 E
# Monsters can pass walls but not aggro (no line of sight) through them.$ d3 U9 m6 N5 s5 L* i
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
# K( Q" m+ R( G3 ?2 q7 ^0 @* D# files if CellPathFinding not enabled) and all character moves go through. d }* N5 n0 [! |6 A" }& |
# geodata checks (if a mob passes a wall, pathfinding didn't find a route: {0 B6 B2 Z6 |4 V' z
# but we allow attack and returning home)./ w3 K6 {, `1 E0 w
# Recommended server memory minimum 2 GB, rather 3 GB.
# Z6 k+ S. O5 @, i2 Q# Default: 0/ x+ K5 N, M* Z2 e2 g* x, M
GeoData = 08 N8 ~' y8 j; I; K
! {3 u+ j0 {& v# ^5 _
. T7 o9 Z6 O1 p3 l( ^+ M1 D+ h; O& a0 q
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.* `( I7 g2 F! y0 F4 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.4 X; _2 C: o" Q- w0 d t
# Default: False* h; @ W* U: `5 i" {
CellPathFinding = False
9 i( |0 m7 {$ o& Q/ E; N- l0 C' l
/ ]; S3 `) F( z, |, ?5 ~- m7 I+ s# True = Loads GeoData buffer's content into physical memory.
8 }7 C; W) ? E# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.0 d/ G+ C, t/ V" E
# Default: True ?9 z% o4 M7 r6 U8 J4 s7 q1 D
ForceGeodata = True# H/ {* V" v, C- q( [
! K' L+ M& |& r' W% u/ r
/ @, T% F& u$ U- ^# This setting controls Client <--> Server Player coordinates synchronization:
# q: R- A4 [: Y7 j8 \1 D; l# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
0 D! c8 p# a" s$ K4 `9 j& F# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.* A1 X' O; r J" R
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
! Y, Q/ b7 {# z$ }+ b% v# Server sends validation packet if client goes too far from server calculated coordinates.
8 R7 M6 F' i, p# B x/ {- V# Default: -1
9 n$ u1 K: s0 Z4 i! ` WCoordSynchronize = -1* a0 e4 [- p; V5 ^. l3 e
1 A S; E4 h" b0 O7 R
; J/ h9 {4 V2 l( `$ [& f4 p, m& P
q7 Q$ K: h7 P+ F$ M7 [3 @7 |8 m! i( d' r4 n7 c! K( P
GeoData = 0
" m+ _ H/ ?+ h% ]/ ^ r: B' ~- {% H7 E" Z2 n: ~
! d* F* F8 s; Z( u' m# K
5 j4 X& Y" u6 r y: M
- c6 ]/ M1 Z \! u- P7 l
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
/ g* P: k0 Y0 E/ rСтавим 2 если пачнод присутствует, так же включаем эту настройку:
8 m3 S3 e6 z' x7 t% n- _& z
% J7 w, d, q4 p q/ j( b, m6 W- l- K
' u% c+ [; V/ J- z/ |, L& N
5 k% z% W( J7 c6 Z- j. u" f
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.' P) U" f1 t% w1 n
# 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.) \5 H! [ q @0 x- j: \
# Default: False
# w s6 C8 y4 q v2 mCellPathFinding = False
9 ]2 F+ n8 I2 ^5 C7 X0 V# L& }1 `) `! W; ~0 K& x5 K0 y# b% A
4 L4 h: j- Z9 |7 `- J& | X
- ^* x( C8 P6 ^$ {' p3 y' K) z J/ z2 t6 K
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем." v; J% }- w1 e
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
a: P4 `+ ]% K3 `/ s2 x
$ J( y( e8 i9 m) h+ T2 C$ l; E
7 Z1 Y+ Q7 j2 `Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.' o2 _' W% M# S" Q6 I6 w
6 x6 M0 t" u3 W. W# j
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.1 v. r% N2 {0 ?$ ^; k
, K+ C q. W: z$ N$ l |
|