http://destinysphere.gorodok.net/projects/units.xls - немного не то. По этой табличке можно анализировать стоимость и эффективность юнитов, но провести реальный бой проблематично. Для расчёта эффективности там уже использована моя новая формула. Кто хочет разобраться в таблице - внимательно прочитайте Комментарии.
2AsmodeY:
Программу выкладывать ещё рано. Но я выложил результаты её работы по обеим приведённым здесь формулам боя.
При этом, складывать армии Slavut'а между собой будет не совсем корректно, т.к. нападение на каждую армию происходит независимо, а количество групп в них сильно отличается - соответственно, и урон будет cовсем другой. Благо, у Slavut'а армии кроме "я ухожу" составляют не больше 1%, поэтому ими можно пренебречь.
Итак, результаты:
http://destinysphere.gorodok.net/fights ... ample2.txt - оригинальный лог боя, взятый с форума Psi Corp.
http://destinysphere.gorodok.net/fights ... smodey.txt - результат работы программы по твоей формуле: (405 * (1+(75-50)/100)).
http://destinysphere.gorodok.net/fights ... ormula.txt - результат работы программы по моей формуле: (405 * 75/100 * (1-50/100))
У программы в обоих случаях получилось вместо 7 только 6 раундов. Здесь сказывается то, что Slavut строил юниты на протяжении всего боя, которые меняли количество групп во всех раундах после первого; также частично сказалось пренебрежение неосновными армиями Slavut'а.
Если сравнить остатки армий после 6-го раунда - во всех трёх файлах получим похожие числа с точностью около 90%. Здесь из-за большого количества погрешностей ошибки алгоритмов уже не видны.
Самое корректное, на мой взгляд, сравнение - после первого раунда, т.к. там ещё не сказалось влияние "новых" юнитов Slavut'а. Именно там видна разница между нашими формулами. Приведу здесь группы юнитов, по которым получились самые большие расхождения (в формате оригинал/Asmodey/я):
Армия Утро Доброе. Еретик: 286 / 463 / 300 из 500
Армия Утро Доброе. Патриарх: 12 / 21 / 13 из 100
Армия Утро Доброе. Танкер: 5 / 10 / 5 из 36
Армия Утро Доброе. Левиафан: 11 / 14 / 11 из 125
Армия я ухожу. Опустошитель: 70 / 54 / 69 из 344
Армия я ухожу. Охранник: 650 / 532 / 677 из 1362
Армия я ухожу. Биотанк: 229 / 186 / 237 из 374
Армия я ухожу. Комбо: 1228 / 1005 / 1278 из 1411
Армия я ухожу. Патриарх: 21 / 27 / 23 из 27
Армия я ухожу. Транспорт: 18 / 27 / 19 из 65
Армия я ухожу. Танкер: 9 / 16 / 9 из 119
Армия я ухожу. Слуга: 24 / 42 / 25 из 51
Армия я ухожу. Носильщик: 12 / 27 / 12 из 48
Я сверил результаты после первого раунда из sample2-asmodey.txt с твоей таблицей - 100% совпадение по всем группам обеих армий. Т.е. исключены ошибки внесения констант в мою программу или неправильная реализация алгоритма.
PS: Изначально я писал симулятор именно по твоей формуле - и она хорошо работала для многих типов юнитов... но почти для всех юнитов с защитой от 75% и выше погрешность была уже порядка 50%! Именно поэтому я начал экспериментировать с другими формулами... И в итоге получил то, о чём здесь написал.