IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> Новые монстры, Помогите дописать
Гость_vas2003_*
сообщение 22 Mar 2008, 22:53
Сообщение #1







Данный скрипт добавляет абсолютно новых монстров. Для того чтобы получить нового монстра, Вам нужно добавить дефы монстров, портреты(соответственно номеру монстра), озвучку монстра и выбрать шаблонного монстра, который на ваш взгляд ближе всего по св-вам к новому. Теперь скрипт

Код
ZVSE

!?PI;
!!FU1:P;
!!FU3:Pmn/ms; mn - номер нового монстра от 197, ms - номер монстра шаблона до 197
!!FU5:Pmn;
!?FU1;
!!VRy1:S8195216;
!!VRy2:S9802216;
!!DO2/1/22736/1:Py1/y2;
!?FU2;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;


!?FU3;
!!UN:C6768560/4/9802216;
!!VRy1:Sx2*116+8195216;
!!VRy2:Sx1*116+9802216;
!!DO4/1/116/1:Py1/y2;
!!VRy1:+8;
!?FU4;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU5;
!!VRy1:Sx2-197*17+9751016;
!!VRy3:Sx1*116+9802216;
!!VRz1:S^name def^; name - первые 4-ре буквы озвучки вашего монстра, def - название дефа монстра с расширением (озвучка и деф пишутся через пробел макс. 17 символов)
!!VRy2:Szx*512+9597416; zx - индекс z-переенной где хранится озвучка и деф
!!DO6/1/17/1:Py1/y2;
!!VRy3:+8;
!!UN:Cy3/4/y1;
!!VRy3:+4;
!!VRy1:+5;
!!UN:Cy3/4/y1;
!?FU6;
!!UN:Cx2/1/?y1;
!!if&y1=32:;
  !!VRy1:S0;
!!en;
!!UN:Cx1/1/y1;
!!VRx1:+1;
!!VRx2:+1;


Данный код добавляет 197 монстра - пикимена. Для наглядности

Код
ZVSE

!?PI;
!!FU1:P;
!!FU3:P197/0;
!!FU5:P197;
!?FU1;
!!VRy1:S8195216;
!!VRy2:S9802216;
!!DO2/1/22736/1:Py1/y2;
!?FU2;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU3;
!!UN:C6768560/4/9802216;
!!VRy1:Sx2*116+8195216;
!!VRy2:Sx1*116+9802216;
!!DO4/1/116/1:Py1/y2;
!!VRy1:+8;
!?FU4;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU5;
!!VRy1:Sx2-197*17+9751016;
!!VRy3:Sx1*116+9802216;
!!VRz1:S^pike cpkman.def^;
!!VRy2:S1*512+9597416;
!!DO6/1/17/1:Py1/y2;
!!VRy3:+8;
!!UN:Cy3/4/y1;
!!VRy3:+4;
!!VRy1:+5;
!!UN:Cy3/4/y1;
!?FU6;
!!UN:Cx2/1/?y1;
!!if&y1=32:;
  !!VRy1:S0;
!!en;
!!UN:Cx1/1/y1;
!!VRx1:+1;
!!VRx2:+1;


Работает под ТЕ, без вогификации т.к. номера функций не подбирались.
А теперь о главном. Добавление монстра происходит успешно, но в бою комп вешается, т.к. не прописан CrAnim. Если кто найдет данную структуру в памяте героев - пожалуйста напишите.

З.Ы. отдельное спасибо Сергрою
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 23 Mar 2008, 00:05
Сообщение #2

допустим, мяў
Сообщений: 24 082
Спасибо сказали: 13383 раза




Молодец! Класс!
А нельзя добавить монстра с номером большим 255?


--------------------
Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская)
Go to the top of the pageAdd Nick
 
+Quote Post
Docent Picolan
сообщение 23 Mar 2008, 00:08
Сообщение #3

   
Сообщений: 29 680
Спасибо сказали: 18143 раза




можно. это-то и есть самое главное.
Go to the top of the pageAdd Nick
 
+Quote Post
sergroj
сообщение 23 Mar 2008, 00:17
Сообщение #4

В миру GrayFace
Сообщений: 2 529
Спасибо сказали: 817 раз




Нельзя. Этот скрипт пригодится новым городам, пока не вышел новый билд 3.59.


--------------------
ДНК банана на 50% состоит из человека.
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 23 Mar 2008, 00:26
Сообщение #5

допустим, мяў
Сообщений: 24 082
Спасибо сказали: 13383 раза




УРА!!!

Добавлено ([mergetime]1206221218[/mergetime]):
Так можно или нельзя?


--------------------
Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская)
Go to the top of the pageAdd Nick
 
+Quote Post
Docent Picolan
сообщение 23 Mar 2008, 00:27
Сообщение #6

   
Сообщений: 29 680
Спасибо сказали: 18143 раза




вот и я не понял
Go to the top of the pageAdd Nick
 
+Quote Post
Spartak
сообщение 23 Mar 2008, 00:49 (Сообщение отредактировал Spartak - 23 Mar 2008, 01:01)
Сообщение #7

FFuck_oFF
Сообщений: 3 992
Спасибо сказали: 1395 раз




похоже в 3.58 нельзя...
а в 3.59 можна...


--------------------
http://heroes3towns.com/ Сайт Новых Городов
Go to the top of the pageAdd Nick
 
+Quote Post
sergroj
сообщение 23 Mar 2008, 01:03
Сообщение #8

В миру GrayFace
Сообщений: 2 529
Спасибо сказали: 817 раз




В обоих нельзя, но пока и 256 монстров хватит. А в 3.59 может и получится преодолеть.


--------------------
ДНК банана на 50% состоит из человека.
Go to the top of the pageAdd Nick
 
+Quote Post
Гость_vas2003_*
сообщение 23 Mar 2008, 23:38
Сообщение #9







И так вот начальная версия тестового скрипта. Данный скрипт добавляет нового монстра и ставит его герою в армию, для наглядности
Запускать под ТЕ без ВоГификации

Код
ZVSE
!?PI;
!!FU1:P;
!!FU3:Pнм/мш; нм - номер нового монстра, мш - номер монстра шаблона
!!FU5:Pнм;
!!FU7:P;
!!UN:C6815604/4/9699816;
!!FU9:Pнм;
!!FU11:Pг/нм; г - номер героя которому добавляется монстр
!?FU1;
!!VRy1:S8195216;
!!VRy2:S9802216;
!!DO2/1/22736/1:Py1/y2;
!?FU2;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU3;
!!UN:C6768560/4/9802216;
!!VRy1:Sx2*116+8195216;
!!VRy2:Sx1*116+9802216;
!!DO4/1/116/1:Py1/y2;
!!VRy1:+8;
!?FU4;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU5;
!!VRy1:Sx2-197*17+9751016;
!!VRy3:Sx1*116+9802216;
!!VRz1:S^звук деф^; звук - первые 4-ре буквы озвучки, деф - название дефа монстра (пишется через пробел)
!!VRy2:S1*512+9597416;
!!DO6/1/17/1:Py1/y2;
!!VRy3:+8;
!!UN:Cy3/4/y1;
!!VRy3:+4;
!!VRy1:+5;
!!UN:Cy3/4/y1;
!?FU6;
!!UN:Cx2/1/?y1;
!!if&y1=32:;
  !!VRy1:S0;
!!en;
!!UN:Cx1/1/y1;
!!VRx1:+1;
!!VRx2:+1;

;mov CrAnim
!?FU7;
!!VRy1:S6815604;
!!VRy2:S16548; - size of CrAnim
!!VRy3:S9699816;
!!UN:Cy1/4/?y4;
!!UN:Cy3/4/?y5;
!!DO8/1/y2/1:Py4/y3;
!?FU8;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU9;
!!VRy1:Sx1*84 +9699816;
!!VRy2:S9699816;
!!DO10/1/84/1:Py2/y1;
!?FU10;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU11;
!!UN:C6919480/4/?y1;
!!VRy1:+136881;
!!VRy2:Sx1 *1170 +y1;
!!UN:Cy2/4/x2;


Вот скрипт добавляющий копейщика №268 Орину

Код
ZVSE
!?PI;
!!FU1:P;
!!FU3:P268/0;
!!FU5:P268;
!!FU7:P;
!!UN:C6815604/4/9699816;
!!FU9:P268;
!!FU11:P0/268;
!?FU1;
!!VRy1:S8195216;
!!VRy2:S9802216;
!!DO2/1/22736/1:Py1/y2;
!?FU2;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU3;
!!UN:C6768560/4/9802216;
!!VRy1:Sx2*116+8195216;
!!VRy2:Sx1*116+9802216;
!!DO4/1/116/1:Py1/y2;
!!VRy1:+8;
!?FU4;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU5;
!!VRy1:Sx2-197*17+9751016;
!!VRy3:Sx1*116+9802216;
!!VRz1:S^pike cpkman.def^;
!!VRy2:S1*512+9597416;
!!DO6/1/17/1:Py1/y2;
!!VRy3:+8;
!!UN:Cy3/4/y1;
!!VRy3:+4;
!!VRy1:+5;
!!UN:Cy3/4/y1;
!?FU6;
!!UN:Cx2/1/?y1;
!!if&y1=32:;
  !!VRy1:S0;
!!en;
!!UN:Cx1/1/y1;
!!VRx1:+1;
!!VRx2:+1;

;mov CrAnim
!?FU7;
!!VRy1:S6815604;
!!VRy2:S16548; - size of CrAnim
!!VRy3:S9699816;
!!UN:Cy1/4/?y4;
!!UN:Cy3/4/?y5;
!!if&y5=0:;
!!DO8/1/y2/1:Py4/y3;
!!en;
!?FU8;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU9;
!!VRy1:Sx1*84 +9699816;
!!VRy2:S9699816;
!!DO10/1/84/1:Py2/y1;
!?FU10;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU11;
!!UN:C6919480/4/?y1;
!!VRy1:+136881;
!!VRy2:Sx1 *1170 +y1;
!!UN:Cy2/4/x2;

Для запуска этого скрипта Вам потребуются портреты монстров вот
www.docentpicolan.narod.ru/portxx.rar
Замените существующие и запустите скрипт.

В связи с техническими проблемами, которые устанавливаются, использовать скрипт без перезагрузки героев можно 1-ин раз. Но это будет исправлено.

Настраивать новых монстров средствами ЕРМ тоже нельзя т.к. в ЕРМ стоит ограничение на 196 монстров, поэтому только через UN:C.

Вобщем это все мелкие подробности (которые будут подправлены), тестите и говорите результаты.
Go to the top of the pageAdd Nick
 
+Quote Post
Гость_vas2003_*
сообщение 30 Mar 2008, 00:16
Сообщение #10







При помощи выше приведенного скрипта добавляемые монстры до 250 имеют следующие изъяны:
- четные монстры - игра вылетает при атаке
- нечетные монстры - игра вылетает после атаки smile.gif
И лишь некоторые нечетные монстры до 220 ведут себя адекватно. С чем связано данное поведение пока неизвестно.
Поэтому прошу всех кому это интересно помочь разобраться в проблеме.
Заранее спасибо.
Go to the top of the pageAdd Nick
 
+Quote Post
Гость_vas2003_*
сообщение 05 Apr 2008, 09:05
Сообщение #11







Итак новые монстры дописаны. Новые монстры не имеют никаких специфических св-в. Но при помощи модифицирования регистра ecx во время атаки (т.е. !?MF1) можно добиться любых существующих св-в (способ модифицирования представлен в скрипте). Единственный минус - монстры не имеют хинта.

Скрипт привожу для тестинга. Постараюсь все необходимое собрать в вогархив, разобраться с хинтом и дать инструменты для управления новыми монстрами. Прошу тестить.

Данный скрипт добавляет Оррину 231 монстра с анимацией архангелов и св-вами и озвучкой копейщиков.

Как пользоваться скриптом описано выше

Код
ZVSE
!?PI;
!!UN:C9597947/1/185; запись на свободном месте z-переменных {mov ecx, 5} и {jmp} обратно в код
!!UN:C9597948/1/5; - число забиваемое в регистр ecx
!!UN:C9597949/1/0;
!!UN:C9597950/1/0;
!!UN:C9597951/1/0;
!!UN:C9597952/1/255;
!!UN:C9597953/1/36;
!!UN:C9597954/1/141;
!!UN:C9597955/1/192;
!!UN:C9597956/1/18;
!!UN:C9597957/1/68;
!!UN:C9597958/1/0;

!!UN:C9597959/1/185;
!!UN:C9597960/1/9; - число в регистре
!!UN:C9597961/1/0;
!!UN:C9597962/1/0;
!!UN:C9597963/1/0;
!!UN:C9597964/1/255;
!!UN:C9597965/1/36;
!!UN:C9597966/1/141;
!!UN:C9597967/1/148;
!!UN:C9597968/1/253;
!!UN:C9597969/1/121;
!!UN:C9597970/1/0;



!!FU1:P;
!!FU3:P231/0;
!!FU5:P231;
!!FU7:P;
!!UN:C6815604/4/9699816;
!!FU9:P231;
!!FU11:P0/231;
!?FU1;
!!VRy1:S8195216;
!!VRy2:S9802216;
!!DO2/1/22736/1:Py1/y2;
!?FU2;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU3;
!!UN:C6768560/4/9802216;
!!VRy1:Sx2*116+8195216;
!!VRy2:Sx1*116+9802216;
!!DO4/1/116/1:Py1/y2;
!?FU4;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU5;
!!VRy1:Sx2-197*17+9751016;
!!VRy3:Sx1*116+9802216;
!!VRz1:S^pike crangl.def^;
!!VRy2:S1*512+9597416;
!!DO6/1/17/1:Py1/y2;
!!VRy3:+8;
!!UN:Cy3/4/y1;
!!VRy3:+4;
!!VRy1:+5;
!!UN:Cy3/4/y1;
!?FU6;
!!UN:Cx2/1/?y1;
!!if&y1=32:;
 !!VRy1:S0;
!!en;
!!UN:Cx1/1/y1;
!!VRx1:+1;
!!VRx2:+1;

;mov CrAnim
!?FU7;
!!VRy1:S6815604;
!!VRy2:S16548; - size of CrAnim
!!VRy3:S9699816;
!!UN:Cy1/4/?y4;
!!UN:Cy3/4/?y5;
!!if&y5=0:;
!!DO8/1/y2/1:Py4/y3;
!!en;
!?FU8;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU9;
!!VRy1:Sx1*84 +9699816;
!!VRy2:S9699816;
!!DO10/1/84/1:Py2/y1;
!?FU10;
!!UN:Cx1/1/?y1;
!!UN:Cx2/1/y1;
!!VRx1:+1;
!!VRx2:+1;

!?FU11;
!!UN:C6919480/4/?y1;
!!VRy1:+136881;
!!VRy2:Sx1 *1170 +y1;
!!UN:Cy2/4/x2;

!?MF1;
!!FU130:P;
!?FU130;
!!UN:C42229952/4/?y1;
!!UN&y1>200:C4458778/1/144; прыжок из кода на z-переменные
!!UN&y1>200:C4458779/1/233;
!!UN&y1>200:C4458780/1/219;
!!UN&y1>200:C4458781/1/106;
!!UN&y1>200:C4458782/1/78;
!!UN&y1>200:C4458783/1/0;
!!UN&y1>200:C4458784/1/144;

!!UN&y1>200:C4457019/1/144; прыжок на нудный код
!!UN&y1>200:C4457020/1/233;
!!UN&y1>200:C4457021/1/198;
!!UN&y1>200:C4457022/1/113;
!!UN&y1>200:C4457023/1/78;
!!UN&y1>200:C4457024/1/0;
!!UN&y1>200:C4457025/1/144;



!?BG1;
!!UN:C4458778/1/255;  возврат нормального кода
!!UN:C4458779/1/36;
!!UN:C4458780/1/141;
!!UN:C4458781/1/192;
!!UN:C4458782/1/18;
!!UN:C4458783/1/68;
!!UN:C4458784/1/0;

!!UN:C4457019/1/255; возврат нормального кода
!!UN:C4457020/1/36;
!!UN:C4457021/1/141;
!!UN:C4457022/1/148;
!!UN:C4457023/1/253;
!!UN:C4457024/1/121;
!!UN:C4457025/1/0;


Добавлено ([mergetime]1207375533[/mergetime]):
Скрипт под ТЕ, без вогификации
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 10 Jun 2009, 11:16 (Сообщение отредактировал Master Of Puppets - 10 Jun 2009, 11:20)
Сообщение #12

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2377 раз




Поправьте, если в чём-то ошибусь...

Параметры каждого монстра занимают 116 байт. Каждый параметр - 4 байта. Итого 29 параметров. По порядку:

1)Тип города
2)Уровень
3)Ссылка на первые 4 буквы озвучки
4)Ссылка на деф монстра в битве
5)флаг монстра
6)Ссылка на название в единственном числе
7)Ссылка на название в множественном числе
8)Ссылка на описание
9) - 14) Цены в доп. ресурсах. Берётся лишь первое ненулевое значение из цикла.
15)Цена в золоте
16)Fight value
17)AI value
18)Базовый прирост в городе
19)Доп. прирост (Horde Growth)
20)Очки жизни
21)Скорость
22)Атака
23)Защита
24)Мин.урон
25)Макс.Урон
26)Кол-во боеприпасов
27)Кол-во заклинаний (для колдунов)
28)Минимальное кол-во монстра на карте
29)Максимальное кол-во монстра на карте

То, что не входит в таблицу:
a)Улучшения (апгрейды)
b )Спецспособности
с)Cranim

P.S. Меня глючит, или во всех вариантах скрипта vas2003 забыт Драколич? Всего монстров 197. В круговой функции копирования по 1 байту 22736 кругов. 22736 / 116 = 196.
Бедняга DracoLich...


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
Bisik
сообщение 24 Jun 2009, 05:24
Сообщение #13

Immortal
Сообщений: 1 235
Спасибо сказали: 63 раза




Интересно, интересно smile.gif
А можно с помощью подобного скрипта просто заменить монстру озвучку и анимацию на что-то своё, оригинальное?
Имею в виду используя новый деф файл и новый набор озвучки *.82m


--------------------
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 25 Jun 2009, 13:38
Сообщение #14

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2377 раз




Да, можно.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
Дьяк
сообщение 28 Jun 2009, 20:29
Сообщение #15

Member
Сообщений: 97
Спасибо сказали: 80 раз




Цитата(Master Of Puppets @ 10 Jun 2009, 11:16)
P.S. Меня глючит, или во всех вариантах скрипта vas2003 забыт Драколич? Всего монстров 197. В круговой функции копирования по 1 байту 22736 кругов. 22736 / 116 = 196.
Бедняга DracoLich...


Молодость - глупость, епсель... Скрипты для новых монстров - это маразм, все через модификацию кода и выделение дополнительной памяти. Молодой был - тренеровался )))
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 04 Jul 2009, 13:32
Сообщение #16

допустим, мяў
Сообщений: 24 082
Спасибо сказали: 13383 раза




Да ну почему. Отличный скрипт, и с твоей длл-кой работает.


--------------------
Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская)
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 04 Jul 2009, 17:04 (Сообщение отредактировал Master Of Puppets - 04 Jul 2009, 17:06)
Сообщение #17

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2377 раз




Кстати, где можно скачать последнее обновление этой dll? У меня архив без указания версии, их чего делаю вывод, что это v1.00.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
Дьяк
сообщение 04 Jul 2009, 21:57
Сообщение #18

Member
Сообщений: 97
Спасибо сказали: 80 раз




Будет доступна в 3,59, если ее включат в релиз.
Go to the top of the pageAdd Nick
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 5 September 2025 - 12:48
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика