P.S. Как такое возможно в программе, что бы были исключения в виде ппб на определенных битвах? Т.е. в одной битве программа, запоминает это значение (R), а в другой нет? Должен же быть прописан определенный алгоритм, просто мы его понять не можем (надеюсь что пока), поскольку он не такой простой и понятный.
Как показали результаты наших тестов, в отдельных случаях возможна 100% повторяемость битвы после сбегания. Яркий пример: задача от
Fireball'а. В этих случаях первый бой любой сессии может быть каким-угодно, но, начиная со второго, карта битвы повторяется вновь и вновь и не зависит от номера сессии!
Итак, Ваш Герой покинул поле боя, Вы загрузились заново. Каковы же условия того, что битва повторится на 100% после загрузки?
Оказывается всё одновременно и просто, и странно:
Если вражеский герой получает один или несколько уровней опыта за битву, с которой ваш герой сбежал, то все битвы, начиная со второй, станут постоянно повторяющимися битвами (ппб, VDV_forever).Так, в рассматриваемой нами задаче Агар имеет 8 уровень (10000 xp). Если он не успевает убить 1000 xp, чтобы перейти на 9 уровень, то ппб не будет! Если он всё-таки получит свой 9 уровень, то ппб будет 100%! Причём вид ппб зависит от того, сколько уровней получает вражеский герой за битву.
Поэтому любую битву с героем можно разделить на несколько частей:
1) вражеский герой не убил достаточно существ, чтобы перейти на следующий уровень;
ппб не будет.
2) вражеский герой убил достаточно существ, чтобы перейти на следующий уровень;
ппб будет 100%.
3) вражеский герой убил достаточно существ, чтобы поднятся сразу на несколько уровней;
ппб будет 100%, хотя её вид будет зависеть от количества полученных уровней.
В битве с нейтралами, очевидно, о ппб не может быть и речи.
Такие дела.