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) K+ P# G6 s! q+ L  ~0 n
Сборка        L2 Java
. P6 B- o+ c  |! T5 N' ~
: S( F( Z/ A/ y1 |5 {

+ t2 p% x7 v* K% m  VДоброго времени суток.& a- j6 Z. h- z. f
1 E0 y: f- ?( W* r  c

0 D6 w5 Z2 b& o6 U$ }( GЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:2 d- C+ T" m. G) Y
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата., b/ K! S: Y0 q9 R! a
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.+ O5 m  ?. M" w4 H8 }: A
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.: E8 r  O0 \6 w3 Z

: [( l( K" ^& q; `$ [5 l) M) cВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
( m$ ?+ h' z3 \  g4 I# |  [# t[attach]495[/attach]
, v/ q+ C+ ]! n) h% N% X9 V

1 P. c5 {9 s4 i6 x% k( VНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
, q# S+ I6 w/ _/ _4 s+ uГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...$ z' V- Q  p$ P. _5 _* `! c
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
4 s/ b5 Y& O" T1 ^У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
6 Y" v7 _- m+ O
' w3 b) f( [4 z! T& `  [) N7 H

1 i' G2 n) j7 y& NЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.' O7 W, @2 N6 G
Количество файлов пачнода должно быть равно количеству файлов геодаты.( W0 x2 p' Y4 {
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
4 t( ^" _# R4 M; ]6 w$ R/ PТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
* J5 `% U! E, |5 E# N2 TСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
6 F8 {/ \( h5 X5 b" }2 I4 ~; Q" ]Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
" w% F& T" u7 l- |" z: `Установка геодаты на сборки без пачнода (Rebelion):. @% q! m* M5 g2 s+ m
Покажу на примере L2Dream.
, x& d9 E7 \" q! PПуть куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:  ]7 q2 e  n5 @% G" j
  v+ x6 v6 S- a
; ]0 i) e, \% x+ }& D6 [
C:\L2Dream\game\data\geodata6 S3 v" Z7 l7 j0 o" N  B
' J  ~2 e( m  C9 C& d3 N
8 w$ y$ p6 n" ]- D% _% b

  w6 K! Q( j6 ]- {0 r' f
7 i5 w. \  l; |9 Z. B
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
4 J+ P( c6 u; \3 ~7 V$ D$ G& EНастройка.
5 n1 E" ]) O" s8 tИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
0 b4 ^- K" S$ z: U; c#================================================= ================================================== ====
! i3 f, R# |6 B* g# Даный файл является конфигуратором геодаты.
  M; J6 A+ g' O& @/ v1 o) Q#
; u4 D, p3 X4 l( n1 n' z7 B# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.8 J8 B1 ^8 J4 R9 A7 [& m' b
#
" a9 _: f: y- v, c& p# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).# d/ G# W; D# g4 p3 Z5 j
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
+ i$ {1 G1 x: {- M7 f# Ну или просите прикрутить SSL.8 W, d3 L' l/ O+ u. V! ]( R) p1 I
#================================================= ================================================== ====. Y7 @$ l, F$ D9 Q

( U9 r. v! h* _/ ~+ C* M6 j5 }

6 X4 \8 b/ q4 Q8 I( _# Включает/отключает геодату и поиск пути.' Q) s- W3 A  l6 I/ X0 J' i
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
1 F. \( B* Y' r- Y) i: P% D# 0 = Геодата отключена.( Y7 S! O' ~- w* W
# 1 = Геодата будет загружена в геймсервер.
+ f9 ~$ f, E. C; M# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как4 ~! w. w& Q- V8 f$ `# Y. w& i0 A
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами* c0 P, d5 Z$ e' t8 P' a( Z2 @
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,0 O0 D& f) m$ Y  v1 F8 Y
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.5 V4 a7 ?( K' D: S1 ?3 y2 E) o( y: Y
GeoData = 0
. e8 F' s' l- R# R; B5 ]! U4 [, O* ]4 l' x
" P$ Q* J( x$ D
# Хост для сервера геодаты.+ Z( f! C" D# U9 u
# * Забиндит все интефейсы.$ O  r8 P' D/ \9 p
# Игнорируется при GeoData = 0 или GeoData = 1
1 [8 U; t& z; K8 @GeoServerHost = 127.0.0.1
5 @) z" j. V; u0 @4 _2 M" F+ u1 u  t" C- _7 g6 \& I+ g; J! O
' H, X% a4 M+ h
# Куда будет пытатся коннектится клиент.+ y! a  g+ b. b+ U/ k# ?; z
# Игнорируется при GeoData = 0 или GeoData = 1
/ j- k9 h6 B% q* J+ h) h2 KGeoClientTargetHost = 127.0.0.1
+ ?1 I+ k" B6 y" b2 Y( G8 B  h( E0 d) z
2 [1 Z* |+ W, _2 v( u
# Порт для геодаты.
- X) W# z* \1 U& ^/ C. x" F7 P& X, r/ ?# Сервер откроет на нем сокет.
( e$ o& K# `" t& [2 s' _8 g# Клиент будет пытатся подключится к нему.
1 d) t6 ~1 U/ m+ b8 e6 S& q# Игнорируется при GeoData = 0 или GeoData = 1
, B4 Q8 |5 {1 a( }5 m( H, FGeoPort = 90503 L# R( I: Z% o' j" {

1 ]3 m* |5 f  d! T4 A  Q9 _
2 `2 Y, b" i  ?/ z1 B/ e
# Сглаживает путь.
* {. f, w+ n& A; b* Q; \% K# Стоит отключать только для дебага./ f+ Z% }/ h/ w
PathClean = True
; w  J. a# D% G. ^" E% u
3 ]: ?: _& q, X) J% ^  o

) c7 X5 X& z" s  Z/ ?# Обрабатывать ли двери в геодате# d1 r- D  \, H
# Настройка влияет на ГеймСервер
1 @* i8 z( x, xAllowDoors = False/ o7 D2 d9 C" w
; i4 f9 x" E* b3 G7 S

! p! C: A8 ^- o! d7 uPathFindingBoost = True" F7 ^) n8 z3 O
PathFindArea = 250
- i# A5 ~. Q) R& t- G' [Внимательно читаем,нам нужно это:3 G& ~% m! q# {' p; {# Q  h" s* s
( J; m3 Q  B& g  H, q3 x
" T5 y/ {6 {, N4 ~" O1 }
( Y& y$ }* ~1 h
7 R" N5 c3 d. @
# Включает/отключает геодату и поиск пути.% W( c1 L$ ]3 {% X1 y3 e5 _! O
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
6 }3 m+ o, {7 k: Q5 ]) k# 0 = Геодата отключена.# |6 _  m: ?5 ^, R' {
# 1 = Геодата будет загружена в геймсервер.7 K( i6 f4 M' d- q) w) a
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
: j: i& R. \/ a! b! o4 u( V4 @$ A9 p# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами. q$ f0 p" a/ T5 `0 i
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
" \. j& b$ O8 _8 {# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
& `+ k0 Z* U0 ^1 `) OGeoData = 0
# j$ n3 F. b" |; h3 P
3 o) F. l. x2 Z9 J7 z
7 D4 X7 D% H  V' d& e4 ^
& k5 I' S) b/ ]! R- Y
) n+ I( ]$ J# I# ], W  N3 W( X, V# d
В этом параметре меняем 0 на 1.1 m. _+ o3 W* N/ E: e
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:4 O) C4 t# v0 N' M# d
# Хост для сервера геодаты./ r1 b' _+ x8 o4 y) I! N* Z
# * Забиндит все интефейсы.) I2 Q3 r1 L1 J6 ^/ }4 y
# Игнорируется при GeoData = 0 или GeoData = 1! O: D. w' S  e+ b) a2 \' h. N
GeoServerHost = 127.0.0.1: o7 D4 X0 x- Z  o* D  M
' r7 x/ D' Y) E
% o0 Z4 `: [6 ?8 u9 W) K% p  }
# Куда будет пытатся коннектится клиент.
( T( q* E: H6 g/ C: j7 x# Игнорируется при GeoData = 0 или GeoData = 1
. m0 C7 T7 N+ h$ q1 jGeoClientTargetHost = 127.0.0.1
: R8 b1 I# @1 U& i5 y5 N! U
3 Q3 c* g& Q. s3 N( v

5 M, Z& f0 n0 \3 u  z7 b( a* ^# Порт для геодаты.
) L+ m2 t+ i, u0 M2 e# Сервер откроет на нем сокет.
; a. y9 R8 ?! o# Клиент будет пытатся подключится к нему.
" @7 X1 z- w! [/ L" w0 ?  a# Игнорируется при GeoData = 0 или GeoData = 1
- O6 I7 u2 W+ H+ T% ~. QGeoPort = 9050
  Q) [. `' [+ I9 J6 E1 A8 A1 pЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:& q% Z" S( U+ l2 X% ]0 z
1 d+ j4 O: ?3 t* h6 U
# y5 B& V) ]" B  d- }# \
2 c" \% d0 Z  M, K. {9 V9 |( v) p

! N0 j; g+ v1 k( @; @6 bjava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
, q% i2 o1 _+ K' h5 i; ~; X/ u$ u" ?8 f/ Y# Y4 L  e% I2 M
  {8 }" \) |7 A7 j2 C% }! B% h: G6 v

  x( A/ u1 {1 y) j

0 N7 j$ X# \- ?2 c3 X# r* E: h  JДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
$ I: U9 S9 Z3 Z7 H1 `3 i: x% D: ^6 [, y' B, [' x

* y) R  U  G& n5 x5 ]; o. a0 {! O" G& Y2 D, m- c4 B

5 |" n  R8 R* v' j: k9 X# Обрабатывать ли двери в геодате
& x3 @& N/ e6 V2 ^* r8 w: Y+ @( |# Настройка влияет на ГеймСервер
5 }! D5 j  b, j! n3 ~AllowDoors = True7 h* A) Y" J7 O1 [4 o3 }: A4 K
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
3 a  m' F( ?2 z+ o, ZПути размещения файлов геодаты:, N0 j; m, c: f% k8 `0 x) W$ W* a% j

' S# q' ~) v+ }: z. n! ~( r/ F
2 b8 F- z8 q0 D, T, Q/ ?
C:\L2jServer\gameserver\data\geodata
; y1 P0 [" c& r% F# L+ j. h, ]' o: |- ?8 |. |1 \& }
) Z! |1 C4 p( G( _$ }' o- O4 G

5 |1 B3 w0 I. p

: x+ {& X  n3 SИ патчнода:
0 ]0 X9 j# W( G2 [/ L% S! Y0 ~  a( C' J" k8 x: T

  n7 E& j% h& z# p, Q" [C:\L2jServer\gameserver\data\pathnode9 @, [9 f2 |. H: Y' Z: X1 x# n% Q

  l& I6 S7 g( K7 Z
  _  n  T. G; F0 T7 L! `( n
6 e1 D" _# P+ d) Q9 H# ~

/ k1 R" X, \2 n, c, a# E1 tВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
0 M2 t6 ?* K- _6 B  e; n* @0 i5 }/ l) e$ O7 `

  o- O9 o# \( W3 g) S* S/ v% {' i+ V" Y

+ K- h$ `8 C- U16_10
1 }: r* W4 Z! n6 W16_12
% ^2 U0 }/ O/ v  u( A8 ~# Z" e- B3 g7 e& Q16_18
$ J0 P! h- t& t$ J  T% P  N$ G16_19
+ d% G0 q! Q, l* B# ?+ C0 o3 B16_20" g2 q; ^/ ]5 v7 a
16_216 ]% {# d: M" \7 C  [5 d& K4 O
16_24
) A- h8 T5 z. D3 e! t. e+ z/ W1 Z16_25% e# q/ K/ c# O0 }7 a7 S' E( N
17_10+ c& v; _! f) Y5 ~" Y
17_11
& S/ h# A) N* w! l17_15
' q" p5 j# R9 d& H% x  J4 {0 B17_16  M9 X( u1 z9 d# W3 q$ _6 P
17_176 d0 @0 i( G' E  [* x
17_19( S: X0 ?* l) d, Q
17_20
0 d4 M: [4 l& K" I" S0 c17_21- v* `7 @) T/ g$ r. Y# {
17_22* s5 L, N# }8 e. H* Z
17_23
/ F: @! F( |% u# U& h7 L8 v17_24
* W* `+ J3 w. f" g/ V17_25$ Y0 r# @, k' l. e
18_10
8 }7 a) @  \2 `18_11, ?# u/ p- E+ m( M( n
18_14+ j8 A- h% l, V6 H% e) Y9 B
18_15$ h6 s! G% D1 d' Q( n' r$ w+ J
18_16
9 e2 U7 C+ P" h; J. V# B18_19$ Q- R2 @4 `% f+ \% C- z) z. D4 Z
18_20
8 b1 x; O! U. a2 t3 b18_21) K3 g4 l8 U1 ^+ d! T- D- D. p! Y; ?
18_22
6 [2 X- `5 h! i4 N! _; L18_23
" |$ e8 j& v  ]$ t! c18_24
3 a8 k$ f8 J5 M$ v18_25
* _2 Q+ s- U& G! e7 [, m19_10
- v9 g3 f7 Q& i# o& W7 p19_110 k! v/ x" j- ~/ A, y
19_13% U" G7 B* w% m, C+ D( ~4 ~7 B, |
19_14
( o6 g( R5 J; r) u) ~19_15
" R( u  m* f8 R, p, e, u19_16
2 S3 y& H: \3 W1 m5 n, |19_17
7 ^7 z: ]+ E! j19_18* s& Q0 f+ u" q
19_19
9 I, Z! R7 J. f. ]19_20
) ~2 s8 G/ q2 _( y  v4 ^19_21/ \8 I6 S6 @( X% m# R
19_22
9 U- r1 v- l6 ^8 W  q19_23# {( B- V% y: i+ @( G$ C
19_24
7 A8 `% v' y* K: x9 A# h19_25' n  n: z# H! f. _; D
19_26
' O! R9 Z! c4 S. G8 P$ |; I) {1 G20_10
& x  d7 u5 k1 N1 y$ h* j20_11
+ @) x& }4 n1 g' l" |- A  O: ~! m# P20 _13# ?6 k/ l8 e$ ^) S; j, k7 N
20_14
) g# |2 S# K1 ?8 G5 K20_15# ^* H4 Z) L1 ]  H4 h
20_16
! t  J4 Y) @& r' q/ {5 x# G20_17
: R/ a" Z& h8 E: [" O( u20_18
' Y9 R6 m  P% I4 a  Y. V1 \20_19
5 i4 A6 e" k; Y$ {: f20_20  h0 h( H# s" {' T
20_21
4 Z% Z" x2 t+ W0 R, `9 D7 _" W20_22! F5 t& x/ I8 V8 t/ O5 X; U1 L: |
20_ 23
- v5 h& W& q0 r: \) T20_241 c' ~: G3 o; j) ?6 z
20_25
* o% k9 b, J" r+ ~' L+ p3 W- Y20_26  R+ F) e0 v, K5 z$ `
21_11! L$ l) j8 i6 a: Z! X5 o! u
21_14. T. ^/ z' T  T& C. T
21_15: I' l3 a; ?  {4 ~2 L* P2 |
21_16- ?( @& E: c. r9 h/ {' Y
21_17! b/ F6 s$ l! \7 f6 e
21_18  Z% O5 }5 ^' y; J# @# g7 u
21_19
( s9 o/ G5 Q9 r; t! E# M21_20' z& Y) N) S9 T0 B/ K# \9 B
21_21
: [2 X7 D: p) T# O; t' p% \21_226 h( A- ^* P; ~
21_23- S) N6 [6 h3 H* b# M; L
21_24! S  ?+ L2 t% ]2 F& i+ [8 k
21_25
' v0 b; l( i5 h9 ~4 H/ E* r9 s22_13
! n! x. s4 k* |5 q. S* @. ]22_14
2 ~, Y  k9 g4 Y" [2 S1 @22_15! M8 m7 p$ ~1 v7 x# Z/ E2 G# G1 [
22_16
9 u- i* m  I+ h22_174 X0 S$ `: D) G6 j
22_18
& a% V8 `& R+ u2 @, _22_19
: ]3 R. f2 g4 G& n9 j22_20: r/ X( b! \; q3 L
22_21& T: q$ D9 d# H: C9 ?
22_22& z8 m3 a8 G+ Q$ L" i! k
22_23& O* U8 p' C3 b$ I$ b! T& K
22_24
! `! O2 E1 l5 u; ?  y$ M- ]7 J+ f0 i22_25
" Z1 U0 x: h& s! C, A23_115 B8 N( |& u; f6 T: n: }
23_12
9 E! X+ T4 l- M, r. x9 j23_13( k* l$ }- [- i/ O
23_141 c' }9 S; k/ h1 d
23_15
5 D% M) ?1 K4 O+ C( S+ F23_16
- l0 {- p# _0 ?! |6 [3 K3 B23_17
( t4 Q5 C0 X, j) T! O$ @23_18
+ H* K8 t2 @& D/ {2 m, e23_19
4 t$ O  }" d8 r8 ~23_20! R& S/ v: W5 z, c
23_21
: j3 w& f5 r+ P23_227 ]; g! O4 r: _. {7 r
23_23
- c: b' l6 {) F, s5 g! X23_24
# Z  ?/ I% j) O5 ^' o3 a23_25
- w* A6 F, Y8 L24_11- q0 T% J! q' f2 v9 ~+ I5 z
24_12
- A/ A0 l5 w1 M5 F24_131 r) ?. _4 G; S' A2 Y
24_147 k& g2 `, Z) y/ ?' I
24_158 {% m6 ]7 r6 J3 M2 {7 y
24_16. I1 I9 U4 q! E4 m
24_17
/ A8 V' [1 P$ D3 m: F  u+ n24_18
; l) \0 b6 V6 ], X) @0 c2 A24_19
! a/ S  W6 g. i6 a24_20
4 i0 r4 t3 q' ^" l0 \5 D. l8 z24_21
4 \! A- E/ g# S( L& M" n: c* G24_22
8 v3 U: J- ]$ Z) \24_23
: L/ W2 ?7 I; P/ o. W24_24. q. U6 z% ~1 ]( D% m
24_25/ c  A$ c2 W# _! }' s3 P
25_11
0 K9 i7 Z; c+ B0 |& k  e. H25 _12
' \+ l3 F9 m: m- }. A" O25_14$ h7 P/ ]# F( h( U" a5 v
25_15# D6 O+ M' q6 L- B: D0 L5 L( @. S9 D
25_164 n8 l8 I9 j3 r6 Y* |. \
25_17. k4 C* D$ d+ m" L  \& j: M
25_18
1 t! P! P& n8 v: l, \' W4 g" A6 ?25_193 U( V! s: t! k& B: o/ b. H. k
25_20
. G' b8 u: m2 K# h0 P. l25_21
/ i  D+ E% e/ r- m- I25_23: D" g2 j4 p( U! b) \( n0 O7 ?) `, }
26_ 11+ g6 B; S8 X4 U6 G
26_124 l' R8 f" S  V9 O
26_14
7 N8 H& n) J# F/ c- g& ^  V1 u8 I
6 A; j8 X+ Z% S6 ]
) l0 G0 u9 E, k3 A4 v) I5 J# N

+ O- h: q; z! s0 g5 U

$ I) S0 K3 [. m7 MВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.; ?, f0 w# N" ?+ R- a9 S/ ~
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:! R- ?: ^% i! V) o" |& B% f# h
#------------------------------------------------------------- --------------% A6 F, H+ c1 ~
# Geodata# b$ ~' A* G0 T7 u/ w* N  o" x
# ----------------------------------------------------------------------- ----4 `" V9 z, C3 B3 e( K/ ^
# GeoData options:
/ ?5 n1 b, K: s# 0 = GeoData and PathFinding OFF (default)
1 d0 Q- s% ]. J9 o# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
; o  H/ }. @5 W/ g% f# L2Playable movement. You need to download files for data/geodata folder.) \) j. ?+ a/ y' j
# Monsters can pass walls but not aggro (no line of sight) through them.
! \& m0 W0 q. {# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
: N, q, f3 r- J- w, W+ n3 f2 b# files if CellPathFinding not enabled) and all character moves go through
) o) n( S, {4 F( ^7 F2 d# geodata checks (if a mob passes a wall, pathfinding didn't find a route) o" {( f6 q4 Q4 a) S% h
# but we allow attack and returning home).
; M( E5 x' J) P# Recommended server memory minimum 2 GB, rather 3 GB.* ~$ O" H% j+ l' t
# Default: 0
5 S; S" y. z0 V& M( }. zGeoData = 08 ^" V3 j/ D5 X9 G' T# W

2 [$ o& `9 Z6 q. `7 e2 _3 ~. @) y
) l6 t# Y2 {6 {8 B: U9 W$ U
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
0 d9 @+ H9 Z/ x' @1 v; [8 n# 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.
9 A  [/ R0 p% l% ~5 ?$ a# Default: False8 ^0 x; g3 O% c, `# d% C' d
CellPathFinding = False
, ?% g' z9 ^, T% |# {
! M  j" m# x( P4 _' l4 q  P" T
* a- I5 D# G: V9 P1 f
# True = Loads GeoData buffer's content into physical memory.* t/ L$ g* a/ k( N
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
* P' W; U4 x: G$ F7 `7 U# Default: True
! o8 [% A  l2 n/ B( o4 }4 ZForceGeodata = True+ N1 T5 J. n! {" n& o9 Y; K& E* k

) R2 D0 }0 I% p* o& a  u3 p9 S
* m0 e- P3 n3 K0 m
# This setting controls Client <--> Server Player coordinates synchronization:! ^7 g4 S* ?, @0 l: Q9 e$ D
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.8 q6 p' @; h, X+ V- [
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
0 f8 x$ p+ s! T7 P# _6 L8 H+ v# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1)." _7 s" m7 m0 U
# Server sends validation packet if client goes too far from server calculated coordinates.
! a  Y+ l8 @7 ?# Default: -1
# ?. y; r2 A3 q8 k# }CoordSynchronize = -14 N  I% a4 O& l2 k

# x, P- a4 f) F6 M# g" p& O2 H
3 F& {8 S: H' C( U( l
' O6 B* Q' _" o  W3 R, \9 u) s! G4 y+ b
- B" k5 i1 z& r+ J" X3 o# q
GeoData = 01 Y2 B' P' }5 c7 o
* ~8 |. I6 A5 O4 X
# r7 h& _* @; a! R' g
+ L" L' ^! X/ I/ g$ L2 ?

2 J# t8 A% w; ZСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
1 \. @; E  Y/ ^/ _, P8 oСтавим 2 если пачнод присутствует, так же включаем эту настройку:
! y/ w1 ^) d+ `# E% p) F, W
, q6 _. }0 e6 T2 q( a& W( d' s
- R1 D+ ]/ [( O

+ O! I5 L: \/ R0 H  Y0 R5 s' V. l% R
# b3 W" b' g7 }
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
0 f' C5 C  g" u& O: a. N( t# 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.
- S. o/ Z: w, `% \) p! J  W# Default: False
+ T# r$ c; w* sCellPathFinding = False
! c6 p# q7 O8 B$ a5 I, F* S0 L; u3 I5 k/ v8 I8 |7 [! O; v
0 T( Z8 I& V3 ~# u6 y& i
- {; @- Q- ]- q. y% B

+ }5 B; Q3 h  b8 y& H9 a  MСтавим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.1 j) C! B7 G; w
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
, O$ `, x1 _+ ]% O- R7 ^3 ~9 `& t7 v# L' Z0 T
; O/ N( k2 h" z9 H2 z- n
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.2 T; R# w  Z; z3 l" {

! h5 m9 g. B1 o3 s0 OИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
" O  q5 Y/ I; D% ], S! ?3 k) v* k9 t$ |# k* K% [) c





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