Название: Геодата, что это и зачем. [Версия для печати] Автор: 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( ^4 I' e. |: Q) T Сборка L2 Java7 z+ n6 Y/ w; x, Z* Z1 z
( Y- L0 A1 M% V& r- |8 C
+ a; O( ^ G& b2 S0 K5 a! `
Доброго времени суток. y& M! p0 c5 Z' Q. ]
9 k7 I$ Q- _: v/ `9 O; a
- L. S# k! O9 I. iЧасто появляются вопросы на "стёртую до бороды" тему геодаты, зачем она нужна, какая есть и куда пихать. Пример будет на хрониках Interlude:- n: s# C+ b3 c" G
Возьмём две основные *_conv.dat и *.l2j, первую отбросим так как этот формат для ОФФ-серверов,хотя есть реализации в яве и этого формата.) Q6 F R0 v* T4 K
Для чего она? Для мобов не существует стен как в принципе и для чаров, упёршись в стену и буксуя на месте вы всё таки меняете свои координаты, мобы проскакивают их шустрее. & `" g7 M2 O% F* i6 n! E2 }По скольку для мобов мир - ровное плато, агрессивные вас заметят и атакуют если окажетесь в их радиусе даже если находитесь за стеной и не видите их. Геодата поможет вам от этого избавиться, если сказать короче геодата - информация о всех препятствиях имеющихся в клиенте игры. Поэтому геодата существует для разных хроник, геодата интерлюда будет считаться не полной для грации к примеру. & t5 T7 \, r& {% Z4 p, |' P7 ] ]9 B! l" @4 T% q2 Q" R' sВся карта мира разделена на квадраты,они пронумерованы,благодаря этому вы сможете определить какой квадрат отвечает за конкретную область: 8 O$ x* A: h6 s' ^ I/ t[attach]495[/attach] ! k u) {- ?# {: l0 M& w * e" Z) y7 }' m1 Z5 _; D6 \На картинке отмечена только поверхность,подземелья не отмечены как и материк Хеллбонда, но это не значит что квадраты пустые.В клиенте квадраты находятся в папке MAPS и пустые весят от остальных одинаково.5 D! m6 C% v) s' I
Геодаты в шаре полно и она разного качества, подбирайте ту которая будет корректно работать на вашей сборке. Если в квадрате есть косяки, к примеру невидимые преграды,или не можете пройти в открытые двери или ворота,то это не причина менять его на другой,существует софт для редактирования гео и невидимую перегородку можно убрать, но это отдельная тема... ; e, b: Q7 W- R# QРабота геодаты зависит еще и от гео-движка сборки - неотъемлемой составной части ядра этой сборки,так что не путайтесь с определениями что бы других не путать,геодата и геодвиг разные вещи.% ] |5 R. _: M* O6 n
У разных команд делающие эмуляторы разного качества гео-движки поэтому не всякая гео подойдёт к сборкам каких либо команд на 100%, чей геодвиг качественней решайте сами,тестируйте, темы "что лучше" для флуда. & ^6 ?/ Z8 I& X2 q, `4 R# Y F7 u* u7 }
3 t7 W. K$ E* X' r2 }1 Z7 y- A) gЧто такое pathnode? Отличная штука, благодаря этой приблуде мобы у вас при агре не будут ломиться сквозь стены, они их будут оббегать как и сам персонаж, создаётся пачнод определённым софтом с квадрата геодаты и его качество зависит от этого квадрата.Расширение пачнода - *.pn.8 b- n8 ~1 h' F/ e, F' X; X
Количество файлов пачнода должно быть равно количеству файлов геодаты.' e3 G& |# u& j ~1 ?$ ?% J
Есть сборки на основе команды Rebellion (а точнее Fortress), такие как L2Dream, L2f ССР, Phoenix, L2Royal извиняюсь если кого забыл, у таких сборок есть возможность поставить геодвижёк на отдельную машину что бы разгрузить основной игровой сервер,но использовать не советую поскольку не доделаны, хотя возможно в платных геосервер уже реализован на 100%. % _ E) ?; ]% z$ V4 G {Таким сборкам пачнод не требуется, их геодвиг генерирует его в процессе работы,сомневаюсь что это хорошее решение,но и не плохо с другой стороны, кому как,по мне так геодвиг sf в полне нормальный. 7 y* o. f l2 `7 {2 H( vСборки sf,это L2jServer - первые кто написал ява эмулятор,также L2jFree, L2Emu, L2Ambrella и др. на их основе, так же можно причислить Balancer (Fortress с которого основался Rebellion),но ему пачнод уже не требовался. Был отрезок времени когда эти команды использовали внешний геосервер (кроме L2jServer), но позже от него похоже отказались. 6 C6 o. V0 C7 A1 z$ gТаким сборкам неоходима геодата + пачнод,для комфортной игры вашим клиентам.2 U, U/ X+ Y8 C3 U7 H% q, c
Установка геодаты на сборки без пачнода (Rebelion): % ~5 @* z0 `2 [2 F- OПокажу на примере L2Dream.6 F" r1 e9 x" @3 j
Путь куда закинуть гео,сами файлы ( пути и папки могут отличаться, в зависимости от сборок) *.l2j:, z; e8 |2 J) p: i* n6 N1 s
. a$ u, r1 `) z
( w5 z# q& [9 w2 D6 tC:\L2Dream\game\data\geodata1 t$ F. R& b5 f0 F
& {2 }* o8 ^9 A) z3 c5 _- c9 k 4 o$ d0 a; p j5 f4 e' M; r2 `6 ]; b
7 ?9 m, ?4 Q- g5 @+ PНе в "C:\L2Dream\geo\data\geodata"(это и есть внешний геосервер),а именно по тому пути что указал." \, v d$ r1 n' \
Настройка. ' l7 A% j1 _, [$ b# f! c8 p Z, JИдем по пути "C:\L2Dream\game\config",нам нужен geodata.ini или geodata.properties:. `3 ~& _; M" U. X$ }
#================================================= ================================================== ====' c: j2 E; |* F" i z
# Даный файл является конфигуратором геодаты. ( L, b$ Z9 O2 l- P7 H2 X#0 C! O- ^' e9 W7 K( S9 v
# Геодату можно отключить, запустить в классическом режиме на гейм сервере, а также запустить как выделеный сервер геодаты.9 P9 U2 b: t1 X* b
# # I0 y, v& z* X1 x5 U W# На даный момент на сервере геодаты отсутсвует какая-либо авторизация(за ненадобностью).# U! W: l: ?, D" b+ @
# Если у вас мания взлома, то закрывайтесь на уровне операционной системы. 4 U6 @& J8 H! K. X1 B5 ]% ~' f5 P5 o ?# Ну или просите прикрутить SSL., b6 }* Y3 \ [
#================================================= ================================================== ==== 4 K, Z) _7 ~0 ~4 y( ?& I2 a, ^6 K z& C4 |6 Z' H1 Q3 _
* d: l. N( n: y" N7 ^# F9 p8 x4 p# Включает/отключает геодату и поиск пути. 8 A: T" G" S2 E0 A# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata. ( v: j6 u1 x" u# 0 = Геодата отключена. 8 s; o9 Y/ [ }7 y" L3 X# 1 = Геодата будет загружена в геймсервер. 1 I, {7 ^. F0 R: i2 Z# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как 4 i3 R% P1 I4 v# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами! k. d3 v7 e4 q" u) e9 ] _
# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока, ' g2 s: B7 \7 j$ q9 p# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока.( T6 f, ]# r) O8 V9 u8 K( x
GeoData = 0& Z4 p- d' @( Y+ d9 d- R$ b3 m; ~
; ?) r W8 }" |, c1 x
1 o4 z, v% h ~: r) R# Хост для сервера геодаты.: Q& K" E }9 O9 @$ }! @, g
# * Забиндит все интефейсы.. C* _9 e* D( u/ N: ?
# Игнорируется при GeoData = 0 или GeoData = 1 ( r' A- }+ ]# D3 m7 LGeoServerHost = 127.0.0.10 r: l) \0 V; Q; @ G# B- P( M
5 N+ }. Y4 Y* z* c
$ x. l4 U+ m* C6 K$ C# t0 v6 t# Куда будет пытатся коннектится клиент." S7 Z7 s# r4 `9 t! `9 Y
# Игнорируется при GeoData = 0 или GeoData = 1 6 Q$ i) E/ ^! e( h! mGeoClientTargetHost = 127.0.0.1 ! N& t, `7 I' C* G' S1 V! ]4 \6 c! k0 W6 r G0 R
5 B) D8 `$ v% E0 r! C4 X" q
# Порт для геодаты.1 g/ L% k" h; X5 D' V( }
# Сервер откроет на нем сокет. % O8 a- x/ M4 f# Клиент будет пытатся подключится к нему." b8 k& A+ t$ P4 ~; ~" V
# Игнорируется при GeoData = 0 или GeoData = 1 & B5 r+ N# V* y6 IGeoPort = 9050 * v' }# _1 h- i! C9 o# q ' v e5 S W5 `0 x8 c3 Z2 f4 L5 r1 m0 l/ n1 [. }. o3 x( G
# Сглаживает путь.% \" [2 [3 |) @' ?( ^% B
# Стоит отключать только для дебага. : Y9 `2 q# x v; p8 Z9 qPathClean = True 9 E3 g$ m3 i9 r# Z( a+ v: _: i: q- S% H+ S8 @9 h3 t
* k, Y+ Q6 w4 |" n% U3 c1 ]
# Обрабатывать ли двери в геодате 3 x' ~( V0 f2 p3 L5 W# Настройка влияет на ГеймСервер 7 T2 a/ H7 b7 C) w7 J) Z" } hAllowDoors = False' c' ~9 N" n- Q0 M/ t& X( m
& K# ^: |( l2 R6 S. I+ g' l3 v7 u9 v+ H$ a! _, G, s! f
PathFindingBoost = True1 G$ r7 b- k# y. i/ X' Y
PathFindArea = 250 - o- ]# M6 U6 qВнимательно читаем,нам нужно это:# B7 t# K$ F7 t
" a& t% K- {' |# @ ! n# A% I5 q8 K* x, ?- i ; z( x; b& k/ E2 ~$ ?: p % z( E! u5 W- j2 h# Включает/отключает геодату и поиск пути. ; o2 ^& j8 Q5 B, z" D# Рекомендуется включить. Требует наличия файлов геодаты в data/geodata. 6 u1 v, c; R' n# N. F G# 0 = Геодата отключена.; X, v+ w7 C. J* M, J9 j
# 1 = Геодата будет загружена в геймсервер. 2 G( \9 l K5 D! Q# 2 = Гейм сервер перейдет в режим клиента, и будет пытатся подключится на указаный адрес, в то время как , I- P. U) t* I: R) q' D D# сервер геодаты сядет на указаный адрес. Для работы на выделеной машине с несколькими серверами ; Y% L5 ^+ N) ]- h8 U& x# рекомендуется гигабитный (и выше) лан. Среднее потребление траффика на осаде Адена = 400 Кbps на одного игрока,6 b0 `5 w# r- g1 B1 C
# с учетом активированных им гвардов. При обчной игре среднее потребеление до 200 Kbps на 1 игрока. 6 j6 H6 N+ v+ e7 xGeoData = 02 h+ k+ J8 v6 ~( q# k2 N! @
& V4 w# N: {% n9 ]# j0 z0 R# e" H9 s7 V0 }: E
6 I5 ^0 ?7 Q5 ~8 F, ?1 Z6 i) E0 @9 ]
В этом параметре меняем 0 на 1.. Y% l9 U& Y2 f c* v. }1 f
2 ставим в том случае если всё таки решили поставить геосервер,его настройки:+ d' m/ i" H/ n2 N$ F5 z. R
# Хост для сервера геодаты. $ F% g7 x! m e, Z9 s, ^& e8 t# e# * Забиндит все интефейсы.& j' c0 U, }8 G, `, H3 D
# Игнорируется при GeoData = 0 или GeoData = 12 h |$ B1 H2 f+ ?. l8 C, G
GeoServerHost = 127.0.0.1 # n+ d5 v# P) Z- a* V ! w; F) O; h3 i" c5 ?, z( \- t) N: I3 p6 ^ K! h. ]
# Куда будет пытатся коннектится клиент.( n+ [; O7 W; w$ {9 f# U& y" @
# Игнорируется при GeoData = 0 или GeoData = 1, U5 b, y, q' M* u, @& B% S
GeoClientTargetHost = 127.0.0.1 5 ~. l* s. A5 @5 t& [' |- G+ X2 X- Y9 O8 J
6 h1 i0 }+ L* q, B# V( b/ i
# Порт для геодаты.9 |% ^" r3 N: [/ r4 O2 u) e3 ^3 [$ h
# Сервер откроет на нем сокет.4 g% F2 q* R" H* c- V1 I
# Клиент будет пытатся подключится к нему. 9 N) l" L" |2 {4 e& v3 B# Игнорируется при GeoData = 0 или GeoData = 1# M& y. o' G1 I3 y6 \1 Q' V. o: z
GeoPort = 9050 ' z6 J L; W. C' b4 y Q5 eЗдесь всё ясно,можете зайти в "C:\L2Dream\geo" и увеличить выделяемой оперативки на геосервер изменением значений,StartGeoServer.bat: 6 W5 V; K/ O( m* s$ y5 G2 \2 S6 ~. l3 n; Z
+ B S* Q) t9 X4 I, {1 i" N n0 ? r7 v9 v. t4 f- w- W3 j 4 j3 @; o% z2 Y3 S( Ejava -Xms512m -Xmx768m -cp l2dserver.jar l2d.game.geodata.network.geoserver.GeoServer( Y( }" j0 Y! c7 q9 X
3 ]0 Q1 t* a- J0 k. W0 ]1 S
' x1 }8 H% G; L2 W) z1 E $ ~+ r1 [; C" m! ~ ! |' l% A9 I3 q3 \3 I6 jДвери,можете включить если уверены что они у вас работают,так как их "непробиваемость" не во всех геодвижках реализовано: ; Q. W5 ]7 o! @0 ^* S0 Y % X* y" k5 n8 U; M i. X9 i0 _$ R% M( v7 O. w( o
+ [' G/ G* D# s+ r1 C
" {! ~( A/ s! }$ `, N1 u/ z8 ]# Обрабатывать ли двери в геодате , K; S/ X2 H7 ^# Настройка влияет на ГеймСервер; w* _" c, a1 x7 U/ j* a# h
AllowDoors = True9 @& |8 E& w8 f3 S0 x
Теперь sf,возьму как основу L2jServer,за всё время он не сильно изменился и не использовал геосервер.' ]+ }8 r6 q3 X; M* i5 @
Пути размещения файлов геодаты: ( S; a7 {, h) K2 r 7 O( X9 u8 }0 a7 g [: ]% q" G $ R4 |3 ~ A0 {& Z. MC:\L2jServer\gameserver\data\geodata ; B2 {! @7 M, {, {5 Z7 h, w% H( v- m4 @3 h' n
: t/ r$ t8 a4 d
+ x$ \( R! n" t v) P' \" z5 {8 w
6 U- _0 C6 L& P1 h; M4 ^: Y
И патчнода:/ L7 w; E% z& _! J( z
( H; y. m8 _4 O- O' Q% d4 C: L 7 p% U+ S1 A, p6 J) oC:\L2jServer\gameserver\data\pathnode2 J% G5 N* w5 |' \8 W
/ G( ?+ Z6 v) T# M& j$ `
1 D5 ^" }0 g i2 O/ G9 a8 Q
4 M6 g: }: W. g N" K( B7 l* N1 `7 r# k
1 H- w: h5 w; |. v
В папке в месте с геодатой необходим файл geo_index.txt, в папке с пачнодом pn_index.txt,их содержимое должно быть абсолютно идентичным: 0 I# v% B# a1 ^- A . i1 e& q4 Y5 d5 C! }# B V5 ~, D ' A0 I$ p* I& I. s/ e# k0 z I" V& N6 g; l+ [$ k$ m9 Z6 {% e
% ]5 }2 k" T& u" |2 C
16_10 5 S! B; Z" n8 ?& m" x16_12 6 m+ e7 A$ M- ?7 _16_18; L' B' A: [) \4 r$ L4 e
16_19 3 E4 `1 ?0 G7 f5 S16_20! i5 H1 }% J; C, Y
16_21 ) O# \: v9 B3 d16_24% v* ?4 D9 b6 l* h* a
16_257 v$ J1 g2 W3 o
17_10 % F8 Y3 x3 F: r A* [! m- r17_11 * G% |( s8 h4 [# ~* _* X5 K& z17_15/ H: R$ \1 |" K( Q4 I
17_16* W7 \: q8 t8 p
17_17 6 @! x* q) a' j5 R7 F, u17_19 9 X6 Z( h# d1 }1 ~5 }, q% f* @6 p7 i; r17_20$ c! `9 L- V/ @9 M( Z. K# B
17_212 ~. K: H$ B* }6 u% e- M5 H% m L" Z
17_222 E/ H: a3 k# @# c' ~" [, J e
17_23 " D* Q* {! ]! ?% P; p17_241 j) z4 K8 ^; C2 O
17_25" j& `3 v# v7 z# I$ n
18_10 f- n3 G4 j& q9 t/ q5 a: e$ w
18_11, ^) x5 ?: J8 R# ^ P; `0 p) f! J3 e
18_14 , W2 O3 B) N4 d( b' y9 p9 W3 [+ {18_15 ( W4 ?. k( m: U; D7 o18_16+ |+ t" Y) z% N( V; e7 M
18_19 / ?5 @! V# [5 ]18_20) r/ x; |* A Z
18_21: y7 [/ J! P1 M5 o7 J8 I
18_22# \6 Z( R# ]# O
18_23 0 Z5 n- i7 z. R* k18_24 & J( i9 @; n( Z) D, H, V18_25 ! Y9 ^& K' K6 }$ o7 n19_10 2 N5 |/ W) p: n7 X19_11/ `2 z8 J* R) G% q
19_13 b) ?& W x9 Q9 P: {: W$ Z
19_144 F8 X8 { I. N5 ^3 \' C
19_15 - J+ ^- ]+ F l19_169 S5 v H8 B' N4 q$ c( S
19_17 : d9 p& ~+ x* U- b% x' N! R19_18 * ]$ G, K6 g0 n$ ]6 ^* Q19_19 / r% H9 \7 f$ H7 P19_20 0 F( z' U- @: @8 ^! P19_21( @( Y& K2 ]2 r7 R
19_22* d: c3 F5 l1 U9 |& @
19_23 & r: u+ D5 E5 n% Y% z19_24 7 P9 m$ v4 u3 t$ C" {+ b19_25) } O. L9 N5 |, W o# @! m! D. T
19_263 l- _% }, p5 K+ p* i) f& n/ B
20_10 : e" n- R, p' E2 X2 i20_11' Y0 R3 ?1 e9 h" J/ B1 [- O3 B; X
20 _13 - ]% A7 F W, f3 H20_14/ Z/ d! w2 W" _% ~
20_150 b5 l6 p( o9 \! V9 E7 ^
20_16 & F1 L; [4 w9 [7 V, e, G+ S20_176 N( o$ {) z; b3 e3 n( l
20_18 * i H4 I* n' X0 q! s9 j {! S20_19 ( ?: i- P D, e+ [( M20_20 J) e9 v7 p5 p9 @
20_21 4 X& I- L* B& `' B20_22 4 Q3 Y" Y% c; P0 w20_ 23 , a0 Q D4 ^# T4 ~, t' g9 `20_243 V$ i6 v) F7 ^- ?0 ?
20_25 $ M } \# ~, k/ c20_26; M, N$ r: X# N) T; h
21_110 s( B- Z+ x- Q# N8 l# G# I
21_14 ) G$ w5 N+ l) e3 g21_159 ]; I, ^: \/ T, @
21_16 0 t& b6 F, ?+ ~* P7 s/ n$ }. m! R6 u21_17 , f' y: K3 _# |! I21_186 ]& n" r+ r2 u) y7 Y
21_19 5 J, A e, A, C8 d1 x2 }3 o21_20, Q; G: u" v0 x* S4 H7 Z3 n" g2 |
21_218 i" }1 A. m8 S! Y
21_228 @/ D# M, [. K9 m; Q9 M2 ^
21_239 m S4 r+ S P/ d1 o- X' m! T
21_24' o3 A7 v/ Z0 {: W8 U
21_25" r/ Z" m5 ~. K3 g
22_13) J5 l5 @! s7 ~% w+ b5 z9 {
22_14( N2 T' n- s6 q* z9 m- D4 F' {/ g
22_15; A6 s+ y5 U, E. f
22_16 & ?: B1 N$ L3 X+ F9 P0 _5 c. p- W22_17 , _& v+ b' P( ^ b& f n _22_18" `* u) \ Q. F3 J; k% j
22_193 v/ |" g" q" @7 }
22_205 Q4 h& W G! [3 G& Y+ L
22_21; e2 L3 h3 u* s/ K% D. Q( ?
22_22: s( l" x% D8 V6 N S5 Z1 N
22_23 9 n" W, D, }! h! x+ B22_24 4 g Q r5 u2 Z5 E9 a! q2 [22_25( ?8 C& t/ Z3 _* L
23_11 0 d! k) B# N- l4 e* n5 ]0 {4 Y23_12! ?5 b# J' o: v5 s3 d( w% Z5 L, u
23_13- H7 P* z; |* H7 |* v5 ]! F
23_14+ Y- v; W% E8 W6 I( E2 Z
23_15' c1 A9 {5 Y: l1 }8 Y3 j
23_16% j2 R# S U8 a' D. M
23_17 9 P3 w7 w% ?+ Q( w23_18 ' b/ F) }+ ]2 m23_197 }( C0 _( X3 k& k7 u
23_208 X [- Z9 L8 b# i
23_21% _7 J# r% a( x1 Q K; m6 E
23_22 ) a* p# ]9 N1 X/ S2 V* c23_23" J1 c' k7 N% t% z& r/ k, ~
23_242 m/ v- F8 q9 A* x
23_25 , x% Q' ]. f6 n r m2 H* M) f2 X24_11 # T. N! P4 B( v24_123 o6 C n% d, ]! H$ C6 g
24_135 p% x& n$ @7 _7 ]
24_14, L0 P, P% Y; I2 Q
24_15 7 b) o4 B* ?: M2 I+ T24_16+ R. f1 S& e) s7 i0 f0 L
24_17- \4 e" e9 `( y( d3 ]
24_187 A3 X% P! u1 Q( n7 L
24_19 , v* _& i0 r+ e5 y! h8 p24_20 ! g) S$ w- O6 a5 ?9 Y7 U! K" }24_21 9 T' Y) S9 E: P8 T- W) E24_22 % j5 O" u" A3 ]24_23 " e9 h3 i; @3 E$ [- q' x3 W+ N x24_24 0 Y& K7 t0 G0 b! \/ c. q# |24_25 4 _* {# z& w3 U. ^* c- c" y25_11 6 V$ B- ~( y$ \. P0 S3 y25 _122 O) G2 W) A/ y( g& {. X
25_14: _+ P6 M0 ?$ X# c
25_15 ' M4 E- u* P5 s- X25_16 6 K0 M. S$ j, h9 ]6 L1 y& N6 ]25_172 k& A- y& R2 ?4 Q% M
25_18 / W4 v) Z- r( [2 a25_196 X: ?7 |$ u8 s6 K% y3 K. P
25_203 `$ L, ]+ W0 S( m- d" h
25_21% x7 i) e, i- X7 I1 e4 v
25_238 v. j0 v5 V6 n; q# R% `" Z
26_ 11$ Z4 V# M& q1 K8 W* y
26_12 2 |1 t$ ~8 K) w26_14. T5 _* s0 Z/ t, q$ n! J# B5 e J
9 [- O* g3 ^! e
+ v8 s2 v+ n3 t- w6 J
5 A/ z. B+ K8 P" s
0 ?4 V3 x! z5 h; ~* k% x( [В этих файлах прописаны загружаемые геосервером квадраты геодаты,если содержание geo_index.txt и pn_index.txt не совпадает то при загрузке геодаты может вылезти ошибка,просмотрев лог ошибки увидите какого файла геодаты или пачнода не хватает. 6 @" P' e+ G. L: Z6 kНастройка,находим по пути "C:\L2jServer\gameserver\config" General.properties,нам нужен следующий раздел:& @7 D& U2 t) ^9 ~. d4 ?9 e2 K# a
#------------------------------------------------------------- -------------- 1 s r6 m# ^7 B' X0 O g% y# Geodata 4 P6 Z. z+ F$ T+ {) y) q4 i; i# ----------------------------------------------------------------------- ---- : M6 [: b g# P! } ?0 L, L# GeoData options: # V: w# y% v) N# 0 = GeoData and PathFinding OFF (default). [* h$ j0 A. k
# 1 = GeoData is used to check Line Of Sight (LOS) targeting and 3 e+ i) d3 C) | V" M j# L2Playable movement. You need to download files for data/geodata folder. , u5 _' M0 u5 e8 @6 Q E# Monsters can pass walls but not aggro (no line of sight) through them.* Q2 ?9 ?+ C8 j; S/ M
# 2 = Full GeoData enabled. Includes PathFinding (requires also /data/pathnode 0 N- _6 d6 g* q, v# files if CellPathFinding not enabled) and all character moves go through1 P+ Y6 C/ A. o
# geodata checks (if a mob passes a wall, pathfinding didn't find a route & z- q/ j6 L) u) k$ S% y9 ]# but we allow attack and returning home). 0 ? M" _; X" u8 v# Recommended server memory minimum 2 GB, rather 3 GB. & o7 h2 ^% _' `/ ~, @# Default: 0 ! E8 s% x d/ y3 M1 r8 \! uGeoData = 06 Q1 \: h6 z& E
0 A" c' v" V- ] % g# i: _2 B" t% O& v# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least. ) x1 w1 y. {' ^, `- d# 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. * D! Z6 ^& A3 T: E# Default: False " E9 `- o% b5 p1 z4 K& o5 f# h) FCellPathFinding = False ! i, M% @& l; E8 [; F' R7 c9 ^2 g) O! I) l" b! t/ q1 Q, N& b$ N' Z
* w6 @8 w- F" k# True = Loads GeoData buffer's content into physical memory. ( l8 g9 {: _. x% _# False = Does not necessarily imply that the GeoData buffer's content is not resident in physical memory.* ]! ]& M: |- U0 L0 G, j) a1 Y0 d
# Default: True ; h: U) f: `8 F; y: CForceGeodata = True & I6 e8 l3 ?- v5 x7 L - e$ V4 Y/ i# T8 x1 w @1 R z - C4 m. u6 u3 k; T5 l# This setting controls Client <--> Server Player coordinates synchronization:* i% }4 I2 n* O- F( i: K. v6 N
# -1 - Will synchronize only Z from Client --> Server. Default when no geodata. $ a" A$ F; G, ~, v* W# 1 - Synchronization Client --> Server only. Using this option (without geodata) makes it more difficult for players to bypass obstacles.+ V. v: K0 R( T8 }) o# u5 b
# 2 - Intended for geodata (at least with cell-level pathfinding, otherwise can you try -1). , ^2 L$ l0 n5 ^, S' Q0 D2 c# Server sends validation packet if client goes too far from server calculated coordinates. + h7 \9 q' |* z# Default: -1 2 \( F+ y# n! R- |" R) m6 uCoordSynchronize = -1 " {4 I8 a( V5 [" t, o$ ?( `1 V+ J6 H% ~' n
\) U1 w, r( F
; P) [) |) V# c
; x: b. E4 E VGeoData = 0 8 c! w9 _3 S" A2 W* u6 B8 I- Q9 } # d4 ~) K% _) G6 a4 I! t" ^3 L' [% M# B6 E+ F+ k C! v8 T/ H+ k
, H, T4 e* n# K. z7 q$ j- g* F( J: v% R. g6 f% ]( b7 m3 V, E
Ставим 1 если нас только геодата,пачнод отсутствует.В этом случае мы получаем только то что агрессивные мобы не будут на нас кидаться,персы утыкаясь в стену не будут буксовать,а просто остановятся,но мобы если вы завернули за угол будут вас всё равно "видеть" и ломиться к вам через стену.& F' S3 y5 U6 y P
Ставим 2 если пачнод присутствует, так же включаем эту настройку:* n! g( B( ?' f; U9 |/ M
0 o! e: ? R- b7 k: V1 D ' I9 b) y$ S8 U + { Z, z2 `9 {$ a4 I* _6 f; M7 |+ J3 U& u) D3 ^7 E* ~
# Cell-level pathfinding, produces more accurate routes but is (maybe 10x) heavier to calculate. Recommended for small servers at least. 9 o B1 y; I& o9 Z# 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 D& }) D/ j' s. N' e# Default: False4 M {0 }2 v" @
CellPathFinding = False + p: [6 I) K& Q. i# h* r% ~6 |1 U # n& i; }- U" k1 c+ z; m; a) D b2 A: `5 o2 M! T3 p$ } " i" d6 Q" P- P! G3 B" J8 M) r& F1 E
Ставим True если хотим более сглаженную работу пачнода,но нагрузка на сервер немного возрастёт,если нет то ничего не меняем. ! t# a/ c A) b& IПожалуй всё подробно написал, спецы дополняем если что то не учел. / s( |$ }1 l' U. l . S0 x4 M2 {6 I" D' M: X5 U' r4 t. m/ \$ ?8 h) i* g" h
Не забывайте что если вы изменили конфиги при запущенном сервере,то они вступят в силу только после перезапуска сборки. * P; r, f6 T4 B/ z ?$ _0 ^: }9 ?$ E1 d, J
И строки начинающиеся с "#" никакого значения не имеют, это просто комментарий или один из неактивных вариантов конфигурации. ) a' A$ v* v* |9 O0 c5 z- @& K8 s / V3 A. r* f( \- W% b [
Добро пожаловать artace.ru - творческий сектор (https://artace.ru/)