Проверить я проверю, мне не сложно. Но сомневаюсь, что это даст результат. Там слишком много возможных вариантов того, как работают эти рандомайзеры. Только первые, которые пришли в голову:
1. НУДБ плюс рандомное число в рамках от 0 до НУДР1 минус рандомное число от 0 до НУДР2;
2. Вариант номер 1, но меняем местами НУДР1 и НУДР2;
3. НУДР1% шанс увеличить НУДБ в Х раз и НУДР2% шанс увеличить в Y раз;
4-6. Вариант 3, но в разных местах меняем слово "увеличить" на "уменьшить";
7. Множество еще более заморочных вариантов, которые даже описывать будет долго.
Просто, я знаю, по каким формулам рассчитываются урон и победы юнитов, потому сомневаюсь, что в рандомайзерах все будет легко. А учитывая то, что их 2, еще сложнее будет выявить истину. Боюсь, что тут тестов недостаточно, нужно копаться где-то глубоко в файлах игры и искать там устройство этих рандомайзеров. Но я в таких уровнях моддинга не разбираюсь.
Но сейчас попробую затестить и отпишусь о результатах. Возможно, там и правда окажется все просто. Кто знает...
Последний раз редактировалось Defender; 03.11.2015 в 22:09.
Я не знаю, каким оружием будет вестись Третья Мировая Война, но в Четвертой будут сражаться палками и камнями. (с) Альберт Эйнштейн
Сценарий исторического старта на Земле 1521 г. н. э. на 31 цивилизацию для мода RedForce
Проверил. Как я и предполагал, рандомайзеры работают по каким-то заморочным формулам, так что тестами вряд ли выявим. Зато подтвердились мои догадки, что NUKE_UNIT_DAMAGE_BASE пропорционально изменяет урон по юнитам.
Во всех тестах МБР скидывалась на 3 танка и 3 пулеметчика.
Тест 1. НУДБ=100; НУДР1=0; НУДР2=0.
Все юниты умирают.
Тест 2. НУДБ=50; НУДР1=0;НУДР2=0.
У всех юнитов остается ровно 50% ХП.
Тест 3. НУДБ=0; НУДР1=100; НУДР2=0.
Танк 1 = 95% ХП; т 2 = 56% ХП; т 3 = 46% ХП; пулеметчик 1 = 84% ХП; п 2 = 76% ХП; п 3 = 48% ХП.
Повторный тест 3.1. НУДБ=0; НУДР1=100; НУДР2=0.
Т 1 = 75% ХП; т 2 = 56% ХП; т 3 = 18% ХП; п 1 = 73% ХП; п 2 = 61% ХП; п 3 = 57% ХП.
Тест 4. НУДБ=0; НУДР1=0; НУДР2=100.
Т 1 = 87% ХП; т 2 = 65% ХП; т 3 = 26% ХП; п 1 = 33% ХП; п 2 = 10% ХП; п 3 = 6% ХП.
P.S. Заодно проверил влияние рельефа местности на защиту юнитов от ядерного оружия. При НУДБ=50 запустил МБР в танки и пулеметчиков на равнинной местности и на холмах. Результат везде был одинаковым. Видимо, рельеф местности не влияет.
P.P.S. Еще выяснилось то, что варианты 1-6, предполагаемые в моем предыдущем сообщении, ошибочны. Так как я там допускал возможность того, что один из рандомайзеров увеличивает урон, а второй - уменьшает. Но они, видимо, оба увеличивают. И НУДР не зависят напрямую от НУДБ. В общем, заморочно там все. Надо умельцам где-то в файлах копаться, если кто захочет, конечно. А я на таком уровне моддинга не умею.
Я не знаю, каким оружием будет вестись Третья Мировая Война, но в Четвертой будут сражаться палками и камнями. (с) Альберт Эйнштейн
Сценарий исторического старта на Земле 1521 г. н. э. на 31 цивилизацию для мода RedForce
Сам сейчас поизучал свои тесты. Лично я бы предположил, что формула такая: НУДБ плюс рандомное число в рамках от 0 до НУДР1 плюс рандомное число в рамках от 0 до НУДР2. Просто, это сходится и с тем, что НУДР не зависят напрямую от НУДБ, потому урон наносится даже при нулевом значении НУДБ, но ненулевом хотя бы одного из НУДР, и с тем, что любой из НУДР, равный 100, может добавить как почти нулевой урон, так и почти фатальный. Но это так, пальцем в небо. Вполне возможно, что формула какая-то совсем другая.
Я не знаю, каким оружием будет вестись Третья Мировая Война, но в Четвертой будут сражаться палками и камнями. (с) Альберт Эйнштейн
Сценарий исторического старта на Земле 1521 г. н. э. на 31 цивилизацию для мода RedForce
а по-моему, все очень даже вписывается..
НУДБ - урон который будет нанесен всем юнитам (проценты от жизней)
НУДР 1 и 2 - дополнительный урон, который может быть добавлен к НУДБ, в пределах значений выбирается случайно..
значения по умолчанию:
НУДБ - 30
НУДР - 50 + 50
всем юнитам будет нанесен урон 30% и возможен дополнительный урон в пределах (0-50) + (0-50),
т.е., минимально - 30 + 0 + 0 (30%),
максимально - 30 + 50 + 50 (130%)
и, соответственно, если нам надо в три раза уменьшить урон, то лучше всего подойдет такое - 10 + (0-17) + (0-17), это от 10 до 42%..
Ну да, я то же самое выше предположил, только текстом. Но проблема в том, что это именно лишь наиболее вероятное предположение. Такую сложную формулу просто невозможно с абсолютной точностью выявить тестами. С увеличением количества тестов будет лишь снижаться вероятность того, что формула ошибочна (или наоборот увеличиваться, зависит от результатов). К примеру, там может быть какой-нибудь такой вариант (и это лишь 1 из множества возможных):
урон = НУДБ + (Х + НУДБ) + (Y - НУДБ), где Х и Y - случайные числа от 0 до НУДР1 и от 0 до НУДР2, а (Y - НУДБ) не может быть меньше 0.
Ведь велика вероятность, что 2 рандомайзера добавили не просто так. С тем же успехом можно было добавить 1 рандомайзер, равный 100. Но мы не знаем, что именно выбрал Сид. Так что можно лишь предполагать и гадать. К тому же, как уже писал выше, в той же механике боя формулы довольно заморочные, потому есть основания предполагать, что в рандомайзерах - тоже.
Согласен, такой вариант с наибольшей вероятностью даст нужный результат. Так что думаю, лучше выбрать именно его. Но вполне возможно, что формула какая-то другая, и из-за этого уменьшение урона будет не в 3 раза, а больше или меньше (в зависимости от формулы).
Последний раз редактировалось Defender; 03.11.2015 в 23:08.
Я не знаю, каким оружием будет вестись Третья Мировая Война, но в Четвертой будут сражаться палками и камнями. (с) Альберт Эйнштейн
Сценарий исторического старта на Земле 1521 г. н. э. на 31 цивилизацию для мода RedForce