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
; {0 k" C9 N. Q0 \. d. lСборка        L2 Java% g6 V* H' \) [2 |6 n' C6 t/ `/ J
$ H- ^5 e, ]5 w' k4 \
/ ^) h% o2 B* M# T7 o; h! O
Доброго времени суток.
' _' x) J; o% A- ~6 \5 N, M. x4 G$ {5 h. I1 m
) c5 `& w- b) e# a1 k/ L) Y7 m$ _/ Q$ c
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:: T+ {3 ~' z1 O
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.  y5 r% T8 v( A1 z& e
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.4 l- T& U- j3 E! p8 B2 _
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.4 s2 |. t7 r3 H
) M% Q  L0 }8 R7 T
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:3 q8 v6 R/ j( j# A: g7 w: w
[attach]495[/attach]
/ E( p. u$ H. G
% ]( h: p! ]; Y. N8 O7 ]& O: Z- f' d
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.: B- H. `8 P2 ~1 t
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема..., ]$ |0 u* m% f  B
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
& z, A6 G  |% D1 sУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
; [! B7 O2 q0 p# p: q2 e/ ~% {8 {6 @9 k% ]  [

' C4 ?+ F- r/ S. S( q5 @; `Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
; k& Y, \; G* k  Z" q& H/ i" IКоличество файлов пачнода должно быть равно количеству файлов геодаты.
5 ?8 T& R: ~% T% o# v7 ^Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
+ G! b5 }* ]4 x5 b$ s8 r" zТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
, S& T9 ]& o( z" ]5 L# fСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.' P: @  h! L! U# k% U4 I" @
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.- |; I7 ]$ E& ~
Установка геодаты на сборки без пачнода (Rebelion):+ v1 B5 ?5 k7 x' L9 d! B
Покажу на примере L2Dream.! [8 {  ]4 x+ D* M2 E$ P. \- c
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
1 M: b( b! \' d/ G7 N8 C1 J; {: n6 Z

) a" V2 n5 h( _! D+ jC:\L2Dream\game\data\geodata
; z& S8 I' R8 e3 H4 |
1 o) L! _( `7 L- u3 L) }
2 k$ _7 K( z, E3 c- u, B" z

$ j/ h' f( g6 j( C2 \

8 c4 c9 {- \5 qНе в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
- Q: B0 e" l2 y# G7 y; uНастройка.
3 s7 w2 X9 k' o, x( V; m, RИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
9 ~' A2 [9 F7 d; S9 a4 G#================================================= ================================================== ====
9 F; g& D4 M! z8 l# Даный файл является конфигуратором геодаты.
; e' u/ I- l* E- j% U3 n4 P#
3 b. u, b3 ^; O' G$ P/ `# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
0 ~. Z  j' `8 m! h' E4 b. }$ ?#" X4 i  T$ J$ p3 D! V- ]5 L$ d
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).' [0 ?) S3 |$ J- S- e* p6 S+ E: d
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
& C3 k$ }0 }( W" W* W+ I# Ну или просите прикрутить SSL.6 P4 b. U; N) D! V3 Q7 w9 H! {
#================================================= ================================================== ====" s$ {  C/ E1 L" W- `
) W' L: z" g/ W3 @+ w) i7 c: I$ p
3 n& y2 F, J; N( w
# Включает/отключает геодату и поиск пути.0 N( R9 o8 I$ t7 {2 m
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
+ G2 L; U' p  v) M" j9 z# 0 = Геодата отключена.
% a* O0 p: g( W; X3 Z( E6 x# n; T# 1 = Геодата будет загружена в геймсервер.6 R2 V7 E/ j6 e. W/ e
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
0 l: p3 J- u& t9 J. a# Q, m# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами3 V# B& ~$ z$ f8 f9 X; T
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
* {3 J; b. f4 o! s% s% j# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
: ~( X9 [5 q9 yGeoData = 0
: c9 ^! H" U  ], t3 V# n7 e9 l2 E0 e; C% f" o
- t0 Y  W7 m* q0 f8 u
# Хост для сервера геодаты.
( J0 Z/ }3 \3 I' j% f4 {$ X( {- u# * Забиндит все интефейсы.  i* l& @! C6 W; x
# Игнорируется при GeoData = 0 или GeoData = 1. v7 K  G! e8 e$ a6 ]/ k6 @5 t
GeoServerHost = 127.0.0.1
6 M9 Y2 _4 |% U0 l0 |1 I: w6 N1 p) b0 [( ]
9 i  f" R0 O% X! R9 C+ f& @- j
# Куда будет пытатся коннектится клиент.' N0 a+ @" _2 y! S+ U* ?
# Игнорируется при GeoData = 0 или GeoData = 1  V5 E7 _$ N% f! r3 e
GeoClientTargetHost = 127.0.0.16 p$ A4 V2 D8 W* V

3 ^" ^4 d0 d! ]3 x6 c( \, }

9 J  \1 D7 g- R7 b# Порт для геодаты.
% |/ J6 N& ]2 ]. r# Сервер откроет на нем сокет.5 T$ N3 k% @9 a8 c! p* O! a. L3 w" d
# Клиент будет пытатся подключится к нему.5 j' d& i0 n1 t; M( k& u! t
# Игнорируется при GeoData = 0 или GeoData = 1
% u4 m7 Y7 s. s0 XGeoPort = 9050+ f# S# ~8 t( m7 F

; m, K" L9 H' P* j1 T7 N) T
5 ?2 _, W( B# d
# Сглаживает путь.6 ]) _4 N% x% o5 i) Z  A
# Стоит отключать только для дебага.# B/ r; E, F- z
PathClean = True4 _& ^; h5 ?4 \

! g6 z. b; ^: r4 n7 r

' ?0 @9 b  l$ I8 J5 m) `# Обрабатывать ли двери в геодате
9 S# }& P9 j1 s0 q5 j* ~# Настройка влияет на ГеймСервер+ q4 X8 J$ P, t! Z
AllowDoors = False9 `, P* w1 Y! n3 b0 l

) y4 q, n+ i" c6 }
/ h! Z) _+ T: d4 A$ `$ H4 N
PathFindingBoost = True3 G1 R2 a' l! f% c
PathFindArea = 250  }% N1 B) I# b! y3 a5 @8 O
Внимательно читаем,нам нужно это:
* z0 ]3 |# f5 g) G0 r8 w$ q1 d% [# G5 c: Z+ g8 {
4 P9 ?7 Z' T. n% ^

/ Q! ~" D) p' _8 U" B

" }; o2 s+ Z' y# Включает/отключает геодату и поиск пути." z" r! h; B* d9 `/ T! D
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
5 t; E7 j; X3 I, C8 @) n3 ?# 0 = Геодата отключена.
0 P' {5 W4 F* H' R# 1 = Геодата будет загружена в геймсервер.
. D) `; d8 z3 s# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как& l& f( q( a! {% z* d, l
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
) ]( M4 `. {4 I/ ^/ G5 T# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
( t& j) P/ y9 p$ M. B7 q$ s# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.1 b% k/ D* a- E6 g/ c, v8 i
GeoData = 0+ W  w6 q3 @2 r. l  I
/ ^( `( ^9 S9 q0 P( T
) u8 I* R' @3 Y3 X
4 P! L- c7 X8 M& @$ A9 h: I0 a

/ E( Q1 [4 C$ o( U. t: D9 }В этом параметре меняем 0 на 1.
) u8 Z, \- T! I- f) ~, ~. Q2 ставим в том случае если всё таки решили поставить геосервер,его настройки:8 [% ^) d/ I/ m) H, @- L8 ~
# Хост для сервера геодаты.! P! B) k( H4 L5 I7 d- N4 v' ~0 @. I
# * Забиндит все интефейсы.
, w" X' }; q6 Z+ }  d# Игнорируется при GeoData = 0 или GeoData = 1
* S8 N1 K1 q) M" I! V7 r* YGeoServerHost = 127.0.0.1
% _9 h2 N  i1 r0 i7 `8 Y
5 \; D( n8 r% A" b4 a/ _

& n4 `( u+ U+ `6 R$ {5 B# Куда будет пытатся коннектится клиент.' R0 X& _, i- j' w
# Игнорируется при GeoData = 0 или GeoData = 1
0 T6 E* q5 {$ R1 IGeoClientTargetHost = 127.0.0.1
! Y* y% v8 \8 S% M" S
. t# _* A6 k+ N$ @; y# T& `
) G% E2 f0 i: y- l& g* e/ S
# Порт для геодаты.
0 ?/ P3 b" f' j& q- c8 E# Q# Сервер откроет на нем сокет." y. T5 q$ @- Q/ j
# Клиент будет пытатся подключится к нему.
7 r0 a8 T4 o& v: {9 w8 L# Игнорируется при GeoData = 0 или GeoData = 14 E1 z& \2 a* D0 h
GeoPort = 90502 b2 H, W6 p  \/ j7 n
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
  W4 b6 }2 f+ m, u9 M) d% T* Q
; m- f  Z, [5 D' Q( M' D  _

: x% c' n3 C6 Q8 O- D, V% K' o  e6 c9 N9 v( J
. X+ h+ {7 ?! _) E: [
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer3 p& n2 Q9 F) B! n) u# m; c( T
$ v7 I0 N2 B2 j

# H) s2 ^( w4 l" K
5 S( [$ u7 Q2 ^' t

1 d; R, I% l7 H+ s$ I: ?Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
3 q: j* j- u4 m$ d" Z4 b% B
0 x/ ?3 [5 p5 ]( ~
7 H5 M! p2 l- N5 S2 F8 M% B  H4 R
1 f7 }0 W: u4 r% o2 E' N& Z" ]
7 T$ K' }; X$ ~& ]8 {  z. S* F
# Обрабатывать ли двери в геодате
# ?8 J: n5 ]; _- J1 E. f* \6 ]# Настройка влияет на ГеймСервер3 A+ s' b) {5 i6 o
AllowDoors = True2 q' w# c) D% [' B* X/ D& Q
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
' d( C0 q! T# d2 l( ZПути размещения файлов геодаты:- C7 \) K5 s6 r! o
8 A- S& G9 U$ p  y. U

1 l+ P  h" S) {: ^( QC:\L2jServer\gameserver\data\geodata
2 a8 A- ]. H4 C5 [( z" K( {
8 }$ V; T9 A& N8 {
& r/ H- p. c3 N; r0 ]

+ K2 C% f( C1 k+ D

: T- b7 Z9 Z. h/ V* ?И патчнода:0 @! a% o& Y- |$ q9 l$ h
' x' D# {; o& T2 v) d

" Z$ N8 {& C4 T% }  Z  u0 fC:\L2jServer\gameserver\data\pathnode
3 A1 Z$ e& r2 |
7 r2 s9 V8 {7 ^$ Q/ J
- P* i/ v" w( B( }0 K2 x( J

# v- M8 P# X( @$ ?$ w) }) f4 P$ u7 w

( a# n4 ~5 g' ~; TВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
. P( s3 k  n6 b% ?/ w8 ~$ T( x- W
7 a# X- @+ f, d  K6 `- J

" c: j3 U! s- h2 p+ u  E. U2 C& A

& C, W4 G/ {" v! C* x1 g- a' L16_10' z7 J0 b2 t: y4 [4 T( e1 i
16_12
2 O, \3 ?5 F$ i2 m, z16_18
# s4 k" n, n9 j; A/ K16_199 g- V0 A: o' a& C% o; j
16_20" F0 t, O7 ~2 u* k; |
16_21% \  P1 B3 T" b# R
16_24, }/ d$ X. e/ }" c$ n+ G
16_259 H  u6 k0 m( C/ `
17_10" J7 v$ ^1 b5 a* A0 G! p
17_11
8 f& X  s0 K; y7 ~: b; O' P0 P3 O17_15
7 ?6 A. J9 R% c  w; H0 R$ r4 G17_166 c! L6 l- ~9 j# ?$ \7 `
17_17& E5 \! v, _; }; \
17_19. L" W- ~" F* W& S$ ^2 ~
17_20
- k; q% a; p% K& _9 Z  |& X( F17_21: G% Q( K* e3 d' t; x
17_22; X- _2 ~2 H9 J$ |
17_236 D0 F, Q, @3 ?# u! g8 T/ p
17_24
, Q7 o5 Y( _, P- s% S17_25+ R- d8 t+ P9 t1 s6 h$ \
18_10
) ^0 r, n$ J1 l" n6 w" x, b8 r18_11# t" X' k) U6 g% Y, m* G9 ]
18_147 i7 ^1 N$ p" T- B+ g
18_15
" @6 a# `3 }! A: \' b8 r& ]18_16
7 R7 M8 D9 E8 j& r: h18_19
" j! n- W, f3 a18_20, d3 U1 O8 N7 R
18_217 A+ B4 S5 t/ y8 \+ [% j9 i
18_22
4 Q5 @* e6 z; R0 {& Z  J( a18_231 b! p4 J1 X: _% a# y& `
18_24: E& U! x- B2 I0 x
18_251 n7 O; o0 ?& `. U/ P/ Y
19_10; M+ h' {- k2 \8 k( Q: \
19_11* y7 a" J. p) p# w% m+ I, g& u* v
19_13
" s5 q' w- H& h) Y$ m4 N19_140 W4 p, N4 O  u5 }( C
19_15
# l5 B1 N' t  r/ `8 n' s* @9 P" y19_16
- A* j' j; d; N$ k* ^19_176 r  j% O5 D5 [) }& [% Y
19_18% q6 I! G! S; ?; P
19_19
6 e6 i- G; Y, N7 s" Q2 x19_20
# Z( h/ r$ Z( ?2 O4 ?19_21) A. t6 {7 O( n7 C& s6 p
19_22* G; s7 [0 Z& F) c4 Y2 J, A1 k
19_234 U6 o- J/ M2 {
19_24" l) T( A: ~/ ~
19_252 {9 m" X+ B7 b% C
19_26
/ j4 x" Q4 `! @: h0 D; V/ i20_10! b# c( o0 w. I3 R* e0 y! g& |
20_112 j- H+ d' B! ~# t4 [3 x
20 _13
5 J0 [  E; @: N/ i  `9 A20_14
5 X# Y, F: e$ b8 t9 r20_150 X! |: I8 K8 k; L
20_167 ^# u/ {& L4 q! }0 m; P3 V
20_17; x( P/ E( c1 @- U5 H" k
20_18
3 L6 j, G9 H$ D6 ?; @- L20_197 x$ G, {. E  O  k: L1 P+ f  l
20_20$ y7 R0 y0 {; c9 F8 b; g  j
20_212 s7 S* ?$ i0 W* Q# u6 j
20_22
' N9 g5 N) }; \# e4 I- T20_ 23
* c( U: J1 H9 k- {20_24" V' }7 R: T7 j/ U3 O; ^
20_252 f* P# U) C: b3 \$ j  {  \/ }1 ?. y
20_264 R0 ?  f5 S+ z) @' `
21_116 @& H1 ]% a8 }8 p
21_14
# y5 G* a# R& D* Z, e. F' _21_15
- c, q5 j1 ~2 }& S* J( {: U21_16' `8 W2 m* U8 Q6 {9 x( e/ @5 w
21_17! o9 D. s& i+ n# U- O! d
21_185 r( U$ J- a8 W7 D, {# y+ _" q
21_19
8 A" q: [+ m4 B( P4 u8 R6 K21_20. W# p, \5 x9 E
21_21
" s9 P! I+ W/ h/ N21_22
+ Y2 l0 E( {( E21_23
3 f( O6 T' x6 q7 l# K21_24. J  v9 t) |4 S
21_25! {; I# l' q5 C! m2 P; w) {" J2 T3 ]
22_13
) e" P8 W( |' L5 j" Q% m: ?4 y22_14
" |% s; y. ~/ H9 Y  X22_15
' P+ @# D& ~4 I+ Z6 I3 u22_16
8 ]: @$ o0 ^. a  O2 o4 e( o22_17
* X& j+ F" e5 q- K) X9 |: I22_18$ z: Y8 M/ G! _# S! ^8 u
22_195 F/ a0 [! H7 y4 w/ Y
22_20  h6 ^0 W* {/ B4 o* _) r- `; {
22_21
! b" S. A, p' v* o4 @22_22
  N6 @- b% y0 q" o  M22_238 h+ z) b! f2 C& H* ?; b* x! o* I
22_24' d7 g  }. `4 s7 [9 G
22_25* s- d( |/ V/ `% t& u8 {/ `; \
23_11
3 P& e$ V& b4 y: S; Q23_12" ?# U* H6 d+ b, U! Y% E: q
23_13
4 J6 [7 j! G9 V: i( p23_14- @$ I" L) L( ~( b7 G& q0 v
23_15
7 `) x6 `" v% q9 \23_16: n: X, m1 V. c, v/ P1 n' C
23_17( s- x# l. L. [0 P3 {, [0 Y4 r% L
23_18
0 f% F9 @% @+ O/ X9 w: Q( I# E1 O1 M9 z23_19: M7 n1 t5 |. U
23_20
# u6 c1 p7 G# t0 p! {% Q: X23_21
' p1 R5 [2 }8 O8 }& e+ M23_224 S. J8 ]8 k! p% s; ?) n
23_23; A" z5 n+ B) h* q$ P6 a
23_24
1 k7 \  v2 ~, d" U" S0 J% O2 f/ j23_25" v, m' t+ e7 O& ]
24_11
6 R! Y! l2 P- z' D24_12' S6 a) U$ K1 P
24_13
9 ~: Z5 X& D$ M/ D/ y24_14) ^7 @- |4 E+ m, o3 R
24_15
+ x7 a& g5 [. j1 t24_16  }$ y, |  V: m& l3 q6 J8 c! A
24_170 k& D. k: V" J( ^# h( _
24_18! ?/ Z( Z1 e* h, o4 `+ y
24_19" G6 U1 u  X7 d% o8 A
24_20
* v) s7 X. n; E5 V24_21! k) ?7 L# t, D1 U& e
24_22" ?9 O0 J* o. B6 x( Z
24_23
3 u0 N7 H& Z  _% K9 N24_24# q' [9 I5 K3 F, f
24_257 ^3 l1 D* S# o: d6 p2 H
25_11' T9 o) g; I4 y
25 _12
0 W1 X: Z* N! d25_14
- v" f( Y" u+ e! W5 C" |2 z* Z25_15
* s" u3 a1 Q! P0 }25_16
0 A  D# k* f: u& o8 N3 v$ u25_17: @) O6 s, `$ ?% m
25_18
$ p2 u# }! h2 |25_19
( K0 i9 J6 g; _25_20
1 p6 |' O8 W* }. }& m! F) r25_21( A' M7 ^0 e! i6 |6 B
25_23
: x* S* }8 z; a" @" r26_ 11
* }, G$ V0 s: m" S* W" S$ \; U$ v26_12" P6 i( A" ?! f! t+ ?; Y/ ?% A
26_14& O+ n) k: D" a! }# x1 \2 l
/ s4 q8 c5 i- t4 `& [. n# e, U
* \+ i- p# _. \
& q+ w# t& f" Q& T7 ?+ L
9 F9 M2 m/ ^+ w0 i9 J, b, K: {
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.- a6 a! G+ H2 r! A
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:+ Z6 O) L# [6 d- F8 O% e
#------------------------------------------------------------- --------------
! c9 r6 U6 `" q7 U( B/ U! x8 i# Geodata
' d3 q: W5 R0 u7 D! J# ----------------------------------------------------------------------- ----1 ]% {! T+ G; N, [  Y+ G' u3 e
# GeoData options:
  j' W) j- Q6 F3 _9 s! }# 0 = GeoData and PathFinding OFF (default)5 b  y. d9 C, _# H
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
+ G4 g$ n  Y) f& b' T% N# L2Playable movement. You need to download files for data/geodata folder., b+ K) r2 s! [+ x7 M. K$ S
# Monsters can pass walls but not aggro (no line of sight) through them.
: B7 v7 {1 v% q; L9 n# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode+ {1 S% J* x) ~
# files if CellPathFinding not enabled) and all character moves go through
) f9 K4 {- Y7 I, B5 _) u# geodata checks (if a mob passes a wall, pathfinding didn't find a route
& a7 ?2 u3 R! w+ ?) `5 m. o# but we allow attack and returning home).
, M8 e5 h4 V8 @# Recommended server memory minimum 2 GB, rather 3 GB.7 x& Q0 o2 F0 ~$ E* w
# Default: 06 h9 ~- `' U; [5 h
GeoData = 0: [* `6 L4 d: @2 P, ?4 I
! q6 i" \/ a* N4 r: B! H! p- r3 a

7 A# k$ J" N! D. N2 z# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least., S1 y8 E$ O9 ]1 U
# 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., _: x% f+ W# I, b' H" I  |1 J- r
# Default: False8 O5 Z# ^( v2 N& A# f% P
CellPathFinding = False
" h- |( [! l' r% D
& T" y7 o( u0 o, X( m. f
& K/ w! v0 ~$ `- L4 D
# True = Loads GeoData buffer's content into physical memory.0 z  h/ o) a2 m; c
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
0 y% ~% v4 i4 \& a6 t# Default: True; x( M" i8 k* S/ o1 L
ForceGeodata = True) S, R6 G7 B/ D8 z

  \* B- R! r0 V: ~5 n

$ k: a; b4 D* {; Q# This setting controls Client <--> Server Player coordinates synchronization:
) {! u+ Y+ N1 p2 e: I" E& ~# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.% S9 t  c; S1 S  d2 r, t/ b( u' W
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.- a6 L; h2 @8 ]$ W
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).8 P3 K/ X  X3 s' G* N8 d
# Server sends validation packet if client goes too far from server calculated coordinates.
9 h/ W- S$ i3 b0 y# Default: -1
& j4 \$ V0 C+ mCoordSynchronize = -1& U$ s3 ~. F! ]6 a7 ?& o1 }" u

" w( g! l4 C& t+ x. ?3 e

) z7 B2 ^3 j1 w8 ]) U0 c. j, J; ~$ ~6 s" _( I

1 U) D2 A7 V6 O7 Z* S8 v! ^/ GGeoData = 0* i' d+ _+ o) a0 w, g- L3 i$ m! o
: d2 R' C3 }4 U% d: U+ ]
4 h% Z  `# |8 P# ]7 L- O3 C

3 X4 b6 T3 y5 Z  w9 {* v  j
- b" g3 l# n8 Z
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
/ J& L* {7 x9 l0 F" F# O* S8 hСтавим 2 если пачнод присутствует, так же включаем эту настройку:$ h: O( w7 g9 ?! o  i

4 c3 T: k6 t2 b+ t( ^# ~' n! p) F
: I  M, {/ C5 ]  p0 R6 C9 V

4 F5 r( o, M/ u% b: J

) f* u; I' Q7 e- @7 f# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.* y" A2 C0 ]  c( C& D! B
# 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 G9 Q# X2 Z# U% ^, x% @( D# Default: False8 X% j4 A* a- S9 @9 \% \; D5 H! N
CellPathFinding = False
" R% p* Y, e5 ~) }# i4 [. [1 Z% @8 |2 b; q
6 ?/ {0 |" b1 C' m+ d, B
: ]$ ^% }/ X0 X+ W! L

5 K' s3 ]. R4 I; a3 V) a+ {Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
  \4 Q7 X. e* N+ {+ rПожалуй всё подробно написал, спецы дополняем если что то не учел.1 D- ~' Y1 B% i# Z5 e8 n% E

' ~/ g8 S1 S% n

& m- o9 i+ b+ _; i, a+ fНе забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.1 ?2 m% o4 _6 f- n3 a

, g! W) e/ ?" d1 X7 {% v/ nИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.# N. E- c7 L* E( m1 z/ l7 K0 ?" i
5 B$ v5 Q3 }2 V6 Y% I6 T% H/ V% ~





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