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
9 V, X- G0 e# d  IСборка        L2 Java6 y) I8 X% Y( y+ G

! _: j. c/ m1 |; m) R3 X3 T
% Y* F# ?' V8 E
Доброго времени суток.
! f6 ~% ^- X5 G5 |+ ~6 j8 U0 e4 Z* F# J6 I# L- }# H

4 p, ^/ ^  S3 _+ y! `) qЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:( D$ ~; H/ ~# x0 R* Q7 d
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.
' y0 W7 e' [4 v1 r9 v( JДля чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.
7 ^; t# ?* ]3 I0 {) k+ s! IПо скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
, x) c* r! r3 N" |* O! C! a# p1 x
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:+ w: V3 `0 k. S( U% Q6 W4 t
[attach]495[/attach]0 n1 U% l. D, V' E! }0 @& M

) j1 C. ]4 a# h( ^1 i' gНа картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
* ^0 A2 u. a6 ^- a/ FГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...
+ j4 s6 O, K3 OРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.9 u0 O" c/ J+ s. c6 ^2 C9 N
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.; }2 }$ O  n2 P
" v$ p: o, l5 l! }6 I

& I1 ~; Q& t& gЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.! ~- m$ V9 j2 M" {
Количество файлов пачнода должно быть равно количеству файлов геодаты.. K$ Z) P2 l" V- ^0 |) E% g
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.
. h3 S3 d3 D" g9 C; gТаким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
! H5 K( a: p1 D; L% ?2 x( NСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
0 S; m  u# T" ~: l8 jТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам./ S! }5 k6 p/ c# ?6 \1 X$ }
Установка геодаты на сборки без пачнода (Rebelion):! {+ T0 l' {$ M7 F6 T
Покажу на примере L2Dream., @* @( k7 F9 @7 Z
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:
$ j) v9 M0 h$ z. E# e4 Q8 Z
9 u( j; x( W: J! |4 [! e: `( R' y

$ p/ r; i+ r$ ]# c4 [# B( VC:\L2Dream\game\data\geodata3 L6 J& q* ^4 p- X6 E: V
+ H- G& l" p6 m5 v! `( t: b
1 n, I) J/ v$ m+ h* v; X

3 C5 J' u3 R2 ^  j+ D
  ^9 y2 n5 f. @3 d) a# U. P
Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
6 [4 b) D+ K4 j" M5 h. UНастройка.7 h& B7 C3 Q& A, y  ^5 h. N
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
1 Y7 N: J1 j: P/ b6 n+ ?#================================================= ================================================== ====7 W( a+ o$ W- K
# Даный файл является конфигуратором геодаты.7 r3 o7 N" H  a: ?
#
2 u5 |# }. ^' X% S8 |  Z# j3 N0 u# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
0 P) b- g3 {2 O#: \8 X$ P) S6 ]8 Q+ i+ D
# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).2 P5 l' ]% H/ C5 Y- ]. K$ Y
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.
' m* g' v6 o6 A% H, ?5 I# Ну или просите прикрутить SSL.9 N. x6 y( d0 b7 k* o/ B
#================================================= ================================================== ====3 }. t" X2 R% O: z
2 s9 t7 H, W) j: j5 y
, i$ p7 F0 a0 K
# Включает/отключает геодату и поиск пути.2 N) g1 a: Y6 P/ u
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.
, c8 _  e# J. l6 U& J# 0 = Геодата отключена.
$ A" k' L; W& [2 S# 1 = Геодата будет загружена в геймсервер.. B+ Y: c% ]/ r! I; X
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
( U4 Y. B5 G; [# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
; S/ X* M. j; t% c5 k# L8 Y, s# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,6 T7 s* Q( J8 L. ^) ~' B+ [0 \
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.2 [. b0 S+ a! r5 b1 [0 o5 J2 i
GeoData = 0( O& g: s$ C  @/ o7 F1 c7 X
+ \* r' v6 x, p
5 w* ]* h. D/ J! ]4 n
# Хост для сервера геодаты.
- x2 x: s: f* J' @# * Забиндит все интефейсы.# h1 t# x* q- c( k2 C
# Игнорируется при GeoData = 0 или GeoData = 1
* _+ K; k  j9 q$ R" S% bGeoServerHost = 127.0.0.19 n4 O- Y4 j2 l: n  f) ]

8 U/ k6 L- g: W$ e' i% I

9 L. e4 f5 _0 d; Y; c1 t2 {$ j# Куда будет пытатся коннектится клиент.5 d4 s1 w4 }5 b/ x+ I* i
# Игнорируется при GeoData = 0 или GeoData = 1
' ?- U6 H" Z% D# }GeoClientTargetHost = 127.0.0.13 r0 ]* J! ~: J6 @
# F! G; I& D8 C( W; |. f; s& J9 [
5 F/ u# z/ }5 V' T
# Порт для геодаты.
: n# N: E  t3 v8 g3 A- |# Сервер откроет на нем сокет.
6 h' \9 F% J1 O! f) M: F! r# Клиент будет пытатся подключится к нему.+ e" q0 p8 P0 p4 u: A! n+ ~) E
# Игнорируется при GeoData = 0 или GeoData = 1
. W- @4 M4 N' \& oGeoPort = 9050
5 y& T' X) T/ Y8 R- a; z7 n
  U6 J0 E5 y  f. {  {# s
6 o3 {# o8 x& p4 ^5 u. U1 E! V
# Сглаживает путь.9 x5 E5 J8 |; J0 ?! L+ r
# Стоит отключать только для дебага.
1 c, X2 d! X5 d6 c& a6 |PathClean = True9 W0 R, t) _- g' j% k, q

8 a; m2 E; [+ ?  h

: U4 C- c4 \/ X0 w( x: \0 u# Обрабатывать ли двери в геодате- T3 v/ O# N8 L" R1 i% p, q
# Настройка влияет на ГеймСервер
2 ?) R' q% C+ P' |AllowDoors = False, ^1 D& J: Q& R
9 t: i4 j3 ^+ n/ U5 P) w
4 c6 o7 h2 ]. q: L6 X$ f' W
PathFindingBoost = True
8 e. q: G  A7 DPathFindArea = 250
  Z. Z5 j$ T+ \. ^& B  XВнимательно читаем,нам нужно это:; O4 _8 F* k, L3 Q" T/ e7 M
( |, y2 ~: l1 \# `: A! o
* T6 e  a8 K* n( D

8 q  Z" \/ [& s) Y6 ?, n5 u3 f
1 X& n- Z- A# b& }, ]# v" v
# Включает/отключает геодату и поиск пути.; V: T  P$ Y6 O; Q7 y7 R
# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.0 W$ x5 \/ Z* f8 Y# [
# 0 = Геодата отключена.
* \- u5 Q$ ?6 S# 1 = Геодата будет загружена в геймсервер.
0 Y. ~% F( a9 E* s8 g2 a# i2 d/ `9 ~, e# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как  b2 L" z8 E/ \) X
# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
8 L2 |; a+ z% {/ N# |# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
7 \2 V! @+ J, U# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
/ I; }( D, Y2 e# c& V0 Z4 RGeoData = 00 q' H, F- r! d# z( g3 W1 s- t

4 D/ M/ B& i1 [- c$ h# v

8 t9 }- N8 Y8 [. ?' H; y) W/ N7 R6 a

2 k1 n3 p+ C' e/ N5 qВ этом параметре меняем 0 на 1.
, G7 h2 B  o. f& H7 p$ E: `0 Z2 ставим в том случае если всё таки решили поставить геосервер,его настройки:
8 |1 a9 d8 ?+ K( |) j# Хост для сервера геодаты.
# W" O8 X" C$ H7 Y2 Q# * Забиндит все интефейсы.
5 H8 L" A& K+ ~( i/ d& G# Игнорируется при GeoData = 0 или GeoData = 1
' d; u) t4 U& C1 o0 xGeoServerHost = 127.0.0.1
7 m/ V0 W7 J  I+ b" H0 O
, {) h, i1 D: |, |/ Y5 [8 q  }

+ P( f# h8 G1 q- I! d. K9 m+ h# Куда будет пытатся коннектится клиент.
& k" e* {9 ~9 v2 o6 ]# Игнорируется при GeoData = 0 или GeoData = 1
9 A, @; e) Q( B( h* `GeoClientTargetHost = 127.0.0.1
, B$ R/ J) C1 R4 N& n& O+ G% e* T- n8 X" s$ C( r4 h% _, J

( T! ~* u$ w% p( z; e# Порт для геодаты.
6 L5 Q1 B4 {! G3 S' R" R4 k& o# Сервер откроет на нем сокет.1 D' j- K- g; d) p0 C8 ~
# Клиент будет пытатся подключится к нему.- v9 z& {6 s  H/ h! o
# Игнорируется при GeoData = 0 или GeoData = 1
# ]  P( h# k3 n. JGeoPort = 90505 ~+ w: M2 K% y0 K8 u7 Y
Здесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:
- S2 \3 c$ V: T+ Z; Y: l- S+ ]8 i9 P/ @* A2 M
, e$ S0 v2 M; s  y% ~
: m; B! A! I. ~* z/ h! }

/ Y. }" d0 A3 L6 l6 W0 `7 ?java -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer/ Y: q* g% j* ?  {1 J
: A6 `) p/ c. k

& H. V& B/ |" `4 E  Y4 [9 e6 l+ q' ~+ L" H7 O

3 Y- t7 N) Y9 VДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
2 Q; c" [5 q4 X6 R3 M
/ R1 R- b, p& f6 y% l" Q* U

4 j2 R$ [( V* Q& L& J; X! {% x3 d1 B' s" _5 |6 `

1 p: M* a/ H/ L* Q" x% s# Обрабатывать ли двери в геодате
# L" o. a. Z0 ^$ |. V5 A2 c% A* e# Настройка влияет на ГеймСервер- O& M; G# W5 V+ n$ ^& K
AllowDoors = True
: V& p1 d7 }- Z  a& L' T* p$ uТеперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.7 u, i* s  ]# ?3 I9 H8 E' s3 U
Пути размещения файлов геодаты:) v3 W. P! W5 B, W+ F& u3 U& [4 A
. p3 I+ N& D# B6 H; }

! g: t7 s$ W- }# V  `8 BC:\L2jServer\gameserver\data\geodata1 B+ d$ o: D- b* {

; z. ?; F) C: T. k* r6 u; w* i
) m2 E% k# T) ^# x+ z1 R0 S
/ D1 r* N' V# r8 M5 J5 e/ t2 g
: c$ l5 L4 {/ [3 s# \
И патчнода:7 R, U! C# Z+ }
, V+ u5 C7 l% i
! ]" s9 F1 Y# n+ e
C:\L2jServer\gameserver\data\pathnode
: C; i* g) r" @" S  @( M1 x* Q7 U8 v. y6 h$ z/ s9 x
. i1 f" S* {1 d3 k0 s

% p$ z" ?* c" {& L7 x/ t
$ @0 {  K7 U$ [7 f$ y
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:
. z5 E/ ?, }' U% w& H. u! `1 q8 Y1 a( U1 n6 C

' Y0 Z- n5 G' W9 a
" t7 m2 p/ K1 A; w; R; ?
4 G# a& c, Y" u
16_10
& Y( }* A1 N/ l% z16_12
# T4 f- ]8 J# [16_18
; H# D. ^; x# H4 M8 q$ b3 i5 w16_19
" ?7 r* f& C7 I( m0 x16_20
. j( t, S* A; b, m3 b16_21! t+ q, O! ]7 `6 h4 U3 S) w
16_24% l- W3 Q# n3 B  ]% y/ H" E
16_25
. p( N2 u7 a6 s* u17_10
# V9 Y$ [7 @7 E+ k2 [( B" k: q6 P17_11) O3 ~; l6 V9 f9 l6 U4 u
17_15
; t2 r/ Y. |& Y+ {17_168 t  x3 D  z7 I( \5 e1 t, v
17_17' A, p$ I& t& Q1 Z5 J# h. i
17_19
6 J) T1 D" D3 l  C17_20% S  y* C* }, a5 g* C  O
17_21* Y) w5 P7 c' r& q* D/ S9 a4 d8 ^
17_22
2 g  Y) N. R7 M% A, ^- q: p17_23
  d+ \" p6 j) z' k% Y) ]17_246 t) _3 o/ e- R* p  e) ^
17_256 i! X" _4 V( O3 M) n% `# m- {+ Z
18_10
7 a; \: I9 I9 Z6 A7 g: h! T18_11/ I: M& I# i, a" a& P# a
18_14
& H7 d2 T: D' D8 z18_15
% N$ `4 Y" |1 v9 s( N3 o" v& _+ b7 i18_167 ?5 Z/ w3 }: S# d) i! U( G6 w- I
18_19
- q- \( ^. H0 }6 K3 w18_20( \6 d6 w. i& t  `. k: o  ]
18_21
" C, |4 V4 o4 b# v18_22
7 i1 ]! S7 p4 U: u1 n+ F18_23
2 e" ~; U5 k- m! J18_24
3 q4 y; h! l! _% v18_25) ~* U: E" m2 q2 Q: b
19_10% {6 z0 E% e4 d/ l- Q
19_11
$ F3 A8 x5 Y' S19_13' Y9 f, w3 A! T( c% r" x$ V
19_14) ]1 N1 d8 p1 O' A0 D
19_15
# m% q& ~, ^9 `3 }+ t19_16; X, A7 a1 c# G6 c; O% [- s
19_17
0 G( C$ s. a! r& I; b; z19_183 U$ J( y6 e! I( z  q9 }8 F
19_19
6 J5 o4 E, N: U; c  E4 z19_20
* g" P, N  c; ]* p) t2 R19_21* d# H2 n8 v/ {, z
19_227 i5 ~5 C7 w- s& K7 I
19_23
; {- w8 {0 R3 R" c. q7 k1 @, D19_248 R0 V9 r# q6 R# X% o/ d" g1 p4 V
19_25( g. g! i, r8 n
19_26/ k! y2 D5 V3 J
20_100 K* N7 P% R! b. r
20_11: {  y& H/ B' F( ~  _1 v
20 _13
3 a8 B0 @9 n. Z; h  u/ y20_14$ u$ h, ~2 @1 K+ k
20_154 t4 j+ F  p& h0 D7 ~0 k
20_16: s1 V& h8 K2 g
20_17; g, B" @7 K9 |; d
20_182 H! T+ r2 g9 O
20_19# G9 L: V3 Z" Z, f) O2 f7 }: Y
20_20
& @' T' M8 C- W0 n* Y5 h20_211 ~6 L/ g4 @" M# j$ w" _
20_22
9 F# n4 f4 h+ L+ |) \! y20_ 23
: c( O. x$ }  y: b7 K$ ~7 ]20_24
- q; q- ]& O4 a20_25% e/ Y9 w' ]0 s4 z- k! c$ K- q
20_26
8 T, E/ [& A0 E9 i" q7 @21_11* \- h& x3 r( C" @) K0 `' |# K
21_14
/ B) n% m/ j! ]6 C8 `, w* z21_15( k; w8 p; X2 M1 u
21_16
( p2 m2 U# r( H, K21_17
' H- q: ]9 r* u8 l2 x21_18
7 D; ~: h! s2 \* ?/ P* Z5 ?4 P& B21_19. s* l5 s) E! ], C/ O
21_204 |: G) A5 r3 h+ R
21_21
+ g9 j( v8 Z4 p% Z21_224 H! G) e5 g1 F3 J2 ^
21_23
0 _/ t3 C) n( M( [0 L( n+ C21_24% Y4 p( k4 l- t
21_25
# E6 m: z5 w6 V3 {; Y22_130 x0 m$ {" M9 u( U8 [
22_14* C* I$ r8 q2 b
22_15; L1 ^; H( @- c( j7 f2 M. s
22_16; O* ~+ v# f. v1 U2 _7 t
22_17" B4 t, n. ~& }5 n& q
22_18. i8 i# I: ]% U7 \+ Q+ s1 N& c) b
22_19. h$ w. y- k8 U  Y7 e7 J$ ?7 T
22_20
( ^& N, i3 d; u22_215 F0 @$ |/ X6 E. a
22_22, w+ \; Z. L1 f, Z- E8 I) |
22_23
& v$ e! h0 p/ ?- y' u7 E22_24* g- E* T5 b. V. F) r& N4 m! y) ]
22_257 h, ]' c# |6 l, S% X
23_11
1 V/ G  [: q6 k) f4 |23_12
. q$ b& N% @1 X! E23_133 m' G; q; @( S: q. r! ~, P
23_14$ d& ?" L9 T8 }9 u  F
23_15
5 u( N& a+ h9 ~& |/ m, F23_16
: k) w, h% ^  v' `23_17
# ^3 J. l- v! d23_18* ]7 d+ s; T( c# @- g4 ?* o0 W- T% x% I
23_19
9 Z+ d7 _2 c# d6 `23_20
: {1 v6 U  k) k0 C23_21" b6 V; m: ~; Y7 L
23_22' v5 K3 V9 B0 n3 W9 G6 f1 _
23_23  _+ N' d3 x4 v9 X1 n, v) }
23_24: B: M7 Q7 Z6 ]6 w" ]* @; h0 o% d& X
23_25  h% T, r7 A5 ^: k
24_111 P( u, h# A* Q
24_122 k3 y& {$ K. i6 u7 O
24_137 z' @; y; U5 z- A8 j
24_14- F5 ^2 a, }$ z. q8 h  F- R3 N1 [
24_15) D! n  y( d3 F0 l" q
24_16. I" c% p/ \7 _( D! O
24_17
- q5 b! ~, H( `+ ]& R8 i24_187 a3 X: n" C/ v/ |
24_19
% a4 H* \# j! D- t) l6 [24_20
) G2 s  \+ |, g) t3 j# v8 h$ b24_21
3 H5 C( A1 O& L24_22) o1 q; W6 A* H" C5 c: H
24_23
8 Z9 L1 Y! S2 E3 g# p; @24_24
: g% p/ W1 T- J3 m8 l24_25
4 y+ X2 O9 w$ ~, z% v9 ?& K% a' R25_11, y: c7 Y) l; M9 l
25 _12
/ w' J+ E+ R5 `25_142 |' Q2 T9 D& S: V3 x9 d8 _0 d
25_15
1 X$ t" ]! L0 ?. a3 y  d& n25_161 X  g0 e/ {. i; I. a
25_17
% P" n3 ^2 }3 f5 d9 F25_18( S& X7 F& F1 m
25_19) c7 s6 @  x0 y1 A6 o! c# d; V
25_20
2 }4 ]9 O' Z& V) o. ?25_21  b4 `6 Q  p9 L1 b. T( m
25_23" T/ A4 G* R2 T
26_ 110 q/ d: Q# r) I* \& p* w
26_12" q6 |0 q" C- {8 J" Y  Q1 m
26_147 V3 c! y6 P9 u; E! y+ e5 s  {$ C

  G% y) _8 K' o. M% m$ J  v6 m- u

  H$ U. {% @" B3 R) j4 Y) T+ j$ ]0 Q
: j* n1 i; z) Q; Q- Y
В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.
9 w& Z1 _( z( `, AНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:
+ |+ v# [% G# t! ~' Q  f  a#------------------------------------------------------------- --------------2 Q( Z5 c/ Z3 J* r! @- y: F! L$ n
# Geodata; d" I" ?5 h# K+ v' Q
# ----------------------------------------------------------------------- ----7 Z/ [% Q' V* Q0 g% Y
# GeoData options:
8 ]* ^5 X4 ^# e' k6 |9 L8 |5 ^# 0 = GeoData and PathFinding OFF (default)
8 P, h- U, u! \% J# 1 = GeoData is used to check Line Of Sight (LOS) targeting and
! @7 L9 F2 Y9 o! a# L2Playable movement. You need to download files for data/geodata folder.& v9 K; U" m0 s- e( U* p5 j8 L
# Monsters can pass walls but not aggro (no line of sight) through them.; I% U, J) |" Q' m. L
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode
: x5 }; O( q7 X* @# files if CellPathFinding not enabled) and all character moves go through0 B" q- l- y. W1 Z' j* ~
# geodata checks (if a mob passes a wall, pathfinding didn't find a route: v7 G. E9 @* l" ^+ B- a
# but we allow attack and returning home).' I% B0 M4 }  z9 Q8 G% z
# Recommended server memory minimum 2 GB, rather 3 GB.
; s4 I, i# c! O2 @( |# Default: 0
3 f: u% A  Q  Q/ KGeoData = 0, U5 R0 N- @. j6 i) \5 b

6 T6 R5 {$ `5 Y/ C% u- `; \

/ D) T& [* U3 B7 i# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
* S& Y4 S: n& p- 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.
  o) i: c  L. a# Default: False+ b* Y8 H: S  z: ~8 f
CellPathFinding = False0 M* }: @- x4 u' G8 {

! |6 F; _* ~: V2 k3 _
/ X( V6 x6 b0 d* |/ T
# True = Loads GeoData buffer's content into physical memory.) N, A/ l; m& ]& V( V- I; ~; I
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.5 t% u; J$ R2 {8 [: x  \
# Default: True
# b9 r# i. r4 f/ s8 O" t% DForceGeodata = True
3 |8 R1 B- L  T4 z- L: u
: U0 v; g2 r$ \

& q1 i% X0 i; ^/ @+ h2 c# This setting controls Client <--> Server Player coordinates synchronization:
+ i& g& V- E. I' K/ x6 M5 F8 |# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.# z/ W3 V; S  P6 e6 |  M$ |
# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
" o2 {  B" d" t* }" h, U+ K# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).8 [1 L9 o% ?3 X. s
# Server sends validation packet if client goes too far from server calculated coordinates.9 _7 y: R/ F$ K/ M4 |- Q( ~) Q8 p
# Default: -1+ p. B3 Y3 {  \4 J- U! o8 v( V
CoordSynchronize = -1
; q* f8 l3 Q; j8 a8 R; T7 _( o4 C$ F& t

2 ?3 c1 [: ^+ ~' a% T
9 |9 L1 l$ E6 @: p" |+ \+ ~1 g4 {

; O/ ^3 i1 J+ n5 {2 n% pGeoData = 0: o) c+ L0 k3 [4 A; C

6 f4 O6 z" F  ~
" I. y) w) {0 F7 W, Q/ X8 f4 _

2 \6 x1 A0 y$ l& d- B
% C$ u% G9 G3 A  O0 y9 `
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.
( ?) J4 r( X8 p5 B* ?Ставим 2 если пачнод присутствует, так же включаем эту настройку:& R2 E* D) z' L
) y- x# l. G4 Y- \+ H! t
& p0 m( s+ H. M7 u
  ?3 W+ x6 ]6 m# c
+ V% D8 Z8 I- J. Y. E9 m3 A) N" r
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
2 k* d4 a, x7 |* @8 l/ 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./ R4 A0 e2 _7 Y7 G
# Default: False, R3 x) f" U) i! _
CellPathFinding = False
! U, l! e) X3 J7 S# C  E5 s0 ?
+ L0 k' j$ r- U

0 E  W+ g8 ?# z- w( e, i" j8 |: m) i9 a# v
; i6 c$ Y  x4 [9 |0 G* n
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем.2 q, p8 S/ k$ U1 W$ F+ e
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
/ x) k" y/ P' {2 [0 p2 v5 N
7 s2 U. k! ?9 E# ?& L  p3 A

- h, k! N/ F+ C: f& D# y& S& U2 ?: tНе забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
; m$ q6 h) v% A( x  _9 C# u: W" i+ ]1 \2 n# ?: s+ `
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.& t/ R- N/ y, o

3 m5 Q2 B9 N7 h" y




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