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
; R( e& X9 u# k/ @4 k$ d3 z2 rСборка        L2 Java
8 F* o) M6 D8 G7 ?, r) M  R8 d" K4 O, L7 M' ?

* F+ C& U1 F5 kДоброго времени суток.
9 T4 Q- E3 \% e: C; b, b2 q% Y) x! V5 ^3 U7 F$ a2 ]1 C+ a4 \
4 q% y& p, }; J0 E6 Y& ^( q5 a
Часто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:
. X; a9 R8 q. T% d) y6 LВозьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.; Z4 n0 P7 z/ ~" K4 j$ p: w$ V
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее.. g. `3 w1 K5 j9 [" Z1 ]7 e
По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру.
" i; A) {! W  x5 m) M5 D6 L, L( C
Вся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область:
; u1 |7 r' k; g4 p7 Z/ c( L- K# j3 e  G7 ^8 d2 c  X  w; ?
( O  i2 i9 c/ V0 K$ O# Y
На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.
- u6 e. E) |0 ]3 n4 x. `$ M6 a  iГеодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема...$ k! R% S  J3 ^" a' p, V
Работа геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.
- S. }4 Y/ u$ |( J$ w" GУ разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда.
; M. v& j% G4 _1 J/ a9 c9 e0 Y9 J2 j7 ^/ r( {+ h
2 e+ t8 ^: F' R' [; N8 P
Что такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.
- u0 E/ }# Z+ U5 w- OКоличество файлов пачнода должно быть равно количеству файлов геодаты.0 `+ q" x% {" W: l: {
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%.( z) W6 F3 n4 b' a# z
Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный.
/ X. b- ?* A0 cСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались.
/ W, Y7 l; e6 ]Таким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.
7 y- d5 L- q# VУстановка геодаты на сборки без пачнода (Rebelion):
) f% R+ C8 j2 z/ pПокажу на примере L2Dream.5 U$ e" j( a$ V# X4 N1 A3 L
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:1 f$ ^3 |5 `$ q2 y6 j

' y) |$ A, K0 O, ]/ y- ^; g3 b! z9 Q
! r( m8 Z9 F. B. a' p6 r
C:\L2Dream\game\data\geodata
) u( @; g. Q# a* X+ w# K9 M& N6 k( o( G9 c1 h
4 Z) a. N7 T: z: e, I
- g$ }4 L* C8 _2 L

' g1 z1 P. Y, `Не в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал.
7 v# n1 f( n9 o8 g6 ?' C6 nНастройка.1 v/ D' D" U6 i7 p5 T9 V
Идем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:
5 D9 W# p/ v7 B1 P; k5 b#================================================= ================================================== ====/ n* j: i3 w* t0 J/ }& g3 P( Y: V' |
# Даный файл является конфигуратором геодаты.
% a8 D1 i3 |9 ?4 b' H$ i7 F4 \#6 t* {. @- }6 P5 E/ v' O7 l) V
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.
- P* F; i. e: B4 G#
7 t' p- L8 x' E$ Q! b( n, l  q& x8 J# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).. S" \  v3 N. E7 r+ S
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы.4 s! @! T; L- c/ ~  p) l
# Ну или просите прикрутить SSL.% S% X4 Z1 L9 v  i# w# H1 |
#================================================= ================================================== ====* d) W/ v* {2 V+ ^& [- Y7 z, N

5 {/ ?  W2 n  v( x

3 k4 Q3 b9 W$ d# Включает/отключает геодату и поиск пути.
% [9 a; z( e6 M: F* o" n# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.  N# }) r+ ^. u! b6 G" g
# 0 = Геодата отключена.
" ]# d  a/ o% d1 D- d" n4 J1 i# 1 = Геодата будет загружена в геймсервер.
2 b. @6 v3 e$ g. O# f  p# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
3 f) A% f1 }7 b) b) k# L# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами
+ d" [2 N+ f6 G$ M# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,$ O, U3 c& U7 Z- U/ T  n
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.
; T# D* ~* Q; Z5 W% LGeoData = 0: T2 U) O  r! a0 F' v

7 a( T! }& G" A  O

# |3 @! r) F! C5 c7 C* y. r# Хост для сервера геодаты.' C( M* ?+ [- x4 I/ @1 a! C$ U6 e" j
# * Забиндит все интефейсы.0 e- P: P& w. O  i$ Q, c( O+ E2 k
# Игнорируется при GeoData = 0 или GeoData = 16 c7 u: L% w1 ?! P8 }- _4 h; @
GeoServerHost = 127.0.0.1" d  |' {0 ?' i( Z4 c  a9 v

: n9 K+ \5 g: m/ s8 _4 y# e1 A
' G& B: l2 B1 o! |# c
# Куда будет пытатся коннектится клиент.1 F% L; x6 }, M# l( ~+ f
# Игнорируется при GeoData = 0 или GeoData = 1
2 h7 S" N. D9 F/ ^4 u% z; ~( H' @GeoClientTargetHost = 127.0.0.1
0 W5 d7 P. |. p* t% E# x% J; Y8 [6 X& ]0 P$ R6 `. ~/ Q
$ j" d/ Q/ o% a+ c$ I
# Порт для геодаты.
2 T% F! f6 Y& j  N. R. @* p9 t# Сервер откроет на нем сокет.
3 l* v0 O+ \" W8 w- o! V+ o# Клиент будет пытатся подключится к нему.0 b4 L$ q5 h/ J( V
# Игнорируется при GeoData = 0 или GeoData = 1
# B  j- e# ~/ |/ e0 s* b/ ?4 \GeoPort = 9050
6 s9 \1 P* t# b0 F+ ]# X
7 n$ B* X& t: b# t* c. k
9 w$ d$ s7 M0 ^3 n( b
# Сглаживает путь.
3 u$ j# A& l" z# i) l, n& C, _" l# Стоит отключать только для дебага.6 V8 V% B; S1 d& U4 m/ x  _
PathClean = True8 e5 e3 H5 L7 o

# ~7 j0 v) ^9 Y7 {: C. A2 w1 H
$ ]) v0 e8 v9 f7 Z
# Обрабатывать ли двери в геодате
  B" M5 o* B, c; A# Настройка влияет на ГеймСервер
; q# F& u! l+ D$ uAllowDoors = False
+ O7 K" M9 P  h1 Y. c/ S' N! N" v/ `# [+ k8 R' F$ r8 f

( y: `3 o5 O4 ]PathFindingBoost = True( s9 ]/ Y, m% z2 B5 c3 `' H' G
PathFindArea = 2507 Y1 Z, j3 M- Q/ w/ p6 K" }
Внимательно читаем,нам нужно это:: U9 \! d& ^5 y+ E: ~& V- A; X9 z; K
& V. S4 P! l9 I/ c+ l) E
! _5 v/ W) x; k4 ]+ N: K6 l8 T9 {+ K
3 `$ ~7 h2 M2 N& T( o- T2 b

/ b8 z0 D/ x" x/ b4 M" X0 @; c2 _# Включает/отключает геодату и поиск пути.
, u* X8 [& @* f2 ^- j) g2 }1 C# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata.# x3 ?0 C% s1 b* ^7 `2 H+ {
# 0 = Геодата отключена.
5 L% o: X) L2 K4 g0 r3 [# 1 = Геодата будет загружена в геймсервер.$ p) L  w" h: |. V$ x4 A4 e8 w) w% v
# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как
; G- {2 [0 h4 e- y: ~( ?, a# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами) M  U$ p0 `: U8 ^( \. U9 n, S  Y; p: [
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,
! ]. [" ]$ W  h# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.- @( j: U5 C0 _- N- B( S
GeoData = 0
0 N7 G, r  x0 W8 J: z1 v2 |8 L! Z# Y. L" _/ e+ g) p9 Z
% J7 Z& \( I4 R
' @% _4 a6 w4 Q  r4 A) b; ^

5 B. |; C: n# \+ c4 JВ этом параметре меняем 0 на 1.
" u5 N9 A; t. x& Z4 R2 ставим в том случае если всё таки решили поставить геосервер,его настройки:3 S  V0 K& o/ S- H9 ~
# Хост для сервера геодаты.- g$ g8 s$ z5 o) i/ ^
# * Забиндит все интефейсы.
4 D) o5 m' ?7 R5 g% A: Q' Z$ w( y# Игнорируется при GeoData = 0 или GeoData = 1
- {: C- W: k2 b- |8 FGeoServerHost = 127.0.0.12 x) f3 h! L2 U' L: j

- V* b8 N: @) h+ f% h% W
# V- Q% g" x  q4 X5 b, s
# Куда будет пытатся коннектится клиент.' {" c8 N4 [' }8 @
# Игнорируется при GeoData = 0 или GeoData = 1$ i& j8 ~" S. B6 h$ @
GeoClientTargetHost = 127.0.0.1+ Y5 z  R# t* V- R( S, x+ N
/ @4 Q3 V7 y) R' e

- G! l4 U( j6 ~0 y# Порт для геодаты.
( [4 q- \/ p/ U# Сервер откроет на нем сокет.# p" ~) `6 i! V& `! s* p
# Клиент будет пытатся подключится к нему.
3 R+ Q5 O2 y1 v3 d, D/ _) A# Игнорируется при GeoData = 0 или GeoData = 1* s# _: l8 _5 z2 |% R/ z6 n! y
GeoPort = 9050
- c2 r6 m. D% ^1 c% t4 fЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat:+ G  M: w1 j6 _! N
) A  @* k3 @/ [. t# ~
! E4 q% P$ v( }+ f4 M
4 [. M) ~0 J- m9 _9 \. `

" N- ?. k7 G* U, ojava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer0 A6 k0 D! P/ E6 A9 p
+ E- E# D' @' u: c7 s$ L* C( U

" s  r6 U$ X% l2 `4 l9 O
& `3 I! d/ c  q3 }

& b, P/ `1 H/ ]0 eДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано:
2 j1 x% D- ^6 W, a! _2 A
4 }& q3 D" |7 O
! F9 q4 [8 j+ g: |) B

/ x. z2 V, c7 B9 s

! v  }5 K- ~/ v8 S% I# Обрабатывать ли двери в геодате
0 {, Z$ L" m0 w# Настройка влияет на ГеймСервер+ O5 _$ A6 G% t7 w7 @
AllowDoors = True% z5 k% e. P$ L
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.
- i& J5 k; M& M9 nПути размещения файлов геодаты:' n. t# h3 Y2 u. Q: C

  f, X/ p4 g6 V% f- Y
; _+ K$ O1 O/ t1 M; R/ B: l
C:\L2jServer\gameserver\data\geodata
* r; k% W4 y. W+ q) ^+ \+ {3 ^3 k( O& O1 N$ Q  R1 i/ T- O
8 A) B- X- @8 J2 C) `9 R2 I- k

( ]( F9 ?) a( E, M% p' b

1 N. y  _  J* R9 n: l/ kИ патчнода:
4 ~$ k( \( c" m
- O$ F6 j, T1 a" ~
* x7 X0 z) y& K- T
C:\L2jServer\gameserver\data\pathnode
+ P8 T$ X+ B9 R7 {0 l# Z; d* M8 B# x( C( D( Y$ `0 a. h

5 ^/ w; Q% l. E% [$ Y$ C8 T" O( H" O' c- V" t7 R5 y; w- a6 @

/ y# H0 c( X' q: PВ папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным:$ T5 z" g: Q+ h; d6 Z& F2 {
5 u; Y8 h5 F5 @0 T
0 M6 T  F8 M/ c5 @
, f, ?+ @1 t% d9 i8 b! V& b: M

6 _) Z* h5 G, D7 G, I) X16_10! C3 `2 D  ~) I# s4 R, f% Z
16_12( {+ A, \" a. A) O' a6 i# P
16_18
7 j/ W0 G: p4 J. c" K16_190 T9 G) h9 K4 r
16_206 l1 T# a; O  M
16_21" ~* Z% a2 T7 G9 Q: M( {- N: y$ E1 y
16_24
9 l. Y6 e  e( N" G- B: |  Q6 f, t/ d16_25
5 R. d6 P# _5 D+ v2 l& k8 \* V17_10
5 C- P: `$ X: d( V17_11
6 Z1 Y- A5 V+ P9 f  Z3 u' ?17_15
; U$ H1 A2 H, O1 V17_16
9 v$ B# J0 G" }6 _5 Q17_17
4 I: u# X$ ^; Y' q( ?: n17_19$ p2 w; n5 L3 k5 C% _( e' h1 i
17_20+ P$ v) G% Z0 a# l5 L4 h1 \
17_217 b6 }2 R# [) b
17_22
) H4 e1 |0 v! ?  s+ O2 n4 N17_23
% m; B) d# k5 M+ h: i' Y- {17_246 {- m! w7 p2 L# b$ y
17_25
+ B3 d9 Y9 E1 P18_10  N$ H9 [$ E( V: U# E
18_11% G! w2 p+ U, O3 F* J! J- N( ]
18_14! U9 M5 E0 v) d1 m2 y" u/ M+ K- J
18_15
) p& |; B) W. F1 }2 g18_16
# n) O7 w$ L1 I/ f$ N* m18_19# M* t( Y- e. O7 K  Y
18_20: X! i3 {+ L( ^! _% m# n# O
18_21/ o0 }5 V& S6 i$ E! l( n
18_22$ S5 \3 H; P+ A- o. L! }
18_23% l; f/ M; q# U6 Y; b/ x
18_24
4 i" S8 E! ?' C1 {' f2 y" X18_25
9 L' V% d9 @1 p' H" j- v' y1 S19_10
, y: Q; |/ d  c( J' D' s: m19_11  E7 M, E( G$ C+ S5 h! P. D
19_13
  C" ^5 I+ @6 t, I' y19_145 g- U/ T1 V% F! d
19_15
# }3 G: U" T; n" z; A19_16
6 v$ Q6 }/ i0 j$ ]3 Y19_174 E; a7 d" [1 v9 @- }' G  K7 `
19_182 o  H) V& U& e- Z3 r( \  J+ G
19_19: H6 Y. `! h0 q5 D0 M' x) G
19_20
, N- O6 O0 J" Z' g1 ~. Y# F19_211 ^" M, a" k0 {0 o; {! d8 `
19_22
3 g& T0 }4 J- q" I# A4 }* C19_23
; ?, E7 i3 P( t; P; z- Z19_240 b, Z5 F* _: l/ ^+ P
19_25
5 \0 ~/ |+ M+ h6 n6 B19_263 y$ r9 N: G/ j" B. v
20_10
  n, I' L0 d9 b) X! P  T/ S; Y20_11
: i) }0 U3 A( ]1 a9 f20 _13
; N& Y1 l9 }+ o8 }; E: F- d& i8 c- S20_14
9 b6 }2 O6 w- {4 V8 U/ g20_15) f) d# J+ n' c' p
20_168 H& \2 C' e& n6 H. A3 g3 X9 {
20_175 i4 y: C! d! j
20_18  r3 a8 E) @5 M( p, E3 y
20_19: X; l# U$ C, E9 A2 c+ O
20_20
" y3 ~' Q: t1 k% m/ ^20_212 L; W# z' K6 z/ v9 l5 s* c
20_22
% ]. @9 y, }, t* {20_ 235 \, S. e- K; D# H2 O
20_24
% x  w& n! |. y8 l8 h7 v20_25
9 w, O% z5 D6 I8 k" m$ p" P20_265 g7 |) g  J2 N9 y$ @& A4 S: q- ^
21_11' Z7 |- N; G) s
21_14% |/ I9 z+ n0 J: x4 K1 o: R
21_153 s: \* `7 _( ~6 C1 x
21_16
# h1 v" F) ~& n3 ~9 k. |21_17, X  d) S7 Q" b* K" H- Q' O: f/ F
21_18
" Z  K" l& o8 Q" e- ?, V1 ]( U21_191 E+ n6 v" W6 G8 J+ Z
21_20! `9 }1 @# s: c0 t# _6 h+ ^) X  w
21_21
9 i( T) T- F. z3 D6 n) U, [21_22
$ D! R5 l' K& \% \21_23
& V5 _  {# q* H/ W6 L21_24
' b' e4 z# @( k& e21_25
: ~6 d  k5 v! O; C! B, R$ Z& t22_13. s9 ?! Q& i4 L) X3 _& T
22_148 i. G9 n; Q4 m" v, A2 V& H
22_157 c& A% X6 [$ i6 ~2 x2 ?
22_16
0 z& t2 U4 e  ?4 y% I22_17- @2 V* m+ E' D
22_18. d% G/ r- S: I
22_19
5 i% H1 ~( O' e$ e22_20* a- r+ r6 m" f8 i5 t
22_210 \! u+ q4 e- r1 O! k# V
22_22: _/ l1 Z2 S, Y" q& P- i& F
22_23* E: p$ D9 h3 S; i# P: w1 |
22_24
2 }7 _* Z% U/ l22_25' c- D4 b2 d- Y! s# N/ f5 ]
23_110 _' x+ ]- U4 F% w
23_12
- T; i1 b. B" ]# J' j23_13: M7 B1 u5 {6 V! o/ x
23_14
7 B  z- r/ Q3 X( y; e3 Y23_15
" o0 `! w* E, P. w8 \23_168 K9 N1 [/ q& }% i" F  ~) W
23_17; D0 r6 R0 \! L7 x
23_181 t  e( R: E( ^6 w; I
23_191 @: I& W; ]* G0 p$ J* ^: a. J3 j
23_20( ~9 _2 j, F4 E7 j. r
23_21
( E# q0 t- y% t& K3 [) S' X4 S23_22& J3 ]* D9 Y  }5 S
23_23- L* h2 l5 w4 \' }
23_244 G) k8 @- K, z* X  {5 }2 |
23_255 R/ C: J; Y4 c: n
24_11
, o# i! t/ Y6 ?( h, Q24_12
% ?% Y( C& d. r# S( b- ]24_13
8 d7 ~: X# h) r( _+ v2 L. P24_149 C/ o* ~9 p  ~4 P$ V0 W+ t, w
24_159 I: N0 q3 P1 {4 @' C, k
24_16
( a% H: E7 P7 J( v% J0 c1 p24_17
7 M' v2 r1 \+ s7 f: ~$ U24_188 ~; N4 }2 q  v/ E+ o1 L
24_194 {) A0 V2 W6 r# m" j0 `$ f/ S
24_20
/ N. ^7 N5 t. ~% {( U4 f24_21
7 k7 H5 Y& {# J  w) [* l% [24_22- ?* j/ D' \+ E4 z7 N( A4 D
24_23
9 ^& Z+ D- ?- u( `24_24, I% B) R# a1 f. ~' N/ w* `
24_25
) d3 S9 A+ _2 U, |( _/ v# Y1 J25_11' d+ ~* |' \4 {5 b. e
25 _12# B. z8 u0 l4 [( S8 i2 U! `  }( x
25_14
5 g2 s. V, x& V25_15( F, J* M- c4 G3 A. `! o
25_16
+ V! G' x8 ~5 s; H; d! q+ H25_17
( r, e, s% `" W3 n25_18' E+ t' e# k/ W+ T+ ~. ]5 {
25_192 O% X8 K4 u0 U( x# R
25_20
3 Y% T/ h# n+ K0 j, ^7 H25_21: |- F4 X% j; Q' T$ X: @5 P" R
25_233 q5 X8 R% _1 M0 b' [" L/ `) U5 u! h" M
26_ 11
0 s( Z; y2 x' W  k9 i, R26_12
4 F' w* J9 U& w' b26_14: K/ m3 }# Q( q# Y2 K4 W" Q

# q0 A) Z& T% S" w' O+ j/ y
6 F, R$ L6 e/ o, s% t' E% }

9 }& i; w, V9 [' q

5 e, _3 U0 J8 a- d6 `+ P/ TВ этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает.9 i2 f! ?- S  S- j
Настройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:0 ^+ d9 R! B" G1 D
#------------------------------------------------------------- --------------
( m& w' r; F+ k7 j% W# Geodata( k6 S& S3 O. Q! d# z9 o* }5 P" b
# ----------------------------------------------------------------------- ----1 t0 A* U0 R. U  c; f! m6 P9 v
# GeoData options:
6 a  J- A0 W0 g9 T( J& ^# 0 = GeoData and PathFinding OFF (default)
: C$ L* N1 L5 L, y6 Y/ _5 J# 1 = GeoData is used to check Line Of Sight (LOS) targeting and: Q: Y& {4 v+ @1 w
# L2Playable movement. You need to download files for data/geodata folder., \. s3 V9 \4 ^; n  @( Z
# Monsters can pass walls but not aggro (no line of sight) through them.; f, M. T! r- h' [' g& E
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode2 O; N( c' @) S' ?( m9 b6 B- ~$ P
# files if CellPathFinding not enabled) and all character moves go through
2 X! o) p) G1 A; C8 \# geodata checks (if a mob passes a wall, pathfinding didn't find a route
) A( L' ^8 D& d8 I" U! N% h. F8 `# but we allow attack and returning home)." A, i. Z" g6 S" ~0 k: R6 B
# Recommended server memory minimum 2 GB, rather 3 GB.
" x. W8 y/ q6 J" p, e) B; t# Default: 0' G3 ]2 \$ G0 l$ V& x$ v( r
GeoData = 0$ ?2 T( `; I# [- x3 x
, A! x, `7 E' F; w

  \. y: m+ l+ z) |) D# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least./ {" L/ b+ p, t2 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.5 y& e8 P* m  x$ ^+ ^
# Default: False. K+ B+ v' c+ R! j' X: z. K$ z
CellPathFinding = False# y) }' W$ o( J
7 e* L( i: s- ?9 T; b0 {9 f3 n
1 a1 o1 ]2 r3 k: O/ J3 @! {$ Q' U: ?
# True = Loads GeoData buffer's content into physical memory.* `1 _) j& o: Y5 h- C
# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.
" ?  ^' D& R1 r# Default: True
$ v; n& u- y( q; C+ q6 ]5 I' K6 PForceGeodata = True; H* l4 r2 T5 i+ S6 u% `0 n3 r4 A

% P- i. i5 e. `' u/ O

- V" r/ ~' C: y7 f5 m( }% n# This setting controls Client <--> Server Player coordinates synchronization:8 t8 `. R0 q9 g( M* H
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata.
+ _) f$ K6 h  ?2 _- m# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.
& K4 p' t% n& \9 z6 [3 R) E# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1).
; }' t6 n/ E2 j1 f  X# Server sends validation packet if client goes too far from server calculated coordinates.
% ]$ X6 \. @! q# Default: -1
% T' @8 [; E4 L& f; V/ J3 ECoordSynchronize = -1
' |0 B/ _: A" K& p
( R0 ?+ ~+ w. M- {, v; C; r' R

! ~) V( A& F. ^( z3 y2 n0 E) X& \" |) `9 J1 @( r
& g- {. k% }" P& K/ j8 k$ G. L6 r
GeoData = 0
' T" q& f8 l1 k+ a* w1 K; w! [3 Y. B. e
- K' M6 {' p2 i6 ?
( H$ ~' w$ t, a% v. O' Q

5 R: f/ H5 R7 ?9 q8 M% F+ QСтавим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.. B; H5 s) }2 |; N
Ставим 2 если пачнод присутствует, так же включаем эту настройку:
" n+ }& Y4 j' h8 _( I& R' z8 a* d/ Y- q7 y! \2 u$ q9 M. k

( B6 Z# Z; R4 y
! f9 h* D% d& r# `0 Z
% O4 t, q8 C9 o2 |1 g
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least.
7 r, o" n# I4 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.
( A/ t2 C& g( u# Default: False
# T7 H2 A0 v- {/ Q2 n3 C9 `' ICellPathFinding = False. T6 l' x! b7 t2 |$ A* B

1 h* K! @% M! f- O! [- ~
6 r# N* O" N1 a& ]
4 Z- F1 |* I8 q# e9 a; E! d
0 r! n" ]$ T  _. E
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем." x9 K1 j$ `& s. E
Пожалуй всё подробно написал, спецы дополняем если что то не учел.
; ^/ u8 h' q8 m1 H0 G* R! m; E
0 d) M, g! L' r& x$ p5 ~! B
) Z# s$ G( t2 j" c; q5 K
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки.
) z" A8 H% `1 D/ s- u& U; f: r: ?7 D
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации.
% V5 W' e, r: J4 U  C, z7 F% P7 Z+ m1 F7 O4 O7 s

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

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

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

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

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

638638758

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

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

admin@artace.ru Онлайн

QR-код

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