serverType: различия между версиями
Manticora (обсуждение | вклад) Появились т.н. буквенные сервертипы. |
4epT (обсуждение | вклад) |
||
(не показано 11 промежуточных версий 2 участников) | |||
Строка 1: | Строка 1: | ||
; serverType | ; <includeonly>[[serverType]]</includeonly><noinclude>serverType</noinclude> <название_типа_сервера> | ||
: В этом параметре | : В этом параметре указывается так называемый тип сервера, к которому должна подключиться 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''' ('''0'''-'''22''', '''8_1'''-'''8_5''') устарели и более не обновляются. Поэтому '''эти serverType скорее всего не будут работать'''. | |||
Числовые serverType существуют до сих пор только для работы с действительно устаревшими официальными приватными серверами. | |||
Кроме того, <code>serverType0</code> используется как основа в именных serverType для официальных серверов (за исключением kRO). | |||
::{| class="wikitable" border="1" cellspacing=" | |||
! | == serverType kRO для приватных серверов == | ||
! | |||
|- | Только официальные серверы имеют свой собственный serverType. Для приватных серверов необходимо найти дату компиляции исполняемого файла клиента и использовать соответствующий ему serverType: kRO - для новых версий или Sakray - для старых. | ||
| | |||
| | Синтаксис kRO serverTypes: | ||
|- | kRO_RagexeRE_<год>_<месяц>_<дата><буква> | ||
| | |||
| | Синтаксис Sakray serverTypes: | ||
|- | kRO_Sakexe_<год>_<месяц>_<дата><буква> | ||
| | |||
| | Вы можете найти все поддерживаемые serverType в папке '''src/Network/Receive'''. | ||
|- | |||
| | === Определение serverTypes для приватного сервера === | ||
| | Есть несколько способов определить kRO serverType для вашего сервера. | ||
|- | |||
| | ==== Версия сервера ==== | ||
| | |||
|- | Версия сервера изменяется при несовместимых изменениях протокола (обычно в этот момент изменяется пакет <code>game_login</code>). Попробуйте указать serverTypes, соответствующий версии сервера. Используйте исходный код OpenKore или eAthena packet_db в качестве ссылки. | ||
| | |||
| | {| class="wikitable" border="1" cellspacing="0" width="100%" | ||
|- | !Версия | ||
| | !Минимальный serverType | ||
| | !game_login | ||
|- | |- | ||
| | | … | ||
| | | [[Patches Welcome|Добавьте самостоятельно]] | ||
|- | | | ||
| | |- | ||
| | | 44 | ||
|- | | ''2013-07-17 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]]) | ||
| | | 091D | ||
| | |- | ||
|- | | 43 | ||
| | | ''2013-07-10 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]]) | ||
| | | 022D | ||
|- | |- | ||
| | | 42 | ||
| | | ''2013-07-03 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]]) | ||
|- | | 022D | ||
| | |- | ||
| | | 41 | ||
|- | | ''2013-06-26 Ragexe'' (Не поддерживается, [[Patches Welcome|Добавьте самостоятельно]]) | ||
| | | 088C | ||
| | |- | ||
| 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 | |||
|} | |} | ||
==== Редактирование пакетов ==== | |||
(''Надежный'') | |||
Поскольку постоянно появляются новые пакеты, вы можете исследовать их. Используйте сгенерированный свежий [[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: | [[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.