etoprostoya
Posts: 1809
|
Я уже писал это на дф2, сейчас поищу.
|
|
21.09.2010 20:58 |
|
etoprostoya
Posts: 1809
|
|
21.09.2010 21:09 |
|
GhostManSD
Posts: 1054
|
Знатоки математики, обращаюсь к вам. Есть функция генерации особого числа в зависимости от x1, x2, x3.
Code:
!!FU90001:Pa/b/c/d;
!?FU90001;
!!VRd:S0;
!!VRa:*1;
!!VRb:*2;
!!VRc:*4;
!!VRd:+a +b +c;
Нужно состряпать обратную ей. Обратная функция должна вычислять a, b и c в зависимости от значения d и подставлять это значение в указанные переменные.
Code:
!!FU90001:Pd/v;
!?FU90000;
...вычисления...
!!VRv:Sa;
!!VR[v+1]:Sb;
!!VR[v+2]:Sc;
Добавлено:
Не обязательно использовать формулу "d=a*1 + b*2 + c*4". Можно использовать любую, лишь бы генерировались разные числа для разных a, b, c.
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 22.09.2010 08:07 by GhostManSD.)
|
|
22.09.2010 08:05 |
|
Sav
Posts: 2180
|
Если a и b могут иметь отличные от 0 и 1 значения, то однозначно вычислить a, b и c, зная d невозможно.
К примеру d=2. Тогда либо a=2, b=0, c=0, либо a=0, b=1, c=0.
|
|
22.09.2010 09:24 |
|
Sav
Posts: 2180
|
Чтобы ужать 3 переменные в 1, можно использовать по 10 из 32 бит переменной для каждого числа. Но тогда максимально a, b, c будут равны 1023. Или 511, если с отрицательными значениями.
|
|
22.09.2010 09:32 |
|
GhostManSD
Posts: 1054
|
Sav, напиши, пожалуйста, код.
Переменные a, b, c не будут вылезать за пределы 144 каждая.
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
|
|
22.09.2010 21:25 |
|
Sav
Posts: 2180
|
*code* ... !!FU701:Pp/r/s/?t;Вызываем функцию сжатия значений. ... !!FU702:Pt/?p/?r/?s;Вызываем функцию извлечения значений. ...
*code*
;Функции сжатия-извлечения значений.
!?FU701;Функция сжатия значений. !!VRx2:*1024; !!VRx3:*1048576;(1024*1024). !!VRx4:Sx1+x2+x3;
!?FU702;Функция извлечения значений. !!VRx2:Sx1&1023;(1024-1). !!VRx3:Sx1&1047552;(1024*(1024-1)). !!VRx4:Sx1&1072693248;(1024*(1024*(1024-1))).
Что-то в этом роде.
Корректно будут обрабатываться только положительные, меньшие 1024 числа. За адекватную работу не ручаюсь - сам не проверял.
|
|
22.09.2010 22:37 |
|
GhostManSD
Posts: 1054
|
Quote:Отображает слишком большие второе и третье значения.
Исправил. Должно быть так:
Code:
!?FU90001;
!!VRx2:Sx1&1023;
!!VRx3:Sx1&1047552 :1024;
!!VRx4:Sx1&1072693248 :1048576;
Sav, большое спасибо!
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 23.09.2010 01:59 by GhostManSD.)
|
|
23.09.2010 01:57 |
|
M.A.K.C.
Posts: 472
|
Можно ли сделать следующий скрипт так, чтобы он срабатывал перед сражением
Название события Бодун
Суть, перед сражением появляется сообщение, что:
Часть ваших войск злоупотребила выпивкой и:
(накладываются следующие эффекты) (случайным образом на свои случайные войска)
Замедление 50%
Неудача 45%
Разрушающий луч 30%
Слабость 20%
Отравление 10%
Каюк5%
формула
(% х уровень монстра) - (уровень монстра х значение Интеллекта) = шанс наступления таких последствий
Это событие должно срабатывать не всегда, а периодически
Все свежие обновления я выкладываю на своем сайте здесь.
(This post was last modified: 30.09.2010 17:22 by M.A.K.C..)
|
|
30.09.2010 17:21 |
|
Sav
Posts: 2180
|
Каюк - это мнгновенная гибель?
Заклы накладывать на какую длительность?
Бодун должен мочь случиться в любом бою или как?
Думаю, через некоторое время напишу скрипт.
|
|
30.09.2010 23:18 |
|
GhostManSD
Posts: 1054
|
Каюк? Как-то "капельку" не в духе Героев, имхо. Бодун, в общем-то, тоже.
Хотя, если предположить, что герои не воюют, а денно и нощно употребляют косорыловку со своей армией...
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 01.10.2010 01:19 by GhostManSD.)
|
|
01.10.2010 01:17 |
|
Sav
Posts: 2180
|
Да, и отравление наложить не получится - оно глючное. Альтернатива - старость. Добавлено:
Да, и не слишком ли крутая формула? У существ 7 уровня целый 35% шанс сдохнуть.
(This post was last modified: 01.10.2010 11:08 by Sav.)
|
|
01.10.2010 11:06 |
|
Sav
Posts: 2180
|
Quote:Предлагаю создать отдельную тему, куда люди будут
выкладывать полностью рабочие скрипты
Если что, я создал тему для чего-то подобного: http://wforum.heroes35.net/showthread.php?tid=2526.
Предлагаю выкладывать просьбы и обсуждать результаты в ней.
|
|
02.10.2010 23:22 |
|
DracoLich
Posts: 251
|
[Set water wheel resources to 0 and "visited" for current colour]
!!WMx1/x2/x3&2:B0;
!!OW&2:C?y1;
!!VRy2&2/y1=0:S-8160;
!!VRy2&2/y1=1:S-8128;
!!VRy2&2/y1=2:S-8000;
!!VRy2&2/y1=3:S-7872;
!!VRy2&2/y1=4:S-7680;
!!VRy2&2/y1=5:S-7168;
!!VRy2&2/y1=6:S-6144;
!!VRy2&2/y1=7:S-4096;
!!OBx1/x2/x3&2:C?y3;
!!VRy3&2:|y2;
!!OBx1/x2/x3&2:Cy3;
кто может найти зависимость между номером игрока и его битом в "слове" объекта?
|
|
03.10.2010 14:49 |
|
Sav
Posts: 2180
|
А там точно не такой ряд чисел:
8160
8128
8064
7936
7680
7168
6144
4096
? Добавлено:
В смысле должен быть.
(This post was last modified: 03.10.2010 15:14 by Sav.)
|
|
03.10.2010 15:13 |
|