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
1 C* c5 l  F; X3 t8 ?6 EСборка        L2 Java
& i, J; C2 t, @3 H9 s& h
3 o8 r: H6 {9 ^4 }
# r$ Z5 c. i$ A3 c4 R) X: C
Доброго времени суток.+ z, q6 ~8 G' I4 Q, L3 t
, n( V# P: |. f

1 ?. ]% G& s# {1 p: @5 C% }Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
- K" L& W$ z9 ?# i% BВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.$ J; a/ c9 _3 P' O
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее./ T' S+ |1 n6 B) X
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
, T  x/ e' ~; ]! B2 ?  G9 d7 n: l3 A2 `8 w' y
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:; {" j0 q1 K5 B7 I- q

8 G1 x. a- V- A: O0 j% c9 G5 N- P' ]1 N

& {0 [. S! }& O/ B( bНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
5 p. V- ~- \, W) B% ?) f9 ]Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
$ T# j2 i) s0 c8 k) Q+ e  JРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.6 ^. g* a9 h+ @
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
# w2 v4 \( s0 b! w$ E0 @+ a9 K5 C5 H# M+ m. Q/ R
# N2 a: K8 h9 m
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.& A. C+ b" K* y% x) {. K: W3 s
Количество файлов пачнода должно быть равно количеству файлов геодаты.
  N' D. T; ^0 c9 X& q5 HЕсть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
) f) d. |1 q* @4 n( YТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный." Q2 l6 c* X: Q* U
Сборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.: r8 |9 c7 p3 q
Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
# m# c' D, m+ x0 d( cУстановка геодаты на сборки без пачнода (Rebelion):7 H2 ~- p9 y9 _1 G( H( ^
Покажу на примере L2Dream.
% e" D# G3 Q; x) _3 EПуть куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:6 H8 X! r- @$ F/ W% h
8 w! l* y9 N+ X( R8 Z/ t1 {
- `& B5 C& ^. s9 L+ }& H1 ?$ ~
C:\L2Dream\game\data\geodata1 V3 h/ L1 S0 G8 n% @( H
5 F3 K# l7 ~) R9 E1 I* X
# \' k0 v9 e3 h' e( C+ `0 O

6 f* x! P. i  U" O. _' y2 H7 t! E

, f* L& M" j# s1 X: i+ BНе в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
+ {0 i3 V* U( `  h$ LНастройка.
5 x% R1 p2 f: S) M3 [. W" EИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
- `- P% N8 [! z  c; A#================================================= ================================================== ====2 y* ~7 `2 e; h  r9 P" U8 a
# Даный файл является конфигуратором геодаты.: n$ t+ G# M  c) d( B: I* g/ T
#
/ x7 Y$ }& c3 Z1 D; X# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.& \, B/ O- c3 Q1 A' L
#
: \2 a% _* S8 {$ \( Z" f/ R# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).3 O* |" M" ~) R! K8 C* B
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
$ I6 t3 ?1 H! w; `( p: \; G2 _# Ну или просите прикрутить SSL.
+ v$ I9 j  _2 C. A% u- E+ K#================================================= ================================================== ====
$ c' T, C! M6 d/ X. Z" M* D: C* s$ g( l6 o

/ |$ |$ D( X, X+ U& K0 B% h$ z. c# Включает/отключает геодату и поиск пути.
2 t) X, Y% W/ [! l# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.  Z% P" k- B! d! c' T3 q
# 0 = Геодата отключена.
7 U# v( T" Y& `5 d2 C6 ?. D8 ?# 1 = Геодата будет загружена в геймсервер.
6 [% i% {$ n/ i- f1 l# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
2 a0 h9 r0 Q. ]" T8 B# s# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
2 ]3 s! ~; ?; d% w- N: L4 E# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
; R8 s7 L, e) k9 Y# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
) c6 q( @7 o1 Y' b9 sGeoData = 0
" p# R* W; c' K/ b  c( ]
' s8 _; @; C% x1 d" P: I

' T  s' M! n+ A, E# Хост для сервера геодаты.. o" h+ O' n. z. `
# * Забиндит все интефейсы.
9 j4 N8 R. f  D' r# Игнорируется при GeoData = 0 или GeoData = 1
2 ]7 d% d. E$ ZGeoServerHost = 127.0.0.1, H& C6 G7 x/ J$ ~) V

) w+ [; K5 F+ I3 m9 v
  g5 ]" ?6 N. G( Y: X
# Куда будет пытатся коннектится клиент.( H0 c( J% t9 ^: P* U. Y
# Игнорируется при GeoData = 0 или GeoData = 1
8 Q4 a9 T# q" U  _1 W! A: uGeoClientTargetHost = 127.0.0.1
, ]: P4 L& L* U3 J0 O% u5 x, l* M$ y; b1 `5 D5 e  @

: ]7 a7 v/ o! l  d/ N% D/ `# Порт для геодаты.
( Z/ O: V7 \3 C# }2 w2 v: L4 O# Сервер откроет на нем сокет.1 H# r2 V9 M7 x4 b3 ]
# Клиент будет пытатся подключится к нему.- L. y7 [. {5 j$ d
# Игнорируется при GeoData = 0 или GeoData = 1, J* |" L/ q7 x5 C. L( s
GeoPort = 90501 J: L4 S5 Z; E6 ~! {. P0 l. w* N

# o$ U6 l3 Q* ]% n3 ^+ [
, T" B0 r) i# J/ G8 m
# Сглаживает путь.
0 i0 ]- B2 ^+ A# D# Стоит отключать только для дебага.$ ~. K9 d+ `% p$ P- e
PathClean = True
# E. [8 N1 Y1 ?
% P% |$ q5 f& j4 x  y
2 ]* O6 Z# [9 Z& B- d. L2 k
# Обрабатывать ли двери в геодате% N. c% }) b0 k
# Настройка влияет на ГеймСервер
! I3 `# J  R  l6 U8 r  {/ C4 ~( ]AllowDoors = False
( V! E' z8 \$ [
8 N3 s0 D- Z5 s* G9 J* Q

2 d' \- o0 g! tPathFindingBoost = True# N5 x/ h8 F  G% f2 m
PathFindArea = 250  P) n! o0 z+ ~. O1 S5 I
Внимательно читаем,нам нужно это:
  j  k- ~) ~4 ^1 r% J7 [  C
6 Y/ E( q5 D! R5 N$ Z  Z+ u) V; x

7 F* k! }) ~5 h: j& t- ^) T0 k1 w( q! @1 n9 J

2 z7 h5 E: I3 {# d, u" m4 x# Включает/отключает геодату и поиск пути.
; Q+ `3 u# F& i( e5 ]# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
/ r: E) r" D/ {4 |7 f( u' y# 0 = Геодата отключена.
+ E: T5 e  b; d: ]& M/ J# 1 = Геодата будет загружена в геймсервер.
# |1 U# y1 G" ?% Z/ n& v+ S3 Z# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
" W) @& p# I+ @- c# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
6 Z; p  J1 j2 K+ y5 v( _7 r1 r# e# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
* [6 g& z" M1 N. c# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
- a; {; _2 q1 s4 C# M4 ]& GGeoData = 0
& N' k1 F2 t4 ~5 l
* P8 }* t) R5 W, t, x6 j$ w/ {
# L! W% D! V1 K; p& O
# d, d9 {$ N7 [
  G% ^& u% N4 N+ |
В этом параметре меняем 0 на 1.
; Q- c+ b4 y+ M  V2 n2 A2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
* [0 E& d5 k- @3 d# Хост для сервера геодаты.
) U: h+ C1 r) B0 K. S# * Забиндит все интефейсы.1 q7 j2 s/ w1 k3 Y2 x
# Игнорируется при GeoData = 0 или GeoData = 1* Y4 I5 y" ^$ x& j/ S; q* ?4 ~1 z
GeoServerHost = 127.0.0.1: P* M6 z' @2 _; o" g

+ {. S5 o  u+ s( P
5 e, X" F" o. V1 \+ h4 _
# Куда будет пытатся коннектится клиент.
# S) z) R) r$ I# Игнорируется при GeoData = 0 или GeoData = 1+ @$ B  U* U0 e; y& U* _- l
GeoClientTargetHost = 127.0.0.1
" K4 k2 r. B" h! e, v5 j4 P
1 r% h3 ^# |8 e% U9 R, Y4 n
0 s  u8 Z* C/ B' `& _
# Порт для геодаты.
) _# Q3 e8 s+ ^" F0 U- c, i# Сервер откроет на нем сокет.
7 o2 f, M+ J. G# G( S& U# Клиент будет пытатся подключится к нему.. v/ a7 d# t3 w; y7 q. P
# Игнорируется при GeoData = 0 или GeoData = 1  d! n! _( N* |* Z
GeoPort = 9050
. [4 B7 L" Y" u/ EЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:% e* D! ?: ]" G
% k1 Y- A5 r1 }! l, O

0 e( z8 b% P5 o" W! ^3 T" x# F5 c/ s  Y0 ?2 }7 O

1 u/ u( ]5 f: O! }4 njava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer
1 `6 }, |7 t. I7 y& \, I( z% G5 _
" p* W) S& s2 I5 I3 d" z, v

7 ^/ {8 Z- @$ S, X; M4 C

. b; z. [! S* A* hДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:4 ], b2 Q2 |2 s3 [

( J  A8 Y3 \5 r9 s3 s/ g
# p$ P7 C( ]' n, K5 U
  j0 T1 s9 O' w( L
( F8 f% g% V  j" W; B: p
# Обрабатывать ли двери в геодате
9 O2 Y' S+ `( S5 r  i# Настройка влияет на ГеймСервер  O1 X5 _' f  |" S: U8 h8 p
AllowDoors = True. M' A* b( H/ w' D
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
8 J4 v# e: \+ u) p/ [0 g$ Y2 T4 r" f4 ?1 u9 gПути размещения файлов геодаты:
* d! J# {2 \+ W! u$ u( i- O8 J' [
0 y  u- W1 j: i- ~* d/ w9 o8 V

6 l$ p  C: N6 G% G# N5 g. xC:\L2jServer\gameserver\data\geodata- ^& u+ {- h& {" ^! f' ]# z- d6 ?
2 Q' g7 @( b9 C# q# h
/ Q3 C9 B8 ]1 I5 [; j  c, y0 x1 H( J

0 b/ G0 @2 w4 X* H& b
+ o' V& N9 U4 O: H
И патчнода:/ @8 g" P9 M6 w- N

5 `9 i- g6 l) _, G; k
% c* G6 g; |: I' A5 q( C  q
C:\L2jServer\gameserver\data\pathnode3 O+ C0 L* _' f( K2 w6 _

0 k! G- D  C$ L, S) g  E

+ x. ^4 d4 Y' R5 Z
, V& s6 K! u. u- j# x+ V& l
% \! g4 ^3 T* M. A% G
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
7 A- Y: O* C) ^# `& w5 K2 W7 u. e: `7 ]$ t* b+ ?8 d8 X6 j5 \
5 ^) e% g+ g3 L2 r! z
4 M. w9 I$ w# x$ X) ^( q: R- x
# t, u" m6 V: |, L4 ]
16_10
1 }' U& ^( v% j9 i* K16_12! R) Z* J1 A3 d% R' V! u
16_18
' W3 f) B9 p+ j16_19
; I. n3 |' I5 u/ s/ U4 N6 T16_20+ K. T9 W) m0 k- Z
16_21
9 f# {: ?! ]0 V' N16_24
0 q' N: T, U. M- z' u16_25( Z5 s  I( m5 H5 |: a( x
17_10* G0 a& W3 Q7 a# j* e- ?' {
17_11! w! B2 S. _, h8 ^
17_15
8 x% I+ f' p: l2 {: X0 p5 Q4 m* ?; X17_167 b$ y0 C) {% }0 R3 Y
17_17
* b. a* C* `+ u/ W: [6 ?17_199 Z: j( b! q* C& m
17_20
& \# t7 U' q3 K; Z0 q2 w17_212 O( H: s- I7 Q: u9 I' \
17_22
3 W, G9 ~" @# R1 m/ `: I- K. f17_23
! @. i9 q- {% c( u! q! q& o17_24
/ h, B: S" @1 m$ S; x9 g5 M17_25$ u  `5 Y; d& K
18_10) ?  ]; S5 j& l2 c. Z) R
18_118 a* S' k7 m8 t0 F* z
18_14" \# v/ t, s4 i2 X
18_15
; N" I, s3 \2 l0 W* R2 d18_16+ a3 ^$ G9 A- D' X4 a! V( d
18_19
5 P2 p+ J1 T# W" A4 r9 K' I1 e18_20! j/ D2 x0 y6 Y* |
18_21
+ @. V- u$ g9 G18_223 O' F; r/ q: h! b
18_23
: P5 `* j/ j- {18_24
7 s) I. H% l+ g/ h18_25: O2 S0 _7 a% \7 ]) k* y, a7 n
19_10
' G! X5 u/ ?, h7 `$ o: k4 W: C6 ^19_11
* W' P6 b% o$ W19_13' ^3 @* `4 v) d0 m- Y0 N# A
19_14) g* |5 V6 ~  S) B5 D
19_15
/ v! S$ _% q1 `1 Z. L7 ?19_16! Y2 E4 A( d4 o5 _
19_17& }% V: j& Q) W8 V9 {
19_18# L3 k; i* F% Y8 o! f( d# Q
19_19) m6 _* p0 J' Q; }; {" I/ r
19_20
' A7 p- z" c& w: L5 i0 _19_21
/ n1 b+ Y' F7 `! y19_22$ w" s' R; x$ G& B! F3 r
19_23% K4 {0 `3 ]% o  x
19_24
7 o& C1 m9 }/ z4 D0 \+ }0 c19_25
( x5 h7 B! @% K: d. l( m: S; `' Y% |19_26
5 Q  d6 g/ @/ p2 v& Y& j  |5 F7 I20_108 u6 W3 N  X6 v% v# m
20_11, H% Z( v' ]- j" C% `" O
20 _13
, s' T2 [; M$ M" O( u- h. h! T20_14; j$ d6 M: o* @1 C- d5 O$ ?0 M
20_15
  B8 _* n8 O! j) G4 ]20_16
. J2 e, M& |7 n& K20_17
8 G( z' t" e: S20_18
, m, r+ S# E+ w; I7 d' ^3 n20_19
3 S" A4 E, y! x5 Z6 H  r" |20_20# W" V& r4 U8 G
20_21
; {$ Y! i+ c4 F8 C# M5 u9 n20_22) L9 X0 E3 j, P1 o# s( D. _
20_ 23' D$ H! F( n) e# I
20_24
7 T0 F) g9 p5 l20_25/ _. r3 r6 P7 t: y# T% |! s" ~
20_26
2 d* g0 t2 ]8 |* ?* c9 a; p21_112 |( K& C/ p2 P( M. U9 a5 C
21_14+ P3 J. d9 v4 h
21_15
" g. K  p8 Q  R* x4 r% `# O21_169 e/ w1 B$ @" b# K  C. M5 H5 z
21_17( A% V5 N) ^$ d  j- \+ v
21_181 |; A5 y* E; s: r$ t; T$ x* t
21_19
( d% p& q% [( v8 R21_20
+ ~' g6 P. v. |% h" c% s2 U" {21_21# ^0 B* m  X1 M. |' D+ U" v% @( f! A- Y
21_22$ A. B4 p8 @8 e4 _) V# f7 X2 I
21_23# S$ R1 R: S  }$ X. O9 R
21_24# K- M6 N7 c% ?" ]: X. Y, |
21_25
( L9 j6 r  N. x& _7 I5 h  M' x22_13$ U3 Y6 I8 k& J/ V9 P- l
22_14
6 d' Y  z* [" c! U22_15" V  C: ^5 F/ P9 Z3 ]
22_16+ j/ z( \% A( g8 P
22_17) x6 G8 q  E& c& }6 |! e0 V& t% `
22_18
- w" \; w: E! j3 @; j$ p* q22_19) h) o( i, ^* F: ?5 F" ?6 ?1 p
22_20
) _6 ?7 T6 O5 E  y% T( X& @7 Q1 v5 j22_21
# r% ~0 w9 v* S+ S$ F0 u+ f3 Z22_220 x- P: V  N1 L% O/ `/ X
22_23/ \9 H: b* `) O4 M1 i* x. b( C7 \( ?
22_24! I9 X6 v3 A! ~3 }0 ~  H* t
22_25% _7 h5 g1 O$ G1 K* Z- f9 R
23_11
& O9 b8 |3 c" Q1 k23_12. T/ R' j0 l% o6 Z2 V6 \
23_138 T4 i2 X9 r3 l$ ?% a8 q! O& k" p
23_149 r- x$ N: R/ R9 }3 Q7 X4 w
23_15# ~6 V+ k/ t$ u1 j" r: i7 A
23_16
, k5 {$ G  \4 Y7 i0 f7 s23_17
  G$ Z, b; O& N) N- [. B4 X23_18
9 J2 u% k- [9 ~2 ?23_19$ w1 S. \9 l, D( L
23_20
% p' V6 a6 B+ a2 k9 |# z4 q23_21- [5 o# r$ j' _' B) A- ]5 m
23_22" a. y/ M$ d& m) D, I6 Q
23_235 a( U2 T* Z7 ^' j4 t+ ~  t/ F
23_24
# Z0 X! _3 f# l) r' _  H0 Q1 V- k23_25" C' z. N, r& J5 O8 o, H9 J5 k
24_11- I5 j3 r* G" Q! a5 e0 G: {5 Z
24_12: J% R( f& Y4 N# w0 \
24_13
" s8 c1 q3 L; y0 ]  h24_14
! B2 V. f( h( E3 @, ?7 A24_15
& O" M. W. N6 o8 c24_16
; ?. h5 ^( [, V% v" k! J' H3 H$ ^24_179 y4 r! T: l, k  b  u& S
24_18
2 T' T& Q) S" G' C' J24_193 R1 _. Y5 G4 C* t! M
24_20$ L, m1 y, w1 n6 k
24_21
/ Q. i% D7 I- n" D1 c! u( }# `$ I24_22: ~$ M8 n9 _. E/ I6 a- k  Z
24_23* L) M! Q+ {9 U" K; Y+ p4 `9 M
24_24
9 t5 X7 Y0 C' F24_25
4 }0 }' |3 A" l6 R2 j8 }/ Z$ O25_11
7 x' t& B7 _0 l! H; ]6 H25 _12
  Y2 k& \# F1 _& N+ U25_14- y0 N8 m5 K2 H
25_15
4 c8 M8 c5 p0 C; r! l25_16) w: w% a2 p! n' G  ]4 L, ^
25_17
  `- j. P- J$ z. e. }) i: p25_18
$ v3 J; k6 w, P' M1 B25_19
0 {4 Q( ?+ ~+ n/ [4 J25_20! n  Q9 i# U( V( E! y
25_21
% \; Z6 p4 H( t. V* [: E25_23
0 j3 |6 n  Y4 x26_ 11% Y) D4 ^2 _* M  `; Q! s! Q5 g; g
26_12  C+ `' M/ i8 G
26_143 A7 v% o, e" H
5 c0 h/ d7 ?. o6 A% L, m( h! D

( {5 v& }0 ~1 p! i, v, z, F0 |: r( e$ ?% d3 Q: e2 d$ y$ L. a1 ?
6 p) e. w8 b* U& l
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.- o* t; S0 [; b3 J6 [) j9 v! a6 i: A
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:
1 X; t: s) T7 K6 X#------------------------------------------------------------- --------------
0 K/ L4 b8 ^) K  m/ s# Geodata2 a, [% x) r# G8 m
# ----------------------------------------------------------------------- ----
  Q; d+ D, U( t- E! Z9 m9 @3 f# GeoData options:
' ^' S; j( r# _: L2 M# 0 = GeoData and PathFinding OFF (default)
, `0 f7 Q) Z, n/ |# 1 = GeoData is used to check Line Of Sight (LOS) targeting and$ j# m5 [; S2 b" B4 k, H
# L2Playable movement. You need to download files for data/geodata folder.. @) S1 H. H* w
# Monsters can pass walls but not aggro (no line of sight) through them.
! K6 P3 [7 h! S2 Y) k  G6 Y; V# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode" ^6 q* ?" n$ \; [4 {$ z1 W2 g0 B
# files if CellPathFinding not enabled) and all character moves go through! Y, d9 r& P2 h0 y$ ~( H  e  D
# geodata checks (if a mob passes a wall, pathfinding didn't find a route. H1 K; @+ g* a( l* u. R
# but we allow attack and returning home).
- d8 x" U  t& U& u( {, e# Recommended server memory minimum 2 GB, rather 3 GB.
- z2 C* F4 h# \% M4 E% L# Default: 0
! {1 G1 s& T4 A' I. X/ VGeoData = 04 T0 H# e1 W$ V) T. y1 ]5 J
0 f. L5 A2 O6 u+ j: C
, j) M1 H; z! M  _; z. p. z+ F) {
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.7 O) b) `1 w( u" X1 K
# 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.
( z+ {: g, f7 C$ ~- M# Z0 l. A4 h, @# Default: False0 O# J6 |% M1 G6 q+ e7 Q
CellPathFinding = False
  r: Q9 A4 c9 ~  [5 t4 E: H7 g% E) B9 e
* ?$ Y0 V& l9 W
# True = Loads GeoData buffer's content into physical memory.
# U: ~- p- A3 Q+ d+ L' O# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.& L  l5 ~, \7 m1 m  J; W
# Default: True
" Q& m0 ?0 W% I' p+ {. NForceGeodata = True
5 Y' }( e( [$ c2 h
. O7 s4 ?+ o" c# [

" A% x: ~% W( A  A9 i5 i# This setting controls Client <--> Server Player coordinates synchronization:1 D' U  x- p( T4 |3 O  _
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
/ b! u' @1 h; C% I  b% c# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
4 k+ {$ z# e% }  \* b# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).6 I: T8 o  l. W! Q
# Server sends validation packet if client goes too far from server calculated coordinates.3 g9 U0 r/ H8 `
# Default: -1
# k! d  ~! l( v+ {CoordSynchronize = -1
3 T' y% N/ l5 [! r- j
) W. B5 |+ f& T
) F* z' T* N9 k& }/ N

5 k  u; L3 q0 J8 a1 x9 _9 Q# o1 h

3 N' Q0 W3 K8 \! z: G7 b1 uGeoData = 0
) H- {+ f; G  [4 l" Q4 c
7 d' f$ G0 x1 g/ [! J" j3 ]

: g; M& X* Z! d8 s( a0 C, D+ M$ P. X$ Y

7 \3 f) Y6 j  J- f  J- I* gСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
6 z1 n, R  t0 N' HСтавим 2 если пачнод присутствует, так же включаем эту настройку:8 c3 C. [/ R9 l- f; r  B
# M) r5 C1 q: N6 d# l; q; I
# J0 p, l' X( L8 {
8 b2 @0 B' ^5 {5 M7 }1 t9 G

$ m8 U3 q9 C# {, A8 I$ J7 L# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
3 I. O) D& {9 M9 c& H# 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.- g, }/ o  U$ e7 L. ?  V
# Default: False
" m) c0 U9 W* J- N- cCellPathFinding = False2 B) @1 ]- c- ]

/ _3 @1 ?7 D" ?5 \+ X6 J! g9 ~( f
0 a# U, h* _( v7 [" V
0 [+ I$ \, v: h/ E7 e0 F4 Z
: K0 c, V# W- e
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.
& t' @$ e. }$ p6 _9 H% KПожалуй всё подробно написал, спецы дополняем если что то не учел.
# X$ x; @3 |0 x
4 O6 ~2 c) t6 E
% ?& h) g4 G& M2 T) B
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.- s4 y4 D& J5 t3 C7 U

) `( P9 m* c, t3 ?( eИ строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.: _( u( }' k% t* T- V; K
0 N& `" w" x& j% }: ?! Z8 c9 y3 G

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

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

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

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

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

638638758

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

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

admin@artace.ru Онлайн

QR-код

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