References — различия между версиями

Материал из Руководство по OpenKore
Перейти к: навигация, поиск
м (Орфография)
м (ещё раз орфография и ссылки)
Строка 20: Строка 20:
 
|-
 
|-
 
|align=center| |  
 
|align=center| |  
|Вертикальная черта означет "или". Необходимо выбрать либо левую, либо правую часть.
+
|Вертикальная черта означает "или". Необходимо выбрать либо левую, либо правую часть.
 
|}
 
|}
  
Строка 337: Строка 337:
 
* Если оружие или броня не слотовые, то чать [<кол-во слотов>] пропускается.
 
* Если оружие или броня не слотовые, то чать [<кол-во слотов>] пропускается.
 
* Регистр букв в названии предметов не важен.
 
* Регистр букв в названии предметов не важен.
* Названия предметов можно подсмотреть при помощи [[:Category:Console Commands|консольных команд]] [[i]], [[cart]], [[storage]].
+
* Названия предметов можно подсмотреть при помощи [[:Category:Console Command|консольных команд]] [[i]], [[cart]], [[storage]].
  
 
'''Пример:'''
 
'''Пример:'''
Строка 365: Строка 365:
 
'''Примечания:'''  
 
'''Примечания:'''  
 
* Регистр букв в названии предметов не важен.
 
* Регистр букв в названии предметов не важен.
* Названия предметов можно подсмотреть при помощи [[:Category:Console Commands|консольных команд]] [[i]], [[cart]], [[storage]].
+
* Названия предметов можно подсмотреть при помощи [[:Category:Console Command|консольных команд]] [[i]], [[cart]], [[storage]].
  
 
=== Наземные умения ===
 
=== Наземные умения ===
Строка 379: Строка 379:
  
 
'''Примечание:'''  
 
'''Примечание:'''  
* Название наземных умений, работающих рядом с OpenKore, можно подсмотреть при помощи [[:Category:Console Commands|консольной команды]] [[spell]].
+
* Название наземных умений, работающих рядом с OpenKore, можно подсмотреть при помощи [[:Category:Console Command|консольной команды]] [[spell]].
  
 
=== Локации ===
 
=== Локации ===
Строка 395: Строка 395:
  
 
'''Примечание:'''  
 
'''Примечание:'''  
* Название локации, на которой в данный момент находится персонаж, можно подсмотреть [[:Category:Console Commands|консольной командой]] [[where]].
+
* Название локации, на которой в данный момент находится персонаж, можно подсмотреть [[:Category:Console Command|консольной командой]] [[where]].
  
  
Строка 410: Строка 410:
  
 
'''Примечание:'''  
 
'''Примечание:'''  
* Имя моба можно узнать при помощи [[:Category:Console Commands|консольной команды]] [[ml]], будет выведен список мобов рядом с персонажем.
+
* Имя моба можно узнать при помощи [[:Category:Console Command|консольной команды]] [[ml]], будет выведен список мобов рядом с персонажем.
  
  
 
=== Игроки ===
 
=== Игроки ===
 
----
 
----
Имена окружающих персонажа игроков можно узнать при помощи [[:Category:Console Commands|консольной команды]] [[pl]].
+
Имена окружающих персонажа игроков можно узнать при помощи [[:Category:Console Command|консольной команды]] [[pl]].
  
 
'''Примечание:''' В именах игроков важен регистр букв.
 
'''Примечание:''' В именах игроков важен регистр букв.
Строка 432: Строка 432:
  
 
'''Примечания:'''
 
'''Примечания:'''
* Названия умений персонажа можно посмотреть [[:Category:Console Commands|консольной командой]] [[skills]].
+
* Названия умений персонажа можно посмотреть [[:Category:Console Command|консольной командой]] [[skills]].
 
* Расположение файла задаётся параметрами командной строки или в [[servers.txt]].
 
* Расположение файла задаётся параметрами командной строки или в [[servers.txt]].
 
* Файл [[skillnametable.txt]] можно извлечь прямо из grf-файла от клиента.
 
* Файл [[skillnametable.txt]] можно извлечь прямо из grf-файла от клиента.
Строка 448: Строка 448:
  
 
'''Примечание:'''
 
'''Примечание:'''
* Список наложенных на персонажа статусов можно узнать [[:Category:Console Commands|консольной командой]] [[s]].
+
* Список наложенных на персонажа статусов можно узнать [[:Category:Console Command|консольной командой]] [[s]].
  
  
 
== Коды разговора с неписями ==
 
== Коды разговора с неписями ==
Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто продолжить беседу. Эта форма записи используется в [[:Category:Console Commands|консольной команде]] [[talknpc]], в параметрах конфига [[:Category:config.txt|config.txt]], например в [[storageAuto_npc_steps]], а также в других местах, например в файле [[tables]]\[[portals.txt]]. Разговор с неписью записывается как строка кодов, где коды разделяются пробелами.
+
Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто продолжить беседу. Эта форма записи используется в [[:Category:Console Command|консольной команде]] [[talknpc]], в параметрах конфига [[:Category:config.txt|config.txt]], например в [[storageAuto_npc_steps]], а также в других местах, например в файле [[tables]]\[[portals.txt]]. Разговор с неписью записывается как строка кодов, где коды разделяются пробелами.
  
 
{| border="1" cellpadding="2" cellspacing="1"  
 
{| border="1" cellpadding="2" cellspacing="1"  
Строка 500: Строка 500:
 
''' Пример: '''
 
''' Пример: '''
  
* Поговорить с неписью, стоящей по координатам (63 60), используюя следующую последовательность: дальше > выбрать четвертый вариант > дальше > выбрать первый вариант > дальше > дальше > выбрать первый вариант > дальше > конец.  
+
* Поговорить с неписью, стоящей по координатам (63 60), используя следующую последовательность: дальше > выбрать четвертый вариант > дальше > выбрать первый вариант > дальше > дальше > выбрать первый вариант > дальше > конец.  
 
  talknpc 63 60 c r3 c r0 c c r0 c n
 
  talknpc 63 60 c r3 c r0 c c r0 c n
  

Версия 21:02, 24 апреля 2011

Условные обозначения

Условные обозначения используются при описании параметров конфигурационных файлов и различных команд.

Условное обозначение Значение
Bold Выделенный жирным текст вводится без изменений.
< > В угловых скобках указывается информация, которую должен ввести человек.
( ) Заключённые в круглые скобки параметры являются обязательными.
[ ] Заключённые в квадратные скобки параметры являются необязательными.
| Вертикальная черта означает "или". Необходимо выбрать либо левую, либо правую часть.


Типы значений

Значения параметров в конфигурационных файлах и аргументов в командах могут быть следующих типов:

Тип значения Описание
флаг Числовой код, смысловое значение которого зависит от контекста. Расшифровка кодов всегда прилагается.
булев флаг Числовой код, имеющий только два возможных значения: 0 - выключено, 1 - включено.
число Любое число. Может быть целым или дробным. Целая и дробная часть разделяются знаком точки ".".
процент Целое число от 0 до 100. Знак процента "%" приписывать не надо, если только не сказано иначе.
секунды Число, обозначающее время, выраженное в секундах. Число может быть дробным, например 0.5.
строка Любая текстовая строка.

Слоты для экипировки

Имена слотов, в которые одевается броня, аксессуары, оружие и стрелы с патронами.

Список слотов для экипировки.
Слот Описание
topHead Голова верх.
midHead Голова середина.
lowHead Голова низ.
rightHand Правая рука.
leftHand Левая рука.
rightAcessory Правый акцессуар.
leftAcessory Левый акцессуар.
armor Броня на тело.
robe Накидка, плащ.
shoes Обувь.
arrow Стрелы или патроны.


Домены сообщений

Выводимые на консоль сообщения сведены в группы сообщений, называемые доменами сообщений.

Чтобы узнать, к какому домену сообщений относится то или иное сообщение, пропишите в параметре конфига showDomain 1, тогда с самим сообщением будет выводиться имя домена сообщений, к которому оно относится.

Список известных доменов сообщений:
Имя домена сообщений Описание
ai_attack Атака.
ai_npcTalk Команды при разговоре с неписями.
attacked Моб атакует персонажа.
attackedMiss Моб атакует персонажа и промахивается.
attackMon Персонаж атакует моба.
attackMonMiss Персонаж атакует моба и промахивается.
connection Соединение с игровым сервером.
console Просто консольное сообщение.
deal Сделка с другим игроком.
drop С моба упали итемы.
emotion Эмоции.
exp Получение опыта.
equip Одевание оружия или брони.
follow Следование за ведущим игроком.
guildchat Чат гильдии.
guildnotice Объявление в гильдии.
info Информация о персонаже.
input Информация, введённая человеком с консоли.
inventory Инвентарь персонажа.
list Список акторов.
load Загрузка конфигурационных файлов.
looter Атака моба-лутера.
map_event Сообщения режимов PvP/GvG.
npc Разговор неписей.
parseMsg_statuslook Изменение состояния или экипировки персонажа.
parseMsg/hairColor Изменение цвета волос.
parseMsg/job Смена профессии.
parseMsg/upgrade Заточка итема.
party Пати и следования за ведущим.
partychat Чат пати.
pet Пет, питомец.
plugins Плагины.
pm Полученное приватное сообщение.
pm/sent Отправленное приватное сообщение.
portals Порталы переходов между локациями.
portalRecord Запись перехода через портал.
publicchat Общий, публичный чат.
refine Заточка оружия.
route Просчитывание маршрута.
route_teleport Телепортация при прохождении маршрута.
schat Сообщение GM'а на весь сервер.
selfSkill Используемые самим персонажем скиллы.
skill Скиллы, не связанные с сообщениями об атаке.
sold Продан итем в торговой лавке.
startup Сообщения при запуске OpenKore.
storage Склад кафры, положили или взяли итем.
success Operation succeeded messages.
syntax Проверка правописания в файлах.
teleport Телепортация, винги.
useItem Исользование итема.
useTeleport Попытка использовать телепорт.
waypoint Waypoint messages.
xkore Режим X-Kore.


Далее следует список доменов, используемых для отладки:

  • ai
  • ai_attack
  • ai_autoCart
  • ai_makeItem
  • ai_move
  • ai_npcTalk
  • attackMonMiss
  • autoBreakTime
  • connection
  • d_sendPacket
  • debug
  • drop
  • equipAuto
  • guild
  • ipc
  • Item
  • monsterSkill
  • npc
  • packetParser
  • parseInput
  • parseMsg
  • parseMsg_comboDelay
  • parseMsg_damage
  • parseMsg_move
  • parseMsg_presence
  • parseMsg_presence/name
  • parseMsg_presence/player
  • parseMsg_presence/remote
  • parseMsg_statuslook
  • parseSendMsg
  • pet
  • route
  • route_teleport
  • sendPacket
  • sitAuto
  • skill
  • storage
  • useTeleport
  • vending


Названия

Иногда название оружия, брони, предметов и мобов различаются от сервера к серверу, поэтому OpenKore имеет свою собственную базу данных в папке tables, где хранятся стандартные названия. Для каждого вида объектов OpenKore имеет свои правила наименования.

Оружие и броня


Написание названия оружия или брони подчиняется следующим правилам:

# для обычного оружия или брони
[BROKEN] [+<уровень заточки>] (<название предмета>) [[<вставленная карта>[*<кол-во>]] [<кол-во слотов>]]

# для элементального оружия
[BROKEN][+<уровень заточки>][VS|VVS|VVVS][Fire|Earth|Wind|Water](<название предмета>) 

Примечания:

  • Если оружие или броня не сломано, слово BROKEN не пишется.
  • Если оружие или броня не заточены, тогда опускается та часть имени, которая +<уровень заточки>.
  • Для описания вставленных карт используется только имя моба без слова Card, например просто Hydra вместо Hydra Card.
  • Если вставлена только одна карта одного типа, то опускается та часть, которая *<кол-во>.
  • Если вставлено несколько типов карт, то пары <вставленная карта>*<кол-во> разделятся знаком двоеточия ":", а сам список карт должен быть отсортирован в алфавитном порядке.
  • Если оружие или броня не слотовые, то чать [<кол-во слотов>] пропускается.
  • Регистр букв в названии предметов не важен.
  • Названия предметов можно подсмотреть при помощи консольных команд i, cart, storage.

Пример:

  • Для брони +7 Cranial Mirror Shield, Hard Padded Armor и оружия 3-слотовый +5 Double Flammable Boned Saber, +6 Very Very Strong Wind Tsurugi, правильными названиями будут:
+7 Mirror Shield [Thara Frog] [1]
Padded Armor [Pupa] [1]
+5 Saber [Skel Worker:Vadon*2] [3]
+6 VVS Wind Tsurugi


Предметы


Названия предметов находятся в файле tables\items.txt, записи в этом файле выглядят вот так:

<Item ID>#<item_name>#

В файле items.txt пробелы в названиях предметов заменяются знаком подчеркивания "_". При использовании в OpenKore знаки подчеркивания заменяются на, собственно, пробелы.


Пример:

  • Предмет называется "Mirror Shield".
2107#Mirror_Shield#

Примечания:

Наземные умения


Названия наземных умений находятся в файле tables\spells.txt, записи в этом файле выглядят вот так:

<Spell ID> <spell name>

Пример:

  • Название наземного умения: Safety Wall
126 Safety Wall

Примечание:

Локации


Названия локаций находятся в файле tables\maps.txt, записи в этом файле выглядят вот так:

<map file name>#<map name>#

OpenKore использует только первое поле из этого файла.

Пример:

  • Название локации Prontera
prontera.rsw#Prontera City#

Примечание:


Мобы


Имена мобов, монстров находятся в файле tables\monsters.txt, записи в этом файле выглядят вот так:

<monster ID> <monster name>

Пример:

  • Имя моба: Scorpion
1001 Scorpion

Примечание:

  • Имя моба можно узнать при помощи консольной команды ml, будет выведен список мобов рядом с персонажем.


Игроки


Имена окружающих персонажа игроков можно узнать при помощи консольной команды pl.

Примечание: В именах игроков важен регистр букв.


Умения


Названия умений и заклинаний находятся в файле tables\skillnametable.txt, записи в этом файле выглядят вот так:

<skill handle> <skill name>

Пример:

  • Название навыка - Basic Skill
NV_BASIC Basic Skill

Примечания:

  • Названия умений персонажа можно посмотреть консольной командой skills.
  • Расположение файла задаётся параметрами командной строки или в servers.txt.
  • Файл skillnametable.txt можно извлечь прямо из grf-файла от клиента.

Статусы


Названия статусов находятся в файлах tables\skillsailments.txt, tables\skillslooks.txt, tables\skillsstate.txt, tables\skillsstatus.txt, записи во всех этих файлах выглядят вот так:

<skill status ID> <status name>

Пример:

  • Название статуса - Poisoned
1 Poisoned

Примечание:


Коды разговора с неписями

Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто продолжить беседу. Эта форма записи используется в консольной команде talknpc, в параметрах конфига config.txt, например в storageAuto_npc_steps, а также в других местах, например в файле tables\portals.txt. Разговор с неписью записывается как строка кодов, где коды разделяются пробелами.

Список кодов разговора с неписями
Код Действие
c Продолжить разговор с неписью. То же самое, что нажатие кнопки "Next".
r<номер варианта ответа> Выбрать один из предложенных вариантов. Индексация вариантов ответа начинается с нуля.
w<кол-во секунд> Подождать указанное количество секунд, а потом продолжить разговор.
d<число> Сказать число.
t=<текст> Сказать текстовую строку.
s Начать продажу предметов.
b Начать покупку предметов.
b<№ предмета в магазине>,<кол-во> Купить у неписи предмет в указанном количестве. Например talknpc 126 76 b b0,5 b1,6 e
n Закончить разговор с неписью.
e Подождать, пока непись скажет "Done talking". Используется после кодов s или b, когда идёт разговор с неписью, которая скупает-продаёт предметы.
a="<консольная команда>" Выполнить указанную консольную команду. Например a="is Red Potion".
x Снова начать разговор с неписью. Это нужно, чтобы в одну команду talknpc запихивать несколько обращений к одной неписи.


Пример:

  • Поговорить с неписью, стоящей по координатам (63 60), используя следующую последовательность: дальше > выбрать четвертый вариант > дальше > выбрать первый вариант > дальше > дальше > выбрать первый вариант > дальше > конец.
talknpc 63 60 c r3 c r0 c c r0 c n

Диапазон значений

Диапазоны значений позволяют более гибко настраивать некоторые параметры конфига config.txt.

Варианты написания диапазона значений
Вариант написания Диапазон значений
X Значение будет равно X.
X..Y Диапазон значений - все числа от X до Y включительно.
X-Y Диапазон значений - все числа от X до Y включительно.
> X Все значения, которые больше чем X.
>= X Все значения, которые больше либо равны X.
< X Все значения, которые меньше чем X.
<= X Все значения, которые меньше либо равны X.


Примеры

  • Если уровень персонажа больше десяти:
lvl > 10
  • Если у персонажа ровно 5000 зени:
zeny 5000
  • Если проф-уровень персонажа от 10 до 15 включительно:
jlvl 10..15

Атрибуты блочных параметров

Self Conditions

Self Conditions - набор атрибутов, которые описывают самочувствие персонажа, его состояние, информация о различных его параметрах. Условия для проверки состояния персонажа описываются атрибутами.

Эти атрибуты можно использовать в следующих блочных параметрах конфига: attackComboSlot, attackSkillSlot, buyAuto, doCommand, equipAuto, monsterSkill, partySkill, useSelf_item, useSelf_skill

Проверка условий Self Conditions

функция Misc::checkSelfCondition (<атрибут>) - возвращает "true", если условие для <атрибута> выполняется.

Добавление нового условия Self Conditions

Можно добавить свои собственные, нестандартные атрибуты и проверки состояния персонажа при помощи хука checkSelfCondition, который содержит следующие элементы:

  • префикс - название блочного конфига (для атрибута "blockOption" префикс будет: $config{$prefix."_blockOption"})
  • return - код возврата. Установить 0 если условие не выполняется.

Monster Conditions

Monster Condition - это условия, проверяющие состояние моба и известную о нём информацию. Условия описываются атрибутами, которые можно использовать в следующих блочных параметрах конфига: attackComboSlot, attackSkillSlot, equipAuto и monsterSkill. Названия этих атрибутов начинаются с префикса target_.

Player Conditions

Player Condition - это условия, проверяющие состояние другого игрока и известную о нём информацию. Условия описываются атрибутами, которые в настоящее время может использовать только один блочный параметр конфига - partySkill. Названия этих атрибутов начинаются с префикса target_.

Skill Use Conditions

Skill Use Condition - это условия применения скиллов. Условия описываются атрибутами. Эти атрибуты можно использовать в следующих блочных параметрах конфига: attackComboSlot, attackSkillSlot, monsterSkill, partySkill и useSelf_skill.

Интерфейсы OpenKore

У OpenKore есть несколько вариантов интерфейса. Самые популярные: Консольный интерфейс (быстрый) и Wx интерфейс (красивый). Чтобы запустить один из интерфейсов - используйте соответствующий исполняемый файл (для Windows) или укажите параметр командной строки: --interface=<имя_интерфейса>.