serverType: различия между версиями

Материал из Руководство по OpenKore
Перейти к навигации Перейти к поиску
Появились т.н. буквенные сервертипы.
 
(не показано 11 промежуточных версий 2 участников)
Строка 1: Строка 1:
; serverType [<number>]
; <includeonly>[[serverType]]</includeonly><noinclude>serverType</noinclude> <название_типа_сервера>
: В этом параметре конфига прописывается так называемый сервертип сервера, к которому должна подключиться OpenKore. Если в этом параметре конфига не было прописано никакого значения, то OpenKore обратится к файлу tables\servers.txt. Этот параметр конфига указывает на какого типа сервере вы играете.
: В этом параметре указывается так называемый тип сервера, к которому должна подключиться OpenKore. Это "язык" общения OpenKore с сервером RO. Каждый официальный сервер имеет свой serverType. Приватные сервера используют '''kRO-шные serverType''' в соответствии с датой компиляции запускаемых файлов клиента.
<noinclude>
== Обзор serverType ==
'''Именные serverType''' используются для подключения к официальным серверам Ragnarok Online. Они появились в OpenKore начиная с ревизии r6870.


=== Поддерживаемые ===
{| class="wikitable" border="1" cellspacing="0" width="100%"
!Сервер
!serverType
!ревизия
!Последний используемый sT
|-
| Официальный, Korea
| kRO_RagexeRE_0
|
| 8_1
|-
| Официальный, Taiwan
| twRO
|
| 21, 22
|-
| Официальный, Japan
| ''[[Patches Welcome|нет]]''
|
|
|-
| Официальный, Thailand
| tRO
|
| 21
|-
| Официальный, China
| cRO
| появился в [http://openkore.svn.sourceforge.net/viewvc/openkore?view=revision&revision=8352 r8352]
|
|-
|rowspan=2| Официальный, International
| iRO
|
| 22
|-
| iRO_Classic (Classic Pre-Renewal)
| появился в [http://openkore.svn.sourceforge.net/viewvc/openkore?view=revision&revision=8046 r8046]
|
|-
| Официальный, Philippines
| pRO
|
| 22
|-
| Официальный, Indonesia
| idRO
|
| 22
|-
| Официальный, Malaysia
| mRO
|
| 22
|-
|rowspan=3| Официальный, Brazil
| bRO (Odin)
|
| 0
|-
| bRO_Thor (Thor)
| removed in [http://openkore.svn.sourceforge.net/viewvc/openkore?view=revision&revision=7929 r7929]
| 22
|-
| bRO (Asgard)
|
| none
|-
| Официальный, Russia
| rRO
|
| 0
|-
| Официальный, France
| fRO
|
| 0
|-
| Официальный, Middle East
| aRO
|
| 22
|-
| Приватные сервера
| kRO_RagexeRE_* <br/>kRO_Sakexe_*
|
| *
|}


== Обзор сервертипов ==
=== Устаревшие ===
; serverType [<number>]
'''Числовые serverType''' ('''0'''-'''22''', '''8_1'''-'''8_5''') устарели и более не обновляются. Поэтому '''эти serverType скорее всего не будут работать'''.


Числовые serverType существуют до сих пор только для работы с действительно устаревшими официальными приватными серверами.


Список новых, так называемых буквенных сервертипов, для официальных серверов Ragnarok Online:
Кроме того, <code>serverType0</code> используется как основа в именных serverType для официальных серверов (за исключением kRO).
::{| class="wikitable" border="1" cellspacing="1" cellpadding="2"
 
!Server Name
== serverType kRO  для приватных серверов ==
!ServerType
 
|- align=center
Только официальные серверы имеют свой собственный serverType. Для приватных серверов необходимо найти дату компиляции исполняемого файла клиента и использовать соответствующий ему serverType: kRO - для новых версий или Sakray - для старых.
| Brazil Ragnarok Online Odin
 
| bRO
Синтаксис kRO serverTypes:
|- align=center
kRO_RagexeRE_<год>_<месяц>_<дата><буква>
| Brazil Ragnarok Online Thor
 
| bRO_Thor
Синтаксис Sakray serverTypes:
|- align=center
kRO_Sakexe_<год>_<месяц>_<дата><буква>
| Europe Ragnarok Online
 
| euRO
Вы можете найти все поддерживаемые serverType в папке '''src/Network/Receive'''.
|- align=center
 
| France Ragnarok Online
=== Определение serverTypes для приватного сервера ===
| fRO
Есть несколько способов определить kRO serverType для вашего сервера.
|- align=center
 
| India Ragnarok Online
==== Версия сервера ====
| inRO
 
|- align=center
Версия сервера изменяется при несовместимых изменениях протокола (обычно в этот момент изменяется пакет <code>game_login</code>). Попробуйте указать serverTypes, соответствующий версии сервера. Используйте исходный код OpenKore или eAthena packet_db в качестве ссылки.
| Indonesia Ragnarok Online
 
| idRO
{| class="wikitable" border="1" cellspacing="0" width="100%"
|- align=center
!Версия
| International Ragnarok Online
!Минимальный serverType
| iRO
!game_login
|- align=center
|-
| Korea Ragnarok Online
| …
| kRO_RagexeRE_0
| [[Patches Welcome|Добавьте самостоятельно]]
|- align=center
|
| Malaysia Ragnarok Online
|-
| mRO
| 44
|- align=center
| ''2013-07-17 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| Philippines Ragnarok Online
| 091D
| pRO
|-
|- align=center
| 43
|Russia Ragnarok Online
| ''2013-07-10 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| rRO
| 022D
|- align=center
|-
| Taiwan Ragnarok Online
| 42
| twRO
| ''2013-07-03 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
|- align=center
| 022D
| Thailand Ragnarok Online
|-
| tRO
| 41
|- align=center
| ''2013-06-26 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| Vietnam Ragnarok Online
| 088C
| vRO
|-
| 40
| ''2013-06-18 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 095B
|-
| 39
| ''2013-06-12 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 0919
|-
| 38
| ''2013-06-05 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 022D
|-
| 37
| ''2013-05-29 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 0919
|-
| 36
| ''2013-05-22 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 08A9
|-
| 35
| ''2013-05-15a Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 0943
|-
| 34
| ''2013-03-20Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 0888
|-
| 33
| ''2012-07-02aRagexeRE'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 0363
|-
| 32
| ''2012-06-18'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]])
| 022D
|-
| 31
| ''2012-04-18aRagexeRE'' (Не поддерживается, [http://rathena.org/board/topic/66079-2012-06-18aragexere-packet-db/ N/A in rAthena], [[Patches Welcome|Добавьте самостоятельно]])
| 022D
|-
| 30
| kRO_RagexeRE_2012_04_10a ([http://forums.openkore.com/viewtopic.php?t=17288 требуется доработка], [[Patches Welcome|Добавьте самостоятельно]])
| 094B
|-
| 29
| kRO_RagexeRE_2012_03_07f ([http://forums.openkore.com/viewtopic.php?t=17288 требуется доработка], [[Patches Welcome|Добавьте самостоятельно]])
| 086A
|-
| 28
| kRO_RagexeRE_2011_11_02a ([http://forums.openkore.com/viewtopic.php?t=17288 требуется доработка], [[Patches Welcome|Добавьте самостоятельно]])
| 083C
|-
| 27
| kRO_RagexeRE_2011_10_05a
| 0436 (без изменений)
|-
| 26
| kRO_RagexeRE_2010_11_24a
| 0436 (без изменений)
|-
| 25
| kRO_RagexeRE_2008_09_10a
| 0436
|-
| 24
| kRO_RagexeRE_2008_08_27a
| 009B
|-
| 23
| kRO_Sakexe_2008_09_10a
| 0436
|-
| 22
| kRO_Sakexe_2007_02_12a
| 009B
|-
| 21
| kRO_Sakexe_2007_01_08a
| ...
|-
| 20
| kRO_Sakexe_2006_03_27a
|-
| 19
| kRO_Sakexe_2005_07_19b
|-
| 18
| kRO_Sakexe_2005_07_18a
|-
| 17
| kRO_Sakexe_2005_06_28a
|-
| 16
| kRO_Sakexe_2005_05_09a
|-
| 15
| kRO_Sakexe_2005_01_10b
|-
| 14
| kRO_Sakexe_2004_11_29a
|-
| 13
| kRO_Sakexe_2004_10_25a
|-
| 12
| kRO_Sakexe_2004_10_05a
|-
| 11
| kRO_Sakexe_2004_09_20a
|-
| 10
| kRO_Sakexe_2004_09_06a
|-
| 9
| kRO_Sakexe_2004_08_09a
|-
| 8
| kRO_Sakexe_2004_07_26a
|-
| 7
| kRO_Sakexe_2004_07_13a
|-
| 6
| kRO_Sakexe_2004_07_05a
|-
| 5
| kRO_Sakexe_0
|}
|}


<!-- TODO: add all 100 serverTypes, but how? o.O
-- kRO serverTypes require only overview for how to use them. If anybody want the details they're pretty self-documented
:: Other serverTypes:
-->


Числовые же сервертипы устарели и более не обновляются (за исключением, разве что serverType 0, на котором основаны все сервертипы официальных серверов), используйте их только если знаете, что так надо. Старые числовые сервертипы могут потребоваться для давно не обновлявшихся приватных серверов.
==== Редактирование пакетов ====
 
(''Надежный'')
 
Поскольку постоянно появляются новые пакеты, вы можете исследовать их. Используйте сгенерированный свежий [[recvpackets|recvpackets.txt]] и предупреждения о неизвестных пакетах в консоли OpenKore, сравнивая новые данные с имеющимися в существующих serverType. Например, при подъёме предмета с земли в консоли OpenKore появляется информация о неизвестном пакете - включите [[:Категория:debug|debug пакетов]] и исследуйте его.
 
 
==== Дата компиляции ====
 
(''Ненадежно: дату компиляции исполняемого файла можно легко изменить.'')
 
'''1.''' Скачайте [https://mega.nz/file/CZYWjRAZ#4yb7bNj0-2xnxlUpZpq5xUpg3Xfb_tVN2Bo4NzBKWpA PE Viewer].
 
'''2.''' Откройте '''PE Viewer''' и выберите меню '''File > Open''' или просто нажмите кнопку '''F2'''. Выберите исполняемый файл клиента (не перепутайте с патчером!) <ref>Помните, что искать дату компиляции надо именно в исполняемом файле клиента (а не патчера, например). Имя настоящего исполняемого файла можно узнать через "Диспетчер задач Windows", просмотрев список запущенных в данный момент процессов. Среди них должен быть процесс игры Ragnarok Online. Таким именем может оказаться, например, ro.bin.</ref>.
:[[File:file.png]]
 
'''3.''' Перейдите ко вкладке '''PE Header'''.
:[[File:ServerType-header.png]]
 
'''4.''' Рядом с полем '''Time Data Stamp''' стоит дата компиляции исполняемого файла.
:[[File:ServerType-date.png]]
 
'''5.''' Откройте папку с файлами serverType '''src/Network/Receive/kRO''' и найдите файл, в имени которого есть указанная дата. В данном примере дата компиляции была '''January 26, 2010''', таким образом нужным файлом будет файл с именем '''RagexeRE_2010_01_26a.pm'''.
:[[File:ServerType-file.png]]
 
'''6.''' Нужный файл был найден, а значит для указанной даты компиляции существует serverType. Если нет файла с точно подходящей датой, попробуйте другой ближайший serverType или, на крайний случай, наиболее свежий из доступных. Название kRO-шного serverType отличается от названия файла только двумя вещами: в начало названия serverType добавляем '''kRO_''', а в конце убираем (если оно там было) расширение '''.pm'''. Например:
 
Из этого имени файла: <code>RagexeRE_2010_01_26a.pm</code> получится вот такой kRO-шный сервертип: <code>kRO_RagexeRE_2010_01_26a</code>. Следите за регистром букв в названии serverType. Например, так писать неправильно: kR'''o'''_RagexeRE_2010_01_26a и OpenKore сообщит об ошибке, мол, нет такого serverType.
==== Примечение ====
* Если вы используете OpenKore на приватном сервере, который использует eAthena или Herkules, то '''НЕ используйте''' <code>kRO_RagexeRE_0</code>, так как он предназначен только для использования на официальном сервере kRO.
 
== Ссылки ==
 
* Файлы serverType: [https://github.com/OpenKore/openkore/blob/master/tables/servers.txt tables/servers.txt] [https://github.com/OpenKore/openkore/tree/master/src/Network/Receive src/Network/Receive] [https://github.com/OpenKore/openkore/tree/master/src/Network/Send src/Network/Send]
* [https://github.com/HerculesWS/Hercules Проект Herkules]
* [https://code.google.com/p/eathena-project/source/browse/trunk/db/packet_db.txt eAthena's packet_db.txt]
* [http://sourceforge.net/apps/trac/rathena/browser/trunk/db/packet_db.txt rAthena's packet_db.txt]


[[Category:config.txt]]
[[Category:servers.txt]]
[[Category:connection]]
[[Category:connection]]</noinclude>

Текущая версия от 19:23, 31 января 2021

serverType <название_типа_сервера>
В этом параметре указывается так называемый тип сервера, к которому должна подключиться OpenKore. Это "язык" общения OpenKore с сервером RO. Каждый официальный сервер имеет свой serverType. Приватные сервера используют kRO-шные serverType в соответствии с датой компиляции запускаемых файлов клиента.

Обзор serverType

Именные serverType используются для подключения к официальным серверам Ragnarok Online. Они появились в OpenKore начиная с ревизии r6870.

Поддерживаемые

Сервер serverType ревизия Последний используемый sT
Официальный, Korea kRO_RagexeRE_0 8_1
Официальный, Taiwan twRO 21, 22
Официальный, Japan нет
Официальный, Thailand tRO 21
Официальный, China cRO появился в r8352
Официальный, International iRO 22
iRO_Classic (Classic Pre-Renewal) появился в r8046
Официальный, Philippines pRO 22
Официальный, Indonesia idRO 22
Официальный, Malaysia mRO 22
Официальный, Brazil bRO (Odin) 0
bRO_Thor (Thor) removed in r7929 22
bRO (Asgard) none
Официальный, Russia rRO 0
Официальный, France fRO 0
Официальный, Middle East aRO 22
Приватные сервера kRO_RagexeRE_*
kRO_Sakexe_*
*

Устаревшие

Числовые serverType (0-22, 8_1-8_5) устарели и более не обновляются. Поэтому эти serverType скорее всего не будут работать.

Числовые serverType существуют до сих пор только для работы с действительно устаревшими официальными приватными серверами.

Кроме того, serverType0 используется как основа в именных serverType для официальных серверов (за исключением kRO).

serverType kRO для приватных серверов

Только официальные серверы имеют свой собственный serverType. Для приватных серверов необходимо найти дату компиляции исполняемого файла клиента и использовать соответствующий ему serverType: kRO - для новых версий или Sakray - для старых.

Синтаксис kRO serverTypes:

kRO_RagexeRE_<год>_<месяц>_<дата><буква>

Синтаксис Sakray serverTypes:

kRO_Sakexe_<год>_<месяц>_<дата><буква>

Вы можете найти все поддерживаемые serverType в папке src/Network/Receive.

Определение serverTypes для приватного сервера

Есть несколько способов определить kRO serverType для вашего сервера.

Версия сервера

Версия сервера изменяется при несовместимых изменениях протокола (обычно в этот момент изменяется пакет game_login). Попробуйте указать serverTypes, соответствующий версии сервера. Используйте исходный код OpenKore или eAthena packet_db в качестве ссылки.

Версия Минимальный serverType game_login
Добавьте самостоятельно
44 2013-07-17 Ragexe (Не поддерживается, Добавьте самостоятельно) 091D
43 2013-07-10 Ragexe (Не поддерживается, Добавьте самостоятельно) 022D
42 2013-07-03 Ragexe (Не поддерживается, Добавьте самостоятельно) 022D
41 2013-06-26 Ragexe (Не поддерживается, Добавьте самостоятельно) 088C
40 2013-06-18 Ragexe (Не поддерживается, Добавьте самостоятельно) 095B
39 2013-06-12 Ragexe (Не поддерживается, Добавьте самостоятельно) 0919
38 2013-06-05 Ragexe (Не поддерживается, Добавьте самостоятельно) 022D
37 2013-05-29 Ragexe (Не поддерживается, Добавьте самостоятельно) 0919
36 2013-05-22 Ragexe (Не поддерживается, Добавьте самостоятельно) 08A9
35 2013-05-15a Ragexe (Не поддерживается, Добавьте самостоятельно) 0943
34 2013-03-20Ragexe (Не поддерживается, Добавьте самостоятельно) 0888
33 2012-07-02aRagexeRE (Не поддерживается, Добавьте самостоятельно) 0363
32 2012-06-18 (Не поддерживается, Добавьте самостоятельно) 022D
31 2012-04-18aRagexeRE (Не поддерживается, N/A in rAthena, Добавьте самостоятельно) 022D
30 kRO_RagexeRE_2012_04_10a (требуется доработка, Добавьте самостоятельно) 094B
29 kRO_RagexeRE_2012_03_07f (требуется доработка, Добавьте самостоятельно) 086A
28 kRO_RagexeRE_2011_11_02a (требуется доработка, Добавьте самостоятельно) 083C
27 kRO_RagexeRE_2011_10_05a 0436 (без изменений)
26 kRO_RagexeRE_2010_11_24a 0436 (без изменений)
25 kRO_RagexeRE_2008_09_10a 0436
24 kRO_RagexeRE_2008_08_27a 009B
23 kRO_Sakexe_2008_09_10a 0436
22 kRO_Sakexe_2007_02_12a 009B
21 kRO_Sakexe_2007_01_08a ...
20 kRO_Sakexe_2006_03_27a
19 kRO_Sakexe_2005_07_19b
18 kRO_Sakexe_2005_07_18a
17 kRO_Sakexe_2005_06_28a
16 kRO_Sakexe_2005_05_09a
15 kRO_Sakexe_2005_01_10b
14 kRO_Sakexe_2004_11_29a
13 kRO_Sakexe_2004_10_25a
12 kRO_Sakexe_2004_10_05a
11 kRO_Sakexe_2004_09_20a
10 kRO_Sakexe_2004_09_06a
9 kRO_Sakexe_2004_08_09a
8 kRO_Sakexe_2004_07_26a
7 kRO_Sakexe_2004_07_13a
6 kRO_Sakexe_2004_07_05a
5 kRO_Sakexe_0


Редактирование пакетов

(Надежный)

Поскольку постоянно появляются новые пакеты, вы можете исследовать их. Используйте сгенерированный свежий recvpackets.txt и предупреждения о неизвестных пакетах в консоли OpenKore, сравнивая новые данные с имеющимися в существующих serverType. Например, при подъёме предмета с земли в консоли OpenKore появляется информация о неизвестном пакете - включите debug пакетов и исследуйте его.


Дата компиляции

(Ненадежно: дату компиляции исполняемого файла можно легко изменить.)

1. Скачайте PE Viewer.

2. Откройте PE Viewer и выберите меню File > Open или просто нажмите кнопку F2. Выберите исполняемый файл клиента (не перепутайте с патчером!) <ref>Помните, что искать дату компиляции надо именно в исполняемом файле клиента (а не патчера, например). Имя настоящего исполняемого файла можно узнать через "Диспетчер задач Windows", просмотрев список запущенных в данный момент процессов. Среди них должен быть процесс игры Ragnarok Online. Таким именем может оказаться, например, ro.bin.</ref>.

3. Перейдите ко вкладке PE Header.

4. Рядом с полем Time Data Stamp стоит дата компиляции исполняемого файла.

5. Откройте папку с файлами serverType src/Network/Receive/kRO и найдите файл, в имени которого есть указанная дата. В данном примере дата компиляции была January 26, 2010, таким образом нужным файлом будет файл с именем RagexeRE_2010_01_26a.pm.

6. Нужный файл был найден, а значит для указанной даты компиляции существует serverType. Если нет файла с точно подходящей датой, попробуйте другой ближайший serverType или, на крайний случай, наиболее свежий из доступных. Название kRO-шного serverType отличается от названия файла только двумя вещами: в начало названия serverType добавляем kRO_, а в конце убираем (если оно там было) расширение .pm. Например:

Из этого имени файла: RagexeRE_2010_01_26a.pm получится вот такой kRO-шный сервертип: kRO_RagexeRE_2010_01_26a. Следите за регистром букв в названии serverType. Например, так писать неправильно: kRo_RagexeRE_2010_01_26a и OpenKore сообщит об ошибке, мол, нет такого serverType.

Примечение

  • Если вы используете OpenKore на приватном сервере, который использует eAthena или Herkules, то НЕ используйте kRO_RagexeRE_0, так как он предназначен только для использования на официальном сервере kRO.

Ссылки