Деян Йосифов

 Personal Website & Blog

Risk game – Probabilities calculator

Written By: Деян - Aug• 02•14

Отдавна не бях сядал да пиша блог пост. Да не кажа че от година и нещо съвсем си зарязах сайта след завършването на академията на Телерик. 🙂 Все пак с този пост се надявам да възобновя този навик, от време на време да сядам и да пиша нещо по-интересно, с което съм се занимавал.

Такъв е и поводът на този пост, който смятам, че би могъл да бъде от полза на любителите на настолната игра “Риск”. Който не е чувал за нея или не я е играл, може да види повече информация за играта “Риск” в Wikipedia. Аз лично също съвсем отскоро я играя, но пък ми стана любопитно и реших да тествам уменията си като напиша един калкулатор на javascript. Какво прави този калкулатор накратко:

  • Задава се броя на атакуващите и на защитаващите войници в една битка.
  • Калкулаторът изчислява всички шансове, при които битката завършва до край (или защитниците или нападателите остават с 0 войници).
  • Като резултат калкулаторът изкарва две таблички. В първата са шансовете на победа на нападателя, като срещу всеки брой оцелели на края на битката пише каква е вероятността за това събитие. Втората таблица е аналогична, но за защитаващата се армия.
  • Тези таблици имат 4 колони:
    1. Брой оцелели след края на битката
    2. Процент вероятност да има точно толкова оцелели
    3. Процент вероятност да има толкова или повече оцелели
    4. Процент вероятност да има по-малко оцелели

Имайки този калкулатор, човек може да си прецени шансовете и да реши дали би влязъл в битка в зависимост от броя войници, с които иска да остане след битката. 🙂 Това е накратко. Ето и едно демо с опростен UI на калкулатора:

Ако искате да го отворите в отделна страница, може да отворите този линк към калкулатора в отделен прозорец.

Надявам се този пост да бъде от полза на някого. Всякакви коментари по темата са добре дошли. 🙂

You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply

Your email address will not be published. Required fields are marked *