References: различия между версиями
4epT (обсуждение | вклад) Нет описания правки |
4epT (обсуждение | вклад) Нет описания правки |
||
Строка 455: | Строка 455: | ||
== Коды разговора с неписями == | == Коды разговора с неписями == | ||
Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто попросить непись говорить дальше. Эта форма записи используется в [[Console Commands|консольной команде]] '''talknpc''', в параметрах конфига [[:Category: | Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто попросить непись говорить дальше. Эта форма записи используется в [[Console Commands|консольной команде]] '''talknpc''', в параметрах конфига [[:Category:config.txt|config.txt]], например в [[storageAuto_npc_steps]], а также в других местах, например в файле tables\portals.txt. Разговор с неписью записывается как строка кодов, где коды разделяются пробелами. | ||
{| border="1" cellpadding="2" cellspacing="1" | {| border="1" cellpadding="2" cellspacing="1" | ||
Строка 507: | Строка 507: | ||
== Диапазон значений == | == Диапазон значений == | ||
Диапазоны значений позволяют более гибко прописывать значения для некоторых параметров конфига [[:Category: | Диапазоны значений позволяют более гибко прописывать значения для некоторых параметров конфига [[:Category:config.txt|config.txt]], так как позволяют указать целый диапазон значений, вместо того, чтобы указывать только одно конкретное значение. | ||
{| border="1" cellpadding="2" cellspacing="1" | {| border="1" cellpadding="2" cellspacing="1" |
Версия от 03:17, 1 апреля 2010
Условные обозначения
Условные обозначения используются при определении параметров конфигурационных файлов и различных команд.
Условное обозначение | Значение |
---|---|
Bold | Выделенный жирным текст вводится без изменений. |
< > | В угловых скобках указывается информация, которую должен ввести человек. |
( ) | Заключённые в круглые скобки параметры являются обязательными.
Required parameters. |
[ ] | Заключённые в квадратные скобки параметры являются необязательными. |
| | Вертикальная черта означет "или". Необходимо выбрать либо левую, либо правую часть. |
Типы значений
Значения параметров в конфигурационных файлах и аргументов в командах могут быть следующих типов:
Тип значения | Описание |
---|---|
флаг | Числовой код, смысловое значение которого зависит от контекста. Расшифровка кодов всегда прилагается. |
булев флаг | Числовой код, имеющий только два возможных значения: 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. |
Далее следует список доменов, используемых для отладки:
|
|
|
|
|
Имена
Иногда имена оружия, брони, итемов, мобов различаются от сервера к серверу, поэтому OpenKore имеет свою собственную базу данных в папке tables, где хранятся имена по умолчанию. Для каждого вида объектов OpenKore имеет свои правила наименования.
Оружие и броня
Написание имени оружия или брони подчиняется следующим правилам:
# для обычного оружия или брони [BROKEN] [+<upgrade level>] (<item name>) [[<card name>[*<number>]] [<number of slots>]] # для элементального оружия [BROKEN][+<upgrade level>][VS|VVS|VVVS][Fire|Earth|Wind|Water](<item name>)
Примечания:
- Если оружие или броня не сломано, слово BROKEN не пишется.
- Если оружие или броня не заточены, тогда опускается та часть имени, которая +<upgrade level>.
- Используйте только само имя моба для назвния вставленных карт, например просто Hydra вместо имени карты Hydra Card.
- Если вставлена только одна карта одного типа, то опускается та часть, которая *<number>.
- Если втсавлено несколько типов карт, тогда пары <card name>*<number> должны быть отделены знаком двоеточия ":", а сам список карт должен быть отсортирован в алфавитном порядке.
- Если оружие или броня не слотовые, то чать [<number of slots>] пропускается.
- Регистр букв в названии итемов не важен.
- Если у вас есть оружие или броня, то вы можете воспользоваться консольными командами, чтобы проверить, как оно полностью называется. Например i, cart, storage.
Пример:
- Для оружия и брони +7 Cranial Mirror Shield, Hard Padded Armor, 3-slotted +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#
Примечания:
- Регистр букв в названии итемов не важен.
- Если у вас есть оружие или броня, то вы можете воспользоваться консольными командами, чтобы проверить, как оно полностью называется. Например i, cart, storage.
Наземные скиллы
Имена наземных скилов находятся в файте tables\spells.txt, записи в этом файле выглядят вот так:
<Spell ID> <spell name>
Пример:
- Имя назменого скилла: Safety Wall
126 Safety Wall
Примечание:
- Имена наземных скиллов можно посмотреть консольной командой spell, если в это же время OpenKore видит рядом с собой наземные скиллы.
Локации
Имена локаций находятся в файле tables\maps.txt, записи в этом файле выглядят вот так:
<map file name>#<map name>#
OpenKore использует только первое поля из этого файла.
Пример:
- Название локации Prontera
prontera.rsw#Prontera City#
Примечание:
- Имя локации, на которой в данный момент находится персонаж, можно посмотреть консольной командой where.
Мобы
Имена мобов, монстров находятся в файле 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.
- Если вы играете, например, на iRO, гляньте в файл tables\iRO\skillnametable.txt, чтобы посмотреть имена скиллов.
- Можно также распаковать файл skillnametable.txt прямо из grf-файла и использовать именно те имена скиллов, что в ходу именно на вашем сервере.
Статусы
Имена статусов находятся в файлах tables\skillsailments.txt, tables\skillslooks.txt, tables\skillsstate.txt, tables\skillsstatus.txt, записи во всех жтих файлах выглядят вот так:
<skill status ID> <status name>
Пример:
- Имя статуса - Poisoned
1 Poisoned
Примечание:
- Имена наложенных на персонажа статусов можно узнать консольной командой s.
Коды разговора с неписями
Коды разговора с неписями используются чтобы записать - как надо говорить с неписью. Где какие варианты ответа выбирать, когда и какие числа вводить, а когда просто попросить непись говорить дальше. Эта форма записи используется в консольной команде talknpc, в параметрах конфига config.txt, например в storageAuto_npc_steps, а также в других местах, например в файле tables\portals.txt. Разговор с неписью записывается как строка кодов, где коды разделяются пробелами.
Код | Действие |
---|---|
c | Продолжить разговор с неписью. То же самое, что нажатие кнопки "Next". |
r(<response #>) | Выбрать один из предложенных вариантов. Индексация вариантов ответа начинается с нуля. |
w(<seconds>) | Подождать указанное количество секунд, а потом продолжить разговор. |
d(<number>) | Сказать число. |
t=(<string>) | Сказать текстовую строку. |
s | Перейти в список итемов, которые вы хотите продать неписи. |
b | Перейти в список продаваемых неписью товаров. |
b(<store item #>),(<amount>) | Купить у неписи итем с указанным индексом в списке товаров, через запятую обязательно указывается количество покупаемых итемов. Например talknpc 126 76 b b0,5 b1,6 e |
n | Закончить и прекратить разговор с неписью. |
e | Подождать, пока непись скажет "Done talking". Используется после кодов s или b, когда идет разговор с неписью, которая скупает-продаёт итемы. |
a=(<string>) | Выполнить указанную консольную команду. Например 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. |
Примеры
- Левел персонажа больше чем 10
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=<имя_интерфейса>
.