Top.Mail.Ru

[Геодата] Геодата, что это и зачем.

[Скопировать ссылку]
admin Опубликовано 2024-9-17 19:42:36 | Показать все сообщения |Режим чтения Распечатать Назад Вперед
Хроники        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) t8 J5 W4 o5 r& y+ V7 u$ n: S
Сборка        L2 Java
/ N$ }; y# j+ Z5 Y" E5 f# J( z$ f1 y& _$ v: B! S3 D

2 u2 {' P3 J" `3 Z+ sДоброго времени суток.& m8 Q  z) p5 x2 ^! {6 d

9 _+ D% L9 D+ W# ^- k- j0 v+ Y* D6 h( @
5 o/ [* |+ b* T* i( b7 v2 s* t$ L+ t0 x6 w& P
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:: r' e3 Y( t" t$ b8 x. g% n! K
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
' E& Z& v7 V4 M8 q% PДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
' @1 f% s! ]. u' V9 b& S9 SПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.  e4 ?, l; w6 Q  j4 J* ^! z
" A% L! l5 j' \( U: J) t6 i
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
/ W: a0 B) I% M3 d% Y1 N: C2 T% r  A5 x! E  s$ j5 A7 U( Z* P8 y
4 l3 V7 j* p9 t
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
# q1 j3 e6 U7 Q+ f& B! ]! m1 ?Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
$ D* g9 ~6 y; I0 y$ f6 YРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.% @$ o7 n" E/ J  H. V
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.8 I# H. W& Q, \! S) M/ N1 r$ h
$ V3 f4 t6 }& `5 F+ b$ N

% l/ e. h  I" ], q% V+ |Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
6 a7 O0 E% V& q, {6 V: PКоличество файлов пачнода должно быть равно количеству файлов геодаты.
. j1 ?1 p1 Y4 e. KЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
9 ^, q' \  Q$ I; `( a: tТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
. t* n+ i; B9 c  B: V+ L! [Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались., G) h- n1 b8 z- H8 r+ ]9 V
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам." n; \# F3 A9 a# `1 p
Установка геодаты на сборки без пачнода (Rebelion):
' j* e+ ?+ {% @: f$ L" }  cПокажу на примере L2Dream.
% M! b+ q. ~- }! d  F$ I! `Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
6 R3 o" P7 `4 P: ^; j
6 V3 e+ c$ I2 W  t
: q7 m' U3 E9 q# g$ [
C:\L2Dream\game\data\geodata
) `8 l. }# C! ~
  e/ J" ~- ^: p0 z+ ?1 g

" i/ M" C0 g" R- f
- h/ }4 L$ l  b" ]" N7 a
) P: u4 k# K" z& U3 t7 D2 o
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.& I* y9 p2 @4 s3 C& r, q
Настройка.
$ t9 N% b3 C, u3 N6 V3 \  |: d9 r1 rИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:8 ~3 ^3 \( N3 l# v' j, @
#================================================= ================================================== ====
0 F7 A7 h* J% H! c7 v# Даный файл является конфигуратором геодаты.
- f1 j& v' D, [. Y9 J+ F0 V#
" g$ G7 K$ T5 o/ G* _# _# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
8 J- I. @( m- O$ x  O#
0 @$ Y, h+ L- ?8 h8 X  }# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).: P3 Y; D" h4 M* R, g
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
3 s, m- t8 s6 D3 C# Ну или просите прикрутить SSL.
: n, S7 g2 \' x2 Y# h' `2 e#================================================= ================================================== ====" ?* M, F2 j& z9 }2 q: h
. T, ^; e4 Z) T( o

/ w8 H. V% R: J& E/ M) T+ M8 w# Включает/отключает геодату и поиск пути.
) v1 D, c( m0 `; i; U8 v# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.( c1 H- J, }! k5 i) ~7 C/ Y
# 0 = Геодата отключена.% l2 `1 J% Q  l7 k* v
# 1 = Геодата будет загружена в геймсервер.5 T! l, o2 ~3 ]: T, B9 ?6 @
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как, w. h, u7 E* Q" v  x; A: P% t: @
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
( I# L, B+ t; [' q, a! s# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,; Z* t1 J1 ?8 c6 r2 m" _
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
# q  a5 g6 T1 A. L( X* |9 E7 M7 MGeoData = 0
1 B* t; Y) A5 n9 S* T3 r" u! e/ v4 ]% U* Y- D
9 e' f, w& B- g+ a4 ]3 g
# Хост для сервера геодаты.
4 a1 P# L; c, d" e5 m" p# * Забиндит все интефейсы.
9 e+ W( ~2 X2 W4 n6 }# Игнорируется при GeoData = 0 или GeoData = 1
3 Y' Y6 \0 v# m+ r5 p* h5 x3 VGeoServerHost = 127.0.0.1
, v3 g* d7 o! ?2 B' a- t/ i" U/ o' Q" n! w5 S' e

; u/ C8 p( q3 G# Куда будет пытатся коннектится клиент.
0 l& @& D: o3 f2 s7 z5 U. G# Игнорируется при GeoData = 0 или GeoData = 1
4 S  N9 @, ~" v% B7 K. _5 b  zGeoClientTargetHost = 127.0.0.1
# W9 {/ p# K5 e! c# D) y) U2 U) ?8 c; E  ?3 K5 a
5 b0 S) _6 i" h3 C
# Порт для геодаты.' T5 P& p! e% D2 \% l( I
# Сервер откроет на нем сокет./ v( ^3 ?1 Q& H& m% ]7 Z
# Клиент будет пытатся подключится к нему./ ~$ O- @+ k6 d8 H- [, ?: F
# Игнорируется при GeoData = 0 или GeoData = 1
- |0 a! P$ N$ X5 J! ~) GGeoPort = 9050
) w: j# T" e, }1 Y  C4 P# @% r1 R( O2 G5 @7 G  I. D
- T9 a# L, X# ?" l0 @1 E
# Сглаживает путь.
/ b  R* N% {& B: y8 p% U+ x# Стоит отключать только для дебага., s) `. @+ P8 D$ w& e
PathClean = True" L2 U" O9 H4 h+ ^

, y# Q$ l8 k' i$ f& ^
0 Y1 {) U/ V' q1 ~% C. v3 \
# Обрабатывать ли двери в геодате
. n) ?4 z- Y( C* Y* H# Настройка влияет на ГеймСервер
! e9 w1 A5 P2 V1 S$ A; |' ~AllowDoors = False
9 {8 M' C/ e+ x4 R; A- W9 Z9 R' t7 C+ U' J% M1 c5 d& F- a

* F. G. ?: h" K' `' e+ a7 e/ g* `PathFindingBoost = True
5 J" ~1 D% W; |: H# x- J' Q! HPathFindArea = 250
" M; V1 C7 ~9 G5 z( ?: D& w  O$ }Внимательно читаем,нам нужно это:' n. s+ D8 C! w
4 b% t1 {% a$ z. ?- t: ~% H* C
% Q: b/ T  X& W1 `- c( ^) d

3 O% u  j$ |6 g( S
: X) s3 m5 `) \
# Включает/отключает геодату и поиск пути.
* V  d+ u) [) H# O  z$ D# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
, A7 V' u. q: M1 Z0 G( E# 0 = Геодата отключена.
0 p  _" ~+ F6 M+ }2 Y8 _# 1 = Геодата будет загружена в геймсервер.
- f, c$ W  z8 I& C- D' _7 j) r; @# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как* o) S, T8 `  B- f
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами& O& K0 l- {! z) g
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,% Q5 D8 M; [1 K3 \, u
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
# f! N2 _* a# ~+ j+ R. s: IGeoData = 0
3 T! D) A0 D+ o/ r% s/ C# `/ T& ^- C! [

5 F. U3 A& s: I# k+ A* u& N4 ~5 X( |. m9 }
$ {$ s4 G  Z) V8 Z" j* t
В этом параметре меняем 0 на 1.
6 p0 Z  E2 a3 T; B3 j1 K2 ставим в том случае если всё таки решили поставить геосервер,его настройки:$ T' U% c3 E7 n8 N( |
# Хост для сервера геодаты.
5 V# X& m0 l) a# R. m+ E8 K# * Забиндит все интефейсы.# R2 S9 m/ n6 f3 D! }9 V' r% ]
# Игнорируется при GeoData = 0 или GeoData = 1- J7 ^. ], O. G4 Z- h, B" }; X4 T
GeoServerHost = 127.0.0.18 Z8 \5 J7 r& [0 Y
  q7 _( i9 v+ {# i0 j; S
+ e7 Y8 a( l( K2 s* k
# Куда будет пытатся коннектится клиент.) J* n+ k- f3 G& I6 b: z
# Игнорируется при GeoData = 0 или GeoData = 1' }7 |! G& X% Y3 r4 P6 A
GeoClientTargetHost = 127.0.0.1
8 D! y( r' N& I- \4 o! ]2 f
+ r+ y  I7 o% c$ W+ n' A% ^

$ |" K& f( x, M+ p6 e& y: O0 n5 U# Порт для геодаты.% ?  N3 ~# y1 t
# Сервер откроет на нем сокет./ A6 _2 v: d' ^; e
# Клиент будет пытатся подключится к нему.0 Y( Y4 y/ [9 ], D
# Игнорируется при GeoData = 0 или GeoData = 1
% Z6 J7 U3 _7 n7 V# v' s5 dGeoPort = 9050
+ ?3 t4 ^2 n1 _' T) o  OЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
! n6 t# v, _7 u& Z" A# l7 d
. P9 t: a2 ~# y4 I4 l. i
, c3 W  n4 b! R$ D  K% n+ {
+ W& O& b( @  V* o. O* R: q. h  J
* ?5 M6 y# d$ r# l( O
java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
% f6 R8 _5 f7 P. I* u5 [3 K
' w2 u0 p3 R0 }$ y- a3 p

& n% D9 G* ]3 X4 l% G* S& a* u* M. g& Q4 e3 U' V1 l$ ^, j
3 x! i1 |& g* @) K9 C
Двери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
8 H; k3 D$ C; O( c' w
5 n" A7 J1 [: @- v6 f4 s

* ~! x& b$ Z) U: Q) @
# A9 F  p4 r5 T0 `* S$ P# Y# H/ z
. U* }! }8 G+ T# c- k
# Обрабатывать ли двери в геодате
0 e4 l' ?( d& D3 g. ]# Настройка влияет на ГеймСервер5 p1 p. L& b: ?8 E% @: w; q
AllowDoors = True) `5 |& t9 [$ _; P$ Q! I# A
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
0 d& X# z  I4 Q5 Y% X9 ?Пути размещения файлов геодаты:/ l: ]0 K$ \. B+ x. Q( R* D0 a& U

! f6 [6 E0 M8 x6 s3 m( F
, u6 Z9 @3 y5 }. B- |+ s) r
C:\L2jServer\gameserver\data\geodata
; O5 L; k9 N, T2 A; q1 _7 Q  Y- y+ E( [& \8 j7 a* U- {
# n7 k/ ~* R7 a) R" s& n. F+ A: P

; q" m7 A0 V  b/ i* ]3 w

: A' `- k+ P  ?  I# O* fИ патчнода:* F. U9 \$ L6 @" N$ \
2 h6 s2 x- z# o' D# Z

( x7 }6 j2 V7 SC:\L2jServer\gameserver\data\pathnode
: q" O& p  i! _; |$ M% m' X3 ^" P: V7 u+ y

$ W9 W9 H& j' Z
3 w* g* V! |4 \  K0 f( G
& ?  _/ H9 X/ [2 o6 @# }. n
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
; z, c& q3 C* D6 t8 u! {
" z7 y3 C& C  X2 t% ?4 a; V7 r

% {" Q6 W, L- w5 v& C5 g8 p
$ K- k0 t  S3 p& {; r4 T4 Q

/ s! j( B6 L+ u9 T7 F' O$ q16_108 W# X5 _' K( d- h1 Z
16_12
3 o' Q5 Z6 |; D5 h& i+ e16_18
6 A" _0 C* a; p- l16_19
/ r) s/ J9 t) ~! d' o16_20% K0 r( d4 i: L5 k4 ?8 ~
16_21! h6 r! c6 Y/ {2 b2 Z8 x
16_24
/ u6 M1 H' ^$ m# A0 J3 V16_25: a" J. S2 e5 h1 Q& N
17_10
" Q( ^: [$ G  k+ N/ Y* T17_11" c/ h) q! b% h4 x( I' g
17_153 N# d/ T- `) }% C0 q' m9 Y
17_16
1 ?3 R8 A! J: o' q17_17" p: I5 V# ^- w* m8 g$ i
17_19
+ e; V7 {; e, B5 {% {. `17_206 v! }) v, q9 [( `" Y
17_21
$ s6 V9 R, S# h( I9 F1 |' ~17_227 n; D3 L9 b/ |. z# g7 i, \( A
17_23
3 ?6 n5 D/ V& `0 b( y0 e9 v) K17_24) n' u: [6 [0 K2 K2 e" k4 r) T
17_25
& {! p5 ]" ]& Z% @& f( `% h18_10: E: j9 i4 R+ M' n# ^
18_114 a, E) h# i/ o2 `- r5 a
18_14
* ~6 e$ i3 T; E# V0 u9 J3 U$ c18_15
6 k) b# J( V2 E, z18_16
- i* S6 j3 J& J! w8 `18_19
, `) P8 K  G1 O8 I) S18_20  ?% z1 Z( X5 ^5 P0 N
18_21: y+ P- c, s$ C# N, c: H8 n
18_22
2 F; B! ]% }" x* P4 r  |+ H! y18_23
, ]+ i- O7 D) U5 D18_24
/ ?2 {) Q$ s! U7 ^3 U18_25
! O5 o$ H) v7 K; T5 B7 Z3 ?2 s19_105 W+ I' A' {7 G8 v
19_117 I* `& i! X8 [" [
19_13
) @/ ]# p$ K& k: n19_14
# P( J; }1 w5 t( \6 k  W19_15
0 e) Y6 b# s* k1 ^1 o# |& u9 H19_16
* I- @, z/ {6 w1 v- o+ G19_17( v# E, P9 W- U
19_18
! Y4 o* c8 c( J- w+ D, K19_196 w0 T' i2 A' l8 a( Q& J; [: u  K
19_20* W; Q) I- t8 A% K$ b3 R2 Y
19_21
& o- L3 A  P7 x! O9 t19_228 X4 D6 x9 ?% o* y, ]( x( a
19_23, f5 }1 @+ P# G! O: [
19_247 P' ^2 D3 {. h+ c6 F
19_25
" R1 l! ?( j, ^19_26
3 r# \& w" o7 E% w3 @20_10- s. Z" g. O9 Z3 t" K; m; {
20_11
0 W3 x2 D# ?4 Z20 _13
; Z( c2 x1 r! q2 T20_14( s' ^! a$ h" u8 |
20_15
. y7 r5 T! U% q8 A20_16
0 l+ c& N3 ~9 c5 N4 P* m20_17
6 ~" W/ l/ R! J: W- V20_18' \: Y* p3 R/ \. }, J' i( O
20_19# _3 E2 O# F4 s0 ~; Q! ]. F0 w
20_20( I8 Z3 v' I4 t4 r0 b+ {! _7 l9 O
20_21- w+ U: ]8 I9 C6 h* r
20_22
+ }( F' [9 Q" d$ E! x0 F20_ 23. l% E. M' f. C3 A% A" @% c
20_24
, c" R5 G& K6 O8 \+ a: a3 N6 w20_25( _0 Z6 Z9 Z$ x& W, ~: X% r' h0 Z3 C
20_26
* d+ f2 X; Q  U3 t& Z21_116 L  s( g- K; P( j
21_14
: W6 `, Y! Z( g% z! C6 ^21_15' H/ s9 m) J) J# E
21_16
: h% Z7 c$ G5 ^/ O1 D# [21_17
( \7 `% A" Z; |/ w( B  [21_18$ E, H0 w( O& c7 \
21_19
: k5 i) r& A7 Z$ t% z7 |6 i, L% K9 k21_20
3 u) ]- v( \% K7 a9 g) W- \21_21
2 e, @2 D- t- j/ N$ ?21_22; _# D9 g: X7 X' ~5 m8 ^
21_23
: J& u6 f/ a: }; F2 c% r) g21_24& \9 d! V2 A, U! t9 K
21_25
9 ?& G" D; ], F* b+ l5 ^! g22_13
; p3 O* |8 w, ~- _+ O22_14
7 Y  F( D# w4 _& R) \22_15. o& a% U. a+ b8 U
22_16' \5 H) A0 a' K6 Y( x3 \* \! ^
22_17& `; K' S) z- @+ L: x7 g
22_180 `, r4 z0 Z! z8 B; b. y+ e" I; U
22_19
; J6 j4 C* q" d22_208 o0 g* c2 e0 f! w# B
22_21
9 g7 V9 h# \1 l1 q3 y6 Y! e9 {22_22
* z" }& q3 ?& h- H* u& ?! w/ _% x: k22_23
; D( q) i% d/ U1 ~22_24  |7 z, v3 Q: _! v" Y  o% E6 F
22_25! B% `/ h2 [( F4 m3 g2 A8 M( }. C
23_11
8 |# X5 j1 n! T6 t3 g9 E6 G23_12
8 e2 m) v' z9 Y  Z' x23_13
% s. D+ n: ~% Q# e$ u+ |2 s23_14; r3 C+ c7 `0 V9 A. V. ?
23_15
; t9 K: f9 o6 L$ b+ ]23_16
8 R* w7 f8 V# U0 W) D23_17* ?. ^4 @$ X2 C, P
23_18
5 a! l- R! P5 _- I* A2 R, G9 X23_19
3 V2 m% m- E  y5 F4 w7 Y! Q23_20
6 k4 [5 h' N! p2 i: \* j23_21
4 B5 D+ _4 s+ K8 h1 Y% e5 o2 Y) D23_22- v. |) W5 n0 k! j3 _" E
23_23
' H4 r- t* v9 j" R. w: I23_24
; f; i8 |( G( a, i" [/ |% _: t23_25
) }" h6 Z/ _: f24_11
+ l; G( Z- N& S, E+ R6 D9 ?' f; z7 H24_12
! g$ {3 i6 q% U, G, [/ t  y24_13" [$ Y- \! B6 E, T) I
24_14$ e& O; a) z/ {& R
24_15
* Z& {, l6 u' p0 Y24_16
* h1 i: x8 z" F7 Y9 \24_17
$ }" Y: U4 h$ p/ L: O! |0 U) z+ }24_18
. C5 J9 u( ^  V24_19; W1 Z- G$ H% _! Y5 L
24_20
8 N2 g; z0 X* _' i5 h8 P1 n& r$ C- `24_21
& |* I" j, g) K24_22
) w1 {  u* L/ b24_23' L3 q1 b6 H5 r# P
24_24
/ D6 m% H2 J- t$ `4 M: z/ y# c: a24_25: P2 |7 E$ T4 m
25_11
8 S- N& D: R: d; G6 }$ P25 _12
+ x; M( o  d: Y, P25_14( U6 d5 w3 |; }' C! Y& E1 ~# y
25_15
! I& Y4 c- d" K' i4 e7 R( V25_16
7 u+ S, Z2 I% h- X  y& d  Q25_17
: p: f6 i. n; i% o4 m25_18
0 \, V2 h1 @5 y, m, ]25_19
7 r- g9 r' j3 h# n25_20
( c: A5 [- t" V25_21
4 v6 z6 @3 O, `6 v* {3 k25_23
, B' I% H4 |9 \" _( N: B( t9 l0 L" h. m4 I26_ 11" Q7 N: H! D) t: q* S
26_122 {% G7 A8 H  {. m- \
26_14
8 o+ Y6 E$ R4 ], T8 I6 y4 e! \' ~% @5 ?/ N
( H+ v! H! W& f. }5 J4 D
7 l4 j1 i$ K  A# A
' R5 U' d" e4 _# f  N. ?, Z, K9 V
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.# ^0 A: M* u6 f" M: t
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:
4 h8 \8 T* Z8 c, r6 A3 b, e#------------------------------------------------------------- --------------
! w( x3 ]% }% ]% d# Geodata
9 |) e' [6 j: @, h5 t) ^# ----------------------------------------------------------------------- ----
& K) p7 _0 m' k! `( m# GeoData options:
' n2 [/ f1 @* _7 e: m+ N# 0 = GeoData and PathFinding OFF (default). K* ]4 F8 A' d7 {/ O; P$ T& j
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and/ N/ B2 T" s0 L! w9 m6 X  S" ?# \/ a
# L2Playable movement. You need to download files for data/geodata folder.( h( r( u3 m1 o, E" x; p
# Monsters can pass walls but not aggro (no line of sight) through them.0 ~) n4 L/ Q1 J$ r
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode/ P7 l2 M( x0 G( D1 \% k
# files if CellPathFinding not enabled) and all character moves go through  t1 q. v! Z, f6 H
# geodata checks (if a mob passes a wall, pathfinding didn't find a route+ u/ m5 L& v9 y; m& |
# but we allow attack and returning home).
6 Z# \/ A4 f9 c& A. {$ u: F# Recommended server memory minimum 2 GB, rather 3 GB.6 G) B! @  }- L/ N2 n
# Default: 0" ?" v" u7 r1 z; F3 D* I& p( c
GeoData = 0
0 o$ g( c3 X6 |! j7 C" h% r6 [# m% {
+ C4 m* o  t# [( P6 @3 x
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least./ y; x* g& o1 C% q3 @( r
# 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.
! i4 z8 f" K) v  |# Default: False# b3 R' s5 e' G2 v. I; B
CellPathFinding = False8 U/ F+ V% N2 O+ h2 Q8 ^
; N- W' @; b2 a1 X( P7 Y, ]! b
8 n  k' v; r2 l0 Y$ m' s
# True = Loads GeoData buffer's content into physical memory.. o# w% L9 i: H8 C( H/ C" J" G
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.; l0 S4 T9 n% Y" p
# Default: True) @# ^& p, n3 E( e
ForceGeodata = True
* T: X9 r1 n3 a5 t  t9 J/ I! v" Y- d9 r+ J7 B( M, R- L; _

8 v& B: |, A! B% `  x$ `8 \  m# This setting controls Client <--> Server Player coordinates synchronization:
2 s& \6 [7 ~% s/ e1 i1 [# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.6 o; Q& b# i4 C. H- [+ P$ Z# B! y
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
3 J; d* i& E2 R0 C! o. B3 i; ]# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
8 s6 i# Q/ N# i- S' f# Server sends validation packet if client goes too far from server calculated coordinates.
  n# F' I4 W5 K$ M$ C# Default: -16 c4 ]* I* d) _; `
CoordSynchronize = -1: c- n2 C, j5 O& h+ G

6 L2 O1 v2 z0 l" |. u7 b$ R

; h0 Z) b4 x# v4 R4 F) T* ^; D+ x: F$ l  `5 {! z

' ^( Z1 j' }1 X9 M/ f# mGeoData = 0# v, @) i( T/ l, Q+ o# D  Q

$ l% u/ ]9 o4 n& T0 F. f# n8 z
+ f% t1 f+ `" U2 |( i
2 X$ k8 d5 V. \1 Y' D
; a. d' v/ g0 F2 o5 |
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.# S) w5 h5 \6 _) i
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
! H* B) d4 m1 T7 ^5 O3 [- ^% C: P, V% X" {4 j7 X4 \- C1 u2 l

4 H4 q3 U  O+ h  n/ M0 L  w
1 }, P7 f: R# C0 q" Q/ U8 Q
- ?- A0 B" c+ B4 G0 O$ D
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.0 l6 f5 P9 ^5 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.
7 D' ?$ d: F9 m! J  [$ ?) [# Default: False
$ i6 g% V; s9 ]1 k: }+ |# U, ~' D5 dCellPathFinding = False
' q8 T7 E, g& G( e. S9 h& y" Y7 ^4 I7 M* R7 ^6 Q5 p, p

# f7 }, I4 g4 E2 ], ]; M: l; o5 D3 ?
! @5 J& P) p7 q! J9 p$ W) y  a2 {
( D# {/ s. h: O' k
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.) D% S4 d: ]! b4 v
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
% e6 Y& ~7 \# ^$ U1 F1 _5 k6 l& h  h6 j( |9 w/ q& v
' N! c7 Y  e8 R
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
0 o/ G6 D. O) D8 m9 f  E
# i! c0 X3 X) @' s; lИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.1 @/ ^2 ?* y' ?3 h* F0 y

2 w9 P# p$ U' V

Сообщение слишком большое

Для просмотра Вам необходимо авторизоваться Если Вы еще не зарегистрированы, перейдите по ссылке:Зарегистрироваться

x
Чтобы ответить, вам надо авторизироваться в системе Вход | Зарегистрироваться

Правил начисления баллов

Опубликовать
Сектор творческих людей
Горячая линия

638638758

С понедельника по воскресенье с 9:00 до 23:00

Обратной связь

admin@artace.ru Онлайн

QR-код

Powered by Discuz! X3.5© 2001-2021 Comsenz Inc.