Цитата(Axolotl)
Кстати, еще одна достаточно важная штука довольно сильно зависящая от рэндома. Это - вторичные навыки, при повышении уровня даются два случайных.
А вот тут, в кои веки, выскажу мнение, что менять как раз ничего не надо. Система предопределения предусмотрена самой игрой. Существует дерево навыков, которое не перебьёшь перезагрузками (хотя можно перебить изучением навыка в левом месте). С моей точки зрения – всё идеально.
А что насчёт лажи – Iv верно сказал, что сами навыки надо выравнивать по полезности. Путь хоть и трудный, но всецело оправданный. Чтобы игрок мучился не тем, что его герою выпадает лажа за лажей, а тем, какую вкусняшку предпочесть другой.
Не бойтесь, у меня есть предохранитель. Например, устранять разброс между мин. и макс. уроном существа я не буду.
Удачу и Мораль окончательно… то есть, на S & D – допилил. Алгоритм – гибрид моего и Iv-а.
От Iv-a:
1. Последовательности длиной в 20 шагов (последний вариант, близкий к СОДу),
2. Техника формулы расчёта контрольного числа генерации (предназначалась для сдвига, но я… см. ниже)
От меня:
1. Отсутствие в последовательности чётких промежутков между определяющими срабатывание значениями. Контрольное число, выходящее из формулы, служит не для сдвига, а генерации случайных значений в последовательности… Рандом? Э, нет – псевдо. Вспоминаем, что в !?BF !!VR:R (она же – sub_50C7C0) выдаёт один и тот же ряд чисел для конкретной точки карты, где идёт битва.
2. Общая формула контрольного числа.
И никаких внешних файлов.
Реализация засекречена (вернее, сигареты закончились, поэтому я распечатал и скурил исходники). Формула – мутная и упоротая (выведена ещё под кайфом от исходников). Помимо всяких геройских параметров, в ней участвуют:
спектрограммы записей «Metal Up Your Ass»,
некоторые пропорции тела Дрю Бэрримор,
оцифрованный поток сознания Молли Блум
и прочее.
Поменять себе расклад перестановками стеков и другими манипуляциями над слотами героя – можно, но результат непредсказуем. Если снова тот же состав – те же последовательности. Главное же – расклад не поменяешь врагу, ведь он не будет ради тебя чего-то менять перед битвой, которую ты сам устроил. И если ходящий первым паскудный Налётчик получил второй ход в первом же раунде – будь уверен, что и после перезагрузки он его получит, как ты не танцуй с бубнами.
В общем, всё как и хотелось, т.е, парадоксально – деликатно и железно. Кто не перезагружается – ничего не заметит. Кто перезагрузчик – потеряет охоту это делать.
Удовлетворён.
Сопротивление перепилено по той же методике, только там последовательности в 100 шагов (надо ж учитывать каждый процент), ну и нет отр. значений.
Интересно, что тестовый вариант генерации последовательностей, сделанный на ERM даже для одной Удачи, заметно затормаживал начало битвы. Когда же всё это было переписано в сжатом асме… Для сравнения поставил генерацию всех вкупе (Удачи, Морали и Сопротивления) для всех 42 мнимых стеков на выполнение при каждом шаге героя. В итоге – никакой заметной задержки, хотя при этом теоретически выполняется от десятков тысяч до миллионов не совсем простых циклов (точное кол-во указать просто невозможно).
Вот это я понимаю – мощь…
Пожалуй, из мозговыносящих абилок меня ещё раздражает только Страх (эдакий половинчатый и эксклюзивный аналог Морали), да и он не столь часто встречается. Остальные могу и потерпеть. Хотя, может, я сейчас ещё под впечатлением от проделанной работы и потому добрый.