artace.ru - творческий сектор

Название: Геодата, что это и зачем. [Версия для печати]

Автор: admin    Время: 2024-9-17 19:42
Название: Геодата, что это и зачем.
Хроники        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/ F  ]( J/ J# U! P4 f( d
Сборка        L2 Java/ j: y) `4 |( c$ X8 a; R
9 B+ s8 Y' o. r

+ G9 z0 v0 e, G. X+ [6 [Доброго времени суток.
- x# h& j% ?0 Z3 H! P: w4 g& K. C" I3 W$ Q6 N

) L1 F2 @* |9 RЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:- }5 l& X$ L8 U. ~) U# C
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.3 o! r: k: o$ s! ~8 y* I' P
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.# m. L0 ^/ H- j3 p! T+ ]
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.% v( R; b) z8 \( K
' c! f8 ]- L! B5 h
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
# E  i5 q2 ]3 L$ ~; b0 t[attach]495[/attach]
7 P" x5 }5 A: m. k4 @- g
7 P0 U  g2 P: X. U! ?
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
; [% S; z, F6 ?( xГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...  a4 c2 n2 l, C0 O- b3 g8 v0 ~
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
9 t. j. V: A- t' {- U0 |1 T, m( WУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.& S+ O  a  ~1 {' \- _+ @: `7 g

2 a2 A6 @$ Y$ C# i7 t4 S+ [

! }0 n$ c# L1 c0 B$ ~( QЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
1 u( h" P. k. j0 h6 @Количество файлов пачнода должно быть равно количеству файлов геодаты.
" _+ K* s8 Z; i2 PЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
& u5 x! E" O4 Z) H/ u" j' {Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.( e9 F( [5 F' [* d3 p0 v! `
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
2 G4 m$ `2 }9 `0 U) y0 ^Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
9 z# |/ [6 P  z- l8 K% R) \Установка геодаты на сборки без пачнода (Rebelion):
8 k0 l  k' q8 rПокажу на примере L2Dream.( D2 {: M6 V: V* T0 d! ^
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:- S$ |% j, D" `: P9 H7 P: P, E% f
3 f% u( H  @( I+ F6 z- p: M  N% z
9 U/ W7 A' k: G8 y; C( \! J# |
C:\L2Dream\game\data\geodata
4 e0 F# }" @, J9 \0 x5 y
. m" {% {2 k( Y: J1 B* c, {
# r0 _) i2 d. U( ^' e, y: n

* l7 K. `! R+ f2 _" f( B, w
0 L4 d! C# \% a" I" `( f
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
' `3 f9 r; n, CНастройка.+ @. A8 z) v7 Q
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:" M) E% T: K9 G! e& e9 a
#================================================= ================================================== ====; u9 d; `2 Q5 ^: l# C% B" o1 @+ d
# Даный файл является конфигуратором геодаты.* z; r( {/ B$ {2 x& A5 j7 j
#
; A7 C+ W- _4 V2 e0 s  f8 O# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.9 k; h# `) Z# i; n& Z8 {+ _
#  c' y  Y+ i: x! a$ M
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).3 N6 F% t* G3 ~: p$ e+ O
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
4 d6 l1 Q3 E. A$ F# Ну или просите прикрутить SSL.
7 `- W8 p; E( G. `* D#================================================= ================================================== ====- y" o. m1 m3 x

8 l, P1 B; Q' i4 L/ \3 q

  c+ x+ ]: s8 B* V3 g# Включает/отключает геодату и поиск пути.1 H. I* U9 a1 Z$ |% U
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
1 t4 v" }0 s4 x# 0 = Геодата отключена.
7 o0 v1 `+ N1 u3 {; |2 G8 H- K6 k# 1 = Геодата будет загружена в геймсервер.- F3 f( h1 J2 W* ]& O
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как/ J" E/ V3 N9 X5 n* B+ J
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
8 _9 ^/ n. N: _& z! I  c# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
) O" j) F5 n/ {: a" v  m$ {# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
1 f  O" g9 M4 K7 jGeoData = 05 E9 {: H, k$ G: W8 R
1 ?" e" O1 M$ z0 L+ n" b5 I8 G

: L  y2 @1 [- {/ d* W7 ]' g# Хост для сервера геодаты.
% E- c; u* X. }  M# * Забиндит все интефейсы.
' R9 q* j# Z7 S8 O. N7 I+ u# Игнорируется при GeoData = 0 или GeoData = 1
* D) M4 G& U( x# Y8 X  kGeoServerHost = 127.0.0.1* v0 _# n0 z! n* _
/ H1 h" L+ m/ G6 g! o0 s' I

. U5 ~9 S/ f0 `6 \* ], E# Куда будет пытатся коннектится клиент.
3 w. `6 `+ A. `9 A" `% j' ^( A# Игнорируется при GeoData = 0 или GeoData = 1
& K$ D5 {+ ~; U& {6 [$ ]GeoClientTargetHost = 127.0.0.1
  e6 c; X" p. U* x, O* e! W  ?! z' u1 ^: x! O

' W- f8 z: @, Q: {+ w2 O; b# Порт для геодаты.: W! x' j4 {1 ~) Z
# Сервер откроет на нем сокет.
- K$ m. @3 z* [: w9 z0 h! K+ @# Клиент будет пытатся подключится к нему.
/ i9 }& F$ ~; r. q# Игнорируется при GeoData = 0 или GeoData = 1# D3 v# G: K, ^2 [7 ?. R3 V7 [
GeoPort = 9050
7 Q' W& G4 b! ?" b( a' x  _& x( Z* Q* U/ m2 B+ m2 B% Z) ?5 ]) G
  ]8 t! a+ @. T$ L
# Сглаживает путь.- @% l2 i& K9 {- k
# Стоит отключать только для дебага.6 Z1 `& g" G" g/ i# v+ r& n
PathClean = True
2 t' J& w+ @6 g9 O6 J, S5 D6 r% X5 A+ x, G" f
. d7 m. a. Z7 l+ [+ G
# Обрабатывать ли двери в геодате* f: u# N9 W, o4 i& m% r
# Настройка влияет на ГеймСервер
5 s( ]/ W: k. p8 F! F6 b4 _& ?, X) RAllowDoors = False" ^8 m) r1 `, N6 a

( x( V1 h' p0 r6 D! @7 e3 z

+ {6 b; P# ]6 d6 t/ YPathFindingBoost = True
! R' J3 a8 e: k, K# kPathFindArea = 250
$ O( V% h  c& A& P# G8 d9 {; HВнимательно читаем,нам нужно это:) ^% Y( O! f1 P1 v& t# _, \
1 T7 X! o* e- Z
6 a1 C0 \4 F9 D8 |" o) ~
7 O' ?' e6 s& k3 y' _& h* y6 U; c
' x5 |7 U8 u3 N& r* a: i" o
# Включает/отключает геодату и поиск пути.# ~; Q5 p5 H( M4 k1 p9 L
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
0 w/ D0 P! \* N# 0 = Геодата отключена.
. C' J3 @; u/ ^" t; G1 U9 E4 Q# 1 = Геодата будет загружена в геймсервер.$ r& W, C1 J$ T' L8 o; G- g8 M
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
3 |5 Q& z. o5 ^# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
# C! o9 f) ]8 V# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
% j* {8 G4 O* n0 c3 Z# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
6 F9 N* y' Y' qGeoData = 0
# p7 N% P. R6 o. j1 ^0 Y. e' |. E  V% k$ a0 x  {3 f5 f; `( |

* l$ m3 i1 G! M# {9 }: \* |: j
/ S6 K" p" h3 D$ v$ ]
) t: u( W, ]. `
В этом параметре меняем 0 на 1.
( _, N, L+ Y7 H& ~/ h2 ставим в том случае если всё таки решили поставить геосервер,его настройки:: d: k0 L8 ?) X9 s2 z/ W
# Хост для сервера геодаты.! ^# r) K7 t1 f. x) B  X, k& w
# * Забиндит все интефейсы.
9 P6 P: A( ?% s7 g* l# Игнорируется при GeoData = 0 или GeoData = 12 Z% x: G2 \- h$ P0 [
GeoServerHost = 127.0.0.1
7 W: S0 I) ]! H7 h' q/ B! J- o) V; [- A
- O8 [9 [) A. E; [( d
# Куда будет пытатся коннектится клиент.
0 G4 n6 _; r/ K5 L# Игнорируется при GeoData = 0 или GeoData = 18 p# T6 {$ A  W! C0 T) I% D: }
GeoClientTargetHost = 127.0.0.19 a. B/ z- |+ `$ W" @) f' ]/ l7 G' l, f6 n

7 p- L5 L2 O6 u* d* F! A
" z9 T$ {# J0 K: n& Z
# Порт для геодаты., h7 T+ n% c+ }/ g- C. u3 R
# Сервер откроет на нем сокет.5 X6 v$ e8 \+ O$ M6 A
# Клиент будет пытатся подключится к нему., _6 a1 G% D9 f7 k
# Игнорируется при GeoData = 0 или GeoData = 12 v  l; E1 _) p5 x  o" L
GeoPort = 9050, D) N  Y: A5 d0 j. _
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:- x" S3 |+ X9 x2 d
2 p3 e1 `: p3 J: M

. G) i" y3 {+ Q
- ~3 q' o* x% g0 z& u: I3 B$ |& Z9 [6 v- B
7 q9 W% L& j9 q$ L$ }
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
. q, i. q0 W( A$ Y4 |3 t+ T
. J7 v& t5 X& D9 J0 u) J" `) b
/ Y& N# L, n0 \; j

& c4 N& _, K) s
' e5 N, }" b0 |+ J) {* S( `6 K
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
- l4 O3 K: A% K& C7 x5 W+ Y2 P/ p' r) O* I. m7 O
7 I2 i/ d9 {% z/ Q+ d7 Q5 A0 D9 i
* z0 A0 W* Z& s8 v- v1 D7 u

: j( K; }. U0 ]- A& ]5 i# o, k# Обрабатывать ли двери в геодате* Y6 \+ e. S0 z- f" R
# Настройка влияет на ГеймСервер
4 i) {, M7 f) e  c1 h, d" GAllowDoors = True; ]$ j" I+ M. S$ v" H  |8 ^$ F6 c; o
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.7 I. y* u0 F; C. n
Пути размещения файлов геодаты:  _9 [" v; t. O, b

& J" Q9 f/ T$ i- q! {# ?
* H+ Y0 q$ P$ Z  V; ~
C:\L2jServer\gameserver\data\geodata
% W" k8 V( M- l+ |9 @$ Z! Z" a% i* |/ O! H% R
- |  }7 p0 n; W7 k; _6 c

( K  W% u; R  h+ L
3 R: ^' L7 m$ v
И патчнода:
: ^9 A; X, v) g2 t; X' v3 \( a. x, d! v' P

# x" ^" J" H2 u8 l( GC:\L2jServer\gameserver\data\pathnode  Y- j( [! r+ R3 f

7 E8 M6 @% q9 q* D9 q
3 }  G% ^1 }8 I* B* q7 b4 T

9 o- C% o7 ]7 {+ K. k2 t

  f1 u  O6 L; e2 U% T/ ^# S# lВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
/ g6 S; u; `) H  r- g% W9 I3 G- f; a
  ?) `2 K5 F5 u  [* o  t
, k5 S( B' |( S8 @6 e
) j( K* d. A! S* B. ]
16_10: [* v) u0 {0 v% P; L
16_12
" l6 G1 q' d9 i- ]16_18% ?9 m8 v% m5 _2 [& w  E
16_19! D  J- _. {  y* p9 L
16_20
1 K( G: C# k# ?9 X6 Z$ t0 t16_21
& u2 @. ^. i7 ?0 L16_24: z# t0 I+ A" l7 P  ~3 v; n
16_25
% ]* f$ A& _$ r2 e6 P; r) C& P17_10
8 A/ ?- g3 F( M9 J17_11
% |& s8 O  t2 A3 `9 ~8 u17_15
$ t& {% [/ [7 ]8 N* T17_16% K& u- m  u0 u7 m
17_17
' s6 w2 ~) U0 u! Y" d8 ~0 O# P) f17_19! k9 x0 W0 D: J4 D7 N# W
17_20. D% T& k9 W# ^  @5 [3 |/ K5 w4 |
17_218 U3 n' E+ Q! \% v8 F+ \( N
17_22" v4 ~4 |$ }: Y7 T4 E* K
17_23
, ]7 {, u2 l. q3 o# d0 A3 M17_247 G' E$ U+ W& E* V" w. a: g. i
17_25
" ^" ?& _. w9 E# R18_10
- b& n& |, t$ H( }. n18_11
, h& d. I: W' b4 X/ S' r( Z18_14
9 L; {3 W$ e1 Y. ^! n1 P- z$ h18_15- ~% e  @5 u# ]8 g
18_16- D% C% v2 J. I& T0 K
18_19
* j  u5 T0 z; I/ E8 o18_20
; \5 G2 Y: G9 o, [9 h" `18_21
. k2 s8 g+ ?& q9 P9 N* u- M18_228 ]7 v( L* k( D
18_236 J) A, t9 g; b4 y" `0 r
18_24: E! W$ G4 C7 X& v" ^5 X
18_25
7 f) K2 o; i; t* z  V! p8 r19_108 q& i2 G+ B9 E2 }
19_11
! k$ i. t0 i3 {( w" g9 ^% }19_13
7 l" r5 o0 m5 b; z# E19_14( K7 T; y* `& Q& e5 f
19_15- w! k3 s7 B2 {; T, O( n
19_16
: m2 q8 M9 w) ?. B! U19_17. `1 r: k4 @- x* r% M
19_18! Z8 `3 J) J' X  Z) T; A% R
19_19
- _2 ]2 j; i$ Z+ A# p- m; m19_20
# [$ |& O7 N- ~' k# l& W19_21
9 C  l4 G9 t7 K6 g$ f6 b19_22: Q: `8 d& Q4 x$ V/ b, u; b3 R
19_23
) [+ Y3 K9 g( G' G% W1 s19_24
! R) Q2 G. w0 m; O' V) b1 o19_25/ e0 f1 c& k; B7 n, S! ?$ l
19_26
$ @8 }( b0 X' F2 E5 G4 |20_10
) H8 W/ h, D% ?7 I/ m, w20_11
: @& g+ r9 J6 f) i0 G  L& a# T20 _13" I7 {( @1 V+ K1 z$ I
20_14, c+ n2 f6 j/ |8 b
20_152 j5 p& R* I. p7 n0 |
20_16
& f5 Y) q0 w0 z  A( N20_17- c8 O# ]$ z2 n
20_18
" H9 l" q7 l9 p20_19# h  H% ~3 C$ @% a9 W5 R3 t
20_20# N3 j; p6 w3 r) P* S0 \* M7 n1 q
20_21
! I9 a5 Y8 h- d; i; m20_22
. R) M# E0 T9 n; H; u- F20_ 23
9 c) A3 P8 C' L5 r20_24
: E7 _( J4 A/ f  t' @20_25
3 w2 H6 Y9 C" o# S/ T7 _5 K4 u20_26
' X0 M9 S6 Z$ z8 ?9 j2 f1 |, z21_11
  @: X0 Y# v' z+ n21_14
+ T+ q/ }6 y3 v21_15' ^+ m2 F! \/ |$ K* k, r% `/ ^2 D
21_16  k! v( O) T& f* C6 L. f1 [
21_17
" {. X8 x1 Z$ w! L$ @' I! ?21_18" a2 Z* x/ I1 z0 R0 G
21_19: Y6 N/ q4 V9 D4 M7 @* ~8 ^9 h
21_20
2 f: l* |% B* Q/ x3 |9 S21_210 q" _, c6 B4 F5 g4 x2 q, f* h
21_22! H, @& ]* A. X2 _4 W" V
21_23. g6 s# X9 ?# f) ?
21_24
' Z. [+ T1 F# o) A$ N! v21_25
: [) j: s5 l7 Q& V: H22_13
, [. K+ m$ c1 |+ T% g' g22_14$ ~  R, m, |  G3 \
22_15
' y$ m. x5 `8 b* T' ~* C5 m5 N22_16
( b* [1 k1 I# ~) u22_17  Q. s! d2 |6 z1 Y+ X( K
22_18
3 C6 z$ P* v8 }* m+ x22_197 x) T/ b% A- o( N$ ?
22_20
: b+ I7 l2 o& q" t" Z. j  x1 ?22_21
$ z6 g) m$ X4 F22_22
0 K4 X; i/ C# t, F22_23
; Z; g1 S/ f, n) g$ v22_24) m( ^" P# a, S; S" F4 |# Q+ X6 @
22_25
5 e+ k6 r& P" t5 {# e23_116 C' ]8 G% M' w0 f
23_12
5 {5 f5 [/ R( r23_13
6 v+ w' t: V9 X23_14, f# t0 \' \# b+ k
23_156 t* C- u: U9 o6 w7 [( [! [; h
23_164 {5 y! a1 K' n% g  a
23_17
* F0 H6 Y$ k4 g) Q1 s. e" \23_18" p: V9 u" A! P" V
23_19* w. P9 ]% C  u. c1 r
23_203 f( P- L2 O0 `. i5 b; [/ O# x
23_21
0 X0 C! b; f$ V2 o, Q1 j- O1 O) I, s23_22
" s. W! j) ?  b& Z23_234 W; P) _  H1 F3 _5 ?# m' L9 \
23_24
- o# W" M( S" K! s' b* J, J23_25* V7 W8 g3 @) p2 G6 b  O! I
24_11
5 U' q0 x6 A4 L3 f! c' U& X24_12# _" d+ u0 I1 @8 v8 S
24_130 c1 O- o" k& C8 q% V  l0 |6 M
24_14
4 L+ v4 K0 m: f6 T* A/ u4 Q24_15$ d+ h8 i' }4 l; g! B5 P5 @
24_16
0 ^& j* v2 x+ V8 |9 w$ r; R9 v+ p24_17
0 N; I) P! P  H, k$ Z24_18, e$ A% G4 V5 L: c, |5 o! o
24_19
4 e+ [: t4 ~% t8 E" b, q& C6 R24_205 x0 _4 r) X  \; s7 W" g
24_211 B3 o( w: u1 h2 V+ G! m/ P+ O
24_22% V6 Q4 S8 p( q- C) ?, V
24_23' G! r+ X6 Q! a# H( R  ]) C3 O
24_248 c- Y4 J; _: l. ?. a
24_25
+ t. H, i: {: @- f25_11
, k" p, W, u+ I5 }25 _12. N/ d2 k$ R/ h, H' x
25_14& U8 F, g* |4 d+ v
25_156 [$ s) V$ s6 M( G
25_16! i% l( ^/ n' ^4 F6 ^
25_17
/ ~3 j' M+ n  U0 W7 s25_18
7 J+ v; }0 {$ N25_19
% `6 _. `, [& p, l25_20
+ f4 b# `. `9 o# E3 i# k3 x3 e% g25_21
. X/ ?$ T# g+ t8 g25_23' u* _7 g9 m2 r0 [5 k" n! I
26_ 11
+ p& M( j2 G0 ?; e. ^( \26_12
3 z( W# U! h& g! D1 k7 C26_14# V$ R) D! T/ v" x2 J6 j- ^

6 U. b$ B; v7 h8 P: k% Y$ ]

$ x4 l$ Y) }2 s* I$ z
9 f! |0 p0 G( w) @  h0 o4 U: S

( b1 Q& z6 c/ M6 a& EВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает." V) G( ?+ w/ s, j
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:
3 A. k) T4 j/ X8 e( l- w#------------------------------------------------------------- --------------
( q$ c2 L5 B1 a- D4 n4 h/ @# Geodata
! M0 C; z! O% Q+ {) O8 A7 I, a# ----------------------------------------------------------------------- ----1 @3 N+ p4 J5 t
# GeoData options:
, r' F5 v- [, z) C2 q. m# 0 = GeoData and PathFinding OFF (default)7 E0 X! S+ {- Q! P9 \
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and) z, Z( J/ q& {* N8 t
# L2Playable movement. You need to download files for data/geodata folder.. ?) j( U5 p% a
# Monsters can pass walls but not aggro (no line of sight) through them.+ \. j# I- t( ~; z! {
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
+ E; x1 n7 i, A7 Z. U; B1 a. u- R' U# files if CellPathFinding not enabled) and all character moves go through; k  p/ N( `6 P1 d6 }9 D- z5 y
# geodata checks (if a mob passes a wall, pathfinding didn't find a route3 x6 m# E& i7 L% z  S& {4 x
# but we allow attack and returning home).! I) w; y+ u( a2 g
# Recommended server memory minimum 2 GB, rather 3 GB.
( z8 Z% P  B5 s$ q1 ~# Default: 0* C7 o6 f6 l5 P2 ?) G( a: C
GeoData = 0
5 n- w! z9 J' v. q7 B
6 p5 n+ c' f$ k+ \& p
1 C  a5 _' y7 x! e* G
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.3 H* Q8 w/ o/ L8 c, 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.
. ^  G) s4 R1 K3 V# Default: False$ O5 b4 D1 y  e: e) E  J
CellPathFinding = False
& E' u- O% H+ H! V$ y0 D: {% ]; {8 I3 c. q
2 ~# H' P, u1 p3 N: m2 J+ r
# True = Loads GeoData buffer's content into physical memory.
3 \1 O% k5 I* h3 a# V/ P( M# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.2 ]% j. z! q: w8 V
# Default: True5 n& [1 h+ ?  P1 N3 f: `
ForceGeodata = True% `9 Z7 x) _, V; Z- T% `& T& ?
/ K7 {- p) Q) G% B+ K% ?& l! u" ^

/ d7 w) T/ G; q  C5 {8 t# This setting controls Client <--> Server Player coordinates synchronization:7 d- Y# i& e; F$ G: c2 U, P
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.2 W+ ]% @# b! _% h! f
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.; a0 `1 [& |6 T, j9 X+ [
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
1 t* h0 T2 x9 y$ g& g* o  \# Server sends validation packet if client goes too far from server calculated coordinates.
1 @" P/ O# E( a1 m* d; o# Default: -1# @  S9 f% l1 [( _! ]% F" Y
CoordSynchronize = -1- y9 r8 V/ {( t( X# B1 J( H

% F+ s) Q; w  l3 v4 H
* L1 Y3 B9 P3 q. w9 B! S# o) t

+ ?1 L' y4 w' {( L+ G6 `
* m7 \+ ^0 y4 Z$ L, ^
GeoData = 0. N$ X2 ^, |# h6 C5 i% u
) \6 f& X- \2 L( x. ^
2 `$ J# k8 O$ _3 T% ?# Y

2 \+ l5 d9 Q3 z: x2 k7 z  v0 v
& N) o- _& h+ H/ e  |
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
5 ^1 {7 ]5 ^9 F, e& c, e$ |' W. y% qСтавим 2 если пачнод присутствует, так же включаем эту настройку:
- E* N0 h' i* x3 \. V
3 X# _1 g+ V1 @: b! M! ~
6 w  [1 y: c& Y" U) }0 l7 `1 l# h

  r; _; C; y+ `9 j. A* U+ G
+ i7 E0 V* [3 o1 C+ l" [% d+ P
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.+ ^" i% |* x+ F- u. E$ f3 D/ ?8 G
# 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.
, j" z1 O5 Y* H) P9 j7 o0 W# E# Default: False
5 w0 y. T8 i0 G8 J' vCellPathFinding = False  U* {! X0 B4 b2 Y3 |
! L3 R" M% y* C) R

9 }$ \, y# Z+ `- ?( S
) [3 v. h& J4 R
2 \, V) h" t- m; \5 \: E& {
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
! u" G% }5 g+ S; J% p) v9 L4 HПожалуй всё подробно написал, спецы дополняем если что то не учел.& `% l5 v( ^# M& B; w# L) `8 L

  `  O  F7 D$ G9 o5 y/ k

+ X7 E# [0 J2 V7 K3 `9 h+ {Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.' k6 E' `# y4 a9 F
. m  v1 ~! D' v: B2 l) O8 w
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
0 n  {$ [6 s$ T4 p1 Z% j  G# `3 @8 U- P5 X/ a+ t; r" I- y





Добро пожаловать artace.ru - творческий сектор (https://artace.ru/) Powered by Discuz! X3.5