Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 04.11.2010 20:12 | 
	
		
	 | 
	
		
		Bes 
 
 
		
		
		
			
			
			
 
 
			
Posts: 5453 
	
		
	 | 
	
		
			
			 
			
				Скажите,как можно  получать в игре (окно героя,в частности) спец.текст по существу (т.е. его описание,что можно менять через UN:G1/#/2/$)???   
требуется для DL-шаблона
			  
			
			
			
		 |  
	 
 | 
	| 14.11.2010 02:48 | 
	
		
	 | 
	
		
		GhostManSD 
 
 
		
		
		
			
			
			
 
 
			
Posts: 1054 
	
		
	 | 
	
		
			
			 
			
				Bes, не пробовали работать через UN:C? 
1. Найти в ArtMoney описания копейщика, алебардщика, арбалетчика. 
2. Найти указатель на описание каждого. 
3. Адрес будет таков: [адрес описания копейщика]+4*[номер существа]. 
4. Далее скрипт а-ля !!UN:C[полученный адрес]/4/?v1; 
 
В v1 запишется адрес текста с описанием. Далее потребуется перенести содержимое этого адреса в z-переменную, но здесь я Вам не помощник: обращайтесь к отцам, потому как я в работе с памятью не силен.
			 
			
			
  
Κακῆς ἀπ' ἀρχῆς γίγνεται τέλος κακόν.
			
				
(This post was last modified: 14.11.2010 03:43 by GhostManSD.)
 
			 
		 |  
	 
 | 
	| 14.11.2010 03:43 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
			
			 
			
				$7D0CAC + НомерМонстра * 116 
Там указатель на строку с описанием. Нужно лишь её (строку) скопировать. 
kernel32.dll "lstrcpyA" (АдресПриёмника, АдресИсточника) STDCALL;
 
По Эре стандартно: 
- Загрузить dll kernel32.dll
 
- Получить адрес функции lstrcpyA
 
- Выполнить её с двумя параметрами, где второй параметр - адрес нужной z-переменной = $9273E8 + 512 * (Индекс - 1)
 
  
			 
			
			
  
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов 
Поддержать проект 
			
		 |  
	 
 | 
	| 14.11.2010 14:47 | 
	
		
	 | 
	
		
		Bes 
 
 
		
		
		
			
			
			
 
 
			
Posts: 5453 
	
		
	 | 
	
		
			
			 
			
				я с ERA-командами ниразу не пользовался   
Quote:
- Загрузить dll kernel32.dll
 
- Получить адрес функции lstrcpyA
 
- Выполнить её с двумя параметрами, где второй параметр - адрес нужной z-переменной = $9273E8 + 512 * (Индекс - 1)
  
 
- !!VRz1:S^kernel32.dll^; записать имя dll
 
!!SN:Lz1/?v2; теперь v2 хранит номер dll 
- !!VRz2:S^lstrcpyA^; записать имя функции
 
!!SN:Av2/z2/?v3; записать адрес функции в v3  
А вот с третьим пунктом неразобрался.. какие значения мне написать в первом и втором параметре !!SN:Ev3/1/ #1/ #2; ???
 
например,если взть z3,то 
$9273E8 + 512 * ( 3 - 1) = $9273E8 +1024 = $92840C [или 9602060]
			  
			
			
			
				
(This post was last modified: 14.11.2010 23:06 by Bes.)
 
			 
		 |  
	 
 | 
	| 14.11.2010 23:05 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
			
			 
			
				 (14.11.2010 23:05)Bes Wrote:  какие значения мне написать в первом и втором параметре !!SN:Ev3/1/#1/#2; ??? 
Code: 
 (CDECL_OR_STDCALL) = 1; 
... 
!!VR$Адрес z-переменной$:S(Индекс z-переменной)-1*512+9597928; 
!!VR$адрес поля текста описания$:S(Номер монстра)*116+8195244; 
!!UN:C$адрес поля текста описания$/4/?$адрес текста описания$; 
!!SN:Ev3/(CDECL_OR_STDCALL)/$Адрес z-переменной$/$адрес текста описания$;
  
			 
			
			
  
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов 
Поддержать проект 
			
		 |  
	 
 | 
	| 14.11.2010 23:35 | 
	
		
	 | 
	
		
		Bes 
 
 
		
		
		
			
			
			
 
 
			
Posts: 5453 
	
		
	 | 
	
		
			
			 
			
				Berserker,спасибо огромное!!!   
всё получилось..
			  
			
			
			
		 |  
	 
 | 
	| 16.11.2010 14:31 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.11.2010 15:16 | 
	
		
	 | 
	
		
		SAG 
 
 
		
		
		
			
			
			
 
 
			
Posts: 173 
	
		
	 | 
	
		
			
			 
			
				 (16.08.2010 14:41)MOP Wrote:  ; Врата Замка Инферно: 
где были мои глаза? 
однако этот ценный скрипт и патч под WT не работают...MOP дружище, посмотри почему глюкает. для активации Эры в WT нужно поставить патч  http://www.heroes-iii.com/files/2.zip
			 
			
			
			
		 |  
	 
 | 
	| 09.12.2010 14:42 | 
	
		
	 | 
	
		
		MOP 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1468 
	
		
	 | 
	
		
			
			 
			
				 (09.12.2010 14:42)SAG Wrote:   (16.08.2010 14:41)MOP Wrote:  ; Врата Замка Инферно: 
где были мои глаза? 
однако этот ценный скрипт и патч под WT не работают...MOP дружище, посмотри почему глюкает. для активации Эры в WT нужно поставить патч http://www.heroes-iii.com/files/2.zip 
Извиняюсь, только заметил пост. 
1. Это исходник к bin-файлу, то есть, его надо пропустить через BinGen.exe. 
2. Патчился экзешник или память? Патч для exe. Для памяти нужно увеличить адреса на 400000h. 
3. В чём глюк и по какому адресу, если имел место вылет? 
4. Не думаю, что в обработку диалога Портала Инферно мог вкрасться другой код - если в WT, конечно, не делали/пробовали сделать то же самое.
 
Разбираться с WT и патчем к нему мне обойдётся дорого по деньгам.
			  
			
			
  
Circle of destruction, hammer comes crushing 
Powerhouse of energy 
Whipping up a fury, dominating flurry 
We create the battery
			
				
(This post was last modified: 11.12.2010 20:51 by MOP.)
 
			 
		 |  
	 
 | 
	| 11.12.2010 20:45 | 
	
		
	 | 
	
		
		SAG 
 
 
		
		
		
			
			
			
 
 
			
Posts: 173 
	
		
	 | 
	
		
			
			 
			
				 (11.12.2010 20:45)MOP Wrote:  Извиняюсь, только заметил пост. 
2. Патчился экзешник или память? Патч для exe. Для памяти нужно увеличить адреса на 400000h. 
3. В чём глюк и по какому адресу, если имел место вылет? 
только счас заметил ответ. патчил память (просто скомпилировал и положил в EraPlugins). 
глюк - кажется просто вылет в момент подгрузки Era на старте карты.
			  
			
			
			
		 |  
	 
 | 
	| 26.12.2010 18:02 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 26.12.2010 18:07 | 
	
		
	 | 
	
		
		Bes 
 
 
		
		
		
			
			
			
 
 
			
Posts: 5453 
	
		
	 | 
	
		
			
			 
			
				Делаю bin, где смещаю кнопки битвы, помещаю в папку ERAPlugins, запускаю ФМ (ERA,TE не важно), выбираю "новая" или "загрузить" и игра закрывается (тихо,без окошек вылета). 
В чём трабла?
 
Если этот же патч непосредственно в exe встроить, то всё нормально   
			 
			
			
			
		 |  
	 
 | 
	| 20.01.2011 17:23 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 20.01.2011 18:09 | 
	
		
	 | 
	
		
		feanor 
 
 
		
		
		
			
			
			 
			
Posts: 624 
	
		
	 | 
	
		
			
			 
			
				sergroj Wrote:1. На самом деле, Славин файл - это exe. 
Для WoG 3.58f: 
400000 + А, если А < 29C000, 
465000 + А, если А >= 29C000. 
			 
			
			
			
		 |  
	 
 | 
	| 20.01.2011 18:16 | 
	
		
	 |