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) ~4 y$ B0 m0 M4 f, F
Сборка        L2 Java
& X! P: Z8 t+ E5 o# c7 @
4 q, @+ ?4 F* M# C. `; I
- z% b% F- z& s/ e  @1 c
Доброго времени суток.; t1 e( j" j+ V" t) ]3 M
1 y8 d! `1 z6 E& x- V9 d: @
- n9 f1 J  y1 K: X9 H
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:3 {6 t- O. N8 D5 A2 R* b
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
! u& r0 g) K5 U% N! B* ^Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.0 |4 H/ }0 }0 y& R0 f5 ]& i0 `
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.4 f: J4 R$ h4 \- M% G% k, p
$ \, z! m2 i( t0 G% s( v
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:% e9 F4 X, k$ ?( c6 K! F. D
[attach]495[/attach]
5 @: j" z7 b5 h

5 Q2 @# R( q4 a$ ]# `На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.! {6 [- z, u8 q/ a4 u
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
. n" Y0 ^& i( g" u+ @1 e( bРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
2 q. g+ m! D5 T4 s: q7 BУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.! X2 ]  Z$ e6 ?! r+ Z$ K  S
) C( k) ~1 K. U& d. Z

; L5 X5 P# V  _4 t( M/ [4 \) nЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
! O" w. l+ F6 f7 T. pКоличество файлов пачнода должно быть равно количеству файлов геодаты.+ R  |9 Y. C8 _4 o
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.; J+ ]$ d( k) X5 i! N1 u* k
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
& l. g* M2 h, a7 e: M8 d' X" uСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
9 v6 [$ g4 b# b& q# X  f2 a. qТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.& u; {& Y! i9 I& A2 ^
Установка геодаты на сборки без пачнода (Rebelion):$ r8 V8 v& s$ n7 E% f! `
Покажу на примере L2Dream.' ~+ |* E: o- M! }- w! s. y7 N
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
0 {) i* [" H+ q3 C: k' C# j' a# q9 A7 |: \! T$ M

8 W& O. a3 v& C9 L$ U; bC:\L2Dream\game\data\geodata
7 R" F1 H  C2 p: a* r1 n2 B5 |/ P& w) ?

* T0 _6 _1 ^9 Z0 }: p' m7 g2 Q' Z0 c0 L, q
9 q3 s% S% q$ @/ ?: H/ p+ q/ b
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.% R2 ~& }( `6 `; A( g
Настройка.
2 O  c# E  }' Z, ^. l3 X- M4 ^Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:/ F) I: p/ i7 M& D+ K( R
#================================================= ================================================== ====
5 G, t- }# ], P/ y& Y, V0 U6 t7 ?9 m1 A. E# Даный файл является конфигуратором геодаты.
; c6 x3 o$ g/ }) ?#5 r8 K+ i( N  F; R
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты./ G* ~7 q5 J; @4 {0 m8 V, H8 t  O
#
, n4 d# h$ S7 F7 f# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
4 {: p) k; M" C9 V( O" W9 g# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
3 N' S& L6 w$ ^! b$ E/ J3 y6 n: D8 ~( Y# Ну или просите прикрутить SSL.
- w. ^$ v9 R! \#================================================= ================================================== ====4 ?$ N2 W+ N" t0 t& d+ e; N
2 p7 n7 B( F" a, {
3 I4 d/ g9 F/ M" x; ?
# Включает/отключает геодату и поиск пути.( Y4 n1 @) _0 b
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.5 j. Z* c3 c0 o% h1 l
# 0 = Геодата отключена.+ S+ Y2 ]: d& P; D& d* K
# 1 = Геодата будет загружена в геймсервер." H5 i1 p- s6 d% z9 d6 F1 \9 C
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как' _7 ]& i1 j! \2 G' Z! _
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами3 V, C; _+ i/ l' A# v* O5 U: K7 C
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,- _+ I1 p" k' V6 F  B8 b
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
6 ~8 ?  M" Q7 V' _$ ]2 eGeoData = 0
7 `. A  M. A1 A0 g! D7 X) y3 g% Y9 M7 @1 F3 m. w
& Z. N6 N2 g! s" a! x1 |
# Хост для сервера геодаты.
8 T# d  _2 Q! R) T- L- I# * Забиндит все интефейсы.6 O7 i) J" _: S  W/ H) A1 H
# Игнорируется при GeoData = 0 или GeoData = 18 k, L# [2 Y* b1 L
GeoServerHost = 127.0.0.14 C7 a. A; S, O7 C% s

* M. B- B6 W7 I

6 A: p  ^: z: _: o2 d* c% a# Куда будет пытатся коннектится клиент.: O: S* ^! d3 ^6 O0 R  q
# Игнорируется при GeoData = 0 или GeoData = 1
/ h! [/ H, s$ g* uGeoClientTargetHost = 127.0.0.1
/ G* g4 ?9 e8 x5 q' c8 G  J! r& c2 J- _% ~% j. k

: a! C8 r0 g' n# Порт для геодаты.. N! s: n/ U3 @0 z
# Сервер откроет на нем сокет.5 J) q1 x! N  J( y8 R% M8 b
# Клиент будет пытатся подключится к нему.  y* ^3 Q& ?7 ~$ z! ]/ `: Y! H/ M
# Игнорируется при GeoData = 0 или GeoData = 1
8 o: l. U& e' vGeoPort = 90503 f* S; z( p. g( t9 @0 u

! e& k2 y: F9 e8 ]% u3 E* B

3 A. C# E- L, _" j! W# Сглаживает путь.+ r8 s& ?4 Y& U- `5 L. `: ~
# Стоит отключать только для дебага.
4 l3 t& b9 [3 y& P8 tPathClean = True6 O( W; n# ]) M# B" J0 ]( u
8 f7 R* u' ~/ ?* j

+ U; Q6 \5 O' X4 G4 W# Обрабатывать ли двери в геодате
0 Z- b; q' q/ @# Настройка влияет на ГеймСервер
- x, O) w. c+ {8 K% p! z' ?- NAllowDoors = False6 w8 s" ?, f7 x& r' `; W; F
4 t8 s- g4 H, ], I5 p
3 m0 ]/ F3 Q3 h. `
PathFindingBoost = True
/ A$ U* r3 \+ ]$ }. APathFindArea = 250
1 S( S" u2 H; x; q5 l  U9 v5 R: S  X7 yВнимательно читаем,нам нужно это:
: m! O- _4 W# t" J9 [
( a& Q( i+ \3 d) n9 }" I" }/ v' o

' d' V5 B- S  u
0 @! m' H. M; V* V5 e, \3 K' A

$ |2 \3 ?* K3 }$ |# Включает/отключает геодату и поиск пути.( z1 E+ k& c" y& c& Z
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
% y  S" _2 V" c2 Z1 p# 0 = Геодата отключена.) \, y0 L1 V  t4 R
# 1 = Геодата будет загружена в геймсервер.% k/ R: ]2 f. H2 n9 I1 t
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
! }: Q( t8 Z3 j2 F; @8 I( ]# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами- L1 b' R6 K) v& C
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
9 s0 f, u7 l6 U" _# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.- X, Z- R1 C1 Q7 T$ z
GeoData = 0& E0 M( s) R1 ~; t' _
; @. t4 n& d6 A! m# q6 y
2 N3 f' n/ ?7 N5 m0 w, [
9 V% ?& Q6 I- w4 D+ p* d
$ p- Z7 v% _$ q9 ]. n% u
В этом параметре меняем 0 на 1., p2 _" Y9 q+ y: r
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
( t! t( m% h% L$ O+ K! ?1 C5 J9 R# Хост для сервера геодаты., ?5 Y+ K5 y" B  F/ T
# * Забиндит все интефейсы.7 k2 c! b4 m) q% ?9 n
# Игнорируется при GeoData = 0 или GeoData = 1. e" v5 j7 s2 S2 e) t
GeoServerHost = 127.0.0.1
0 }2 [# i- f8 j- o: ?
* w2 A, d) m6 J9 G7 T
2 ~+ i. M8 a* {% t! w& I
# Куда будет пытатся коннектится клиент.) i# o' Q; i- R  u8 G* i
# Игнорируется при GeoData = 0 или GeoData = 1  f# E& i: B3 L  W' m- |$ a7 c
GeoClientTargetHost = 127.0.0.1
, T! n* p# B2 D( k3 {& I% C6 f, Y3 A# X6 o
) i+ B* O% l4 g7 a
# Порт для геодаты.0 O% v* w$ `) E+ l3 o! e
# Сервер откроет на нем сокет.
$ b5 f2 y, Y9 D$ p% F8 k+ J# Клиент будет пытатся подключится к нему.5 x$ J; q4 w# H# c
# Игнорируется при GeoData = 0 или GeoData = 1: k" |% u6 c0 m1 z6 Q1 ~$ ?
GeoPort = 9050: r2 u8 V4 `4 Q
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
. Q( G5 L6 L& Z8 f2 ^) G( {; g7 a8 E, n9 E1 Y

- Q) `5 D3 v0 d2 ?3 v. f7 L
% Z0 Y8 l7 e2 |/ C8 L# J
' [/ H3 v) g) M+ Z
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
: Z( [$ |0 z4 k. |  ]% C4 G" d% ^' a$ P0 u# L' F; N4 J6 a
6 z, e! n' l+ \7 ^& g

; C* Z3 `' a. G4 f
( Z: H0 {% t+ R- s8 l7 t  f
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:% e/ E; Z* @! j
! ?) `. y  A- F8 h8 y* `! q+ n
  I5 G2 ^2 A8 |( E9 O
' D4 s, B) n  Q; b9 e# [- T

0 y% q9 ~' \6 C) E. R4 U# Обрабатывать ли двери в геодате
9 v- _# L* Z, G7 |; Y7 s( U# Настройка влияет на ГеймСервер
( \9 @( V: G. y% b9 n0 S: ZAllowDoors = True: p& a4 X2 ]2 m* t
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.. |% l3 a$ l3 v' W: W) ^
Пути размещения файлов геодаты:5 r; i+ l% i1 O5 G; k0 o; S& u) S

! D  K) O' f  K

5 W" w# D. k* S% D- `, YC:\L2jServer\gameserver\data\geodata( p% T$ S6 [. z, q$ }# ?
0 m" i( @; C/ [( {  H1 n+ G

$ R5 Y7 R* X; n. M7 k# K! g* a  a" d5 u* ^/ }; z
0 ~- }& }5 m/ u  [% s" }9 f- s( g
И патчнода:
- R6 h- Z0 B: O) Y9 o; z3 h$ {- ?
( O5 w& v3 e+ L6 E5 }

1 \& G, \& N' U& l+ sC:\L2jServer\gameserver\data\pathnode5 ^. I' G; M7 {( v& A; Y' v
- N8 C& X( P: W! e  f1 R2 Y" D

& j1 x1 M9 e: M% e8 P# H6 R( K/ h- ^, y5 f3 p% H2 z

/ t) ^  O7 E+ P' }В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
: u8 d8 [" {, o' d7 R6 I* h& r# W
" c* N: v) a+ p+ A* U7 Y2 W
  M' v: g8 b& K
6 g; K# w" g5 f* @9 d
. y" }" Q8 u, c
16_10, ~5 J; C2 ?, ?
16_12
2 e1 |" B! b% G* j: K# g16_18
; s9 u' k7 b3 v+ U: W0 a& V16_19  _& i4 n( I7 F; g% Z4 j$ Z
16_20% a9 k3 E5 Y% p3 q5 b* j
16_21' b6 O2 Z' F* H- M
16_24! _: s: l4 A: W) }2 o8 b5 E( w) Y
16_25* ~* X' G! D8 W3 R4 Z2 c
17_10
, j( E3 b, M  J; M% Q17_11
4 n) ~) E/ {1 |2 }17_15
* j2 Z: l: U/ Z! [1 A# y17_16
& ?0 D; Q! o( p17_171 f: ]6 g# K& q
17_19. k8 E! @) p# ~/ h
17_20; R6 u5 q* h- g7 F5 }
17_21, O, F" M! `9 T5 ?8 q7 ?
17_22# [0 q/ |# `0 A. w' J# a
17_23# J# l5 c' i& _" s9 k
17_24
0 X# J4 x! b0 F" i, M17_256 P5 p+ u2 P9 }6 w
18_105 I; x1 P! U/ u
18_116 o- x0 `* c; g/ K: a
18_14/ C7 P; M/ J. C0 ]
18_15
! w( `4 J7 ?2 l8 T3 S6 I18_167 o) _8 z9 L% ?
18_19; `9 z9 O: J% B# R- T1 F
18_204 G5 @. G, e) }* @6 _, F0 N! i! S
18_219 B2 Y) `+ l! Y
18_22
9 i7 j# G( I( I$ h- G& C, \18_23
" w( N8 e8 k3 I9 j; F6 _18_24
/ V% K1 A; i; P7 J18_25- e- d7 |0 j; x
19_107 i" w  j' C8 M7 _
19_11' A: _0 l/ v" p
19_134 _. W# B7 v( Z8 C" G4 X( B
19_14/ @, e, }/ |& |/ s; Q/ }0 a" \7 Z8 O
19_15
% i0 O9 X% F3 |% ^19_16# V8 ^0 F( S* ^6 @% P
19_17/ V% a8 |/ y, z
19_18
1 S- ^) O- f3 O, S8 ^3 m19_19' @9 G3 p/ v8 _
19_20( l3 @- R1 {4 ^: J6 x
19_21
, O. ]" h1 j+ U$ n19_225 h% H' a9 N- k$ l3 B& z) V) R6 Y) m
19_23& R5 T2 O+ |) c
19_24
- W0 T! T1 S! O& @19_25
* Q: d( a5 z% ^19_26( K9 B$ y0 A( e+ C
20_109 N& @& Y0 I. o  Y% ~( }
20_11! A/ p8 o7 |) H6 I! U7 P  M
20 _13+ M7 I' I, X  }: L8 q
20_14
& J$ z0 m: {. C& Y20_15
' A& v5 P) K% Z20_16: A# l8 t; v. F$ T9 e$ D' l
20_17
1 c; Y3 H, g, t2 s9 Q6 @3 ?2 y# `20_18
0 M3 |$ a6 O) W4 n4 I% Z' k20_190 ~+ D6 G0 ^8 w! B/ n+ F
20_20- j: h6 c7 F7 f# i1 W
20_21
/ O3 E$ w6 O' @0 y! ^$ a6 t5 k20_229 A; {, O6 E4 s& j0 `2 Q
20_ 23
1 c" W) i" f3 N9 R% ^20_24
, q3 B4 W, j$ V$ F* \20_25
1 g. f9 t/ Q. M8 k& U; i20_26
% A) L& G( H8 O7 y21_11+ I: Y' x. K( m4 V' n+ c! }+ w4 f
21_14, Y0 e5 z$ M: T) n0 w/ u/ I
21_15
* x1 v) N4 J( Y: y21_16; n) a  C3 \4 d& T8 x( X
21_17/ r$ k2 S" `+ s& x0 x- v+ Q8 }
21_18
! a5 I! @$ t0 ~. p# P. N7 ]( t& t& z21_19% \- m3 e4 `2 P
21_202 Q* {( @: X0 M. |6 e+ x! L
21_21: f: G$ m! C- d* @6 J+ s* K& A8 P
21_22
- R6 D2 {6 V2 b21_23
" z2 V% b7 P8 R9 r% g, K21_247 c, _5 r! E* V5 W- Q
21_25
& ^2 B$ V& `, L% N2 f+ t22_136 F3 V- I0 f0 r5 q
22_14: c: T" s8 ?4 H5 m7 Y) W7 @
22_15
4 R9 [! v: R! Z, }7 o* H22_16
5 e$ w" s2 C1 D" `5 d; X6 n1 q! K22_17+ l# T, I  {& ?0 o8 k5 U+ x) g! Y% N
22_18
2 @4 @4 g, f! \22_19. s4 w) J7 o& w9 l
22_20$ X& d2 u& ?& ^9 r4 v
22_21
1 q( C0 @5 m; V" p22_220 r, m8 k/ b! l+ z7 q- F8 H& k7 A- _' r
22_23
# ?0 |: |+ q1 C& `9 A/ [' k22_24& k* b9 B1 ^8 \) L* p6 s
22_25
5 ^/ D' e& r( k23_11
; K" h9 M8 ^; j( g! j  J, V+ }& Q23_12) g$ g, `- j$ i- ^
23_13
% s4 P" m+ y' g* A+ X23_142 x5 ?& G2 |0 s5 V4 k- }3 r
23_15# }' Q4 ]7 o# |3 A6 i4 x  r8 W
23_16! J8 T# t( G0 M) w0 c
23_17
& I# A4 \! U! J+ j8 _& |23_18
( b! Y7 M0 @  Y' c( ^23_19' w% q# W# w. G; o
23_201 O8 T0 N/ p7 z3 A
23_21
; _2 e7 D* g, z7 m9 Q/ F9 d23_22
" d3 M. ]/ [: O* _4 n$ l. p3 T23_23
5 z; ]- H; ^( }* W: }23_24
* `# U: k- W' L) r; f23_25
7 b/ X5 h2 X, H) d2 q. k3 P' a24_114 i0 `$ d: B5 E1 w
24_12( y3 E3 o3 w. U2 K! d2 A/ |. [
24_134 i" ^% q& b) j: O# V! G
24_14
6 R. A" _* p# o! ]$ D3 s24_15
( U: h9 e% s8 l+ m% ^24_16
' q2 v& \; b; i4 l24_17
2 Y1 @6 X! h  Z+ L! ^! n+ `! N24_18
0 |  o# F! E% v24_19
, U8 f( d- ^3 n1 r% R7 A3 a# o24_205 z% {1 R/ {$ a: \4 F
24_21
- _: [. p0 R0 h7 w, C0 x' T4 C& I24_22' h+ x1 {/ h$ t
24_23+ M" p$ s  j, n7 e, ]  L
24_243 X4 ?) v& j. `# `1 j
24_25/ _* v1 f* F6 ]0 L
25_11- Y* o. p0 y7 n+ F, O
25 _12# z* g- J+ \) h+ `
25_14+ p6 ~3 ~, H' f- _8 l
25_15
! ^/ N- [" u# J8 V+ g25_16, U! q( M: e- `8 Q" ^0 b$ ~# o
25_17
, W+ h( `* @9 p/ R25_187 H# |7 i/ @; q8 g: Q
25_19
; y' ~6 B. m  r- D25_20
; Z& v0 V$ A* Z25_21
1 W  N% ]% v2 M) X, t25_23( F* k, G! W" [& H9 e8 L5 V, T
26_ 11% t/ ]2 B  ?* j- l$ @: O% U/ m
26_12
8 G9 D' y9 r. j26_14
  K; n+ t' X. d& ]+ i) s4 X# Q0 d( G* A/ ?+ x
! X+ r/ d0 ~+ v# R: }

7 ]: S' }' r6 v. ]0 m

, O0 W/ Q2 {+ e' Z  E3 g4 y; K- w" SВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.7 s# N8 J4 u  o# y. D! `1 A: x. z; a
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:7 m. m' B# E, q6 ^) @
#------------------------------------------------------------- --------------
8 U1 I1 @& `$ v# Geodata
# w/ ^. P0 ~6 _, S) M9 j# r+ }. G# ----------------------------------------------------------------------- ----% R) h' P0 d% ?5 o+ {+ D8 ~
# GeoData options:/ `0 q" s8 q, _, ]* g. M
# 0 = GeoData and PathFinding OFF (default)
# `6 c" j# h( ]# 1 = GeoData is used to check Line Of Sight (LOS) targeting and4 x! _1 ~5 O; C4 F- q1 d9 |% t
# L2Playable movement. You need to download files for data/geodata folder.% b% V/ V. B2 Q, y6 f" ]8 \
# Monsters can pass walls but not aggro (no line of sight) through them.
) v! c& i+ G6 w, j( m8 g# R# ~+ \# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
5 A) h6 k6 L$ q; ?& [+ a# files if CellPathFinding not enabled) and all character moves go through5 t+ F# \* {% ]# i1 s
# geodata checks (if a mob passes a wall, pathfinding didn't find a route0 V# o/ Q* z6 o, f' n; _
# but we allow attack and returning home).
; p5 L# l6 w$ D% ?$ e6 X# Recommended server memory minimum 2 GB, rather 3 GB.
5 q: u' K7 x+ L, Z3 W# Default: 0
) R" w, W6 D; B( zGeoData = 0
, b( u+ A% f- u; t: w, ~9 J
- s, c9 v0 f' z
* p6 B1 V) P6 W8 }. N% |5 C' X
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.  |# \5 P$ P. l6 ~
# 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 \0 t2 t0 P# `$ P- z& n+ f5 m1 o# f# Default: False& i1 b3 |5 p, T, M. P# n
CellPathFinding = False
" c) n5 N/ O: r# J5 M* m2 W# {" i# M1 g

; |; s6 \; }6 S$ f: z( }, s1 L# True = Loads GeoData buffer's content into physical memory.
: f7 F* P4 l( e# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
9 ]5 u% |" Z+ y9 V6 M# Default: True
+ X" ~3 ~; C3 b! S  B4 ~ForceGeodata = True" C* i  P& U" @2 y; a+ B
) m' j3 L9 p- H: Z- H
3 d" a6 m5 K1 Y0 F1 g5 y0 K
# This setting controls Client <--> Server Player coordinates synchronization:8 a# U- }5 l2 |  e  C6 y. G1 `
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
; X" @8 y3 K8 m; w# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
8 q; l" O6 _0 I1 Z( A# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1)., H- _& M; p/ t4 I
# Server sends validation packet if client goes too far from server calculated coordinates.1 D) H" y1 h- ~4 y2 U! C8 X( A
# Default: -1
0 u- k# J5 [2 V5 _# A- {CoordSynchronize = -1
( I$ Z  ~7 z7 c# b0 s$ I* k* @. @" N/ B6 i8 h8 x
: g$ h" J) _) K6 H: e7 d) L! T% e

5 T2 z, u1 i0 f+ d, U$ `9 _
* A- F" J6 D4 q
GeoData = 0
# Y" F" M* {- R8 D: l
* \3 [& G5 K# `. Y1 ?

' G8 B; d# j* c) a4 k* j
$ x; Q. P9 o  o" Z5 f* Q9 F

, P6 h, ~1 r5 g* B; a! wСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
+ `. N6 s% W; b8 j% ~  KСтавим 2 если пачнод присутствует, так же включаем эту настройку:8 a: p9 [1 R# F- g: ?
% b; Z0 M6 J8 O* |
% l, x4 Q& d* ?

, A0 W/ F- l' u9 ~2 u/ w+ G
* [3 F' t4 o$ K) U% Q
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least., O' _5 M- M9 V% H  `$ z. c
# 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.
/ D9 N4 G+ c+ Y/ P' ~4 s# Default: False, J& w1 i' \! R. U' I+ ^9 @3 S
CellPathFinding = False  r! o. d5 o0 B0 S" j! ?
, n$ \* d8 d" Y- _* H
6 v: J* X2 Z9 x5 o1 l; R, }" t

& c' p8 ?% x  U$ x1 \+ b' X3 n& ?
/ M0 m, R6 B2 K" k! n5 [
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.# `5 ]  k$ ^: G7 ~1 `4 ~
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
6 F; J3 t& E4 h9 {# _* X: ^
9 X' G7 h' t' d3 l) N* S
( A# i) f( O: f1 e: P; U& B! |% i
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.4 m# {) k+ ^2 @

! Z2 C* G+ ?9 C, M% `И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
  o; n) c8 P+ ?0 y: [" Z* ~- V1 c





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