Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
			
			 
			
				Is there a way to let AI learn that my Diamond Dragon's breath attack's secondary target won't deal damage to friendly troops (but the main target still will, if it's hypnotized)? 
I can write something like this:
 
This works almost perfect but I want to avoid setting the damage to 0 for the main target. It seems there is no classic erm way to know whether a target is the secondary target of breath attack or main in OnStackToStackDamage.
 Edit:
I made it with some enlightenment from daemon_n. A hook at 441487 makes the whole thing very straightforward.
			  
			
			
  
Latest ERA mods and scripts in development -  My GitHub
			
				
(This post was last modified: 14.12.2023 09:04 by Archer30.)
 
			 
		 |  
	 
 | 
	| 14.12.2023 08:17 | 
	
		
	 | 
	
		
		daemon_n 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 4366 
	
		
	 | 
	
		
			
			 
			
				Как получить тип загружаемого ресурса из дерева всех ресурсов  по имени? 
Проблема в том, что для Pcx и Pcx16 результаты не те, что ожидалось, ведь их типы 2/16 и 0/18 соответственно, если верить IDA
 
Что не так с кодом, с игрой, с чем-либо ещё?
			  
			
			
  
  
 
Новейший Heroes Launcher
			
		 |  
	 
 | 
	| 23.12.2023 08:16 | 
	
		
	 | 
	
		
		XEPOMAHT 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 2481 
	
		
	 | 
	
		
			
			 
			
				 (23.12.2023 08:16)daemon_n Wrote:  Проблема в том, что для Pcx и Pcx16 результаты не те, что ожидалось, ведь их типы 2/16 и 0/18 соответственно, если верить IDA 
 
Что не так с кодом, с игрой, с чем-либо ещё? 
1. HD-мод умеет подменять любой pcx на bmp, поэтому при вмешательстве в код Бараторч наверняка добавил собственные типы, чтобы самостоятельно выгружать HD-модовский ресурс (и чтобы сам движок игры его даже не пытался выгружать).
 
2. era.dll умеет подменять любой pcx на png, поэтому при вмешательстве в код Берсеркер наверняка добавил собственные типы, чтобы самостоятельно выгружать эровский ресурс (и чтобы сам движок игры его даже не пытался выгружать).
 
Поэтому лучше проверять на pcx, которые на 100% никто не подменяет (а в сборке Лаучера вполне возможно, что скоро будут подменены все pcx в игре).
			  
			
			
			
		 |  
	 
 | 
	| 23.12.2023 09:55 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 23.12.2023 14:32 | 
	
		
	 | 
	
		
		daemon_n 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 4366 
	
		
	 | 
	
		
 | 
	| 23.12.2023 18:44 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
 | 
	| 08.01.2024 12:04 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
 | 
	| 12.01.2024 18:00 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 13.01.2024 00:23 | 
	
		
	 | 
	
		
		igrik 
 
 
		
		
		
			
			
			
 
 
			
Posts: 2821 
	
		
	 | 
	
		
 | 
	| 13.01.2024 21:22 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
 | 
	| 15.01.2024 11:27 | 
	
		
	 | 
	
		
		igrik 
 
 
		
		
		
			
			
			
 
 
			
Posts: 2821 
	
		
	 | 
	
		
 | 
	| 15.01.2024 14:45 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
			
			 
			
				igrik, thanks a lot!
 
Well, looks like I need a hook (or MM0?) here because the description I want to show is dynamic. For example, 
 Quote:Level %y1 
where y1 equals the level of the War Machine/Henchman.
			  
			
			
  
Latest ERA mods and scripts in development -  My GitHub
			
				
(This post was last modified: 16.01.2024 04:28 by Archer30.)
 
			 
		 |  
	 
 | 
	| 15.01.2024 17:39 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
			
			 
			
				New question: 
Is there to get the pointer of a string in json, for example:
 
Code: 
 { 
  "ntsfl":  { 
    "set": { 
      "altTerrains": "1"    // alternative terrains for Castle/Tower 
    }, 
 
    "str": { 
      "grailName":  "Eye of Sauron", 
    } 
  } 
}
  
What would the pointer to "%T(ntsfl.str.grailName)" be?
			  
			
			
  
Latest ERA mods and scripts in development -  My GitHub
			
				
(This post was last modified: 16.01.2024 05:12 by Archer30.)
 
			 
		 |  
	 
 | 
	| 16.01.2024 04:29 | 
	
		
	 | 
	
		
		Berserker 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 16788 
	
		
	 | 
	
		
 | 
	| 16.01.2024 15:38 | 
	
		
	 | 
	
		
		Archer30 
 
 
		
		
		
			
			
 
 
			
 
 
			
Posts: 1192 
	
		
	 | 
	
		
 | 
	| 17.01.2024 01:38 | 
	
		
	 |