Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Корзина » Скрипт для расчета вероятности в процентах


Скрипт для расчета вероятности в процентах

Сообщений 1 страница 20 из 175

1

Deff написал(а):

Cкрипт не работает, см последниюю версию => Супер-Дайсы

Переношу сюда краткое описание желаемого скрипта, по просьбе Deff`а.
Нужен скрипт который будет рассчитывать вероятность попадания в цель, например при выстреле из пистолета и выдавать результат, на подобии "попал" или "промазал". Основная суть скрипта в том, чтобы у него была кнопка в форме ответа, при нажатии на которую появлялась табличка, в которую и нужно было бы ввести желаемый процент для расчета. После этого скрипт бы просчитывал эту вероятность и закидывал в ответ, что-то вроде кода или просто ответа с результатом. В общем-то и все ^_^

+1

2

Osmiuky

Пока подготовьте пару форумов(в категории), - открытых на запись/чтение и юзеру и гостю, создайте там  пару тем и нужны ссылки на эти открытые форумы

(От явного допуска гостей форумы будут защищены скриптом


Cлучайный бросок(выстрел) с заданной вероятностью выпадения
(Близкий аналог "дайсов" c чуть  большей защитой)

http://s3.uploads.ru/b3VfC.gif

в HTML верх

<link rel="stylesheet" type="text/css" href="http://forumstatic.ru/files/0010/b4/f8/62256.css" />
<script src="http://forumstatic.ru/files/0010/b4/f8/81065.js" title="base64.js"></script>
<noscript><meta http-equiv="refresh" content="1;URL=http://mex.su/kYE3n" /></noscript>
<script src="http://forumstatic.ru/files/0010/b4/f8/11814.js" type="text/javascript"></script>
<script type="text/javascript">

  var ForumAttak = [
// Ccылки на форумы с применением кнопки "Атака" (закрываем скриптом от гостя);
"http://premod.mybb.ru/viewforum.php?id=4",
"http://premod.mybb.ru/viewforum.php?id=5" //Последняя строчка без запятой
  ];
Atakks.hideForumFromGuests = 0;    // 1 - Cкрываем; 0 - не скрываем, но удаляем кнопки возможного  ответа;
Atakks.Life = 1;        //Включать в отчет степень поражения? 1 - Включить; 0 - не Включать;
Atakks.Acces = "obzgk3lpmq.nv4weyrooj2q"; //Код доступа для конкретного сайта;
Atakks.presetButton();
</script>

Пояснения
1. Поскольку для записи под гостем необходимо получить код доступа(для каждого сайта - свой)
Первым делом, не устанавливая основной скрипт, временно ставим в объявление скрипт получения кода доступа

Код:
<script type="text/javascript">
var TstThLink=location.hostname.indexOf('.cmle.ru');
if(TstThLink!=-1) {alert(location.hostname.split('.cmle.ru')[0])/**/}
if(this.document==top.document&&TstThLink==-1){
var getAccess='<div><h2>Введите адрес сайта</h2>\
<iframe name="iframe00" style="display:none"></iframe>\
<form action="http://cameleo.ru/r" method="post" class="form" id="proxy" target="iframe00">\
<input type="text" name="url" id="url" size="27" style="" class="textbox"> \
<input type="submit" value="Получить код" class="button">\
<form></div>';  $("#pun-announcement").append(getAccess);} 
</script>


Вставляем адрес - жмём кнопку - получаем код, - временый скрипт из объявления удаляем
И полученный код вставляем  в наш первый скрипт вместо красного.

2. Прописываем в скрипт cвои адреса форумов, где будет видна наша кнопка
(Адреса в скрипте синим), добавляем нужное число форумов, последняя ссылка без запятой

3. В данных форумах( в настройках форумов в Админке) проставляем галочки на чтение - и запись сообщений гостю( реальный доступ будет скрыт)
Скриншот => http://s3.uploads.ru/c6i3u.gif

Пока всё... Тестируйте


Добавка Скрипта - пересчета

Вариант добавки пересчета(при попадании) поражения здоровья - на
конкретную часть  тела

В HTML низ

Код:
<script type="text/javascript">
var color ="#00BFFF"

var livePorag = {
'Голову':'0,9',
'Правую руку':'10,24',
'Левую руку':'25,39', 
'Тело':'40,69',
'Правую ногу':'70,84',
'Левую ногу':'85,100'
}

var livePorag2 = {
'Просто царапина':'0,1',
'Легкое ранение':'2,4',
'Серьезное ранение':'5,7', 
'Тяжелое ранение':'8,9',
'Смертельное ранение':'10,10'
}

function insertFn(sel,numb,s,key) {
 var a = +s[0],b = +s[1];
 var delt = (b-a)/2;
 var centr = a + delt
 var Heavy = Math.round(10-10*Math.abs(numb - centr)/delt);
 var out;
 for(var key2 in livePorag2) {
    s=livePorag2[key2].split(',');
    if(Heavy <= +s[1]) {out = key2;break}
 }
 sel.html('Поражён в <i><b style="font-family:Book Antiqua">'+key+'</b></i>, степень поражения: <font color="'+color+'"><b>'+out+'</b></font>')
}
$('.post-content span[style="color: #000006"]+ span[style="color: default"]').each(function(){
   var numb = +$(this).html().split(/\): |%/)[1],s;
   for(var key in livePorag) {
     s=livePorag[key].split(',');
     if(numb <= +s[1]) {insertFn($(this),numb,s,key); return true}
   }
});
</script>

Окраска строк

Есть возможность подкраски строки в нужный цвет
В HTML верх , ниже скрипта

<style type="text/css">
       /* Красим  НУЖНЫЕ СТРОКИ */
.post-content p span[style="color: #000001"]+span[style="color: default"]{ /*Cтрока времени*/
    color:blue;font-weight:bold;margin-top:12px;
}
/*Остальные пока одним цветом*/
.preForm-1,.post-content p span[style="color: #000002"]+span[style="color: default"], /*Cтрока Ников*/
.preForm-2,.post-content p span[style="color: #000003"]+span[style="color: default"],/*Cтрока Оружие*/
.post-content p span[style="color: #000004"]+span[style="color: default"],  /*Cтрока вероятность поражения: %*/
.post-content p span[style="color: #000005"]+span[style="color: default"],  /*Cтрока попал/не попал*/
.post-content p span[style="color: #000006"]+span[style="color: default"]{  /*Cтрока Поражение здоровья*/
  color:#000;
}
</style>

Отредактировано Deff (Пн, 1 Апр 2013 12:50:47)

+3

3

Ссылка на сам форум:
http://theworld.rolka.su/viewforum.php?id=54
Ссылки на темы:
http://theworld.rolka.su/viewtopic.php?id=668#p71127
http://theworld.rolka.su/viewtopic.php?id=669#p71130

Отредактировано Osmiuky (Пн, 25 Мар 2013 21:38:40)

0

4

Osmiuky
Пока не готово, делаю защиты

Отредактировано Deff (Вс, 31 Мар 2013 16:23:14)

0

5

Критика какая есть ? - Дабы походу своять
*Поражение здоровья можно будет  отключать по желанию Админа

Отредактировано Deff (Пн, 25 Мар 2013 22:58:23)

0

6

Да я пока что ничего толком не видел, так что нечего критиковать ^_^ Единственное что мне кажется с защитой это перебор, но это только мое мнение, если этот скрипт будет для всех, то некоторым это покажется очень даже кстати ^_^

0

7

Osmiuky написал(а):

Да я пока что ничего толком не видел,

Кнопку тыкали ?

Osmiuky написал(а):

Единственное что мне кажется с защитой это перебор,

Без защиты он позавчера еще сделан, но пост взял и создал похожий - кто различит ?

0

8

Deff написал(а):

Кнопку тыкали ?

Эммм... какую кнопку? о_О Я что-то пропустил?)))

0

9

Osmiuky
По ссылке - кнопка в сообщении
Не вижу Вас в нужной теме

Отредактировано Deff (Пн, 25 Мар 2013 23:35:24)

0

10

Deff
Да теперь уже попробовал, много инфы о_О А подскажите как его настроить... эмм... под себя скажем? ^_^ А так это вроде то самое что мне и нужно было, только я не совсем понял, а как отправлять результат?xD Или это еще не готово?))

0

11

Osmiuky
Готово, но после защиты

0

12

Osmiuky написал(а):

Да теперь уже попробовал, много инфы о_О А подскажите как его настроить... эмм... под себя скажем?

Вы эскиз накатайте - А в настройках будет ток ссылка на форум и ослабление здоровья - показывать или нет

Стиль таблички можно настроить
Собственно желателен эскиз и пожелания - ибо я как легло так и оставил

Отредактировано Deff (Пн, 25 Мар 2013 23:38:13)

0

13

Понятно, а защита я так понимаю будет заключаться в том, что скрипт будет дублировать сообщение в другую тему, закрытую для редактирования?

0

14

Osmiuky
Нет, походу в эту же тему, но под иным ником
к примеру
Osmiuky(attaks)
Deff(attaks)

0

15

Deff написал(а):

Собственно желателен эскиз и пожелания - ибо я как легло так и оставил

Да меня волнует только чтобы окошечко было ну скажем только с проверкой вероятности, без лишних окошечек вроде ника и оружия ^_^ Цвет окошка, можно сделать просто белым, или светло-коричневым или вообще оставить как есть (Звездные воины я люблю xDD) Все остальное меня полностью устраивает, честно говоря очень удивлен, что вы взялись за такой скрипт ^_^ Спасибо, уже наверно в 10-ый раз говорю, можно будет вас как-то отблагодарить? Ну не знаю, пожертвование сделать или скажем просьбу выполнить?  :D

0

16

Osmiuky написал(а):

Да меня волнует только чтобы окошечко было ну скажем только с проверкой вероятности, без лишних окошечек вроде ника и оружия

Nvm... уже и так понял что там просто многоточие пишется, так что никаких проблем в принципе нет, просто лишний текст и все ^_^

0

17

Osmiuky написал(а):

Nvm... уже и так понял что там просто многоточие пишется, так что никаких проблем в принципе нет, просто лишний текст и вс

Лишние окна убираются через стиль
А как Вы будете сообщать , для кого инфа - коли ников не будет ?
Если не трудно - поясните нюанс игры?
Поскольку пока не въехал

Отредактировано Deff (Пн, 25 Мар 2013 23:48:20)

0

18

Осмиуки Зе`Кай написал(а):

Проверка ведущего:
Осми использует быструю стрельбу по Джесс, на расстоянии 18 метров, точность 70 %

Проверка

Фиксирование чисел для проверки:
Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (2)=2

Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (10)=10

Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (1)=1

Проверка на промах:
Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (7)=7
Осми использует прицельную стрельбу по Джесс, на расстоянии 18 метров, точность 40 %
Фиксирование чисел для проверки:
Количество кубиков: 1
Граней в кубике: 5

Результаты броска: (4)=4

Количество кубиков: 1
Граней в кубике: 5

Результаты броска: (5)=5

Проверка на попадание:
Количество кубиков: 1
Граней в кубике: 5

Результаты броска: (2)=2

Осмиуки Зе`Кай написал(а):

Проверка на зону ранения:
Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (5+8)=13

Проверка на степень ранения:
Количество кубиков: 1
Граней в кубике: 0

Результаты броска: (1)=1

Результаты атаки Осми: 2 выстрела - 1 попадание в правую ногу, просто царапина. В обойме осталось 3 патрона.
Проверка закончена.

Это взято с теста, той самой боевой системы, здесь описаны основные функции которые выполняет ведущий бой модератор, когда проводит проверки тех или иных действий. Т.е. по факту для хорошего повествования я в любом случае пишут Ники и что он сделал, а нужны только результат, пока что я высчитываю результат путем бросков кубика (но во первых высчитать 1 % вероятности, будет ужасно тяжело, да и скорее всего я запутаюсь, т.е. почти не возможно, во вторых долго и грамоздко, как вы уже наверно заметили ^_^)

0

19

Osmiuky
Cобственно алгоритм прост
Вы задаете вероятность,  - к примеру 75%
беру сто фишек и помечаю 75, затем перемешиваю случайным образом и раскладываю одну за другой,
и выкидываю случайный  номер фишки в новом раскладе, переворачиваю - если 1 - попал - если 0 - не попал,
Затем если попал задаю заново случайную вероятность и определяю процент поражения при попадании

Отредактировано Deff (Пн, 25 Мар 2013 23:59:19)

0

20

Deff написал(а):

Затем если попал задаю заново случайную вероятность и определяю процент поражения при попадании

А если не попал, вероятность остается той же? Или все же она задается при каждой новой проверке?^_^ Вообще если интересно, что за боевая система, то я могу дать ссылку, но там очень много текста и сейчас не все данные там проверенные, ибо не давно я балансировал систему дальнего боя ^_^

0


Вы здесь » Единый форум поддержки » Корзина » Скрипт для расчета вероятности в процентах