Геройский расчёт - Printable Version +- Wake of Gods Forum | Форум Во Имя Богов (http://wforum.heroes35.net) +-- Forum: Герои Меча и Магии 3.5 WoG/ERA (/forumdisplay.php?fid=99) +--- Forum: Новые города (/forumdisplay.php?fid=157) +---- Forum: Кремль (/forumdisplay.php?fid=168) +---- Thread: Геройский расчёт (/showthread.php?tid=829) |
Геройский расчёт - izrukvruki - 26.08.2009 18:25 Короче такая задача (желательно в Экселе ее решить): У героя первичные навыки и процент повышения этого навыка А - рА З - рЗ С - рС М - рМ pА+рЗ+рС+рМ=100% (ну или =1) Проводится N серий испытаний получения Героем 9 уровня (после 9 уровня там проценты другие будут). Нужно выдать N наборов его навыков после каждого испытания. Чето мое математическое образование меня немного подводит... Надобно срочно перечитать математическую статистику... RE: Геройский расчет - GrayFace - 27.08.2009 12:27 (26.08.2009 18:25)izrukvruki Wrote: Нужно выдать N наборов его навыков после каждого испытания.Вот тут не понятно. Если надо промоделировать, то моделируй в лоб. RE: Геройский расчет - izrukvruki - 27.08.2009 13:46 все. я сам все решил... коряво но решил... RE: Геройский расчет - Ganymed - 27.08.2009 14:14 "N-навыков", это действительно неясно. Существует уже готовый набор первичных навыков, который, в сочетании с % получения и дает необходимый результат. А определяется он только тестированием. Хотя герой моделируется не только этими параметрами, но и агрессией и % получения вторичных навыков. Здесь все должно быть в комплексе. Сначала надо задать конечную цель: "что нужно", т.е. какой герой необходим городу? Если нужен хороший воин, например, то есть модель Замка (в принципе, воин средний, которого можно взять за эталон) Рыцарь: Агрессия - 1.00 Атака - 2, 35% Защита - 2, 45% Сила магии - 1, 10% Знание - 1, 10% но нам, к примеру, нужен хороший "рашевик", с уклоном в нападение. Соответственно, делаем корректировки: Наш герой: Агрессия - 1.20 (максимум, как у демонов и рыцарей смерти) Атака - 2, 50% Защита - 2, 30% Сила магии - 1, 10% Знание - 1, 10% Или нам, например, нужен "ни воин, ни маг, а так...". Для этого эталоном могут служить классические "ни рыба, ни мясо" - Рыцари смерти. Агрессия - 1.20 (максимум в игре) Атака - 1, 30% Защита - 2, 25% Сила магии - 2, 20% Знание - 1, 25% Здесь можно отметить отличную агрессию и, так сказать, перекрестный % получения первичных навыков, т.е. % больше у тех навыков, которых меньше на старте. В общем, если бы не агрессия, то из героя получился бы отличный "овощ" Но если нам нужен именно "овощ", то берем за основу такой путь развития. Агрессия - 1.00 Атака - 2, 30% Защита - 1, 35% Сила магии - 1, 20% Знание - 2, 15% Такое развитие героя возможно в том случае, если имеет место легкий старт и хорошее здоровье первых 3х-4х уровней (ну или быстрая отстройка высоких уровней). При этом город явно расчитан на определенное развитие, кульминация которого пришлась бы где-то на 3 неделю. Ну и у воинов имела бы место книга заклинаний на старте. Здесь все зависит от состояния развития города (дерево строений, цены построек и юнитов и т.д.). Отдельно от этого пытаться моделировать героев не имеет никакого смысла. Ну и все это в комплексе проверяется постоянным тестированием, с отслеживанием динамики развития города и героя. RE: Геройский расчет - izrukvruki - 27.08.2009 14:45 Какие еще N-навыков??? Внимательно читайте... а агрессия накой? я не хотел никакой философии - только чистую математику... ввел 4 первичных навыка (столбец из 4 чисел), четыре соответсвующих процента повышения этих навыка (второй столбец из 4 числе), кол-во необходимых испытаний N (чем больше тем лучше) и получил таблицу размера 4*N возможных героев = нашел среднее по каждому навыку - получил средневероятного героя. так вот я и хочу расчитать, среднего героя 9 уровня, при заданных начальных первичных навыках и % повышения этого навыка... Например для Кремля для Волхва, начальные параметры такие 1 - 15% 1 - 25% 3 - 40% 1 - 20% Средний герой 9 уровня получается такой (при 28 испытаний): 2 3 6 3 Собственно, мне всего был нужен удобный алгоритм получения серии (в данном случае 28) испытаний, результатом которых были четыре числа (четыре первичные навыка))... RE: Геройский расчет - Ganymed - 27.08.2009 15:14 изрук, видимо мы друг друга не поняли RE: Геройский расчет - gamecreator - 27.08.2009 15:44 я готов решить задачу и даже больше, но мне нужны объяснения. что такое "испытание"? это набор героем уровней с 1 по 9? кстати согласно теории вероятности первичные параметры на 9-м уровне будут: 2,2 3 6,2 2,6 дробные части указывают на вероятность получения еще 1 единицы навыка (другие в этом случае не изменятся): 20% - 3 3 6 2 20% - 2 3 7 2 60% - 2 3 6 3 Добавлено: это в общем случае. а вообще будет 4^8 наборов навыков. некоторые, конечно, будут одинаковые RE: Геройский расчет - izrukvruki - 27.08.2009 18:29 Испытание - в данном случае это получение Героем 9 уровня. т.е. до испытания у него были одни первичные навыки после испытания другие. Т.е. одно испытание: сначало было 1-1-2-2 потом стало 9-1-2-2, второе испытание привело к 8-2-2-2, третье к 3-3-4-4 и т.д. Далее можно построить график по соответсвующем навыкам (атака, защита, сила, знания) - (9,8,3) - среднее 20\3, (1,2,3) - среднее 2 и т.д. Собственно говоря у него может быть много вариантов, и поэтому говорить: Quote:кстати согласно теории вероятности первичные параметры на 9-м уровне будут:неверно. Правильно сказать, что у героя с такими-то первичными навывыками и такими-то % повышения на 9-м уровне могут быть такие то навыки с такой-то вероятностью... Вообщем я все решил (не оптимально): Пусть герой такой: a1=1 -> 0,15 a2=1 -> 0,25 a3=3 -> 0,4 a4=1 -> 0,2 1) Составим интервальные ряды I1=(0;0,15] I2=(0,15;0,4] I3=(0,4;0,8] I4=(0,8;1) 2)Испытание состоит из 8 этапов (получение уровня), на каждом этапе генерируем случайное число s: 0<s<1 3) определяем число j, такое что s принадлежит Ij и тогда aj=aj+1 RE: Геройский расчет - gamecreator - 27.08.2009 18:52 ну это ты про тот случай с 65536 вариантами. а я упрощенно говорю. а на самом деле, конечно, может быть и 9 1 3 1. но вероятность эта - 0,0000002562890625. |