Уважаемые гости и новички, приветствуем Вас на нашем форуме
Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».
Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Еще такой вопрос.
А как так получается, что при декомпиляции играбельного GOTHIC.dat и сразу же при его компиляции (без изменений в файлах) - появляется гора ошибок, и соответственно компиляция завершается провалом.
P.S. Разобрался, что криво работает сама декомпиляция.
Подскажите, где найти корректные декомпилированные исходники Г1?
В поиске нашел только от Г2 акелла.
Столкнулся с тем, что конкретно переменная [ATR_REGENERATEMANA] не хочет работать сама по себе.
Еще убедился, что её значение — секунды, за которые будет восстановлено 1 мана.
Но сам атрибут [ATR_REGENERATEMANA] начинает у меня работать, почемут-то.., только после присвоения [ATR_REGENERATEHP] этому же предмету, т.е. в таком виде:
При этом, каждые 5 сек восстанавливается по 1 хп и мп.
Пришел только к выводу, для [ATR_REGENERATEHP] поставить большое значение 99999. Тогда получается, что ХП образно не восстанавливает, но МП продолжает восстанавливать.
Казалось бы, логика рабочая, но на практике нет. При надевании идет восстановление МП, как положено, но при снятии блочится. При повторном одевании, больше не идет реген.
Прошу помощи, что почитать, или что я пропустил. Или вообще тут другая логика работы? Жду замечаний)
Казалось бы, логика рабочая, но на практике нет. При надевании идет восстановление МП, как положено, но при снятии блочится. При повторном одевании, больше не идет реген.
Прошу помощи, что почитать, или что я пропустил. Или вообще тут другая логика работы? Жду замечаний)
Разработчики Готики до конца не реализовали регенерацию маны или здоровья.
Без каких-либо расширителей движка, лучше всего реализовать это через циклическую функцию. Что это такое, можно почитать тут
Она потребует изменение игрового мира, но позволит делать многое.
Если сделаешь такую штуку, то код будет достаточно простым.
Daedalus:
//объявляем глобальную переменную для установка факта надетого кольца
var int RegenHPMP;
func void Equip_ITMI_MagicRegen_03 ()
{
//устанавливает факт того, что кольцо надето
RegenHPMP = TRUE;
};
func void UnEquip_ITMI_MagicRegen_03()
{
//устанавливает факт того, что кольцо снято
RegenHPMP = FALSE;
};
//напишем простую функцию для регенерации жизней и маны
func void RegenerationGame()
{
//если кольцо надето на герое
if (RegenHPMP == TRUE)
{
//если герой не мертв
if (hero.attribute[ATR_HITPOINTS] > 0)
{
//если у героя текущее здоровье меньше максимального
if (hero.attribute[ATR_HITPOINTS] < hero.attribute[ATR_HITPOINTS_MAX])
{
//восстановить 1 здоровье герою Hero
hero.attribute[ATR_HITPOINTS] += 1;
};
//если у героя текущей маны меньше максимального
if (hero.attribute[ATR_MANA] < hero.attribute[ATR_MANA_MAX])
{
//восстановить 1 ману герою Hero
hero.attribute[ATR_MANA] += 1;
};
};
};
};
Потом эту же функцию просто вызываешь в функции циклического триггера B_CYCLE_FUNCTION
Daedalus:
func void B_CYCLE_FUNCTION()
{
if (hero.attribute[ATR_HITPOINTS_MAX] == 0) //Проверка, загружен ли ГГ в мир игры. Если игра еще не загрузила ГГ в игру, значение максимальной жизни ГГ будет равно 0 и вызов триггера будет происходить до выполнения своих нужных функций. Это проверка необходима, т.к. если ГГ еще не загружен в игру и функция начнет полную отработку, возможен вылет из игры.
{
Wld_SendTrigger("CYCLE_TRIGGER"); //Вызов триггера c именем CYCLE_TRIGGER для зацикливания всей функции.
return; //Выход из функции.
};
//Если ГГ уже загружен в игру, дальше идет полная отработка цикла, куда можно вставлять множество своих нужных функций...
//Вызываем каждую секунду нашу функцию для регенерации
RegenerationGame();
Wld_SendTrigger("CYCLE_TRIGGER"); //Вызов триггера c именем CYCLE_TRIGGER для зацикливания всей функции.
};
Естественно я опустил много деталей, таких как Герой превратился в животное, герой переселился в кого-то, помер, с помощью контроля, игра находится в паузе от нажатого ESC (показывается меню игры) и пр. На базовое понятие можно понять.
Вот это для меня - новость. Я полагал, что для начала работы этой недоделанной системы нужно антивировать у ГГ навык NPC_TALENT_REGENERATE. Может, он автоматом активировался при изменении атрибутов ATR_REGENERATEMANA и ATR_REGENERATEHP?
Вот это для меня - новость. Я полагал, что для начала работы этой недоделанной системы нужно антивировать у ГГ навык NPC_TALENT_REGENERATE. Может, он автоматом активировался при изменении атрибутов ATR_REGENERATEMANA и ATR_REGENERATEHP?
Извините не нашел подходящую тему пишу сюда. Помогите почему не работает GoMan первый раз запустил работало а потом что-то грузит и все и нечего не происходит, не знаете как пофиксить?
Пост автоматически объединён:
А самое лучшее другую прогу посоветуйте если есть. За ранее спасибо.
Еще такой вопрос.
А как так получается, что при декомпиляции играбельного GOTHIC.dat и сразу же при его компиляции (без изменений в файлах) - появляется гора ошибок, и соответственно компиляция завершается провалом.
P.S. Разобрался, что криво работает сама декомпиляция.
Подскажите, где найти корректные декомпилированные исходники Г1?
В поиске нашел только от Г2 акелла.
А вообще, кокой ответ ты хочешь получить? Ты проделал ряд действий. Ошибка могла появиться на любой стадии. Возможно, не одна. Но ты не описываешь свои действия. Как те, кого ты спрашиваешь, могут догадаться, что ты там не так сделал?
Ситуации разные бывают, я для патча шрифтов тоже выставляю максимальный год чтобы был максимально совместим со всеми выходящими после патча модами и руки мне еще пригодятся.
А вот если такое делают безосновательно, или с обратными целями - то наверное можно и сделать небольшое членовредительство
Mercy, в файле ZS_Dead.d есть функция подсчёта опыта за убийство противника.
В ней работает константа XP_PER_VICTORY. По умолчанию она равна 10.
Если её увеличить, например до 11, то за убийство противника дадут 110% опыта. Дальше сам разберёшься.
Подскажите названия порталов в таверне Корагона и Кардифа
Задолбался, окрасил все материалы порталов в другой цвет, чтобы вычислить их, так эти падлы не окрашиваются...
Другие все окрасились без проблем...
Также не понял прикола P:_ALCHEMIST и P:ALCHEMIST_ - это типо перед и зад?
P:_ALCHEMIST - не окрасился, зато P:ALCHEMIST_ окрасился в другой цвет
нужно, чтобы в моде пофиксить восприятия в этих местах.
upd. нашел...
hafenkneipe - Кардиф
stadtkneipe - Корагон с двух входов
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.