Хроники 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
! e7 t7 o5 D+ q2 DСборка L2 Java
3 S! B5 n) y3 k9 U8 j! k" F- I- B
5 ~" A; x/ ~- j7 }0 G7 Z" r7 s, i- E& [ b7 _
Доброго времени суток.$ E6 F( S5 V0 |3 w
" J/ i0 ?# |; q3 `9 N% S& w
; d0 f. R# R2 `& c
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
5 e2 l$ i' _2 c+ [5 u. iВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
" U u Y% r! O/ q' Y6 C5 cДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
/ \* k+ @2 I. `( t+ sПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
9 |. o$ F7 G! Q* ?* t% \! h. o& m6 m. @* } n2 ]6 p+ _: m
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
% i- v$ p7 N, i" w* \ L
, h5 f1 r$ I* M. v, X; y7 v" G5 v, A; K4 o! @4 p9 N3 N. g
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
+ ] v% ]) [& D' W5 m `! PГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
( M) @1 A" l7 s# ^- {) NРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
$ l1 H7 K& d C$ Q: C2 L/ l! QУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.( s. U% B9 x) ]; z
9 q. p& G4 O0 }0 K; g% N# r# K w6 I# G! c( M2 k4 y
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.5 M9 O& G3 Y6 d% F
Количество файлов пачнода должно быть равно количеству файлов геодаты.1 a' V3 a$ W/ |" X+ g
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
; d' U0 i5 p/ l' G; eТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный./ G5 `. Q; X3 }7 d) b- V) }% m- G
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.. m6 }* e, G' b8 o7 F! ]0 n ]2 l; j
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
6 R: ^' g& `) pУстановка геодаты на сборки без пачнода (Rebelion):# h/ R, z( w2 R$ P4 q9 q/ t
Покажу на примере L2Dream.. i! b0 ]. `) h
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
4 E. {2 z9 p$ y) F: A
% x4 m+ i0 w% m4 _1 Q; T% g. g: T, o' f1 d
C:\L2Dream\game\data\geodata9 H8 l/ V6 y, K% v1 u' |
, t2 E* _, `3 r8 W
4 C5 b/ w/ U6 z' q I9 W6 T& k8 q
. K- X# d$ z9 j j& p3 @- X b3 F4 l0 g, G X
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.# l9 {' e0 [ @6 `, I6 u9 A& G U
Настройка./ s$ P2 C6 ~1 H- R! U
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
4 A; O2 C& R X0 i, N2 W" ]" r3 V( U#================================================= ================================================== ====3 b0 p- T3 C2 ]3 e7 W5 M
# Даный файл является конфигуратором геодаты.3 k: Z- u' g* p3 W" K
#* Q+ e+ g- \% E5 _3 T, F4 c
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
: i/ ?* v! I( y' K$ Q+ y#
$ k) A+ h" @+ b5 N5 x2 Q# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
+ [* A3 B- D$ A7 m. a0 ]# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
7 {3 e+ u4 S1 b& y* P# O# Ну или просите прикрутить SSL.
, l' G1 t- Y9 K9 [#================================================= ================================================== ====
3 E5 C' j! V6 H" Q$ T1 o( X5 T8 n+ t! s: w3 _& X! X4 o7 Y
0 @! D- ~0 e: W2 }+ g9 K4 H! J
# Включает/отключает геодату и поиск пути.
, P& X* a; F* D/ j$ `1 J# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
6 G' S& Y* Q2 C3 j" i* ]& C# 0 = Геодата отключена.
2 x6 N' g. X% i8 i# 1 = Геодата будет загружена в геймсервер.* ~ `% q( r N, k
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
% Q! e; Z |) z. Z7 l8 \# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами \" ~3 d2 J. d# i; p
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,4 n( V& x; j( j" T& g0 g B
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.- F8 m# R. d/ a
GeoData = 0
9 M- F- @) y# h8 \3 Y* U) c: w1 c6 B& E! k
9 O N3 D% |9 K/ u
# Хост для сервера геодаты.4 q5 V& Y' b, S b0 t% ?& B0 V: a) }
# * Забиндит все интефейсы.
7 d9 u' T! Z V$ W$ L* Z8 f# X, z9 z' h# Игнорируется при GeoData = 0 или GeoData = 1
. W7 W# G$ j, M( \8 MGeoServerHost = 127.0.0.1" b( ?+ @+ L$ m0 |& k, e" |; u" u
9 n1 R" h) B1 K2 k/ I! O4 c9 y6 X, }" D7 s
# Куда будет пытатся коннектится клиент.% E# c$ `# A K
# Игнорируется при GeoData = 0 или GeoData = 1$ I# h; w3 Y! A2 R* p, R; d# Y
GeoClientTargetHost = 127.0.0.1
- a. L. H- h. M. E! B
7 w2 N8 U$ I1 G& d; f% t9 A/ W" k7 {
, C6 _# R- o# U. W0 H# Порт для геодаты.( f4 O; C& d9 ?9 S8 [
# Сервер откроет на нем сокет.
3 J$ V Z+ I* {: _# Клиент будет пытатся подключится к нему.
! g) q+ R; W' X$ t/ A" g, ?# Игнорируется при GeoData = 0 или GeoData = 1) Z' s7 B9 q( D7 Z" O4 T5 }" N. P, X
GeoPort = 9050
3 y- E1 j6 V ^
# O! \5 R7 Y/ e& a: Z3 |( S& y0 W: O9 r
# Сглаживает путь.
: g: ?1 o$ C( L2 c3 L# Стоит отключать только для дебага.$ Z4 H7 ^3 b, w# e; {
PathClean = True4 |4 x; e9 Q* g1 @$ b8 V
5 q1 f# y, k2 O- ?- L
; k5 n' C% s. G- K; [4 u# Обрабатывать ли двери в геодате
3 u8 s6 d. m+ |0 w5 C% n# Настройка влияет на ГеймСервер
0 e( e I M: A9 c, \6 X" k x$ zAllowDoors = False
3 a% O8 b1 T1 M3 v+ F' v: n
, q; R" Y( P9 C4 R T: m! P+ h8 s r7 R* s( S5 Y
PathFindingBoost = True
* |% c$ U) W6 t8 b6 N+ ePathFindArea = 250: |+ }8 t* d: v1 J- B& @& x% g9 D
Внимательно читаем,нам нужно это:: u- u& f/ S1 L7 d
% L" l4 K5 U' `- A
8 E* ^7 M) L- b2 I7 r( \, h
1 z3 O) ? g9 U1 L9 ?) ~4 } \
& Q0 \1 h y. t q
# Включает/отключает геодату и поиск пути.4 }$ O1 ]$ k9 _: J$ C
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
9 n) ~- r6 X) |6 M& [3 j9 M5 J# 0 = Геодата отключена.
5 V9 A, K0 B8 o# 1 = Геодата будет загружена в геймсервер.
6 O$ @ d9 A0 d# Y( u# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
% i7 c' t8 i( J# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
" n' Q& q9 V. k0 {# O2 r- K# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,% }6 \' P \+ v
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока. @* X. V/ @% `; i' s' X5 i
GeoData = 0" ?' w1 A( {& L w+ k
r0 b5 U- Y7 ]" x2 i9 u* G
7 M }9 r: i9 M% ^# v+ x
: x+ K' {! }% _ v6 ~
' p2 M6 ^7 Z u M$ [В этом параметре меняем 0 на 1.5 [. v# T F, C* L b8 }+ l
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:" T. { I8 u. B5 `. _0 f8 u6 p
# Хост для сервера геодаты.# a7 p0 ?! ?2 L4 F& o
# * Забиндит все интефейсы.4 L- N2 e4 j9 R+ ?/ p+ E) b
# Игнорируется при GeoData = 0 или GeoData = 1/ M, E* @/ X3 A. j2 \+ t6 v: R
GeoServerHost = 127.0.0.1
% l7 t# V D9 D( _! ?3 n8 i8 X0 M) w3 E) s
0 d+ \# U6 V* X# Куда будет пытатся коннектится клиент.
/ u8 x1 E+ S5 @9 {5 }( b7 r# Игнорируется при GeoData = 0 или GeoData = 19 O8 d) F' ] v) |
GeoClientTargetHost = 127.0.0.1
! o( U/ k8 n0 N6 ^8 ]8 [# H
1 N" [" j; b+ Q2 O' z; e" b) L2 l, U5 k9 A1 `
# Порт для геодаты.
+ x7 _0 `6 v. P# D. S2 h. [7 J4 [5 W# Сервер откроет на нем сокет.3 k$ Q( s2 x0 g' F
# Клиент будет пытатся подключится к нему.
+ `- T$ y' P2 c1 M- L4 x# Игнорируется при GeoData = 0 или GeoData = 1
! X; ~) d5 D M9 W7 \GeoPort = 90509 r- S* I0 S0 M0 Y
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
9 w' @; F h* x S+ S) I( W
7 d% M2 I# V+ P Y4 }/ C7 s0 {6 y$ C5 h( K- p2 a' R/ a" ?
6 _1 {5 a8 d$ r# }# A0 G
, s' P% B6 U) _java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer0 y1 j) R1 C4 a
9 @" H" c5 n4 o7 x3 A* [0 a G4 v" r
0 c+ {: z+ r# b4 V) N3 c
+ k* R; j& E8 I# Z1 x3 M5 l; `9 b+ n+ c( z1 }3 R
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
6 g/ J. S5 ?2 s% O: _: C7 v8 M2 Q! e6 ?/ O5 R
% d/ T0 }5 w5 X
& m+ W' X! z/ w8 A& f: q+ x, T6 K
# Обрабатывать ли двери в геодате X6 n! h& ~9 ?( G N; ~2 R
# Настройка влияет на ГеймСервер
' g% X1 [& r0 L" o$ OAllowDoors = True6 E1 e* u# q/ ^4 ]4 m$ p
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
5 P' b/ V7 f% @+ r2 N, A2 _+ r, ~Пути размещения файлов геодаты:
" Q/ u% _+ {- X3 D- r
; Y6 _) E1 J9 S6 ^, w) S5 [
/ b. o% E2 K0 `4 oC:\L2jServer\gameserver\data\geodata
, Q$ g& t; ^3 D" k5 w7 N5 v! u. G( |1 m9 x7 ?3 c
3 C- G6 W l; e$ I- x
: u9 Y( h7 Z" H D
4 O8 n4 W' R. G& d2 S; h3 y* r
И патчнода:8 }5 {3 `2 X) x3 _# @( c! d$ V
; i# m3 }, `: {7 F0 T% w: `" v5 C
* z3 ^' \$ N; W, B. q; G2 v
C:\L2jServer\gameserver\data\pathnode
, M, K3 ^ y0 w$ X9 \" h/ H: n" {! [) L
3 e$ p. w, T3 ~( x2 g" Q: R4 G0 g: M: O: B. P$ O& Y4 ~: L* X+ d
, _$ ]( O5 ?$ a1 R% |& _6 z7 Q3 {; [0 J+ F" |% R
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:1 g! m7 p; M3 y
5 [2 A+ V9 {* b4 p7 d5 T
( g4 x6 N& m2 \3 |( f, y
4 D4 H# s4 k# m' K% j/ |- R9 ~6 x
16_10
$ i7 ^, j$ p3 N9 R, W16_12
; G; U: F7 F7 F5 j9 R& j16_18; a% D* u6 @7 ~1 F$ {, x; h2 K
16_194 L6 }! A5 ^* k
16_20
* A' K% l6 Q: A: D/ _) [9 w16_212 I# z% t' o+ a! ^ b
16_24
# q4 [& P, s/ S- r) J16_25# p2 I8 k E& }9 [
17_10- i1 n @$ T1 X' J; u) A" p: B2 @
17_11
- b; y$ X) ^! t4 Y6 P17_15
: ^* I4 ~7 ]5 [1 b/ _. Y17_16
+ z/ Q5 e) _7 Y: c* M9 D+ o17_17! r o6 H6 T4 y+ }% b4 D
17_19% r& ?6 m4 O" J2 o) F
17_20* L6 {( l! f3 M7 w4 i: N* b1 M; i5 U
17_21
c0 B0 y' t" w1 j/ s# i( T17_22. F8 f1 J8 G! [5 i' [7 y% X( p0 V
17_23
( Y& C7 X; J+ G- b& O17_24% d, u- B! g+ I. r2 a! b3 ~. k
17_25
0 D5 F0 g4 h0 H( S2 O. M# K18_109 R' W5 k4 G/ ^3 m0 K1 D6 G: V
18_11
3 [2 a8 Q$ v; m. P18_14
' l( B6 F$ c: b! ~6 @7 h. [18_15! j$ O0 Y$ a5 ? b$ W1 r7 o
18_16
4 R1 R3 Z1 Q" w4 d9 x! `18_19+ [4 p6 F0 G/ F
18_20
, X. K% ~; q$ f; M- n- E2 [4 G18_21
3 U! Y% |% M$ m3 _- y0 l+ D2 B% r18_22
! |. u6 d$ J/ K18_23, j# ^3 C2 C" S q9 N7 g6 T! f
18_24
# U4 i+ }, a2 u18_25. \. @" J0 u8 Q: [% ]3 E. l: |
19_10; C$ ?, Z8 `# ^& S. ]8 _
19_11. \6 k: V% h$ e
19_13* \3 z% G: {: B0 ^$ y; C# O, U4 J
19_14! S0 i% Y+ \$ v. ?$ ^
19_15# g( M( `* i$ t8 ~* M0 [, b
19_16
- F. t" F( |' y1 _$ _19_17
& H t; u4 }3 Q4 L7 B) i r19_18
5 o# n* }1 o' r, o. T9 O19_19
! d: V+ {- q1 P- f19_20) F7 _' Q' X( Z U( }% ]: ^
19_21
6 Q2 y) D4 S# {- O) D, C6 V$ k19_22
+ R( _- r3 e" W1 x+ D3 @/ E19_23& D [- E" F$ ~/ u! Z
19_24
6 o/ m; J/ P7 \- U19_25
3 j8 S. @& m9 H0 ^9 n19_26
1 c* y" i2 j% M8 ? E% L20_10. J2 T, ] l; |
20_11
) \6 k: |9 _. T4 N& ]+ p20 _13
: Q0 M' B ~8 F4 o2 E20_14
. Q$ `" u" ^! i: \" e2 o20_15
|* ^8 s d) G20_16$ {2 _7 F8 `: C9 J$ |2 G5 {% ^8 X' D
20_173 ] D+ x2 R& Z. W: r
20_18
, z) {6 c5 `: ?6 Y6 m6 p20_190 ^+ D; X- W& y* Q
20_200 {* n3 m6 ]* [7 Y" u, F
20_21
& P4 h9 O: ^6 B" u0 u20_22
8 v* o$ _% ^& v. m+ |: o7 v20_ 23
/ _2 Y, D4 _" t/ r20_24% b7 V" V- a8 w8 W
20_25, z' X) z* }' }+ q
20_26: ^% }% R% w4 A* ]
21_11
! H3 ]; ?# Q/ Y21_149 i9 E; J% p: b/ d: B J; V3 r
21_15
7 E/ s2 x' m0 a' |21_16% `% O! x! p! Y3 z9 N8 L a
21_17
. k) b! Q! Z/ M# T/ W) T- {21_18
' |. c" t- K$ A+ S21_19
6 G: h6 w1 z/ C! i3 D, u21_20
% g% c# o8 t% J1 K! w5 w21_213 ~# U0 H4 E7 e) y1 b
21_22' K: B' l/ _. e, n! g
21_23) k" G6 f* t# i0 l
21_24, {. r( w$ k" D4 I
21_25$ q' b# m- b( u2 C! y. C* U
22_13
9 a M0 n5 O v5 K: b# @* J22_14
2 [& }1 l5 U8 [5 G* I, {22_15
& g9 O9 Z/ U& M: j22_16, W/ _( B% L) t9 q$ q; ^( L4 |
22_17! _* Q$ }5 k+ p* I; i! X) U
22_18
/ Q, a- |, n$ `" I: ]22_198 X( n3 s3 ~5 N: e# y2 S
22_20
; |& l0 F& H: h& _8 _8 [22_21
9 h, ]( p$ ]0 Q9 d3 q4 b s* k A22_22
; v2 k$ S0 O& o |) Q22_23
' U0 p3 g( F6 g) {" a7 k22_24: W! q$ P0 U- E3 B
22_25
) G0 s, Z. Q" W8 B. F# \$ r23_11; o2 w+ p7 q1 l, Q9 j5 ~
23_12
* I, T% I3 R0 S T# j2 i23_13
0 H8 m# f! A W$ X2 b# u% Z8 }7 ]23_14
$ f; ?7 l8 Q' |- M23_15/ I9 T; T2 v$ `$ }- h
23_16* C w( ], x8 v: C) n. `
23_179 M. N2 y. s( F( U& ~( _6 F
23_18
) F1 G% a6 o( w( X t23_19: J4 e4 o9 G: f1 z
23_20: J1 `: ~) M5 I; ~" f
23_216 q, M: s2 k& H `) v/ z
23_22
( O. c5 Y. v5 N7 _1 g23_23! j2 U" P) {! J% `6 S6 N c
23_243 O4 J7 b$ i0 a x6 n
23_25
( H+ W" H4 f% b# h24_117 E6 C5 ]# K; R$ h$ u1 e
24_125 s* a! r. F6 |& C
24_13
6 K) X7 Q' F7 \* n1 L8 y24_143 p. w) v( G9 D- V. E% V7 A
24_15' ~$ W. N7 [# c
24_167 T7 Z. W0 e4 i9 W; N0 N6 M
24_17 c- ?& w: R: I* V9 ?! D
24_18 h& s9 m- N, d" s
24_19
6 \) U/ M" W7 ?. T* H9 G7 \1 G24_203 d/ I0 U! o7 x1 Q; G% _
24_216 ?# s j( j6 o7 D, j% Z9 n
24_22. A: l: T+ g' d1 ?
24_23
4 I. y! K0 T, x- F* N1 w' K24_24
~% d: R0 o- N) Z& P g$ ~24_25, ^& T( E- `, D/ U% I
25_11
2 K" d2 N& ^' w25 _12
9 r9 ?6 Y& W$ f7 K$ [0 A. W4 l0 E25_14
& v* s, n" {* N25_15! A4 n1 w" z8 z8 Q
25_165 B+ p% a& P2 E# W9 }( e$ l
25_17
+ i% o) X# x) O2 [, Z7 j1 [25_18 X+ s5 |5 M. \9 A
25_19
! T5 ]. a* N* J i% \' ]$ b8 [25_20' g- j3 [1 O4 @8 P1 _ Y
25_21+ R7 |; n1 u2 i" J1 z) L
25_23/ O. D2 F- L4 K( _9 [7 s
26_ 11
, R; g3 c/ E! I. U7 C g0 ]4 [26_126 X7 y, i! {( T7 w$ L5 j. [
26_140 Q0 @- E8 @) V1 E% _" |
7 k4 y8 a! h# F" \
( n5 W5 q9 `' b. E5 w8 A4 U
7 n, O: Z0 g: Q: u3 \& j# N* E5 o: s3 |. Q. X" f
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.# U3 ?$ {- e2 M6 M. _+ X6 A" N z% j
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:4 h6 J/ T3 p9 K; D5 \/ N, |4 t# [* ]
#------------------------------------------------------------- --------------
! b& s5 _8 g) ]2 S; y4 |# Geodata; @, X4 i2 V L9 H# z/ t" e
# ----------------------------------------------------------------------- ----
) U8 l6 N/ v1 R# GeoData options:/ {6 I; ^1 Z) w( F. N
# 0 = GeoData and PathFinding OFF (default)
; g1 ?' b1 t$ M/ F/ _# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
5 |& Q; x) X' {$ S# L2Playable movement. You need to download files for data/geodata folder.9 e/ G4 i4 p/ S5 F8 U/ W! g
# Monsters can pass walls but not aggro (no line of sight) through them.5 x- v6 U+ ~3 G& v1 {$ q% B
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode# @0 o- T0 A% t$ G# }
# files if CellPathFinding not enabled) and all character moves go through) W$ m; N* `5 z4 t( K9 F, P; e6 x
# geodata checks (if a mob passes a wall, pathfinding didn't find a route
, [% D$ W1 F/ G& ^% B# but we allow attack and returning home).
2 [4 v" ~2 A# |! ^6 P2 Q# Recommended server memory minimum 2 GB, rather 3 GB.
. c; n9 `# I3 k( H7 N# Default: 0
, l* ?- f9 R! tGeoData = 0
8 M& C7 ]4 _0 W2 p5 y5 O
: J6 x2 o3 e' Y$ i
* H3 @& k0 _8 Q+ x# U/ U4 M# s) w# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least. a3 Q( ~, K i' H- a" s
# 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.
; _2 i1 S# g/ R4 W' @" D9 K2 G# Default: False
; U" }3 a/ r/ A, SCellPathFinding = False; G1 j/ _6 R5 X8 ^7 R. Y4 x! B
) S" l2 l: i! L1 p9 U# ~7 F: H s7 ?3 D( Z _
# True = Loads GeoData buffer's content into physical memory.
# b7 a) f; `) c5 j8 J# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.) M# L) R3 {1 l$ n) S- s
# Default: True% R( [6 x/ U4 v) @& ?* Q' P# @3 m
ForceGeodata = True+ @# g' r' ~8 \+ Q3 v. x/ u
, O8 `& J' Q1 F) V, i* F- \ Z* |9 x+ E8 @) S* K) U* O. i
# This setting controls Client <--> Server Player coordinates synchronization:
9 i! d& Y5 l4 J* ^2 m) Y5 {# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.3 ]6 @/ ^+ _1 m( d; q. Q
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
( p% J0 h5 \1 }, V3 Q9 K, u9 v' j# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
6 `8 U( K8 e+ ?# Server sends validation packet if client goes too far from server calculated coordinates.* b8 Z* \# A5 ~: j/ }4 x& u9 q
# Default: -18 {7 L$ q" ~! i y" @2 U, I
CoordSynchronize = -1
1 G5 U- W0 K! b* ?
2 J3 U/ [' W- G) K
( Z" g! B$ D" U
- E, I% h, h$ R& ^: d: C o' q# _6 F6 T" O8 i+ L9 g/ y# P
GeoData = 0
- x3 t# V9 \: @: g
2 b: t1 Z, Q( Q' |' E5 K/ ?5 }( o8 m8 |. ~
" N- N1 {, S: \( [6 d2 V8 N- h
+ Y5 c, J g4 N; U
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
0 f6 `- s- ^5 c( u2 SСтавим 2 если пачнод присутствует, так же включаем эту настройку:
# C8 h6 m2 E2 G" b
) }, X( @2 R; K4 _" ` o, q( {' E: o
$ n9 N" p5 X1 F" s* I3 |- F
! T% {* ~6 a0 [# r$ x; Y: i; I+ ^/ N
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.9 I3 _; I' \, }# L
# 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. l, c+ a5 t" r+ d8 w4 j
# Default: False! W4 L* @8 b5 |9 l5 h2 r6 Q
CellPathFinding = False7 \9 f! S) Z& }- {
! ~, }& e+ a% }# Q& B
( ^! s* K& e3 Q+ \: c1 V: h, @$ O4 F+ X9 }! A7 N# |! Q+ B% N9 l
& o+ w {" a9 J/ v5 a: ZСтавим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.: @1 p6 W5 K2 e! [
Пожалуй всё подробно написал, спецы дополняем если что то не учел.5 O7 p$ I* a; s1 p
1 [( ~* O# n$ S2 @
x' r! Y$ h' Q+ t& b4 w6 d6 }Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.9 m! T D. j: F3 c/ P3 }
1 g* D2 Q L3 j8 p; T+ [5 k+ L
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
8 N; f" A' D& w2 Z
. Z+ @. D/ p/ b4 z% { |
|