DreamLand MUD - Мир Грёз, Феневое API

Феневое API

Персонаж: моб или игрок

Доступ к API изнутри мира

  • eval ptc(api())
  • eval ptc(get_char_world("xxx").api())

Поля, доступные только для чтения [ro] и для записи [rw]

Статус Поле Описание
rw PK_flag KILLER, SLAIN, VIOLENT, GHOST, THIEF
rw PK_time_sk сколько висит slain и killer
rw PK_time_t сколько висит thief
rw PK_time_v сколько висит violent
rw act act флаги для мобов и plr для игроков (таблицы .tables.act_flags и plr_flags)
rw add_comm расширение поля comm (таблица .tables.add_comm_flags)
ro adrenaline полна ли кровь адреналина
ro affected список всех аффектов (List из структур Affect)
rw affected_by флаги аффектов (таблица .tables.affect_flags)
ro afterCharm очарован или недавно раз-очарован
ro alignName название натуры
rw alignment натура, от -1000 до 1000
ro altar vnum комнаты-алтаря в родном городе персонажа
rw ambushing строка, на кого сидим в засаде
rw anti_killed сколько жертв моего характера убито
rw armor0 класс брони
rw armor1 класс брони
rw armor2 класс брони
rw armor3 класс брони
ro attack_damage название типа повреждения (таблица .tables.damage_table)
ro attack_name англ название типа атаки (таблица в коде attack_table)
ro attack_noun русск название типа атаки (таблица в коде attack_table)
rw bank_g золота в банке
rw bank_s серебра в банке
rw batle_prompt строка состояния в бою
ro boat объект лодки
rw carry_number количество вещей которое несет чар
ro carry_weight вес, который несет персонаж
ro carrying первый объект в списке инвентаря/экипировки
ro charmed true если очарован и есть хозяин
ro clan клан (структура .Clan)
rw comm comm флаги (таблица .tables.comm_flags)
rw cond_bloodlust изменить 'жажда крови' на указанное число баллов
rw cond_drunk изменить 'опьянение' на указанное число баллов
rw cond_full изменить 'заполненность желудка' на указанное число баллов
rw cond_hunger изменить 'голод' на указанное число баллов
rw cond_thirst изменить 'жажда' на указанное число баллов
rw config настройки чара (таблица .tables.config_flags)
ro connected true если есть связь
ro craftProfessions map из названия->уровень мастерства для дополнительных профессий
ro cur_cha текущий параметр: харизма
ro cur_con текущий параметр: телосложение
ro cur_dex текущий параметр: ловкость
ro cur_int текущий параметр: ум
ro cur_str текущий параметр: сила
ro cur_wis текущий параметр: мудрость
rw dam_type тип повреждения (таблица .tables.weapon_flags)
rw damage_number повреждения моба: сколько раз кидать кубик
rw damage_type повреждения моба: кол-во граней кубика
rw damroll урон
rw daze daze state (в пульсах, 1 пульс = четверть секунды)
rw dead true, если персонажа уничтожили или моб только что умер
rw death сколько раз умирал
rw death_ground_delay счетчик ловушки
rw description то что видно по look mob
rw detection флаги детектов (таблица .tables.detect_flags)
ro doppel игрок, которому подражаем с помощью doppelganger. для зеркал - игрок, который их создал
ro equipment список всех предметов в экипировке
rw ethos добропорядочность
ro evil true если персонаж злой
rw exp суммарный опыт
ro expToLevel сколько опыта осталось набрать до след уровня
ro fighting тот, с кем сражаемся
ro flying true если мы GHOST, летаем или верхом на летающем скакуне
ro followers список существ, у которых персонаж master
rw form форма тела (таблица .tables.form_flags)
rw ghost_time сколько висит ghost
ro godName название религии, случайный бог для неопределившихся или строка 'бог|и|ов...' для мобов
rw gold золото
ro good true если персонаж добрый
ro groupHere список (List) всех согруппников в комнате
ro guarded_by игрок, который нас охраняет
ro guarding игрок, которого охраняем с помощью умения guard
ro hasDestiny моб имеет предназначение (квестовые и спец-мобы)
rw has_killed сколько жертв не моего характера убито
rw hit текущее здоровье (hit points)
rw hitroll точность
rw hometown родной город (структура .Hometown)
ro hostname IP-адрес соединения
ro id уникальный идентификатор персонажа
rw imm_flags флаги иммунитета (таблица .tables.imm_flags)
ro in_room комната, в которой сейчас находимся
rw incog_level уровень для incognito
ro inventory список всех предметов в инвентаре
rw invis_level уровень для wisinvis
ro isInInterpret true если игрок в состоянии ввода команд (не ed, не olc, не pager, etc)
ro items список всех предметов в инвентаре или экипировке
ro lastAccessTime время последнего захода в мир
rw last_death_time когда последний раз был убит
ro last_fight_delay задержка после боя в секундах
rw last_fought чар, с которым сражались последний раз
rw last_level какой был played, когда набили последний левел
rw leader лидер группы или тот, кто очаровал
rw level настоящий уровень
rw lines кол-во строк в буфере вывода
rw logon время последнего захода в мир
rw long_descr длинное описание моба
rw loyalty лояльность по отношению к закону (рулеровскому)
rw mana текущая mana
ro master тот, за кем следуем
ro max_carry_number макс кол-во вещей, которое может нести персонаж, 0 для петов, 1000 для богов
ro max_carry_weight макс вес, который может нести персонаж, 0 для петов, 100500 для богов
rw max_hit максимальное здоровье
rw max_mana максимальная mana
rw max_move максимальные moves
ro max_train_cha максимум тренировки для параметра: харизма
ro max_train_con максимум тренировки для параметра: телосложение
ro max_train_dex максимум тренировки для параметра: ловкость
ro max_train_int максимум тренировки для параметра: ум
ro max_train_str максимум тренировки для параметра: сила
ro max_train_wis максимум тренировки для параметра: мудрость
ro mod_beats на сколько процентов увеличены или уменьшены задержки от умений
ro modifyLevel уровень с учетом бонусов от ремортов
rw mount лидер группы или тот, кто очаровал
rw move текущие moves
rw name имя
ro names имя персонажа или короткое описание моба с падежами
ro neutral true если персонаж нейтральный
ro newbie true если нет ремортов, <50 квестов и самооценка новичок
ro next следующий чар в глобальном списке всех чаров, .char_list
ro next_in_room следующий чар в этой комнате, в списке people у комнаты
rw off_flags флаги поведения моба (таблица .tables.off_flags)
rw on объект, мебель, на которой сидим
ro online true, если персонаж в мире
ro pIndexData структура с прототипом для всех мобов с данным vnum(mob index data, т.е. то, редактируется с помощью OLC)
rw parts части тела (таблица .tables.part_flags)
rw password пароль
ro pc экземпляр игрока
rw perm_cha перманентный параметр: харизма
rw perm_con перманентный параметр: телосложение
rw perm_dex перманентный параметр: ловкость
rw perm_hit max hp без шмота
rw perm_int перманентный параметр: ум
rw perm_mana max mana без шмота
rw perm_move max move без шмота
rw perm_str перманентный параметр: сила
rw perm_wis перманентный параметр: мудрость
ro pet моб, домашнее животное
rw posFlags флаги позиции (таблица .tables.position_flags)
rw position позиция (таблица .tables.position_table)
rw practice сколько практик
rw pretitle претитул
rw profession класс (структура .Profession)
rw prompt строка состояния
rw questpoints qp
ro quick true если есть бит haste/fast и нету slow
rw race раса (структура .Race)
rw religion религия (структура .Religion)
ro remort_count кол-во ремортов
ro reply чар, который последний говорил с нами. по команде reply реплика отправится именно ему
rw res_flags флаги сопротивляемости (таблица .tables.res_flags)
rw riding если mount!=null: true - мы верхом, false - мы оседланы
rw russianName русские имена с падежами
rw saving_throw савесы
ro screenreader пользуется ли персонаж клиентом или режимом для незрячих
rw sex пол (таблица .tables.sex_table)
rw shadow сколько висеть тени (shadowlife) в секундах
rw short_descr короткое описание моба
rw silver серебро
rw size размер (таблица .tables.size_table)
ro slow true если есть бит slow, нету хасты и (в случае мобов) бита fast
rw spec_fun спец-процедура
rw start_room в какой комнате вошли в мир
ro switchedTo в какого моба вселились
ro terminal_type тип терминала у mud-клиента
rw timer сколько минут прошло с последней команды
rw title титул
ro totems список всех тотемов, созданных персонажем
rw train сколько тренировок
rw trap флаги ловушки (таблица .tables.trap_flags)
ro trust уровень привилегий
ro vampire true если персонаж в форме вампира или моб-вампир
rw vuln_flags флаги уязвимости (таблица .tables.res_flags)
rw wait wait state (в пульсах, 1 пульс = четверть секунды)
ro was_in_room комната, в которой находились перед закапыванием в могилу
rw wearloc названия всех слотов экипировки через пробел
ro webclient true если использует вебклиент
rw wimpy трусость. при скольки hp чар будет убегать автоматически

Методы

Метод Описание
act(fmt, args): печатает нам отформатированную строку (с символом конца строки).
addDarkShroud(): повесить темную ауру
add_charmed(victim,time): очаровать victim на время time и добавить нам в последователи
add_follower(master): делает нас последователем master-а
add_pet(pet): добавить пета нам в последователи
affectAdd(.Affect): повесить новый аффект
affectBitStrip(where,bit): снять все аффекты, устанавливающие в поле where (.tables.affwhere_flags) значение bit
affectJoin(.Affect): повесить новый аффект или усилить существующий
affectRemoveAll(): снять все аффекты
affectReplace(.Affect): удалить все аффекты этого типа и повесить новый
affectStrip(skillName[,verbose]): снять все аффекты с именем skillName, показав сообщение о спадании (verbose)
api(): печатает этот api
attribute(name): вернуть аттрибут с данным именем, в виде строки или структуры, либо null
behaviorMethod(methodName, args...): вызвать метод MobileBehavior с аргументами
can_drop_obj(obj): может ли избавиться от предмета obj в инвентаре
can_get_obj(obj): может ли поднять предмет obj с земли
can_see_exit(door): видим ли выход под номером door
can_see_mob(ch): видим ли персонажа ch
can_see_obj(obj): видим ли предмет obj
can_see_room(room): видим ли комнату room
char_to_room(room): поместить в комнату room
clear(): очистка всех runtime полей
clearBehavior(): сбросить поведение моба до обычного
damage(vict,dam,skillName,damtype,damflags[,show]): нанести vict повреждения в размере dam умением skillName и типом damtype (таблица .tables.damage_table)
dismount(): спешиться или сбросить всадника
drink(obj,amount): заполнить желудок так, будто от obj отхлебнули amount глотков
eat(ob): заполнить желудок так, будто obj был съеден
echoMaster(fmt, args): выдать строку хозяину, если он есть и отдал этот приказ
echoOff(): выключает отображение введенного текста в терминале
echoOn(): включает отображение введенного текста в терминале
edReg([ndx[, txt]]): возвращает/устанавливает содержимое регистров редактора
edit(): переводит this в режим редактирования
eraseAttribute(attr): удаляет аттрибут с именем attr
extract(bool): уничтожить полностью (suicide/remort игрока или смерть моба) или не полностью как при выходе из мира
flydownопуститься на землю без задержек, вернет true если до этого летали
gainExp(exp): добавляет exp очков опыта
getClan(): строка с названием клана
getClanLevel(): клановый уровень, число от 0 до 8
getClass(): строка с названием класса
getModifyLevel(): уровень, с учетом плюшек от ремортов
getName(): имя игрока или список имен моба
getParsedTitle(): титул персонажа как мы его видим
getRace(): строка с названием расы
getRealLevel(): настоящий уровень
getSex(): номер пола (0 neutral, 1 male, 2 female, 3 random - только у прототипов)
get_char_room(name[,room]): поиск по имени видимого персонажа, в той же комнате или в room
get_char_world(name): видимый для нас чар с именем name в мире
get_eq_char(wearloc): предмет экипировки, надетый на эту локацию
get_liquid_carry(liqname): вернет емкость в инвентаре с заданной жидкостью
get_obj_carry(name[,looker]): поиск объекта в экипировке или видимого (себе или персонажу looker) объекта в инвентаре, по имени или ID
get_obj_carry_type(type): видимый нам объект в инвентаре или equipment с этим типом (таблица .tables.item_table)
get_obj_carry_vnum(vnum): поиск по внуму предмета в инвентаре или экипировке
get_obj_here(name): видимый нам объект в комнате, инвентаре или equipment
get_obj_room(name): поиск по имени видимого объекта в комнате
get_obj_wear(name): поиск по имени видимого объекта в экипировке
get_obj_wear_vnum(vnum): поиск объекта в экипировке по внуму
get_random_room(): случайная комната, куда можно зайти
get_recipe_carry(flag): вернет рецепт в инвентаре с заданным флагом (таблица .tables.recipe_flags)
give(vict,vnum|obj): дать персонажу vict предмет obj, создав его, если указан внум
giveBack(vict,obj): вернуть персонажу vict предмет obj
hasAttribute(attr): true если установлен аттрибут с именем attr
hasOccupation(): моб имеет занятие (shopper,practicer,repairman,quest_trader,quest_master,healer,smithman,trainer,clanguard,adept)
hasWearloc(wearloc): обладает ли данным слотом в экипировке
hash(mod): вернуть ключ к хеш-таблице по модулю mod
interpret(msg): интерпретирует строку msg, как будто чар ее набрал сам
interpret_cmd(cmd, args): выполняет команду с аргументами от имени чара
interpret_raw(cmd, arg): выполняет команду с аргументами от имени чара, без предварительных проверок
isAffected(skillName): находится ли под воздействием аффекта с именем skillName
isDead(): DEPRECATED
isImmune(damtype, damflag): есть ли иммунитет к типу повреждений из .tables.damage_table с флагом повреждений из .tables.damage_flags
isLawProtected(): охраняется ли моб законом
isVulnerable(damtype, damflag): есть ли уязвимость к типу повреждений из .tables.damage_table с флагом повреждений из .tables.damage_flags
is_immortal(): true, если this бессмертный или кодер
is_npc(): true для мобов, false для игроков
is_safe(vict): защищают ли боги vict от нас
is_safe_rspell(af): защищают ли боги от действия заклинания аf на комнате
is_safe_spell(vict): защищают ли боги vict от наших арийных заклинаний
is_same_group(gch): вернет true если мы с персонажем gch в одной группе
list_obj_world(arg): поиск по миру видимых персонажу предметов с уровнем не выше персонажа
look_auto(room): вывести описание комнаты room, будто там набрали look
menu([number, action]): очистить меню или установить пункт number с действием action
mortality(): включает-выключает бессмертие для кодеров
move_char(door[,movetype]): переместить персонажа в дверь door, с типом движения movetype('running','crawl'). Вернет true если переместили.
multi_hit(vict): нанести один раунд повреждений жертве
one_hit(vict): нанести vict один удар оружием
print(fmt, args): возвращает отформатированную строку (см. статью вики про ф-ии вывода)
psay(ch, format, args...): произносит вслух реплику, отформатированную как в методе act и видимую только для ch
ptc(msg): print to char, печатает строку msg
quaff(obj): получить эффекты от пилюли или зелья
raw_kill([flags[,killer[,label[,damtype]]]]): убить. флаги из таблицы .tables.death_flags
rawdamage(vict,dam,damtype[,label]): нанести vict повреждения в размере dam с типом damtype (таблица .tables.damage_table)
recho(fmt, args): выводит отформатированную строку всем в комнате, кроме нас
rememberFought(ch): запомнить персонажа ch как будто с ним сражались
restring(skill,key,names,short,long,extra): установить аттрибут для рестринга результатов заклинаний
rtapi(): печатает все поля и методы, установленные в runtime
rvecho(vict, fmt, args...): выводит отформатированную строку всем в комнате, кроме нас и vict
save(): сохранить профайл на диск
saves_spell(caster,level,dam_type[,dam_flag[,verbose]]): спас-бросок против типа повреждения (.tables.damage_table) с флагом повреждения (.tables.damage_flags)
say(format, args...): произносит вслух реплику, отформатированную как в методе act
seeName(ch[, case]): как мы видим имя и претитул ch в падеже case
setClan(name): устанавливает клан по строке с именем
setClanLevel(уровень): клановый уровень, число от 0 до 8
setDead(): DEPRECATED
setLevel(level): установить уровень мобу
setName(name): устанавливает имена моба
setViolent(vict): установить VIOLENT за нападение на vict
skills([origin]): список названий доступных скилов, всех или с данным происхождением (.tables.skill_origin_table)
spell(skillName,level[,vict|argument[,spellbane[,verbose]]]): скастовать заклинания на всю комнату, на vict или с аргументом
stop_fighting(): прекратить битву
stop_follower([verbose]): прекращает следование, снимает очарование
switchFrom(): выселиться из моба обратно
switchTo(mob): вселиться в тело моба
transfer(room,actor,msgRoomLeave,msgSelfLeave,msgRoomEnter,msgSelfEnter): actor переносит нас в комнату room
trigger(trigName, trigArgs...): вызвать триггер у персонажа или прототипа
trustCheck(action, ch): выполнить проверку на траст для персонажа ch, вернет true если действие разрешено
trustParse(action, trustArgs, successMsg): задать новый тип траста для действия action, вернет true если задано успешно
updateSkills(): освежить разученность умений (при входе в мир)
visible(): проявиться из невидимости
writeWSCommand(cmd,args...): отправить в веб-клиент команду с аргументами

Предмет, объект

Доступ к API изнутри мира

  • eval ptc(get_obj_world("barrel").api())

Поля, доступные только для чтения [ro] и для записи [rw]

Статус Поле Описание
ro affected список (List) всех аффектов на предмете и прототипе (структура .Affect)
ro attack_damage название типа повреждения оружия (таблица .tables.damage_table)
ro attack_name англ название типа атаки оружия (таблица в коде attack_table)
ro attack_noun русск название типа атаки оружия (таблица в коде attack_table)
ro ave среднее повреждение оружия или 0
ro carried_by персонаж, несущий предмет в инвентаре-экипировке, или null
rw condition состояние, от 0 [уж.] до 100
ro contains указывает на первый предмет, содержащийся внутри этого
rw cost цена в серебре
ro count счетчик лута для трупов
ro dead true если предмет уничтожен
rw description описание, видимое на земле
rw extra_flags дополнительные флаги (таблица .tables.extra_flags)
ro from куда была надета вещь из трупа; или имя владельца части тела; или имя владельца трупа
rw gender грамматический род и число (n, m, f, p или null)
ro id уникальный идентификатор предмета
ro in_obj внутри какого предмета находится этот, или null
ro in_room комната, на полу которой лежит предмет, или null
ro item_type тип предмета (таблица .tables.item_table)
ro items список (List) всех предметов внутри этого
ro killer имя убийцы для трупов или строка '!anybody!'
rw level уровень предмета
rw material материалы (.Material), из которых сделан предмет
rw name имена предмета, на которые он откликается
ro next указывает на следующий предмет в глобальном списке .object_list
ro next_content указывает на следующий предмет в том же контейнере или инвентаре
ro online предмет сейчас в мире (а не в профайлах)
rw owner имя персонажа-владельца (для трупов и личных вещей)
ro pIndexData прототип предмета
rw personal установить или вернуть англ. имя собственника для личной вещи (или null)
rw pocket название кармана, в котором лежит предмет, или пустая строка
ro real_short_descr описание без учета restring-а
rw short_descr описание, видимое в инвентаре и при манипуляциях
ro special обладает ли прототип предмета сложным поведением (через феню или код)
rw timer через сколько тиков исчезнет или -1
rw value0 поле value0, смысл зависит от типа предмета
rw value1 поле value1, смысл зависит от типа предмета
rw value2 поле value2, смысл зависит от типа предмета
rw value3 поле value3, смысл зависит от типа предмета
rw value4 поле value4, смысл зависит от типа предмета
ro vnum номер прототипа предмета из арии
rw wear_flags куда можно надеть предмет (таблица .tables.wear_flags)
ro wear_loc имя локации, куда надет сейчас, или none
ro wearloc локация (.Wearloc), куда надет сейчас
rw weight вес предмета
ro weightTotal вес предмета с учетом содержимого
ro worn true если надето, но не на хвост и не в волосы

Методы

Метод Описание
affectAdd(aff): повесить на предмет указанный аффект (.Affect)
affectJoin(aff): усилить существующий аффект или повесить новый (.Affect)
affectReplace(.Affect): удалить все аффекты этого типа и повесить новый
affectStrip(skill[,verbose]): снять с предмета все аффекты от умения по имени skill, показав сообщение о спадании (verbose)
affectStripAll(): снять все аффекты
api(): печатает этот API
clear(): очистка всех runtime полей
clone(): создать полную копию этого объекта
equip(wearloc): надеть в указанную локацию тому, кто несет предмет, без проверок и сообщений
extract(): полностью уничтожить предмет
getCarrier(): персонаж, который несет предмет с учетом вложенности, или null
getProperty(name): вернет значение property с экземпляра или прототипа, либо пустую строку
getRoom(): комната, в которой находится предмет с учетом вложенности, или null
get_extra_descr(key): найти экстра-описание с ключевым словом key
get_obj_content_vnum(vnum): поиск объекта внутри этого по внуму
get_owner_here(): вернуть персонажа-владельца в той же комнате
hasWeaponFlag(flags): выставлен ли хотя бы один из флагов на оружии (таблица .tables.weapon_type2 или строка)
isAffected(skill): находится ли предмет под воздействием аффекта с данным именем
list_obj_content_vnum(vnum): поиск списка (List) объектов внутри этого по внуму
obj_from_char(): deprecated
obj_from_obj(): deprecated
obj_from_room(): deprecated
obj_to_char(ch): дать предмет в руки персонажу ch
obj_to_obj(obj): положить предмет внутрь другого предмета obj
obj_to_room(room): положить предмет на пол в комнате room
pour_out(): вылить жидкость из контейнера, создав лужу
random_obj_list([item_type]): случайный объект из списка, начинающегося с этого объекта. поиск ограничивается типом item_type, если задан
remove([verbose]): снимает предмет, если возможно, и кладет в инвентарь тому, кто несет
rtapi(): печатает все поля и методы, установленные в runtime
setProperty(name,value): установить значение property с данным именем на экземпляре
set_extra_descr(key, text): установить экстра-описание text по ключевому слову key
trigger(trigName, trigArgs...): вызвать триггер у предмета или прототипа
unequip(): снимает предмет без проверок и сообщений, кладет в инвентарь тому, кто несет
wear(wearloc): надеть в указанную локацию тому, кто несет предмет

Комната

Доступ к API изнутри мира

  • eval ptc(in_room.api())

Поля, доступные только для чтения [ro] и для записи [rw]

Статус Поле Описание
ro affected список (List) всех аффектов на комнате (структура .Affect)
rw affected_by биты аффектов на комнате (таблица .tables.affect_flags)
ro area экземпляр AreaIndex для этой комнаты
ro areaname имя арии в именительном падеже
ro clan клан, которому принадлежит комната (структура .Clan)
ro contents указывает на первый предмет на полу комнаты
ro description описание комнаты
ro down комната вниз отсюда или null
ro east комната на восток отсюда или null
ro guilds гильдии в этой комнате
ro items список (List) всех предметов на полу
ro light количество источников света в комнате
ro liquid жидкость комнаты (.Liquid)
ro name название комнаты
ro north комната на север отсюда или null
ro people указывает на первого чара в комнате
ro players список (List) всех игроков в комнате
ro ppl список (List) всех чаров в комнате
ro resetMobiles список внумов мобов, которые ресетятся в этой комнате
rw room_flags флаги комнаты (таблица .tables.room_flags)
ro sector_type значение типа местности (таблица .sector_table)
ro south комната на юг отсюда или null
ro up комната вверх отсюда или null
ro vnum номер комнаты в арии
ro west комната на запад отсюда или null

Методы

Метод Описание
affectAdd(aff): повесить новый аффект (.Affect)
affectFind(skill,ch): найти аффект с данным именем и владельцем-персонажем
affectJoin(aff): усилить существующий аффект или повесить новый (.Affect)
affectReplace(.Affect): удалить все аффекты этого типа и повесить новый
affectStrip(skill[,verbose]): снять с комнаты все аффекты от умения по имени skill, показав сообщение о спадании (verbose)
api(): печатает этот API
clear(): очистка всех runtime полей
close(номер выхода, имя экстра/выхода): закрыть дверь по указанному направлению
count_enemies(ch): кол-во персонажей, сражающихся с ch
dirMsgEnter(имя или номер выхода): сообщение при заходе через этот выход (с юга, с запада)
dirMsgLeave(имя или номер выхода): сообщение при уходе через этот выход (на север, на восток)
dirMsgWhere(имя или номер выхода): где находится направление (на севере, внизу, на востоке)
doorName(номер выхода): вернет имя выхода или null
doorNumber(имя выхода): вернет номер выхода или -1
doorTo(room): номер двери, ведущей из этой комнаты в room
echo(fmt, args): выводит отформатированную строку всем неспящим в комнате
echoAround(fmt, args): выводит отформатированную строку всем неспящим в прилегающие комнаты
exitKeyword(номер выхода, имя экстра/выхода): ключевые слова, на которые откликается эта дверь или выход
exitShortDescr(номер выхода, имя экстра/выхода): название выхода с падежами
exits(ch): список номеров всех доступных выходов для персонажа ch
getExitFlags(номер выхода, имя экстра/выхода): флаги этого выхода (таблица .tables.exit_flags)
getRevDoor(имя или номер выхода): вернет номер противоположного направления
getRoom(имя или номер выхода): комната по этому направлению или null
get_mob_vnum(vnum): поиск первого моба в комнате по его внуму
get_obj_type(type): поиск первого объекта в комнате по его типу (имя или номер из .tables.item_table)
get_obj_vnum(vnum[,owner]): поиск первого объекта в комнате по его внуму (с владельцем owner)
hasDust(): достаточно ли пыли или песка в комнате
hasParticles(): достаточно ли разных частиц в комнате
hasWaterParticles(): достаточно ли водяных паров в комнате
isAffected(skill): находится ли комната под воздействием аффекта с данным именем
isCommon(): true если комната доступна всем (т.е. не приватная/клановая/newbie-only/...)
isDark(): true если в комнате темно
isNature(): является ли комната дикой местностью
isOutside(): находится ли комната снаружи помещения
isWater(): является ли эта комната водной или подводной
list_mob_vnum(vnum): поиск списка мобов в комнате по внуму
list_obj_type(type): поиск списка объектов в комнате по его типу (имя или номер из .tables.item_table)
list_obj_vnum(vnum): поиск списка объектов в комнате по внуму
lock(номер выхода, имя экстра/выхода): запереть дверь по указанному направлению
open(номер выхода, имя экстра/выхода): открыть дверь по указанному направлению
playersWithPosition(pos): список (List) всех игроков в комнате в определенном положении
roomAt(ch,arg): доступная ch комната по направлению, указанному в аргументе (2.n, 3.e и т.д.)
rtapi(): печатает все поля и методы, установленные в runtime
saveItemsсохраняет все предметы на полу в комнате на диск
saveMobsсохраняет всех мобов в комнате на диск
traverse(depth, walker, sectorsAllow, sectorsDeny): построит путь (список комнат) для чара walker глубины depth, с разрешенными-запрещенными типами местности в виде битовых масок
traverseTo(target, walker, sectorsAllow, sectorsDeny): построит путь до цели target для чара walker, с разрешенными-запрещенными типами местности в виде битовых масок
unlock(номер выхода, имя экстра/выхода): отпереть дверь по указанному направлению
zecho(msg): выведет сообщение msg для всех в этой арии

Прототипы предметов, мобов и зон

Доступ к API изнутри мира

  • eval ptc(.get_mob_index(3000).api())
  • eval ptc(.get_obj_index(3000).api())
  • eval ptc(.get_area_index("midgaard.are").api())

Примечание

Все поля прототипов доступны только для чтения.

Поля и методы прототипа предмета (obj index data)

Поле/Метод Описание
affectedсписок (List) всех аффектов на прототипе (структура .Affect)
areaзона, в которой прописан предмет
costцена в серебре
countкол-во экземпляров предметов этого прототипа
descriptionописание, видимое на земле
genderграмматический род и число (n, m, f, p или null)
instancesсписок (List) всех предметов с этим прототипом
item_typeтип предмета (таблица .tables.item_table)
levelуровень предмета
limitмаксимальное кол-во экземпляров существующих одновременно или -1
materialназвание материала, из которого сделан предмет
nameимена предмета, на которые он откликается
reset_numсколько раз этот прототип встречается в ресетах
short_descrописание, видимое в инвентаре и при манипуляциях
value0поле value0, смысл зависит от типа предмета
value1поле value1, смысл зависит от типа предмета
value2поле value2, смысл зависит от типа предмета
value3поле value3, смысл зависит от типа предмета
value4поле value4, смысл зависит от типа предмета
vnumвнум, уникальный номер прототипа
wear_flagsкуда надевается предмет (таблица .tables.wear_flags)
weightвес предмета
api(): печатает этот API
clear(): очистка всех runtime полей
create(): создать экземпляр предмета
property(name, defaultValue): свойство прототипа с именем name или значение по умолчанию
rtapi(): печатает все поля и методы, установленные в runtime

Поля и методы прототипа моба (mob index data)

Поле/Метод Описание
affectsкакие аффекты вешаются при создании (olchelp spell)
areaзона, в которой прописан моб (.Area)
countкол-во экземпляров мобов этого прототипа
descriptionописание, видное если посмотреть на моба
gram_numberграмматическое число, s или p
groupк какой группе принадлежит моб (нужно для assist)
imm_flagsфлаги иммунитета (таблица .tables.imm_flags)
instancesсписок всех экземпляров мобов с этим прототипом
long_descrкак моба видно в комнате
nameимена, на которые откликается моб
practicerкакие группы умений может практиковать (glist или olchelp groups)
religionкакие религии исповедует (reledit list)
repopPlacesсписок внумов комнат, в которых ресетится моб
sexпол прототипа (.tables.sex_table)
short_descrимя, которое видно когда моб совершает действия
sizeчисленный размер моба или расовый (таблица .tables.size_table)
spec_funспец-процедура
vnumвнум, уникальный номер прототипа
api(): печатает этот API
clear(): очистка всех runtime полей
create(): создать экземпляр моба
createFor(ch): создать экземпляр пета по уровню игрока ch
property(name, defaultValue): свойство прототипа с именем name или значение по умолчанию
rtapi(): печатает все поля и методы, установленные в runtime

Поля и методы прототипа зоны (area index data)

Поле/Метод Описание
area_flagфлаги зоны (таблица .tables.area_flags)
filenameназвание файла зоны
high_rangeверхний диапазон уровней зоны
low_rangeнижний диапазон уровней зоны
max_vnumверхняя граница диапазона внумов зоны
min_vnumнижняя граница диапазона внумов зоны
nameназвание зоны со всеми падежами
playersсписок (List) всех игроков в экземпляре зоны по умолчанию
api(): печатает этот API
clear(): очистка всех runtime полей
reset(): обновить экземпляр(ы) этой зоны
rtapi(): печатает все поля и методы, установленные в runtime

Корневой объект (root)

Доступ к API изнутри мира

  • eval ptc(.api())

Примечание

Поля и методы корневого объекта начинаются с точки.

Поля, доступные только для чтения [ro] и для записи [rw]

Статус Поле Описание
ro buildplot true для мира-стройплощадки
ro char_list список всех чаров, поле чара next указывает на следующего
ro current_time текущее время в секундах
rw day текущий день месяца, 0..34
ro day_of_epoch сколько дней прошло со дня сотворения мира
ro feniadbStats статистика базы данных скриптовых объектов
ro hometowns список всех хометаунов
rw hour текущий час суток, 0..23
ro materials список всех материалов
ro mob_index_list список (List) всех прототипов мобов
rw month текущий месяц, 0..16
ro nanny доступ к методам 'няни', для процесса создания персонажа
ro obj_index_list список (List) всех прототипов предметов
ro object_list список всех предметов, поле предмета next указывает на следующий
ro pcraces список рас, доступных игрокам
ro players список (List) всех игроков
ro professions список всех классов, доступных игрокам
ro races список всех рас
ro religions список всех религий
ro rooms список всех комнат
ro scheduler объект-планировщик
ro season время года (winter,autumn,summer,spring), зависит от текущего месяца
rw sky текущая погода: 0=безоблачно, 1=облачно, 2=дождь, 3=молнии
rw sunlight время суток: 0=ночь, 1=рассвет, 2=день, 3=закат
ro tables доступ ко всем таблицам
rw tmp структура где можно хранить глобальные переменные
rw world_time внутримировое время в минутах (игровых часах)
rw year текущий год

Методы

Метод Описание
Affect([skill[,level,duration,location,mod,where,bits]]): конструктор для аффекта умения skill или пустого
AffectHandler(name): находит обработчик аффекта с заданным именем
Area(filename): конструктор для зоны по имени файла
AreaQuest(vnum): конструктор для арийного квеста по его внуму
Array(): конструктор для массива
Bonus(name): конструктор для бонусов по имени
Clan(name): конструктор для клана по имени
Command(): конструктор для команды, OBSOLETE
CraftProfession(name): конструктор для дополнительной профессии по имени
FeniaCommand(name): конструктор для команды по заданному имени
Hometown(name): конструктор для хометауна по имени
Language(name): конструктор для древнего языка по имени
Liquid(name): конструктор для жидкости по имени
List(): конструктор для списка
Map(): конструктор для структуры
Material(names): конструктор для материалов по имени или именам через запятую
Profession(name): конструктор для класса по имени
Race(name): конструктор для расы по имени
Religion(name): конструктор для религии по имени
Skill(name|gsn): конструктор для умения по имени или числу
SkillCommand(name): находит команду для умения с заданным именем
SkillGroup(name): конструктор для группы умений по имени
Spell(name): находит заклинание с заданным именем
Wearloc(name): конструктор для слота экипировки по имени
abs(n): модуль числа n
api(): печатает этот API
apply(func, this, args): вызвать func с указанным this и списком аргументов args
chance(x): true если x >= .number_percent()
chanceOneOf(x): true если .number_range(1, x) == 1
codesource(func): номер сценария, в котором объявлена данная функция
create_money(gold, silver): создает объект-деньги указанной стоимости
date(): строка с датой, как ее видно по команде time
dice(x, y): x раз кинуть кубик с y гранями
discord(msg): послать сообщение в чат Discord (не забудь вначале добавить иконку)
eval(expr): выполнить феневое выражение expr
findPlayer(name): поиск игрока по точному имени
find_profession(name): нестрогий поиск класса по русскому или англ названию
fmt(args): отформатировать строку, см. статью вики про функции вывода
gecho(fmt, args): выдать отформатированное сообщение msg всем играющим
generateWeapon(weapon, ch, skill, tier[, penalty, increment]): выставить статы для weapon или улучшить в бою
getCurrentTime(): текущее время в секундах
get_area_index(filename): возвращает зону с этим именем файла
get_char_world(name): ищет в мире чара с указанным именем
get_mob_index(vnum): возвращает прототип моба с заданным vnum
get_obj_index(vnum): возвращает прототип предмета с заданным vnum
get_obj_world(name): ищет в мире предмет с указанным именем
get_obj_world_unique(vnum, ch): ищет в мире предмет с этим внумом, принадлежащий ch
get_random_room(): произвольная комната из числа общедоступных
get_random_room_vanish(ch): произвольная комната, куда разрешен vanish персонажу ch
get_room_index(vnum): возвращает комнату с заданным vnum
get_str_app(ch): доступ до json-таблицi str_app для персонажа
help(id): вернуть сырой текст статьи справки по id или исключение
infonet(msg, ch): выдать сообщение msg через хрустальный шар с участием ch
interpolate(x, x1, x2, y1, y2): линейно интерполировать значение Y в промежутке от Y1 до Y2, для данной координаты X из промежутка X1, X2
isset_bit(mask, b): вернет логическое 'и' между mask и b
loadConfig(): считать конфигурацию DreamLand с диска
makeShort(s1,s2,...,s6): конструирует строку с палками из шести строк с падежами
max(a, b): максимальное из двух чисел a и b
min(a, b): минимальное из двух чисел a и b
number_percent(): произвольное число от 1 до 100
number_range(x, y): произвольное число в промежутке от x до y
obj_by_id(id): найти феневый объект по уникальному идентификатору
object(id): поиск феневого объекта по феневому ID (cистемное)
object2(id): поиск феневого объекта по СТРОКЕ с глобальным ID (cистемное)
player_attribute(playerName, attrName): значение данного аттрибута игрока
player_clan(name): название клана игрока по его имени
player_description(playerName[, descr]): вернуть или установить описание персонажа в оффлайне
player_exists(name): существует ли в мире игрок с данным именем
player_name(name): английское имя игрока по его русскому/английскому имени
player_russian_name(name): русское имя игрока с падежами по его русскому/английскому имени
print(msg): вывести строку msg в системные логи
randomizeWeapon(obj, ch, tier[, stats]): применить rand_all [или rand_stat] к этому оружию для данного персонажа и tier
repr(obj): попытка привести феневый объект obj к строке
saveConfig(): сохранить конфигурацию DreamLand на диск
set_bit(mask, b): вернет логическое 'или' между mask и b
set_bit_number(mask, n): вернет mask с установленными битом под номером n (т.е. mask | 1<<n)
skills(group): вернуть названия всех умений, принадлежащих этой группе (olchelp prac)
spells(targets): вернуть названия всех заклинаний, действующих на цели (.tables.target_table)
sqrt(n): квадратный корень положительного числа n, округленный вниз
sync(): test for objects sync (системное)
telegram(msg): послать сообщение в Telegram
unset_bit(mask, b): вернет mask со сброшенными битами из b
urange(a, x, b): ограничить число х сверху и снизу
webcmd(ch,cmd,label): создать линку для веб-клиента, выглядящую как label и выполняющую по клику команду cmd
wiznet(msg[, trust[, wiztype]]): выдать сообщение msg по wiznet

Различные структуры

Доступ к API изнутри мира

Можно посмотреть API для каждой структуры, создав ее и вызвав метод api(), например:

  • eval ptc(.Affect("none").api())
  • eval ptc(.Profession("cleric").api())
  • eval ptc(.Liquid("wine").api())

Affect: аффект, поля и методы

Все поля доступны для чтения и записи.

Поле/Метод Описание
bitvectorчисленное значение флагов, которые установит аффект
bitvectorTableтаблица для флагов, которые установит аффект
durationдлительность, -1 для вечных аффектов
globalсписок значений для where=locations (слоты экипировки), liquids (жидкости), skills, skill groups
levelуровень аффекта
locationполе, на которое аффект воздействует численно (таблица .tables.apply_flags)
modifierна сколько изменится поле, указанное в location
source(ch|obj|room): запомнить ch, obj или room как источник этого аффекта
typeназвание умения, которым этот аффект вешается, или none
whereна какую таблицу применен bitvector или на что воздействует global (.tables.affwhere_flags)
api(): печатает этот api
apply(ch): применить действие аффекта на ch, не вешая его
bitvector(table,flags): какие флаги и по какой таблице устанавливает аффект; table - таблица или название, flags - биты или строка с их названиями
damage(vict,dam,skillName,damtype,damflags[,show]): нанести vict повреждения в размере dam умением skillName и типом damtype (таблица .tables.damage_table)

FeniaCommand: команда, поля и методы

Все поля доступны только для чтения.

Поле/Метод Описание
nameназвание команды
rnameрусское название команды
api(): печатает этот API
clear(): очистка всех runtime полей
rtapi(): печатает все поля и методы, установленные в runtime

Area: зона

Все поля доступны только для чтения.

Поле/Метод Описание
area_flagфлаги зоны (таблица .tables.area_flags)
filenameназвание файла зоны
max_vnumверхняя граница диапазона vnum-ов зоны
min_vnumнижняя граница диапазона vnum-ов зоны
nameимя зоны (как видно по 'where')
playersсписок игроков из default экземпляра зоны
api(): печатает этот api

AreaQuest: арийный квест

Шаг квеста, доступный через метод step(0), step(1), имеет такие поля:

info - строка с подсказкой по шагу
rewardQp - награда за шаг в qp
rewardGold - награда за шаг в золоте
rewardExp - награда за шаг в опыте
rewardVnum - награда за шаг в виде предмета

Информация о выполняемых квестах для персонажа ch хранится в его аттрибуте 'areaquest'. Это массив, в котором ключом служит vnum квеста, а значением - структура с полями.

Структура ch.attribute("areaquest")[6000] имеет поля:

total          - сколько раз за все жизни выполнили данный квест
thisLife       - сколько раз выполнили за эту жизнь
step           - текущий шаг или -1, если квест не активен
timestart      - когда начался активный квест или 0, если квест не активен
timeend        - когда закончился предыдущий квест или 0, если уже запущен

Поле/Метод Описание
alignразрешенные натуры или 0 (таблица .tables.align_flags)
areaзона (AreaIndex), в которой объявлен квест
classesразрешенные классы или пустая строка (olchelp class)
descriptionописание квеста
flagsфлаги квеста (таблица .tables.areaquest_flags)
hometownsразрешенные домашние города или пустая строка
limitPerLifeсколько раз за реморт можно выполнить
maxLevelмакс. уровень, на котором выдают квест
minLevelмин. уровень, на котором выдают квест
oncePerDayесть ли ограничение не чаще раза в сутки
titleназвание квеста
vnumномер квеста
api(): печатает этот API
canParticipate(ch): персонаж ch удовлетряет всем условиям для начала квеста
cancel(ch): отменить этот квест для ch, вернет true если квест был запущен
clear(): очистка всех runtime полей
data(ch): статус этого квеста для ch (из аттрибута areaquest)
rollback(ch): откатить этот квест на предыдущий шаг для ch, вернет новый номер шага
rtapi(): печатает все поля и методы, установленные в runtime
step(num): структура шага квеста по номеру

Hometown: родной город

Все поля доступны только для чтения.

Поле/Метод Описание
altnameальтернативное название арии
areanameполное название арии
creditsоригинальное англ название арии
nameанглийское название
recallvnum комнаты возврата (recall)
api(): печатает этот api
isAllowed(ch): доступен ли город персонажу ch

Bonus: календарный или религиозные бонус

Все поля доступны только для чтения.

Поле/Метод Описание
colorбуква цвета в календаре
nameанглийское название
nameRusрусское название
active(ch): вернет true если бонус сейчас активен
api(): печатает этот api
give(ch,days): дать бонус на days дней. Вернет true, если присвоено успешно.
remove(ch): очистить бонус у персонажа. Вернет true, если было что очищать.

Religion: религия

Все поля доступны только для чтения.

Поле/Метод Описание
alignразрешенные натуры или 0 (таблица .tables.align_flags)
clansразрешенные кланы или пустая строка (olchelp clan)
classesразрешенные классы или пустая строка (olchelp class)
descriptionописание (бог чего именно)
ethosразрешенные этосы или 0 (таблица .tables.ethos_table)
flagsфлаги религий (таблица .tables.religion_flags)
minstatсписок параметров, по которым ограничено сверху
nameанглийское название с маленькой буквы
nameRusрусское название с падежами
racesразрешенные расы или пустая строка (olchelp race)
sexпол божества (таблица .tables.sex_table)
shortDescrанглийское название с большой буквы
tattooVnumvnum объекта-знака религии
api(): печатает этот api
available(ch): НОВАЯ ЛОГИКА - доступна ли религия персонажу
reasonWhy(ch): НОВАЯ ЛОГИКА - причина почему недоступна или пустая строка

Profession: класс персонажа

Все поля доступны только для чтения.

Поле/Метод Описание
alignNameрусское имя подходящей натуры или 'любая'
ethosсписок подходящих этосов
maxAlignверхнее значение диапазона натуры
minAlignнижнее значение диапазона натуры
nameанглийское название
nameMltрусское название во множ.числе с падежами
nameRusрусское название с падежами
pointsдополнительные очки опыта
statPlusкакие параметры увеличиваются у представителей этого класса
api(): печатает этот api
bestWeapon(ch): vnum лучшего новичкового оружия для расы и класса персонажа ch
flags(ch): флаги класса для этого персонажа (таблица .tables.prof_flags)
goodPersonality(ch): проверить ограничение на натуру и этос на класс для персонажа ch
goodRace(ch): проверить ограничения по расе на класс для персонажа ch
goodSex(ch): проверить ограничения по полу на класс для персонажа ch
secondWeaponChance([weapon]): модифiкатор шансу атаки weapon у лiвiй руцi або null для hand to hand
wearModifier(type): бонус на уровень владения этим типом предмета (.tables.item_table)

Race: раса персонажа

Все поля доступны только для чтения.

Поле/Метод Описание
affврожденные аффекты (таблица .tables.affect_flags)
detврожденные детекты (таблица .tables.detect_flags)
formформы тела (таблица .tables.form_flags)
hpBonusбонус на здоровья при создании персонажа этой расы
immврожденный иммунитет (таблица .tables.imm_flags)
manaBonusбонус на ману при создании персонажа этой расы
maxAlignверхнее значение диапазона натуры или 1000 для неигровых рас
minAlignнижнее значение диапазона натуры или -1000 для неигровых рас
nameанглийское название
nameFemaleрусское название в женском роде с падежами
nameMaleрусское название в мужском роде с падежами
nameMltрусское название во множ.числе с падежами
partsчасти тела (таблица .tables.part_flags)
pracBonusбонус на кол-во практик при создании персонажа этой расы
resврожденная сопротивляемость (таблица .tables.res_flags)
sizeразмер (таблица .tables.size_table)
vulnврожденные уязвимости (таблица .tables.vuln_flags)
wearlocсписок доступных wear locations
api(): печатает этот api
nameRus(ch): русское название в зависимости от пола и числа персонажа ch, с падежами

Clan: клан

Все поля доступны только для чтения.

Поле/Метод Описание
altarVnumvnum алтаря (или 0)
bookVnumvnum секретной книги (или 0)
colorбуква цвета
dispersedtrue для разрозненных кланов (одиночки,изгои,внеклановые)
indexвнутренний порядковый номер
invitationVnumvnum приглашения в клан (или 0)
itemVnumvnum святыни (или 0)
keyVnumvnum ключа от алтаря (или 0)
nameанглийское название
nameRusрусское название с цветами и падежами
recallVnumvnum комнаты для кланвозврата
roomVnumvnum алтарной комнаты (или 0)
api(): печатает этот api
diplomacy(clan): англ название дипломатии с кланом clan (clan dip list)

CraftProfession: дополнительная профессия

Все поля доступны только для чтения.

Поле/Метод Описание
nameанглийское название
nameMltназвание во множественном числе с падежами
nameRusрусское название с падежами
api(): печатает этот api
gainExp(ch, exp): заработать очков опыта в этой профессии
getExpToLevel(ch): кол-во опыта до следующего уровня мастерства в этой профессии
getLevel(ch): получить уровень мастерства персонажа в этой профессии
getTotalExp(ch): суммарный опыт персонажа в этой профессии
setLevel(ch, level): установить персонажу уровень мастерства в этой профессии

Liquid: жидкость

Все поля доступны только для чтения.

Поле/Метод Описание
colorприлагательное цвета с падежами
flagsфлаги жидкости (таблица .tables.liquid_flags)
fullкак хорошо насыщает
hungerкак хорошо утоляет голод
indexвнутренний порядковый номер
nameанглийское название
short_descrрусское название с цветами и падежами
sip_sizeразмер глотка
thirstкак хорошо утоляет жажду
api(): печатает этот api
isBoozeалкоголь ли это

Material: материал(ы)

Все поля доступны только для чтения.

Поле/Метод Описание
burnsсколько тиков горит (-1 если тушит огонь)
clothсреди материалов есть ткань
gemсреди материалов есть драгоценный камень
hardnessсредняя твердость материалов (-1 неразрушим, 0 жидкость/газ)
indestructibleсреди материалов есть неуничтожимый (dragonskin, platinum)
leatherсреди материалов есть кожа
metalсреди материалов есть металл
mineralсреди материалов есть камень или минерал
nameанглийские названия
nameRusрусские названия с падежами
organicматериал органического происхождения
rhoсредняя плотность материалов
swimsкак плавает: 2=никогда не утонет; 1=тут же утонет; 0=будет зависеть от предмета
toughсреди материалов есть особо прочный (mithril etc.)
woodсреди материалов есть дерево
api(): печатает этот api

Умения

Умение: .Skill()

Все поля доступны только для чтения.

Поле/Метод Описание
affectHandlerобработчик аффекта для этого умения (.AffectHandler) или null
groupназвание первой (часто и единственной) группы умения
groupsсписок названий групп умения
indexпорядковый номер (для value у волшебных предметов)
nameанглийское название
nameRusрусское название
spellзаклинание для этого умения (.Spell) или null
spellTargetфлаги целей заклинания (.tables.target_table)
spellTypeвид заклинания (.tables.spell_types)
adept(ch): вернуть максимальное значение, до которого можно практиковаться
api(): печатает этот api
apply(ch,vict|obj|room|arg[,level]): выполнить умение без проверок и сообщений
beats(ch): длина задержки в пульсах для персонажа с учетом бонусов
dressItem(obj,ch[,key]): рестрингнуть предмет согласно аттрибутам персонажа
effective(ch): узнать процент раскачки у персонажа
giveTemporary(ch[,learned[,days[,origin]]]): присвоить временное умение персонажу, разученное на learned % (или на 75%), работающее days дней (или вечно), помеченное как origin (или fenia). Вернет true, если присвоено успешно.
improve(ch,success[,victim]): попытаться улучшить знание умения на успехе/неудаче (true/false), применен на жертву
learned(ch[,percent]): вернуть разученность или установить ее в percent
level(ch): уровень умения для персонажа с учетом бонусов
mana(ch): цена этого умения в мане для персонажа ch
moves(ch): цена этого умения в шагах для персонажа ch [пока что одинакова для всех]
removeTemporary(ch[,origin]): очистить временное умение у персонажа, помеченное как origin (.tables.skill_origin_table). Вернет true, если было что очищать.
usable(ch): доступно ли умение для использования прямо сейчас персонажу ch
visible(ch): видно ли это умение ch, независимо от уровня, включая временные скилы

Группа умений: .SkillGroup()

Все поля доступны только для чтения.

Поле/Метод Описание
nameанглийское название
nameRusрусское название
api(): печатает этот api

Заклинание: .Spell()

Все поля доступны только для чтения.

Поле/Метод Описание
nameназвание заклинания
rnameрусское название заклинания
skillнавык, внутри которого объявлено заклинание (.Skill)
api(): печатает этот API
clear(): очистка всех runtime полей
rtapi(): печатает все поля и методы, установленные в runtime

Контекст вызова заклинания (что доступно изнутри runVict, runObj)

Поле/Метод Описание
argстрока, цель заклинания для runArg
chперсонаж, произносящий заклинание
damрасчетные повреждения
doorномер выхода в аргументах
doorOrExtraExitназвание направления или ключевые слова экстра-выхода в аргументах
extraExitключевые слова экстра-выхода в аргументах
levelуровень заклинания
objпредмет, цель заклинания для runObj
relрелигия кастера, случайный бог для неопределившихся или строка 'бог|и|ов...' для мобов
roomкомната, цель заклинания для runRoom
sectназвания типа местности в комнате кастера - как синоним sector
sectorназвания типа местности в комнате кастера - как синоним sect
skillпрототип умения для этого заклинания (.Skill())
spellпрототип заклинания (.Spell())
stateструктура для хранения временных переменных
victперсонаж, цель заклинания для runVict - как синоним victim
victimперсонаж, цель заклинания для runVict - как синоним vict
applyPenalty(): отнять здоровье/ману/шаги при успехе
calcDamage(): пересчитать повреждения согласно текущему level и tier
checkDispel(skill): попробовать сбить с victim аффект с указанным именем
damage([damtype,damflags]): нанести повреждения жертве, по умолчанию damtype и damflags берутся из профайла
damageItems(func): вызвать ф-ию для всех предметов жертвы, предмет доступен в переменной obj
damageRoom(func): вызвать ф-ию для всех в комнате, кто не защищен от заклинания
effectAcid(): применить кислотный эффект на жертву, предмет или комнату
effectBlind(): применить на жертву заклинание слепоты
effectCold(): применить холодный эффект на жертву, предмет или комнату
effectCurse(): применить на жертву заклинание проклятия
effectFire(): применить огненный эффект на жертву, предмет или комнату
effectPoison(): применить эффект яда на жертву, предмет или комнату
effectSand(): применить эффект песчаной бури на жертву, предмет или комнату
effectScream(): применить эффект песчаной бури на жертву, предмет или комнату
effectShock(): применить шоковый эффект на жертву, предмет или комнату
graveDestroy(): выкопать вампира из могилы в комнате кастера
graveFind(): найти в комнате кастера могилу вампира в ПК-диапазоне
graveOwner(): вернуть владельца могилы в комнате кастера
groupCast(func): вызвать ф-ию для всех согруппников в той же комнате, у кого не сработал spellbane
hasDust(): достаточно ли пыли или песка в комнате кастера
hasParticles(): достаточно ли разных частиц в комнате кастера
hasWaterParticles(): достаточно ли водяных паров в комнате кастера
isNature(): находится ли кастер в дикой местности
isOutside(): находится ли кастер снаружи помещения
isWater(): находится ли кастер в воде или под водой
msgAll(fmt[,args]): выдать сообщение всем в комнате; кастер 1й аргумент, цель 2й аргумент
msgArea(fmt[,args]): выдать сообщение всем в той же зоне, кроме комнаты кастера
msgChar(fmt[,args]): выдать сообщение кастеру; кастер 1й аргумент, цель 2й аргумент
msgNotVict(fmt[,args]): выдать сообщение всем, кроме кастера и жертвы; кастер 1й аргумент, цель 2й аргумент
msgRoom(fmt[,args]): выдать сообщение всем, кроме кастера; кастер 1й аргумент, цель 2й аргумент
msgVict(fmt[,args]): выдать сообщение жертве; кастер 1й аргумент, цель 2й аргумент
savesSpell([damtype,damflags]): уменьшить повреждения вдвое, если прошел спассбросок у жертвы; по умолчанию damtype и damflags берутся из профайла
start(func[, args...]): запустить в новом потоке функцию с аргументами
wait(seconds): пауза на указанное кол-во секунд
waitSameRoom(seconds): пауза на указанное кол-во секунд или пока кастер в той же комнате
yellPanic(): новая жертва заклинания кричит 'помогите'

Обработчик аффекта: .AffectHandler()

Поле/Метод Описание
cancelledподдается ли заклинанию отмены
dispelledподдается ли заклинанию снятия воздействий
nameназвание аффекта
rnameрусское название аффекта
skillнавык, внутри которого объявлен аффект (.Skill)
api(): печатает этот API
clear(): очистка всех runtime полей
rtapi(): печатает все поля и методы, установленные в runtime

Команда умения: .SkillCommand()

Все поля доступны только для чтения.

Поле/Метод Описание
nameназвание команды
rnameрусское название команды
skillнавык, внутри которого объявлена команда (.Skill)
api(): печатает этот API
clear(): очистка всех runtime полей
rtapi(): печатает все поля и методы, установленные в runtime

Контекст вызова команды (что доступно изнутри метода run)

Поле/Метод Описание
argAllаргумент команды целиком
argOneпервый аргумент команды
argTwoвторой аргумент команды
chперсонаж, выполняющий команду
commandпрототип команды умения (.SkillCommand())
damрасчетные повреждения
doorномер выхода в аргументах
doorOrExtraExitназвание направления или ключевые слова экстра-выхода в аргументах
extraExitключевые слова экстра-выхода в аргументах
levelуровень, с которым вызвали apply
objпредмет, цель команды
skillпрототип умения для этой команды (.Skill())
stateструктура для хранения временных переменных
victперсонаж, цель команды - как синоним victim
victimперсонаж, цель команды - как синоним vict
cooldown(duration): наложить пост-аффект на выполняющего команду, указанной длительности
damApplyClass(): наложить бонусы от класса атакующего на размер повреждений
effectAcid(): применить кислотный эффект на жертву, предмет или комнату
effectCold(): применить холодный эффект на жертву, предмет или комнату
effectFire(): применить огненный эффект на жертву, предмет или комнату
effectPoison(): применить эффект яда на жертву, предмет или комнату
effectSand(): применить эффект песчаной бури на жертву, предмет или комнату
effectScream(): применить эффект песчаной бури на жертву, предмет или комнату
effectShock(): применить шоковый эффект на жертву, предмет или комнату
msgArea(fmt[,args]): выдать сообщение всем в той же зоне, кроме комнаты ch

Строка

Содержание

Доступ к API изнутри мира

  • eval ptc("".api())

Методы

Метод Описание
api(): печатает этот api
arguments(): разбивает строку на список аргументов (слова или фразы в кавычках)
at(i): возвращает символ в позиции i
capitalize(): перевести 1й символ в верхний регистр, остальные в нижний
contains(words): true если эта строка содержит одно из слов из строки words
cutOneArgument(): возвращает строку без первого слова (или без первой фразы в кавычках)
format(width): превращает строку в абзац заданной ширины
getOneArgument(): возвращает первое слово или первую фразу в кавычках
isName(arg): является ли слова из arg одними из полных слов в строке
isRussian(): возвращает true если строка не пуста и содержит только русские буквы
is_name(arg): являются ли слова из arg подсловами в строке
match(regex): true если строка соответствует этому регулярному выражению
matchAndReplace(pattern, str): заменяет в данной строке все вхождения $1..$9 на соответствующие совпадения
matchCase(regex): true если строка соответствует этому регулярному выражению с учетом регистра
matchGroups(pattern): возвращает список (List) из всех групп шаблона
noun(): попытаться найти одно существительное в строке
quote(): вернуть строку в кавычках, если в ней есть пробелы
replace(s1,s2): заменяет все вхождения первой подстроки на вторую
ruscase(case): строка в указанном падеже
size(): длина строки
split(sep): возвращает List из подстрок, разбитых по разделителю sep
strPrefix(str): true если эта строка - префикс str
stripColour(): удаляет все символы цвета
stripTags(): удаляет все специальные теги и цвета
substr(offset[,length]): возвращает подстроку начинающуюся с offset длины length или до конца
toLower(): переводит всю строку в нижний регистр
toUpper(): переводит всю строку в верхний регистр
trim(): обрезать лишние пробелы по бокам
upperFirstChar(): возвращает ту же строку, но с большой буквы

Таблицы

Доступ ко всем таблицам флагов или значений осуществляется через поле корневого объекта .tables. Список таблиц также можно увидеть по команде olchelp.

Методы всех таблиц (.tables)

  • .tables.api(): вывести список всех полей .tables, то есть всех доступных таблиц

Методы отдельной таблицы (например, .tables.affect_flags)

Каждая из таблиц имеет такие методы:

  • .tables.affect_flag.api(): вывести список всех полей таблицы и их русский перевод.
  • .tables.affect_flag.names(число): вернет строку из названий флагов, которым соответствует это число.
  • .tables.affect_flag.messages(число): вернет строку из русских названий флагов, если они прописаны для таблицы.
  • .tables.affect_flag.values(строка): вернет числовое значение флага (флагов) по их английскому названию в строке .
  • .tables.affect_flag.флаг: численное значени того или иного флага, например, .tables.affect_flag.curse.

Все таблицы

ac_type

pierce укол||а|у||ом|е 0
bash удар||а|у||ом|е 1
slash разрезани|е|я|ю|е|ем|и 2
exotic экзотик|а|и|е|у|ой|и 3

act_flags

npc моб 1
sentinel не бродит 2
scavenger подбирает вещи 4
noeye скрыт от глаза 8
safe защищен 16
aggressive агрессивный 32
stay_area не выходит из зоны 64
wimpy трус 128
necromancer некромант 512
practice учитель 1024
deleted удален 2048
nosteal нельзя красть 4096
nowhere не видно где 8192
undead нежить 16384
nodemand нельзя требовать 32768
cleric клерик 65536
mage колдун 131072
thief вор 262144
warrior воин 524288
noalign без характера 1048576
nopurge неуничтожим 2097152
outdoors только на улице 4194304
nosavedrop не сохраняется 8388608
indoors только в помещении 16777216
rideable можно оседлать 33554432
ranger рейнджер 67108864
vampire вампир 134217728
noupdate неизменный 268435456
sage мудрец 536870912
notrack не преследует 1073741824

add_comm_flags

autostore autostore 1
noiac noiac 2
notelnet notelnet 4
nocancel nocancel 16
autolook autolook 64

affect_flags

blind ослеплени|е|я|ю|е|ем|и 1
invisible невидимост|ь|и|и|ь|ью|и 2
imp_invis улучшенн|ая|ой|ой|ую|ой|ой невидимост|ь|и|и|ь|ью|и 4
fade укрыти|е|я|ю|е|ем|и в тенях 8
scream крик||а|у||ом|е 16
bloodthirst кровожадност|ь|и|и|ь|ью|и 32
stun паралич||а|у||ом|е 64
sanctuary защит|а|ы|е|у|ой|е святилища 128
faerie_fire розов|ая|ой|ой|ую|ой|ой аур|а|ы|е|у|ой|е 256
infrared ночн|ое|ого|ому|ое|ым|ом зрени|е|я|ю|е|ем|и 512
curse прокляти|е|я|ю|е|ем|и 1024
corruption гниени|е|я|ю|е|ем|и 2048
poison отравлени|е|я|ю|е|ем|и 4096
protect_evil защит|а|ы|е|у|ой|е от Зла 8192
protect_good защит|а|ы|е|у|ой|е от Добра 16384
sneak подкрадывани|е|я|ю|е|ем|и 32768
hide скрытност|ь|и|и|ь|ью|и 65536
sleep с|он|на|ну|он|ном|не 131072
charm очаровани|е|я|ю|е|ем|и 262144
flying полет||а|у||ом|е 524288
pass_door полупрозрачност|ь|и|и|ь|ью|и 1048576
haste ускорени|е|я|ю|е|ем|и 2097152
calm спокойстви|е|я|ю|е|ем|и 4194304
plague болезн|ь|и|и|ь|ью|и 8388608
weaken слабост|ь|и|и|ь|ью|и 16777216
weak_stun слабо|е|го|му|е|ым|ом оглушени|е|я|ю|е|ем|и 33554432
berserk ярост|ь|и|и|ь|ью|и 67108864
swim плавучест|ь|и|и|ь|ью|и 134217728
regeneration регенераци|я|и|е|ю|ей|и 268435456
slow замедлени|е|я|ю|е|ем|и 536870912
camouflage маскировк|а|и|е|у|ой|е 1073741824

affect_source_table

none 0
player 1
mob 2
item 3
room 4

affwhere_flags

affects аффект 0
object объект 1
immune иммунитет 2
resist сопротивляемость 3
vuln уязвимость 4
weapon оружие 5
act_flag флаги персонажа 6
detects обнаружение 7
race раса 8
wearlocations слоты экипировки 9
liquids жидкость 10
skills умения 11
skill_groups группа умений 12
form телесная форма 13
room_affects аффекты комнаты 14
room_flags флаги комнаты 15
part_flags части тела 16

align_flags

good добр|ый|ого|ому|ого|ым|ом 2
neutral нейтральн|ый|ого|ому|ого|ым|ом 4
evil зл|ой|ого|ому|ого|ым|ом 8

align_table

null 0
good добр|ый|ого|ому|ого|ым|ом 1
neutral нейтральн|ый|ого|ому|ого|ым|ом 2
evil зл|ой|ого|ому|ого|ым|ом 3

apply_flags

none ничего 0
str силу 1
dex ловкость 2
int интеллект 3
wis мудрость 4
con сложение 5
cha обаяние 6
level уровень всех умений 8
age возраст 9
mana {lRману{lEmana{lx 12
hit {lRздоровье{lEhp{lx 13
move {lRочки движения{lEmoves{lx 14
gold золото 15
ac {lRкласс защиты{lEarmor class{lx 17
hitroll {lRточность{lEhit roll{lx 18
damroll {lRурон{lEdamage roll{lx 19
saving_para {lRзащиту от магии паралича{lEsave vs paralyzation{lx 20
saves {lRзащиту от заклинаний и молитв{lEsaves vs spell and prayer{lx 20
saving_rod {lRзащиту от волшебных предметов{lEsave vs rod{lx 21
saving_petri {lRзащиту от магии окаменения{lEsave vs petrification{lx 22
saving_breath {lRзащиту от драконьей магии{lEsave vs breath{lx 23
saving_spell {lRзащиту от заклинаний{lEsave vs spell{lx 24
size размер 26
heal_gain восстановление здоровья и шагов 27
mana_gain восстановление маны 28
learned владение умением 29
slevel уровень заклинаний 30
beats задержку у умений 31
sector_type тип местности 32
bitvector битовая маска 33

area_flags

hometown hometown 1
mansion пригород 8
wizlock wizlock 16
clan клановая 32
noquest noquest 64
hidden hidden 128
nogate nogate 256
nosavedrop nosavedrop 512
popular popular 1024
system системная 2048
safe безопасная 4096
easy легкая 8192
hard трудная 16384
deadly опасная 32768
dungeon подземелье 65536

areaquest_flags

hidden спрятан 1

argtype_table

undef nothing is defined yet, skip parsing 0
string argument is passed as is 1
obj_here requires an item nearby 2
obj_carry requires an item in inventory or equip 3
char_room requires a character from the same room 4
char_fight requires a character if not fighting, otherwise the adversary 5
char_self either a char nearby, or self, or empty argument 6
exit requires an exit, directional or extra 10

ban_flags

all всех 1
newbies ньюбов 2
player смертных 4
confirm конфирм 8
communicate коммуникации 16

comm_flags

quiet quiet 1
deaf deaf 2
nowiz no_wiz 4
noauction no_auction 8
noic no_ic 16
noqinfo noqinfo 32
nomusic no_music 64
nogossip no_gossip 128
noracetalk no_racetalk 256
noooc no_ooc 512
mildcolor mild_color 1024
compact compact 2048
brief brief 4096
prompt prompt 8192
combine combine 16384
telnet_ga telnet_ga 32768
show_affects show_affects 65536
nograts no_grats 131072
noctalk no_ctalk 262144
noemote no_emote 524288
nocb no_cb 1048576
notell no_tell 2097152
snoop_proof snoop_proof 16777216
afk afk 33554432

command_category_flags

move Перемещение 1
info Информация 16384
comm Общение 256
item Предметы 2
locks Двери и сундуки 8192
food Еда и питье 262144
position Положение 2097152
fight Битвы 16
magic Магия 4
learn Обучение 1024
class Классовые 65536
clan Клановые 131072
skill Умения 8
group Группы 64
quest Квесты 128
shop Магазины 512
bank Банки 16777216
service Услуги 33554432
char Персонаж 1048576
config Настройки 4096
note Переписка 32
religion Религия 32768
olc OLC 524288
language Языки 2048
family Дом и семья 8388608
client Клиент 4194304
misc Другое 67108864

command_flags

keep_hide сохраняет невидимость 1
ghost доступна призракам 2
undig выкапывает из могилы 4
manacles доступна в наручниках 8
afk доступна в AFK 16
freeze доступна в заморозке 32
nanny доступна у архивариуса 256
hidden 128
spellout вводится полностью 512
nointerp 4096
nodungeon недоступна в крепости 2048

config_flags

fightspam 1
skillspam 2
noexp 4
runames 8
short_objflag 16
objname_hint 32
newdamage 64
weaponspam 128
ruskills 256
autoafk 512
rucommands 1024
ruexits 2048
ruother 4096
screenreader 8192

container_flags

closeable закрывается 1
pickproof нельзя взломать 2
closed закрыто 4
locked заперто 8
put_on подставка 16
for_arrow для стрел 32
put_on2 подставка 64
pit яма 128
with_pockets с карманами 512
nested вложено 8192

damage_flags

weapon 1
spell 2
magic 4
prayer 8
other 16
water 32

damage_table

none неотразим|ый|ого|ому|ый|ым|ом урон||а|у||ом|е 0
bash тяжел|ый|ого|ому|ый|ым|ом удар||а|у||ом|е 1
pierce укол||а|у||ом|е 2
slash рассечени|е|я|ю|е|ем|и 3
fire ожог||а|у||ом|е 4
cold замораживани|е|я|ю|е|ем|и 5
lightning электрошок||а|у||ом|е 6
acid травлени|е|я|ю|е|ем|и кислотой 7
poison отравлени|е|я|ю|е|ем|и 8
negative темн|ая|ой|ой|ую|ой|ой энерги|я|и|и|ю|ей|и 9
holy святост|ь|и|и|ь|ью|и 10
energy силов|ой|ого|ому|ой|ым|ом удар||а|у||ом|е 11
mental ментальн|ая|ой|ой|ую|ой|ой атак|а|и|е|у|ой|е 12
disease болезн|ь|и|и|ь|ью|и 13
drowning сил|а|ы|е|у|ой|е воды 14
light лучист|ая|ой|ой|ую|ой|ой энерги|я|и|и|ю|ей|и 15
other неизвестн|ый|ого|ому|ый|ым|ом урон||а|у||ом|е 16
harm бол|ь|и|и|ь|ью|и и страдани|е|я|ю|е|ем|и 17
charm маги|я|и|и|ю|ей|и очарования 18
sound звуков|ой|ого|ому|ой|ым|ом удар||а|у||ом|е 19

death_flags

mob_extract 1

detect_flags

imp_invis совсем невидим|ое|ого|ому|ое|ым|ом 1
fade спрятанн|ое|ого|ому|ое|ым|ом 2
evil зл|о|а|у|о|ом|е 4
invis невидим|ое|ого|ому|ое|ым|ом 8
magic маги|я|и|и|ю|ей|и 16
hidden скрыт|ое|ого|ому|ое|ым|ом 32
good добр|о|а|у|о|ом|е 64
sneak подкрадывани|е|я|ю|е|ем|и 128
undead нежит|ь|и|и|ь|ью|и 256
observation негативны|е|х|м|е|ми|х аффект|ы|ов|ам|ы|ами|ах 512
fear страх||а|у||ом|е 65536
form_tree древесная форма 131072
form_grass травянистая форма 262144
web паутин|а|ы|е|у|ой|е 524288
immobilized обездвиживани|е|я|ю|е|ем|и 1048576
life жизненн|ые|ых|ым|ые|ыми|ых форм|ы||ам|ы|ами|ах 16777216
dark_vision существ|а||ам||ами|ах в темноте 33554432
acute_vision камуфляж||а|у||ем|е 1073741824

dreamland_flags

pk 1
log_all 2
log_imm 4
wizlock 8
newlock 16
save_objs 32
save_mobs 64
shutdown 128
buildplot 256
log_comm 512

drink_flags

poisoned отравлено 1
closed закрыто 16
locked заперто 32
close_cork закупоривается 64
close_nail заколачивается 128
close_key запирается 512

effect_target_table

char 0
obj 1
room 2
none 3

ethos_flags

lawful законопослушн|ый|ого|ому|ого|ым|ом 2
neutral нейтральн|ый|ого|ому|ого|ым|ом 4
chaotic хаотичн|ый|ого|ому|ого|ым|ом 8

ethos_table

null никакой 0
lawful законопослушн|ый|ого|ому|ого|ым|ом 1
neutral нейтральн|ый|ого|ому|ого|ым|ом 2
chaotic хаотичн|ый|ого|ому|ого|ым|ом 3

exit_flags

isdoor 1
closed 2
locked 4
noflee 8
noscan 16
pickproof 32
nopass 64
easy 128
hard 256
infuriating 512
noclose 1024
nolock 2048
invisible 4096
hidden 8192
improved 16384
camouflage 32768
fade 65536
nofly 131072
nowalk 262144
swim_only 524288
bash_only 1048576

extra_flags

glow пылает 1
hum гудит 2
dark темное 4
water_stand не тонет 8
evil дьявольское 16
invis невидимо 32
magic магическое 64
nodrop нельзя бросить 128
bless священно 256
anti_good не для добрых 512
anti_evil не для злых 1024
anti_neutral не для нейтральных 2048
noremove нельзя снять 4096
inventory инвентарь 8192
nopurge неуничтожимо 16384
rot_death гниет с трупом 32768
vis_death видно призракам 65536
nosac нельзя пожертвовать 131072
nonmetal неметалл 262144
nolocate недоступно локаторам 524288
melt_drop исчезает на земле 1048576
had_timer был таймер 2097152
sell_extract исчезнет при продаже 4194304
nofind недоступно поиску 8388608
burn_proof огнеупорно 16777216
nouncurse неснимаемое проклятие 33554432
nosell не для продажи 67108864
noident нельзя опознать 134217728
nosavedrop не сохраняется 268435456
deleted удалено 536870912
noenchant нельзя зачаровать 1073741824

form_flags

edible съедобное 1
poison ядовитое 2
magical магическое 4
instant_decay не оставляет трупа 8
other из спецматериала 16
nonadoptable нельзя зачаровать 32
animal животное 64
sentient разумное 128
undead нежить 256
construct конструкция 512
mist соткано из тумана 1024
intangible бестелесное 2048
biped двуногое 4096
centaur кентавр 8192
insect насекомое 16384
spider паукобразное 32768
crustacean ракообразное 65536
worm червь 131072
blob пузырь 262144
canine собака 524288
feline кот 1048576
mammal млекопитающее 2097152
bird птица 4194304
reptile рептилия 8388608
snake змея 16777216
dragon дракон 33554432
amphibian земноводное 67108864
fish рыба 134217728
cold_blood холоднокровное 268435456

furniture_flags

stand_at stand_at 1
stand_on stand_on 2
stand_in stand_in 4
sit_at sit_at 8
sit_on sit_on 16
sit_in sit_in 32
rest_at rest_at 64
rest_on rest_on 128
rest_in rest_in 256
sleep_at sleep_at 512
sleep_on sleep_on 1024
sleep_in sleep_in 2048
put_at put_at 4096
put_on put_on 8192
put_in put_in 16384
put_inside put_inside 32768
totem тотем 65536

imm_flags

summon призыву 1
charm очарованию 2
spell заклинаниям 4
weapon оружию 8
bash удару 16
pierce уколу 32
slash разрезанию 64
fire огню 128
cold холоду 256
lightning молниям 512
acid кислоте 1024
poison яду 2048
negative темной энергии 4096
holy святости 8192
energy энергии 16384
mental ментальным атакам 32768
disease болезням 65536
drowning воде 131072
light свету 262144
sound звуку 524288
magic магии 1048576
prayer молитвам 2097152
mithril мифрилу 4194304
wood дереву 8388608
silver серебру 16777216
iron железу 33554432

item_table

light источник||а|у||ом|е света 1
scroll свит|ок|ка|ку|ок|ком|ке 2
wand жезл||а|у||ом|е 3
staff посох||а|у||ом|е 4
weapon оружи|е|я|ю|е|ем|и 5
lockpick отмычк|а|и|е|у|ой|е 6
keyring кольц|о|а|у|о|ом|е для ключей 7
treasure сокровищ|е|а|у|е|ем|е 8
armor доспех||а|у||ом|е 9
potion зель|е|я|ю|е|ем|е 10
clothing одежд|а|ы|е|у|ой|е 11
furniture мебел|ь|и|и|ь|ью|и 12
trash безделушк|а|и|е|у|ой|е 13
container контейнер||а|у||ом|е 15
drink емкост|ь|и|и|ь|ью|и для жидкости 17
key ключ||а|у||ом|е 18
food пищ|а|и|е|у|ей|е 19
money ден|ьги|ег|ьгам|ьги|ьгами|ьгах 20
boat лодк|а|и|е|у|ой|е 22
npc_corpse труп||а|у||ом|е моба 23
pc_corpse труп||а|у||ом|е персонажа 24
fountain фонтан||а|у||ом|е 25
pill лекарств|о|а|у|о|ом|е 26
map карт|а|ы|е|у|ой|е 28
portal портал||а|у||ом|е 29
warp_stone искажающ|ий|его|ему|его|им|ем кам|ень|ня|ню|ень|нем|не 30
gem драгоценн|ый|ого|ому|ый|ом|ым кам|ень|ня|ню|ень|нем|не 32
jewelry драгоценност|ь|и|и|ь|ью|и 33
spellbook книг|а|и|е|у|ой|е заклинаний 34
tattoo знак||а|у||ом|е религии 35
textbook учебник||а|у||ом|е 36
recipe рецепт||а|у||ом|е 37
craft_tattoo татуировк|а|и|е|у|ой|е 38
parchment пергамент||а|у||ом|е 44

liquid_flags

wine 1
beer 2
liquor 4
juice 8
milk 16
coco 32

material_flags

melting 1
fragile 2
indestr 4
tough 8

material_types

abstract 1
metal 2
gem 16
element 32
mineral 64
organic 128
wood 256
cloth 512
leather 1024
none 8192

mobprof_table

none 0
any 1
required 2

off_flags

area_attack круговая атака 1
backstab удар в спину 2
bash толчок 4
berserk берсерк 8
disarm обезоруживание 16
dodge уворот 32
fade укрытие в тенях 64
fast быстрота 128
kick пинок 256
kick_dirt бросок грязью 512
parry парирование 1024
rescue спасает 2048
tail удар хвостом 4096
trip подсечка 8192
crush мощный удар 16384
assist_all защищает всех 32768
assist_align защищает натуру 65536
assist_race защищает расу 131072
assist_players защищает игроков 262144
assist_guard защищает стражей 524288
assist_vnum защищает своих 1048576

order_flags

allow_ruler только от Правителей 1
fight_only только в бою 2
player_only только игроки 4
thief_only только воры 8
never никто 16
except_pk только мобы 32

part_flags

head голов|а|ы|е|у|ой|е 1
arms рук|и||ам|и|ами|ах 2
legs ног|и||ам|и|ами|ах 4
heart сердц|е|а|у|е|ем|е 8
brains мозг|и|ов|ам|и|ами|ах 16
guts киш|ки|ек|кам|ки|ками|ках 32
hands кист|и|ей|ям|и|ями|ях рук 64
feet ступн|и|ей|ям|и|ями|ях 128
fingers пальц|ы|ев|ам|ы|ами|ах 256
ear уш|и|ей|ам|и|ами|ах 512
eye глаз|а||ам|а|ами|ах 1024
long_tongue длинн|ый|ого|ому|ый|ым|ом язык||а|у||ом|е 2048
eyestalks глазн|ые|ых|ым|ые|ыми|ых стебл|и|ей|ям|и|ями|ях 4096
tentacles щупал|ьца|ец|ьцам|ьца|ьцами|ьцах 8192
fins плавник|и|ов|ам|и|ами|ах 16384
wings крыль|я|ев|ям|я|ями|ях 32768
tail хвост||а|у||ом|е 65536
two_hooves дв|а|ух|ум|а|умя|ух копыт|а||ам|а|ами|ах 131072
four_hooves четыр|е|ёх|ём|е|ьмя|ёх копыт|а||ам|а|ами|ах 262144
claws когт|и|ей|ям|и|ями|ях 1048576
fangs клык|и|ов|ам|и|ами|ах 2097152
horns рог|а|ов|ам|а|ами|ах 4194304
scales чешу|я|и|е|ю|ей|е 8388608
tusks бивн|и|ей|ям|и|ями|ях 16777216

petition_table

never 0
always 1
verify 2

plr_flags

npc моб 1
autoassist автопомощь 4
autoexit автовыходы 8
autoloot автограбеж 16
autosac автожертва 32
autogold автомонеты 64
autosplit автодележ 128
color цвет 256
wanted в розыске 512
no_title без смены титула 1024
no_exp не получает опыт 2048
holylight боговзор 8192
confirmed подтвержден 16384
nosummon непризывать 65536
nofollow неследовать 131072
ritual ритуал 524288
digged закопан 2097152
log лог 4194304
freeze заморожен 16777216
misogi мисоги 67108864
vampire вампир 268435456
hara_kiri харакири 536870912

portal_flags

nocheck_exit без проверок 1
curse_allowed можно проклятым 2
gowith тоже телепортируется 4
buggy глючит 8
random случайный 16
from_no_recall можно из no_recall 32

position_flags

fly_down нелетать 1

position_table

dead мертв 0
mort смертельно ранен 1
incap недееспособен 2
stun парализован 3
sleep спит 4
rest отдыхает 5
sit сидит 6
fight сражается 7
stand стоит 8

prof_flags

magic 1
divine 2
nature 4
caster 8
newlock 16
melee 32
agile 64
hybrid 128

race_flags

hates 1
hunts 2
donates 4

raffect_flags

shocking электрическая ловушка 1
l_shield щит молний 2
thief_trap воровская ловушка 4
randomizer рандомайзер 8
espirit злые духи 16
curse проклятые земли 1024
poison яд 4096
sleep сонные чары 131072
plague чума 8388608
prevent prevent 16777216
slow замедление 536870912

rand_table

normal обычный 0
rand_stat рандом параметров 1
rand_all полный рандом 2

recipe_flags

tattoo рисун|ок|ка|ку|ок|ком|ке татуировки 1
carpenter чертеж||а|у||ом|е плотника 2
smith чертеж||а|у||ом|е кузнеца 4
jeweler чертеж||а|у||ом|е ювелира 8
mechanic чертеж||а|у||ом|е механика 16

religion_flags

hidden 1
system 2
cult 4

res_flags

summon призыву 1
charm очарованию 2
spell заклинаниям 4
weapon оружию 8
bash удару 16
pierce уколу 32
slash разрезанию 64
fire огню 128
cold холоду 256
lightning молниям 512
acid кислоте 1024
poison яду 2048
negative темной энергии 4096
holy святости 8192
energy энергии 16384
mental ментальным атакам 32768
disease болезням 65536
drowning воде 131072
light свету 262144
sound звуку 524288
magic магии 1048576
prayer молитвам 2097152
mithril мифрилу 4194304
wood дереву 8388608
silver серебру 16777216
iron железу 33554432

reset_flags

always всегда 1
never никогда 2

room_flags

dark dark 1
no_vanish no_vanish 2
no_mob no_mob 4
indoors indoors 8
nosac nosac 16
nodamage nodamage 32
private private 512
safe safe 1024
solitary solitary 2048
no_recall no_recall 8192
imp_only imp_only 16384
gods_only gods_only 32768
heroes_only heroes_only 65536
newbies_only newbies_only 131072
law law 262144
nowhere nowhere 524288
near_water near_water 1048576
chat chat 2097152
no_cast no_cast 4194304
nosummon nosummon 8388608
no_time no_time 16777216
no_weather no_weather 33554432
traverse_marked traverse_marked 67108864
no_quest no_quest 134217728
noquit noquit 268435456
mansion mansion 536870912
dumb dumb 1073741824

sector_table

inside внутри 0
city город 1
field поле 2
forest лес 3
hills холмы 4
mountain горы 5
water_swim мелководье 6
water_noswim глубоководье 7
unused ? 8
air воздух 9
desert пустыня 10
underwater под водой 11
max ? 12

sex_table

neutral нейтральный 0
male мужской 1
female женский 2
either любой 3

size_table

tiny крохотн|ый|ого|ому|ого|ым|ом 0
small маленьк|ий|ого|ому|ого|им|ом 1
medium средн|ий|его|ему|его|им|ем 2
large больш|ой|ого|ому|ого|им|ом 3
huge огромн|ый|ого|ому|ого|ым|ом 4
giant гигантск|ий|ого|ому|ого|им|ом 5
gargantuan чудовищн|ый|ого|ому|ого|ым|ом 6

skill_origin_table

practice 0
dream 1
affect 2
fenia 3
religion 4

spell_flags

magic магия 1
prayer молитва 2

spell_types

none служебная 0
offensive атакующая 1
defensive защитная 2

stat_table

str сил|а|ы|е|у|ой|е 0
int интеллект||а|у||ом|е 1
wis мудрост|ь|и|и|ь|ью|и 2
dex ловкост|ь|и|и|ь|ью|и 3
con сложени|е|я|ю|е|ем|и 4
cha обаяни|е|я|ю|е|ем|и 5

target_table

ignore строка 1
char_self твой персонаж (или без цели) 2
char_room персонаж рядом 4
char_world персонаж в мире 8
obj_inv предмет в инвентаре 16
obj_equip предмет в экипировке 32
obj_room предмет на полу 64
obj_world предмет в мире 128
room данная местность 256
people все живое в этой местности 512
create_mob призыв существа 1024
create_obj создание предмета 2048
exit выход 4096

trap_flags

no_rescue 1
no_move 2
no_cast 4
no_recall 8

vuln_flags

summon призыву 1
charm очарованию 2
spell заклинаниям 4
weapon оружию 8
bash удару 16
pierce уколу 32
slash разрезанию 64
fire огню 128
cold холоду 256
lightning молниям 512
acid кислоте 1024
poison яду 2048
negative темной энергии 4096
holy святости 8192
energy энергии 16384
mental ментальным атакам 32768
disease болезням 65536
drowning воде 131072
light свету 262144
sound звуку 524288
magic магии 1048576
prayer молитвам 2097152
mithril мифрилу 4194304
wood дереву 8388608
silver серебру 16777216
iron железу 33554432

weapon_class

exotic непоймич|то|его|ему|то|ем|ем 0
sword меч||а|у||ом|е 1
dagger кинжал||а|у||ом|е 2
spear копь|е|я|ю|е|ем|е 3
mace булав|а|ы|е|у|ой|е 4
axe топор||а|у||ом|е 5
flail цеп||а|у||ом|е 6
whip плет|ь|и|и|ь|ью|и 7
polearm алебард|а|ы|е|у|ой|е 8
bow лук||а|у||ом|е 9
arrow стрел|а|ы|е|у|ой|е 10
lance пик|а|и|е|у|ой|е 11
stone метательн|ый|ого|ому|ый|ым|ом кам|ень|ня|ню|ень|нем|не 12
13

weapon_flags

none удар 0
slice разрезающий удар 1
stab выпад 2
slash рубящий удар 3
whip хлесткий удар 4
claw удар когтями 5
blast залп 6
pound тяжелый удар 7
crush дробящий удар 8
grep захват 9
bite укус 10
pierce глубокий выпад 11
suction засасывание 12
beating серия ударов 13
digestion кислотная слизь 14
charge удар с разбегу 15
slap шлепок 16
punch удар кулаком 17
wrath гнев 18
magic магический удар 19
divine божественная энергия 20
cleave раскалывающий удар 21
scratch царапающий удар 22
peck удар клювом 23
peckb клюющий удар 24
chop рубящий удар 25
sting жалящий удар 26
smash разбивающий удар 27
shbite шокирующий укус 28
flbite обжигающий укус 29
frbite леденящий укус 30
acbite окисляющий укус 31
chomp грызущий удар 32
drain темная энергия 33
thrust выпад 34
slime жижа 35
shock разряд 36
thwack удар с размаху 37
flame вспышка 38
chill холод 39
cuff подзатыльник 40
hooves удар копытами 41
horns удар рогами 42
spines удар иголками 43
cacophony какофония 44
poisonbite отравляющий укус 45
tearbite разрывающий укус 46
mental ментальный удар 47
disease чумные миазмы 48
charm неотразимость 49
sound звуковая волна 50

weapon_type2

flaming обжигающее 1
frost обмораживающее 2
vampiric вампирическое 4
sharp отточенное 8
vorpal смертельное 16
two_hands двуручное 32
shocking шокирующее 64
poison отравленное 128
holy священное 256
katana катана 512
spell кастующее 1024
fading призрачное 2048
tattoo для татуировок 4096

wear_flags

take take 1
wear_finger finger 2
wear_neck neck 4
wear_body torso 8
wear_head head 16
wear_legs legs 32
wear_feet feet 64
wear_hands hands 128
wear_arms arms 256
wear_shield shield 512
wear_about body 1024
wear_waist waist 2048
wear_wrist wrist 4096
wield wield 8192
hold hold 16384
wear_float float 65536
wear_tattoo tattoo 131072
wear_face face 262144
wear_ears ears 524288
wear_horse horse 1048576
wear_hooves hooves 2097152

wear_loc_flags

none -1
light 0
finger_l 1
finger_r 2
neck_1 3
neck_2 4
body 5
head 6
legs 7
feet 8
hands 9
arms 10
shield 11
about 12
waist 13
wrist_l 14
wrist_r 15
wield 16
hold 17
float 18
tattoo 19
second_wield 20
stuck_in 21
face 22
ears 23
horse 24
hooves 25
hold_leg 26