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
1 A4 h, b: a8 `% \. bСборка        L2 Java" K* x" s4 r* J* ?; n$ `4 ]. ?
: t7 W- s7 E; f
9 E8 E$ k7 F6 N
Доброго времени суток./ G6 @: `+ O% x9 d4 P

" {) A# [, O) O$ Q: g* T  a6 h

. P9 P, |; O# lЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
  F0 _5 D2 T9 {# v, {4 h0 FВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
7 I+ k8 x8 V: V# e; uДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.9 i7 g. Y; g. d% r. Q' }& d
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.8 L1 t4 m" J3 U% v6 I: G) N" r8 X
' Q( x8 [$ t* O# k
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:  J  U( l5 `( w8 y4 L; f) ]; l9 {
[attach]495[/attach]0 _. B6 ~" X( n3 M9 R/ D) l

- F" v1 h+ b7 d" ]4 sНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.) o4 j5 v: R/ y2 r
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...1 c+ D  Z9 n: D' f8 W
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
. l; y, g/ C" Y' e. LУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
- n1 x0 R3 {; b( L( y
0 J8 d8 ]1 Z2 h9 x$ M6 D+ r
' Z1 o' Z% P8 z
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn." m* p9 V( L4 R% o9 k0 e3 m
Количество файлов пачнода должно быть равно количеству файлов геодаты./ Z7 y" t% D) `5 u: i
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
1 k) a) A& C! J& ]. v& z3 t$ y9 DТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
6 h* R7 `: d& J: z! B& kСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
0 k1 J: C& F8 b4 gТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.2 y. O) N; g. y" G
Установка геодаты на сборки без пачнода (Rebelion):
9 N+ x- P2 e9 w7 D6 ]Покажу на примере L2Dream.
3 U' V1 H3 L3 h& kПуть куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
: ~2 O5 T7 a2 \5 h0 }4 N; X7 f. u  t9 {; J4 s0 {% O: e
* }$ x2 E3 i- {0 X% q1 k
C:\L2Dream\game\data\geodata
, ~4 W0 t( _" O% w8 N" ^4 `4 R4 ?% C2 I/ ~4 C5 \0 Y) _
5 J' j8 I5 n" Y; k& W

& \8 c) O% C# Z, i) Z' d% ?- j
- c* B$ K7 P1 W7 F3 K2 g
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
5 B' H7 L7 k+ f+ I7 zНастройка.
6 A2 `9 d" `& T7 m- P0 h) hИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
" u+ K8 v5 u+ J, v: n3 x% F' U#================================================= ================================================== ====0 ~1 W9 ^( l, v* c" P3 u) B
# Даный файл является конфигуратором геодаты.* t0 g) o$ B) B, ~1 \
#
/ M% j" n- `* ^# [! j8 w, q# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
" U/ v! }- G$ d. K7 N5 M" R#
8 L* f+ o: y7 w) B( E' C# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).
: x7 V* o8 ?$ Y  j7 d1 J, N# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
! r+ d/ \7 I3 V$ y) K7 F# Ну или просите прикрутить SSL.& b9 n! @- ?% p: t' {
#================================================= ================================================== ====
2 C+ F1 i; J0 J3 E6 a: ~
! T) R6 e" i' {% J+ G  D, _

8 l2 k1 ~; o- h8 V& j# Включает/отключает геодату и поиск пути.& @( a* b, v/ B6 u0 l4 P# n3 R: A
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.% L  Z6 \; K# {) j
# 0 = Геодата отключена.
. N4 Q1 h9 [; J+ n, _, X8 n& J# 1 = Геодата будет загружена в геймсервер.
7 ~7 |, M: R: Z' C# m0 K# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
6 G0 F* ?' c* F' r+ b" [4 O' o, }0 u4 S# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами" w+ t+ V, V7 F* }2 e, _- m& v
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
2 U- ?0 [) h4 o% u! h* L# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.0 N" p! r- v! Y3 f
GeoData = 0
( H% ?+ E- I5 c) J6 Z
6 X9 b" q0 w% W' a- n/ }
4 ^- ?3 y$ g6 v) V% T
# Хост для сервера геодаты.
6 O, X' ?( _* v) \9 h7 @# * Забиндит все интефейсы.8 C% Q6 y( \( a6 Z- k+ ]
# Игнорируется при GeoData = 0 или GeoData = 1
6 t" l' j5 }* q4 A& XGeoServerHost = 127.0.0.18 m: G0 M2 C  S- \* T6 d6 e

+ s- I1 E: S7 {  e
8 \! I, h/ j9 a2 ?7 w' N
# Куда будет пытатся коннектится клиент.& A& c: o% s9 v& b$ J
# Игнорируется при GeoData = 0 или GeoData = 1
& s  W7 t& V! f5 y9 oGeoClientTargetHost = 127.0.0.14 }# m% r1 Z. ?/ U' P' Z9 u1 K

" s, l' \4 m+ |( j4 G3 v0 v
- ?+ c" b/ S/ N0 S  s8 D
# Порт для геодаты.5 o5 E& e* g# a2 J
# Сервер откроет на нем сокет.
' z6 q( u' q% J# Клиент будет пытатся подключится к нему.8 X6 N' x1 L. f) T6 l
# Игнорируется при GeoData = 0 или GeoData = 18 M7 v8 e* K" n& K7 B
GeoPort = 90506 a4 M' Y8 u+ H; L
9 n. ^& C; p' K- A
) j8 R9 L. I/ j
# Сглаживает путь.
1 ~9 y0 }( a3 i- Y# Стоит отключать только для дебага.
6 o5 z  p. ~/ ^# fPathClean = True% f. Q, v+ L, _% O: ~4 J% P# e
+ r5 E, m% L) Z

9 @+ B# O1 g5 k# M+ m# t8 `# Обрабатывать ли двери в геодате
! q% L1 d) I' v% E# Настройка влияет на ГеймСервер0 [- o) \, c9 \/ z1 d" i' m3 Q) `
AllowDoors = False. a* x3 `1 T9 k! v$ ^

2 f/ F' H* A% r' ~
$ q, x4 k* Q" N$ O; @  A/ x3 l5 M% e5 \
PathFindingBoost = True
  A2 c- D3 X8 E+ F3 ?PathFindArea = 250
& a+ S, R: I5 X5 v/ k% J3 T( xВнимательно читаем,нам нужно это:2 U2 S* L0 i* M9 @

3 W8 M! a# w! s7 w' l
$ F% v# W+ Y+ u* ~# g* c# p

; E( v" f, u; b7 f, `$ v1 Y: b1 G

" T1 g  e: T& z2 @3 F# Включает/отключает геодату и поиск пути.  \" O1 |6 T* a
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
) _/ h5 D: Y* v  H/ @( o# 0 = Геодата отключена.. F2 b5 V4 z: y0 g5 f
# 1 = Геодата будет загружена в геймсервер.
/ ^' j5 p% \9 a0 l9 W, A2 n$ ^+ C# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как5 [3 u4 q3 Y7 M- K
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами2 H8 {6 \; _5 M% J$ e7 l
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
2 ]% U! }, b; p0 O" m+ |# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
/ E. N9 c* D( M3 sGeoData = 0
7 T" V7 }# W% \8 f  H
6 [* ^) s6 v- c  C6 G6 @
, l7 Q1 {' r" f

9 \3 `% l/ H/ C! Y' O

; @5 t/ }# w) e1 l* e$ j5 d! QВ этом параметре меняем 0 на 1.* X3 ~' b* d; Z9 ?0 o$ R4 G
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:& G6 U  h: V) h; ]7 v7 `
# Хост для сервера геодаты.
8 B2 G, k* g- W9 ~# w6 v# Y# * Забиндит все интефейсы.4 [$ _& R* c8 T* S( p$ L, M
# Игнорируется при GeoData = 0 или GeoData = 1
: }3 M# A! ^1 q8 C7 tGeoServerHost = 127.0.0.1, }% N4 g) Z( B0 N5 ?+ I
& J3 v; }, U, S4 ]. L) }0 i9 J( E
/ G* |5 m' l- y& |/ z2 j4 W
# Куда будет пытатся коннектится клиент.+ A$ S' c6 t$ I/ U
# Игнорируется при GeoData = 0 или GeoData = 14 |5 u/ t% o8 M
GeoClientTargetHost = 127.0.0.1
, K# g4 `2 {/ x3 N% K
( V$ B* i, a. l& \: \

& F. f  i% g- Q) q# Порт для геодаты.% J0 C4 }5 A9 [+ x
# Сервер откроет на нем сокет.
5 x4 ^5 q8 n8 G4 \+ j- p) m# Клиент будет пытатся подключится к нему.
7 \" c5 ?5 P* _* S+ ?# ~& P9 V# Игнорируется при GeoData = 0 или GeoData = 1
' O, T/ Z8 \# J, c# hGeoPort = 9050
/ P$ A6 h2 c. gЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
1 y; @' T" f  b. K( l
3 z. J/ m" [- \5 O  v
4 u% P, ^2 I5 M; u) {; v; k; _7 A
3 T4 k# X" t$ b0 E; n
5 T. U5 g) \+ q! W( x5 y  U) n: j
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer6 s4 s0 a. P5 \

1 a2 B. x* I- b4 Z: B$ [# m

9 F# Q& S8 C4 ~4 D4 x" F  R# y/ X7 _8 b4 Y! L" _3 C
% A% J4 l1 Q) h: \6 `4 _) N8 Q- d
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:3 u1 S& \& U% \: _% n  S
- X3 E- N2 }$ H; z0 V& I3 l6 x# j2 ?
# s1 U( s9 {1 N/ w4 [
" H1 B+ `( w9 J* H6 h; `

! B! c. m# C7 a# Обрабатывать ли двери в геодате% T  H! O, f$ `6 X# J5 R/ v
# Настройка влияет на ГеймСервер
. |4 p+ E; D" V4 b# @) ?* F: DAllowDoors = True* L5 O% J+ u" b) s0 c& E+ g! j; l) E
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
7 T: A( W: i* s! SПути размещения файлов геодаты:
7 s7 u: U8 N+ s( L! ]; ~
& x& K3 t. a% F
- w) X! a+ w- _2 P( e' Y
C:\L2jServer\gameserver\data\geodata
& h! ]& \) m& d2 K0 R  G& S+ ^+ \+ X$ g# t! H/ x; {
0 ]0 @1 C$ J2 S5 Q$ e) f

! H, p, Q0 V) ~; j
% E" P8 o; R5 T2 [& ?
И патчнода:6 J. O9 z3 y6 Z# J( W; a  z
6 o7 g" E6 K+ A1 d* C1 [5 C4 U6 b

0 T( Q$ _, N6 e/ J/ pC:\L2jServer\gameserver\data\pathnode
/ E4 I& A* W% X! n  v, ~- W1 a( a1 D* {0 B+ F" a

$ _. e+ p9 s, [$ e) X( ?8 v5 ^" H* F! j
4 t) d4 _4 |& f# N
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
- ~2 y+ z% s0 @* N6 n" m( W7 p# v3 E7 b. G& e& J: X3 ^5 I
% l. `; o* |& [$ J

% _% C1 x+ |; r  {  D5 e5 d! {

) Y  Q# h% f6 }6 k1 ~9 x- B/ \16_104 O' a8 }: y" _, L+ D( Q7 c0 w
16_12
8 N7 @  E, g) ?" @16_18
) x; f6 c3 i! P( U* n. [2 _16_19
/ S' c  U" t/ v1 ?+ t, m16_20. w5 W' J8 B, m
16_21
' }$ R+ M  v: _/ g0 y16_24
0 S! n% m  b  H: q# R! ?3 S7 V% n16_25
9 Z5 b0 E; G4 D2 B1 E17_10
, o# [+ J4 y3 n2 P' y' s17_11( `; d  h- d* v3 G
17_153 s! l' `6 y* _$ K
17_163 n. z' v$ Y+ ^9 Q! N
17_17" e) B! R( Y) S
17_192 i( u: f$ D' O4 d* D& Z
17_20
9 {2 N$ m6 L* a6 F& x2 t17_21- i* U" {# Z; |; N
17_22
8 h  ^8 g4 r+ u$ |4 G17_238 R* Y" i4 L8 l) D) Z" Y5 N1 |- [
17_243 J3 n' e/ w+ j8 k% y7 x  C0 q
17_25
* l; p  i5 G0 x0 F0 F; u* f, d% b18_10
" y5 H' U; ?, P7 d# N18_114 s9 R! C! O9 D+ G4 X
18_14
# s8 q9 O; g+ L18_15. D- _1 A6 B, F1 Z3 a7 I6 q  T
18_16$ n# ?1 d- [! D( w9 V1 F
18_19$ h3 _# M& L8 R) i; C7 _. @6 L9 `+ F
18_202 F' H* f& a9 w
18_21
" n" l' |1 w* R3 I' U  A18_227 K0 H" A: ~0 W. _% o/ y* n
18_23
) j3 j. a3 R! y" [" T/ }* A1 \9 f18_247 i% J8 W3 e9 b; a
18_25  J$ w3 a! z8 k
19_10
6 f7 |% \/ ~. Y9 r19_11
3 H5 u8 x' }5 M! U1 i! E19_13
$ b" |- a9 O9 ^( u4 T19_148 `' v: q) r7 R/ S; f  n
19_152 k/ i) w1 ~& |4 o
19_16( }4 D* s8 `! O2 I
19_178 {% l$ ~8 o( |7 X2 C2 u4 D- ^5 n
19_18
7 |! V! n  k, k2 a* J19_19% c- ^3 }6 `$ b; Z6 j
19_20
9 Q% A9 a/ e4 j0 v* j/ ^: C19_218 B& M) s5 p2 R5 f2 U1 V
19_221 c9 u1 M0 E7 g- M/ _6 y( }+ N
19_23" P2 `  E0 C3 v( Z' T2 J& b
19_247 n. T& ~; S6 K# V+ q/ }4 S" h2 N
19_255 K1 `( a* K# L* I% k4 `+ e9 t
19_26& Z2 r$ Q+ ]; M3 N* ]5 c
20_10
: X: H1 F3 B9 O7 w( {20_11
% p0 v# z' _* ^3 x% g20 _13
0 e+ k. g( H$ z- T6 @20_14% `" I  ~) m. w7 D
20_15
. W2 i+ J: `* ~# _1 f( o3 M0 _20_168 W% x: x0 R9 f2 B( l
20_17
* [( R1 C+ ~! p20_18
# ^! q+ c& i$ k5 S4 y* z. C20_19
6 d% @/ Y6 E* R" Z* K20_20' c8 Y5 ]$ N. c* X0 B1 C+ [6 h  w+ b
20_215 `% c- E* P/ E: C7 {# J7 ?4 l
20_22
$ H. R; x- a$ \' m) d9 l* x20_ 23
, N9 ]( ?4 c( @0 f; v20_24
# P- f: R- j7 m+ V9 X/ [& Y7 j1 j9 Z20_257 V7 p2 g  f, z0 o/ k' M
20_269 e! O# _; b- y
21_11
1 X. C& L& @2 e' l4 i, ]21_14
- o8 o0 F6 V& y21_15
5 D' V+ h6 L2 c$ l" q& ]21_16
6 B+ u1 N6 C7 s21_17
( ?& `8 U. O3 Y. Z$ `8 X9 \21_18
" c8 V  @4 r4 N9 y( @21_19
0 q$ u7 M- F* _+ Z21_20
9 a! \/ g! W% [21_21
& [5 s1 D7 J7 q4 f5 L+ o4 R" B& u! a21_22* _0 g' H& N; t! g' T6 N% {
21_23
' C0 a. j1 H6 F+ _0 ^7 G4 ^21_24
# _. ~! Y6 a9 ~# L" G' E0 E21_25" l* h2 `! e+ d  }* S4 X
22_13
" J9 F& S2 b  A4 R! J7 W1 U22_14
+ ^$ r  V( p( [2 G) P" {6 d& W' n7 Q22_15
6 C4 l. h& w& x# p22_168 R3 |$ p+ [* \# X; k8 h4 G$ I
22_17
5 b, h) i) w' N* y+ C5 ^22_182 g' _( x& K" V. h5 c+ j$ z0 O
22_19
2 G% }, l& o, L2 @$ q  m22_20& U$ F+ i9 z! i
22_21( H/ n3 ^; m# o  l' c) k+ |6 b
22_22" f6 {% Q, {: H1 D* @& x% K
22_23
7 F; R5 N. Y6 Y' N2 \9 S22_24# t# L/ s& C( p' h
22_25. C) ?! }: ~1 h. _5 J; U
23_11
/ O$ w# t& m1 L& v2 A23_12
+ C. N! P; z" b( n; ~" K7 M3 h23_13
6 a3 g) Y$ w* \23_14' K- J# s  r6 B/ L  c0 Y$ b, T) w
23_15' E" i; z+ O% a- J6 Z9 b
23_16
) x5 a, k4 O- J+ L1 G; S23_17
4 h" n) B: \+ e4 A23_186 ]3 N* C! v/ D. }
23_19
% e# L* V2 P  r8 W- P) n  P% R; \23_20* l+ f3 I& y& M( j4 K- [6 n6 j
23_21
1 s* a  h2 ~' A6 }* T23_224 E5 X1 i/ z: j* z/ G+ w
23_23
7 _$ u( [! @1 }  R0 W7 E' s  {23_24
" w) @! \6 b8 X) h23_25! t. X8 Y; ~5 z1 |
24_11/ t1 j! y1 f: Q4 w
24_12
9 j4 ]" @& s2 `5 t- v7 I/ u7 o24_13
! J9 |* W5 O+ M1 [7 e4 n) b* F24_14
* |  p% |2 [7 v' h24_15
! P( W2 D0 _2 ?7 b* q& N24_16
) v- @4 G. {& `24_17) G1 x9 m# D0 a% f! ~* ^1 C
24_18
2 X: u, X) x- ?* I  M5 C, b+ {24_194 L4 l. m: T( Q7 w6 A5 U
24_20" G5 p: m0 B* L  b1 Q2 v; B" z
24_21# ?1 p$ \+ c; u3 q& o
24_22
: s( {" H( z* V% z0 k* r: I* N, p24_23  K4 E/ i+ i8 _+ Z# @! g
24_24+ w+ Z! q5 i2 y2 \2 B% e2 L  J
24_254 a& I8 z/ }' U- e7 p! H# R
25_11! s$ r5 [  v  W; g
25 _12
' p8 k( D! y1 g, B( R% K+ m! Q25_141 z/ e% k! w7 J( I) R0 T% _3 T3 t
25_15' K' X# S# g0 `) e  H
25_16
6 y8 Q9 x2 `6 J6 H8 Z& J25_17
( f; O1 R. M1 C8 D- V/ ^( D" K. p25_18
  F: \/ y7 f; h: V* p' G, O8 Y2 p25_19+ D* ?( J" L6 p7 B
25_20
: f/ W% [/ Z" u1 O# \( y$ N25_212 W$ [3 G5 \. b( Q; f# E
25_23" a# K3 Y1 V3 |, a
26_ 11
/ R7 p: o3 w+ o. ?+ [2 B. F9 I! C26_129 O; b' K5 \8 B0 P& N
26_14  r* R1 ~( |. o! I( f" ~* c

- q8 h1 H5 w+ L8 P8 u7 v9 J$ e: E, R

  ^3 N; r* C! d4 I5 c
5 f3 L* L7 b: @& N1 y
- N) }& J0 U2 X  j$ i
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
7 w6 r- ]5 W$ I# Z2 G2 G/ BНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:# C, B1 y8 S' c
#------------------------------------------------------------- --------------
6 W" L7 x; L, _$ |" M$ V6 c3 E4 ?# Geodata: S( Y) Z/ D3 I$ ^- h4 F) R7 ]
# ----------------------------------------------------------------------- ----* Y; I' B8 Q% D* v* F/ N/ w( u- N- o
# GeoData options:
$ K) E! _9 S8 L5 a8 z# 0 = GeoData and PathFinding OFF (default)1 e+ p  X" {2 n8 k/ l+ G$ F
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
. h; W; P/ o/ P# L2Playable movement. You need to download files for data/geodata folder.4 [. a) ^0 I* M8 i$ u
# Monsters can pass walls but not aggro (no line of sight) through them.2 X! c" ^" H. j) E, I3 J+ J
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
2 y7 A6 N6 h6 [# Q# files if CellPathFinding not enabled) and all character moves go through4 f* Q1 _+ o0 P. X
# geodata checks (if a mob passes a wall, pathfinding didn't find a route
: t2 y4 F. ~( P! X% R0 o8 L! \# but we allow attack and returning home).3 v# H: A6 {* P" s/ y
# Recommended server memory minimum 2 GB, rather 3 GB.
$ L9 r2 w( L6 l) u! e8 K- U# Default: 0
' U3 t0 B" i+ |- @& }; W% eGeoData = 0
* @; C6 F: a0 @6 F/ J# t( ]. I" H: x+ y3 u; f1 Z/ H$ ?5 K
, L/ _8 }! O( N2 P" E
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.5 R" h' z* R1 _( Y% j5 h9 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." D" P& j( N7 E9 Q. i4 K+ `* k+ j
# Default: False( @; q0 K& x! ^& W1 O/ o! P9 u
CellPathFinding = False/ q% D# ~. s% a" E3 s4 w
& M4 z! ^$ d& q, v. F/ e
- Q3 r8 D& [+ S3 Z; P
# True = Loads GeoData buffer's content into physical memory.9 u) G( P5 l  |' c9 G5 f7 B- O0 S! ?
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory." [% X- K2 w/ I; ]2 v
# Default: True
+ L4 L4 V$ @2 B+ v0 kForceGeodata = True  j! y$ Z7 X" v- t* j- d

$ X( k1 q+ ]  z, W

# e$ u. l8 ]4 e  t# This setting controls Client <--> Server Player coordinates synchronization:" G1 q0 Y& t8 @4 G" I: E
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.$ q5 q1 n, X% i; l, W
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.3 Z+ e3 T: F- x0 S! I1 |4 p
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
1 ]# u+ z3 L& o, p9 D# Server sends validation packet if client goes too far from server calculated coordinates.6 e! v1 E' X0 n" r. w, `3 ~) x+ X
# Default: -1
% I# P$ v- H" T6 S4 f) x5 MCoordSynchronize = -1" W# }5 }+ |$ h7 j# `' Y" ]
* y) B5 S4 }& k0 G

6 i$ R* ^  k8 W. q! y$ ?5 T% ?( V/ |: \! `% Q

6 O/ P* v( x, ?. X7 pGeoData = 0
: D* `* V# x8 H0 j  R
) o$ B& b6 O- U$ L9 f; ]

( h1 P. b) {) b# {
& Z3 p5 z. U$ b) l" c

1 z: a  {* ]0 r+ M7 k% s4 w3 t( _Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
3 }8 q8 h6 j# v: RСтавим 2 если пачнод присутствует, так же включаем эту настройку:
% O- e' a8 v( Y, u, I7 ]$ O1 `9 F
  x, W7 @9 D% o0 ~
, b! M2 n. K6 S9 F4 T& A1 m( e) C- K: f" R

6 Y5 f" C- K+ t& Q  ]3 l2 p" j
: s; L! q% m) ~& Z7 l. e, [1 p$ {
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
2 }, O  u& ?. ^% {! l0 n7 U( C, s) x# 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.+ E$ _5 B( u9 y& Y- m! f
# Default: False
2 Q; _( I( `$ \8 q) ]CellPathFinding = False
8 Z! S; q; k! M+ h! K0 f& q" X( b, f& f5 f
8 N' l- Q9 g0 g. p/ G

% t. G5 p) K* P. d$ Q/ E2 _4 ~
# J( g* L! g9 J* O
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.9 K% b& ~& B: b+ d$ o
Пожалуй всё подробно написал, спецы дополняем если что то не учел.. x% q/ ~; O/ y" _4 r5 P& `4 W# j" x

5 R1 w  M4 `+ c5 e1 w. b
- q8 W1 p% Y# ?! h' E  f, Q* K3 [
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
; z8 K) I, U. T6 H% _# q0 u* Z# T' R# Z
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
; }% v1 @) q, Q
0 V) p5 J$ J+ H) N




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