Current time: 23.04.2024, 10:46 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Ваши вопросы по ERM-скриптам
Author Message
etoprostoya Offline

Posts: 1809
Post: #1216

Я уже писал это на дф2, сейчас поищу.
21.09.2010 20:58
Find all posts by this user Quote this message in a reply
etoprostoya Offline

Posts: 1809
Post: #1217

Начиная отсюда, читай.
http://forum.df2.ru/index.php?showtopic=...t&p=397367
21.09.2010 21:09
Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #1218

Знатоки математики, обращаюсь к вам. Есть функция генерации особого числа в зависимости от 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
Visit this user's website Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1219

Если 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
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1220

Чтобы ужать 3 переменные в 1, можно использовать по 10 из 32 бит переменной для каждого числа. Но тогда максимально a, b, c будут равны 1023. Или 511, если с отрицательными значениями.
22.09.2010 09:32
Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #1221

Sav, напиши, пожалуйста, код.
Переменные a, b, c не будут вылезать за пределы 144 каждая.


Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
22.09.2010 21:25
Visit this user's website Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1222

*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
Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #1223

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
Visit this user's website Find all posts by this user Quote this message in a reply
M.A.K.C. Offline

Posts: 472
Post: #1224

Можно ли сделать следующий скрипт так, чтобы он срабатывал перед сражением
Название события Бодун
Суть, перед сражением появляется сообщение, что:
Часть ваших войск злоупотребила выпивкой и:
(накладываются следующие эффекты) (случайным образом на свои случайные войска)
Замедление 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
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1225

Каюк - это мнгновенная гибель?
Заклы накладывать на какую длительность?
Бодун должен мочь случиться в любом бою или как?
Думаю, через некоторое время напишу скрипт.
30.09.2010 23:18
Find all posts by this user Quote this message in a reply
GhostManSD Offline

Posts: 1054
Post: #1226

Каюк? Как-то "капельку" не в духе Героев, имхо. Бодун, в общем-то, тоже.
Хотя, если предположить, что герои не воюют, а денно и нощно употребляют косорыловку со своей армией...


Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
(This post was last modified: 01.10.2010 01:19 by GhostManSD.)
01.10.2010 01:17
Visit this user's website Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1227

Да, и отравление наложить не получится - оно глючное. Альтернатива - старость.
Добавлено:
Да, и не слишком ли крутая формула? У существ 7 уровня целый 35% шанс сдохнуть.
(This post was last modified: 01.10.2010 11:08 by Sav.)
01.10.2010 11:06
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1228

Quote:Предлагаю создать отдельную тему, куда люди будут
выкладывать полностью рабочие скрипты
Если что, я создал тему для чего-то подобного: http://wforum.heroes35.net/showthread.php?tid=2526.
Предлагаю выкладывать просьбы и обсуждать результаты в ней.
02.10.2010 23:22
Find all posts by this user Quote this message in a reply
DracoLich Offline

Posts: 251
Post: #1229

[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
Visit this user's website Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #1230

А там точно не такой ряд чисел:
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
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group