Heroes of Might and Magic Community
visiting hero! Register | Today's Posts | Games | Search! | FAQ/Rules | AvatarList | MemberList | Profile


Age of Heroes Headlines:  
5 Oct 2016: Heroes VII development comes to an end.. - read more
6 Aug 2016: Troubled Heroes VII Expansion Release - read more
26 Apr 2016: Heroes VII XPack - Trial by Fire - Coming out in June! - read more
17 Apr 2016: Global Alternative Creatures MOD for H7 after 1.8 Patch! - read more
7 Mar 2016: Romero launches a Piano Sonata Album Kickstarter! - read more
19 Feb 2016: Heroes 5.5 RC6, Heroes VII patch 1.7 are out! - read more
13 Jan 2016: Horn of the Abyss 1.4 Available for Download! - read more
17 Dec 2015: Heroes 5.5 update, 1.6 out for H7 - read more
23 Nov 2015: H7 1.4 & 1.5 patches Released - read more
31 Oct 2015: First H7 patches are out, End of DoC development - read more
5 Oct 2016: Heroes VII development comes to an end.. - read more
[X] Remove Ads
LOGIN:     Username:     Password:         [ Register ]
HOMM1: info forum | HOMM2: info forum | HOMM3: info mods forum | HOMM4: info CTG forum | HOMM5: info mods forum | MMH6: wiki forum | MMH7: wiki forum
Heroes Community > Heroes 3.5 - WoG and Beyond > Thread: Heroes 3 Hacking Reference Guide
Thread: Heroes 3 Hacking Reference Guide This thread is 23 pages long: 1 2 3 4 5 ... 10 ... 19 20 21 22 23 · «PREV / NEXT»
deathstare
deathstare


Adventuring Hero
posted October 17, 2021 07:01 AM
Edited by deathstare at 07:23, 17 Oct 2021.

BTB said:
Oh, I get what you're asking now.

Well, if I had to guess... creatures need a spellcasting animation in order to cast a spell, so it's probably not going to be easy at all.


I see. I guess it's not easy. So the way I thought about changing magic was to completely change the data of the two units. For example, I tried to change all the data of the Crusader and the storm elemental. That way, Crusaders can use the magic of the storm elemental. However, as I said before, I gave up because there was a problem editing the hate relationship and the description sentence of battlefield.

deathstare said:
I have one more question. I changed the code of Storm elemental to Crusader from 04314F for Hate Relationship moding below.

04314A Air    043157 Earth
04314F Storm  04315C Magma

So Crusader got twice as much damage from Earth Elemental, but it's still Storm Elemental that's causing twice as much damage to Earth Elemental. Is there any way to completely change the hate relationship?


deathstare said:
I have a question. I changed the spell of Storm Elementals by refer to Creature Spell moding method.

Storm Elementals
048388 = Power
04838A = Level
048391 = Spell ID

But the description sentence of battlefield doesn't change. How can I fix it? And I would like to know how to modify the text of the battlefield for the magic of other creature.


I have another question. There are four not used codes among CREATURE codes, and can we create a new CREATURE by connecting the def code and the sound code?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 17, 2021 08:24 AM
Edited by BTB at 18:17, 17 Oct 2021.

I'm fairly certain the unused creature slots are unused for a reason and I know for a fact that the data initializes to 00 when the game loads, so... no.

(Also just corrected a tiny error in the obelisk code that was making the game crash >.> )

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
deathstare
deathstare


Adventuring Hero
posted October 18, 2021 01:12 PM

I found something strange in the coding below. I edited it like this, and there was a game crash. The guide said the address was 0E666D to F7, but when I edit it, the address exceeds F7. In fact, when I counted all the code values below, they were 153. However, the number of addresses 6D to F7 is F7-6D+1=8B (=139).


--------- -----------------------------------------------------------------------
0E666D~F7 NEW ELIXIR OF LIFE EFFECT
--------- -----------------------------------------------------------------------
31 C0 xor eax,eax ; ~~~needs commentary
31 DB xor ebx,ebx ;
8B 7D 08 mov edi,[ebp+08] ;
8B 0D B0 47 67 00 mov ecx,[006747B0] ;
8D 04 FD 00 00 00 00 lea eax,[edi*8+00] ;
29 F8 sub eax,edi ;
8D 3C 87 lea edi,[edi+eax*4] ;
C1 E7 02 shl edi,02 ;
F6 44 39 10 10 test [ecx+edi+10],10 ;
74 74 je 4E6704 ; unit is unliving, skip artifact checks

8B 4D FC mov ecx,[ebp-04] ;
6A 5E push 5E ; (Ring of Vitality)
E8 C6 2D FF FF call 004D9460 ;
84 C0 test al,al ;
74 0B je 4E66A9 ;
8B 15 B0 47 67 00 mov edx,[006747B0] ;
03 5C 3A 04 add ebx,[edx+edi+04] ; EBX (total health bonus) = tier (0~6)
43 inc ebx ; EBX +1

8B 4D FC mov ecx,[ebp-04] ;
6A 5F push 5F ; (Ring of Life)
E8 AD 2D FF FF call 004D9460 ;
84 C0 test al,al ;
74 10 je 4E66C7 ;
8B 15 B0 47 67 00 mov edx,[006747B0] ;
8B 54 3A 04 mov edx,[edx+edi+04] ; EDX = tier (0~6)
42             inc edx ; EDX +1
6B D2 02 imul edx,edx,02 ; EDX *2
01 D3 add ebx,edx ; Add EDX to EBX (total health bonus)

8B 4D FC mov ecx,[ebp-04] ;
6A 60 push 60 ; (Vial of Lifeblood)
E8 8F 2D FF FF call 004D9460 ;
84 C0 test al,al ;
74 10 je 4E66E5 ;
8B 15 B0 47 67 00 mov edx,[006747B0] ;
8B 54 3A 04 mov edx,[edx+edi+04] ; EDX = tier (0~6)
42             inc edx ; EDX +1
6B D2 03 imul edx,edx,03 ; EDX *3
01 D3 add ebx,edx ; Add EDX to EBX (total health bonus)

8B 4D FC mov ecx,[ebp-04] ;
68 83 00 00 00 push 00000083 ;
E8 6E 2D FF FF call 004D9460 ;
84 C0 test al,al ;
74 0E je 4E6704 ;
8B 15 B0 47 67 00 mov edx,[006747B0] ;
8B 5C 3A 04 mov ebx,[edx+edi+04] ; EBX (total health bonus) = tier (0~6)
43 inc ebx ; EBX +1
6B DB 06 imul ebx,ebx,06 ; EBX *6
EB 17 jmp 4E671D ; 0E66F8~71D is now free space

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 18, 2021 07:59 PM
Edited by BTB at 20:17, 18 Oct 2021.

Yes, you are correct, the required space was wrong, but the code should be correct.

Post your crash log here and I'll see if I can figure it out.

In the the meantime, I updated the guide (again) to fix the new Bless/Curse code (it was very unoptimized before and also breaking specialists) and correct an error with corpses using the same free space that Mermaids and Buoys were.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
deathstare
deathstare


Adventuring Hero
posted October 19, 2021 01:46 PM

BTB said:
Yes, you are correct, the required space was wrong, but the code should be correct.

Post your crash log here and I'll see if I can figure it out.

In the the meantime, I updated the guide (again) to fix the new Bless/Curse code (it was very unoptimized before and also breaking specialists) and correct an error with corpses using the same free space that Mermaids and Buoys were.


It's this. There was a crash when I tried to check the unit information after getting the Vial of Life.


[HOMM3 HD CRASH LOG]

Log
{
compability_dir = D:Heroes3_HotA 한글 DSP+ (새버전)_HD3_DataCompability#hota15
EXE_VERSION & SOD
EXE_VERSION & HOTA

}

HOMM3 HD version: 5.2 RC19
HotA version: 1.6.1

Time {   10/19/2021 20:38:45 }

GUN:  [9974_61Z0_0896_6WY3.HZNHFMT NAZOJ871SYSJ-999O7]

Exception
{
  Module:
  Adress:      [ 0xEA4D9460 ]
  Code:        EXCEPTION_ACCESS_VIOLATION
  Flags:       0x00000000
  Information: read of address: 0xEA4D9460
}

Context { EAX: 0x000002D1, ECX: 0x0593E1B2, EDX: 0x00000005, EBX: 0x00000000, ESP: 0x001995F4, EBP: 0x0019961C, ESI: 0x00199638, EDI: 0x00002EAC }

Call stack
{
  [ 0x004E6390 ] called from [ 0x005F41B1 ]
  ? called from before [ HW_HOTA.dll+0x2412 ]
  [ HW_HOTA.dll+0x23D0 ] called from [ 0x05791AC0 ]
  ? called from before [ HD_HOTA.dll+0x3DAAD ]
  [ HD_HOTA.dll+0x3D970 ] called from [ 0x05631931 ]
  ? called from before [ HD_HOTA.dll+0x1E294 ]
  ? called from before [ 0x00199A5C ]
}

Call stack V2
{
  EA4D9460 (?): (?): (?)
  004E669A (h3hotaHD: 00400000): (?): (?)
  005F41B6 (h3hotaHD: 00400000): (?): (?)
  04E22412 (HW_HOTA: 04E20000): (?): (?)
  05791AC5 (?): (?): (?)
  03B6DAAD (HD_HOTA: 03B30000): (?): (?)
  05631936 (?): (?): (?)
  03B4E294 (HD_HOTA: 03B30000): (?): (?)
  616BADD4 (patcher_x86: 616B0000): (?): GetPatcherX86Version
}

Modules
{
  0x00400000: h3hotaHD.exe (size: 0x002CB000, entry point: 0x00639C00) - D:Heroes3_HotA 한글 DSP+ (새버전)h3hotaHD.exe
  0x10000000: smackw32.dll (size: 0x00025000, entry point: 0x1001084C) - D:Heroes3_HotA 한글 DSP+ (새버전)smackw32.dll
  0x001D0000: binkw32.dll (size: 0x0002B000, entry point: 0x001E1705) - D:Heroes3_HotA 한글 DSP+ (새버전)binkw32.dll
  0x00DD0000: IFC20.dll (size: 0x00023000, entry point: 0x00DDF04E) - D:Heroes3_HotA 한글 DSP+ (새버전)IFC20.dll
  0x00E00000: _hd3_.dll (size: 0x00047000, entry point: 0x00E1890C) - D:Heroes3_HotA 한글 DSP+ (새버전)_hd3_.dll
  0x616B0000: patcher_x86.dll (size: 0x00079000, entry point: 0x616BFE83) - D:Heroes3_HotA 한글 DSP+ (새버전)patcher_x86.dll
  0x02990000: Wogcn.dll (size: 0x00075000, entry point: 0x02A02001) - D:Heroes3_HotA 한글 DSP+ (새버전)Wogcn.dll
  0x61500000: hota.dll (size: 0x001A8000, entry point: 0x61659C5D) - D:Heroes3_HotA 한글 DSP+ (새버전)hota.dll
  0x6EA40000: HD_UPD.dll (size: 0x0003C000, entry point: 0x6EA45405) - D:Heroes3_HotA 한글 DSP+ (새버전)HD_UPD.dll
  0x007A0000: HD_SCX2.dll (size: 0x00021000, entry point: 0x007A6346) - D:Heroes3_HotA 한글 DSP+ (새버전)HD_SCX2.dll
  0x03B30000: HD_HOTA.dll (size: 0x01145000, entry point: 0x03C6DD8F) - D:Heroes3_HotA 한글 DSP+ (새버전)HD_HOTA.dll
  0x04E20000: HW_HOTA.dll (size: 0x0003E000, entry point: 0x04E39757) - D:Heroes3_HotA 한글 DSP+ (새버전)HW_HOTA.dll
  0x21100000: Mss32.dll (size: 0x0005F000, entry point: 0x2112F2E5) - D:Heroes3_HotA 한글 DSP+ (새버전)_HD3_DataMss32.dll
  0x614B0000: cursors.dll (size: 0x0004A000, entry point: 0x00000000) - D:Heroes3_HotA 한글 DSP+ (새버전)_HD3_DataCommoncursors.dll
  0x26F00000: Mp3dec.asi (size: 0x0002A000, entry point: 0x26F0A805) - D:Heroes3_HotA 한글 DSP+ (새버전)_HD3_DataMp3dec.asi
}

Command Line
{
  .h3hotaHD.exe
}

Main INI
{

<Version> = 5002202

<Language> = "#ko.ini"

<Graphics.Resolution> = 1180, 664

<Graphics.Mode> = 3

<Graphics.ComplexFilter> = 2

<Graphics.Threads> = 4

<Graphics.SimpleFilter> = 2

<Graphics.SystemCursors> = 1

<HD+.Settings> = 0, 0, 0, 0, 0, 1, 0, 60000, 60000, 0, 0, 0, 6, 0, 0

<Misc.TournamentSaver> = 0

<Misc.BattleSaver> = 0

<Sys.CPU.ReduceUsage> = 0

<Sys.WriteToIniInsteadRegistry> = 1

<UI.AdvMgr.SkipMapMsgs> = 1

<UI.Battle.Queue> = 1

<UI.Battle.ShowAlwaysHeroInfo> = 1

<UI.ClipCursor> = 1

<UI.DarkTransitions> = 1

<UI.Ext.ScenarioMgr.Settings> = 0, 72, 2, 1, 5, 1, 2, 0, 0, 0, 0, 1, 1, 0

<UI.Ext.ScenarioMgr.Folders> = 1

<UI.Ext.TownMgr.AvailableInsteadGrowth> = 1

<UI.HiRezCore> = 1

<UI.QuickArmyManagementMode> = 0

<UI.RecruitDlg.AutoSet> = 1

<UI.RecruitDlg.AutoSet.Max> = 1

<UI.Tavern.InviteHero> = 1

<Update.CheckAtStart> = 0

<OpenGL.Interpolation> = 2

<OpenGL.Upscaling> = 0

<OpenGL.SmoothMovement> = 1

<OpenGL.Renderer> = 0

<OpenGL.Aspect> = 1

<OpenGL.VSync> = 1

<OpenGL.Colors.HueSat> = 32768500

<OpenGL.Colors.RgbInput> = 65536000

<OpenGL.Colors.RedInput> = 63438848

<OpenGL.Colors.GreenInput> = 61407232

<OpenGL.Colors.BlueInput> = 63176704

<OpenGL.Colors.RgbGamma> = 500

<OpenGL.Colors.RedGamma> = 500

<OpenGL.Colors.GreenGamma> = 500

<OpenGL.Colors.BlueGamma> = 500

<OpenGL.Colors.RgbOutput> = 65536000

<OpenGL.Colors.RedOutput> = 65536000

<OpenGL.Colors.GreenOutput> = 65536000

<OpenGL.Colors.BlueOutput> = 65536000

<OpenGL.Keys.Fullscreen> = 4

<Show Intro> = 1

<AppPath> = "D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;"

<Music Volume> = 2

<Sound Volume> = 2

<Last Music Volume> = 2

<Last Sound Volume> = 2

<Walk Speed> = 3

<Computer Walk Speed> = 3

<Show Route> = 1

<Move Reminder> = 1

<Quick Combat> = 1

<Video Subtitles> = 1

<Town Outlines> = 1

<Animate SpellBook> = 1

<Window Scroll Speed> = 2

<Bink Video> = 1

<Blackout Computer> = 0

<First Time> = 0

<Test Decomp> = 0

<Test Read> = 0

<Test Blit> = 0

<Unique System ID> = "QAV"

<Network Default Name> = "DeathStare"

<Autosave> = 1

<Show Combat Grid> = 0

<Show Combat Mouse Hex> = 1

<Combat Shade Level> = 1

<Combat Army Info Level> = 1

<Combat Auto Creatures> = 1

<Combat Auto Spells> = 1

<Combat Catapult> = 1

<Combat Ballista> = 1

<Combat First Aid Tent> = 1

<Combat Speed>

<Main Game Show Menu> = 1

<Main Game X> = 391

<Main Game Y> = 27

<Main Game Full Screen> = 1

<CDDrive>

<HD.QuickCombat> = 0
}

HKLMSOFTWAREMicrosoftWindows NTCurrentVersion
{
  'Windows 10 Enterprise'  '6.3'  '18362.19h1_release.190318-1202'
}

GetVersionEx { 6.2.9200 () 0x100-0x1 }

Some ingame values
{
  FullScreen Mode = 1
  Game Type       = 0
  Network Game    = 0

            Me: 0
  Active Player: 0
  Active is Human = 1
  Day = 1 11
  Map file = &#49892;&#54744;&#50857;.h3m
  Last RMG Seed = 0
}


 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 19, 2021 02:51 PM
Edited by BTB at 15:20, 19 Oct 2021.

Off-hand, it looks like HotA is trying to inject some code in there somewhere and it's snowing the whole thing up.

This is the string I have from 0E666D-E671C in my Heroes 3 HD.exe file, which works without issue:

31 C0 31 DB 8B 7D 08 8B 0D B0 47 67 00 8D 04 FD 00 00 00 00 29 F8 8D 3C 87 C1 E7 02 F6 44 39 10 10 74 74 8B 4D FC 6A 5F E8 C6 2D FF FF 84 C0 74 0B 8B 15 B0 47 67 00 03 5C 3A 04 43 8B 4D FC 6A 67 E8 AD 2D FF FF 84 C0 74 10 8B 15 B0 47 67 00 8B 54 3A 04 42 6B D2 02 01 D3 8B 4D FC 6A 60 E8 8F 2D FF FF 84 C0 74 10 8B 15 B0 47 67 00 8B 54 3A 04 42 6B D2 03 01 D3 8B 4D FC 68 83 00 00 00 E8 6E 2D FF FF 84 C0 74 0E 8B 15 B0 47 67 00 8B 5C 3A 04 43 6B DB 06 EB 17 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90

(EDIT: updated the guide again to improve the section on Arenas & Library of Enlightenment)

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
deathstare
deathstare


Adventuring Hero
posted October 20, 2021 01:32 PM

BTB said:
Off-hand, it looks like HotA is trying to inject some code in there somewhere and it's snowing the whole thing up.

This is the string I have from 0E666D-E671C in my Heroes 3 HD.exe file, which works without issue:

31 C0 31 DB 8B 7D 08 8B 0D B0 47 67 00 8D 04 FD 00 00 00 00 29 F8 8D 3C 87 C1 E7 02 F6 44 39 10 10 74 74 8B 4D FC 6A 5F E8 C6 2D FF FF 84 C0 74 0B 8B 15 B0 47 67 00 03 5C 3A 04 43 8B 4D FC 6A 67 E8 AD 2D FF FF 84 C0 74 10 8B 15 B0 47 67 00 8B 54 3A 04 42 6B D2 02 01 D3 8B 4D FC 6A 60 E8 8F 2D FF FF 84 C0 74 10 8B 15 B0 47 67 00 8B 54 3A 04 42 6B D2 03 01 D3 8B 4D FC 68 83 00 00 00 E8 6E 2D FF FF 84 C0 74 0E 8B 15 B0 47 67 00 8B 5C 3A 04 43 6B DB 06 EB 17 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90

(EDIT: updated the guide again to improve the section on Arenas & Library of Enlightenment)


I tried again in the way you told, but when I tried to check the information on the unit, there was a crash like below.

[HOMM3 HD CRASH LOG]

Log
{
compability_dir = D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;_HD3_DataCompability#hota15
EXE_VERSION & SOD
EXE_VERSION & HOTA

}

HOMM3 HD version: 5.2 RC19
HotA version: 1.6.1

Time {   10/20/2021 20:28:01 }

GUN:  [9974_61Z0_0896_6WY3.HZNHFMT NAZOJ871SYSJ-999O7]

Exception
{
  Module:
  Adress:      [ 0xEA4D9460 ]
  Code:        EXCEPTION_ACCESS_VIOLATION
  Flags:       0x00000000
  Information: read of address: 0xEA4D9460
}

Context { EAX: 0x0000033A, ECX: 0x0578069E, EDX: 0x000002CB, EBX: 0x00000000, ESP: 0x001995F4, EBP: 0x0019961C, ESI: 0x00199638, EDI: 0x00003578 }

Call stack
{
  [ 0x004E6390 ] called from [ 0x005F41B1 ]
  ? called from before [ HW_HOTA.dll+0x2412 ]
  [ HW_HOTA.dll+0x23D0 ] called from [ 0x058A1AC0 ]
  ? called from before [ HD_HOTA.dll+0x3DAAD ]
  [ HD_HOTA.dll+0x3D970 ] called from [ 0x05841931 ]
  ? called from before [ HD_HOTA.dll+0x1E294 ]
  ? called from before [ 0x00199A5C ]
}

Call stack V2
{
  EA4D9460 (?): (?): (?)
  004E669A (h3hotaHD: 00400000): (?): (?)
  005F41B6 (h3hotaHD: 00400000): (?): (?)
  02BE2412 (HW_HOTA: 02BE0000): (?): (?)
  058A1AC5 (?): (?): (?)
  03BCDAAD (HD_HOTA: 03B90000): (?): (?)
  05841936 (?): (?): (?)
  03BAE294 (HD_HOTA: 03B90000): (?): (?)
  616BADD4 (patcher_x86: 616B0000): (?): GetPatcherX86Version
}

Modules
{
  0x00400000: h3hotaHD.exe (size: 0x002CB000, entry point: 0x00639C00) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;h3hotaHD.exe
  0x10000000: smackw32.dll (size: 0x00025000, entry point: 0x1001084C) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;smackw32.dll
  0x00DC0000: binkw32.dll (size: 0x0002B000, entry point: 0x00DD1705) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;binkw32.dll
  0x00DF0000: IFC20.dll (size: 0x00023000, entry point: 0x00DFF04E) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;IFC20.dll
  0x00E20000: _hd3_.dll (size: 0x00047000, entry point: 0x00E3890C) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;_hd3_.dll
  0x616B0000: patcher_x86.dll (size: 0x00079000, entry point: 0x616BFE83) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;patcher_x86.dll
  0x02990000: Wogcn.dll (size: 0x00075000, entry point: 0x02A02001) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;Wogcn.dll
  0x61500000: hota.dll (size: 0x001A8000, entry point: 0x61659C5D) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;hota.dll
  0x6EA40000: HD_UPD.dll (size: 0x0003C000, entry point: 0x6EA45405) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;HD_UPD.dll
  0x007C0000: HD_SCX2.dll (size: 0x00021000, entry point: 0x007C6346) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;HD_SCX2.dll
  0x03B90000: HD_HOTA.dll (size: 0x01145000, entry point: 0x03CCDD8F) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;HD_HOTA.dll
  0x02BE0000: HW_HOTA.dll (size: 0x0003E000, entry point: 0x02BF9757) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;HW_HOTA.dll
  0x21100000: Mss32.dll (size: 0x0005F000, entry point: 0x2112F2E5) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;_HD3_DataMss32.dll
  0x614B0000: cursors.dll (size: 0x0004A000, entry point: 0x00000000) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;_HD3_DataCommoncursors.dll
  0x26F00000: Mp3dec.asi (size: 0x0002A000, entry point: 0x26F0A805) - D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;_HD3_DataMp3dec.asi
}

Command Line
{
  .h3hotaHD.exe
}

Main INI
{

<Version> = 5002202

<Language> = "#ko.ini"

<Graphics.Resolution> = 1180, 664

<Graphics.Mode> = 3

<Graphics.ComplexFilter> = 2

<Graphics.Threads> = 4

<Graphics.SimpleFilter> = 2

<Graphics.SystemCursors> = 1

<HD+.Settings> = 0, 0, 0, 0, 0, 1, 0, 60000, 60000, 0, 0, 0, 6, 0, 0

<Misc.TournamentSaver> = 0

<Misc.BattleSaver> = 0

<Sys.CPU.ReduceUsage> = 0

<Sys.WriteToIniInsteadRegistry> = 1

<UI.AdvMgr.SkipMapMsgs> = 1

<UI.Battle.Queue> = 1

<UI.Battle.ShowAlwaysHeroInfo> = 1

<UI.ClipCursor> = 1

<UI.DarkTransitions> = 1

<UI.Ext.ScenarioMgr.Settings> = 0, 72, 2, 1, 5, 1, 2, 0, 0, 0, 0, 1, 1, 0

<UI.Ext.ScenarioMgr.Folders> = 1

<UI.Ext.TownMgr.AvailableInsteadGrowth> = 1

<UI.HiRezCore> = 1

<UI.QuickArmyManagementMode> = 0

<UI.RecruitDlg.AutoSet> = 1

<UI.RecruitDlg.AutoSet.Max> = 1

<UI.Tavern.InviteHero> = 1

<Update.CheckAtStart> = 0

<OpenGL.Interpolation> = 2

<OpenGL.Upscaling> = 0

<OpenGL.SmoothMovement> = 1

<OpenGL.Renderer> = 0

<OpenGL.Aspect> = 1

<OpenGL.VSync> = 1

<OpenGL.Colors.HueSat> = 32768500

<OpenGL.Colors.RgbInput> = 65536000

<OpenGL.Colors.RedInput> = 63438848

<OpenGL.Colors.GreenInput> = 61407232

<OpenGL.Colors.BlueInput> = 63176704

<OpenGL.Colors.RgbGamma> = 500

<OpenGL.Colors.RedGamma> = 500

<OpenGL.Colors.GreenGamma> = 500

<OpenGL.Colors.BlueGamma> = 500

<OpenGL.Colors.RgbOutput> = 65536000

<OpenGL.Colors.RedOutput> = 65536000

<OpenGL.Colors.GreenOutput> = 65536000

<OpenGL.Colors.BlueOutput> = 65536000

<OpenGL.Keys.Fullscreen> = 4

<Show Intro> = 1

<AppPath> = "D:Heroes3_HotA &#54620;&#44544; DSP+ (&#49352;&#48260;&#51204;&#65289;"

<Music Volume> = 2

<Sound Volume> = 2

<Last Music Volume> = 2

<Last Sound Volume> = 2

<Walk Speed> = 3

<Computer Walk Speed> = 3

<Show Route> = 1

<Move Reminder> = 1

<Quick Combat> = 1

<Video Subtitles> = 1

<Town Outlines> = 1

<Animate SpellBook> = 1

<Window Scroll Speed> = 2

<Bink Video> = 1

<Blackout Computer> = 0

<First Time> = 0

<Test Decomp> = 0

<Test Read> = 0

<Test Blit> = 0

<Unique System ID> = "QAV"

<Network Default Name> = "DeathStare"

<Autosave> = 1

<Show Combat Grid> = 0

<Show Combat Mouse Hex> = 1

<Combat Shade Level> = 1

<Combat Army Info Level> = 1

<Combat Auto Creatures> = 1

<Combat Auto Spells> = 1

<Combat Catapult> = 1

<Combat Ballista> = 1

<Combat First Aid Tent> = 1

<Combat Speed>

<Main Game Show Menu> = 1

<Main Game X> = 391

<Main Game Y> = 27

<Main Game Full Screen> = 1

<CDDrive>

<HD.QuickCombat> = 0
}

HKLMSOFTWAREMicrosoftWindows NTCurrentVersion
{
  'Windows 10 Enterprise'  '6.3'  '18362.19h1_release.190318-1202'
}

GetVersionEx { 6.2.9200 () 0x100-0x1 }

Some ingame values
{
  FullScreen Mode = 1
  Game Type       = 0
  Network Game    = 0

            Me: 0
  Active Player: 0
  Active is Human = 1
  Day = 1 11
  Map file = &#49892;&#54744;&#50857;.h3m
  Last RMG Seed = 0
}

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 20, 2021 02:26 PM

Yeah, your problem is with HotA.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 20, 2021 07:47 PM

All right, well... this one took some real doing, but I got Garrisons to act as forts (i.e. siege battles). Kinda proud of this one.

Only real sticking point was what to do with garrisons on sand, since there are no sand castles. Eventually decided to punt them over to rough (Stronghold).

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Phoenix4ever
Phoenix4ever


Legendary Hero
Heroes is love, Heroes is life
posted October 20, 2021 08:12 PM
Edited by Phoenix4ever at 20:27, 20 Oct 2021.

That sounds cool BTB. Fort makes much more sense than an open battlefield. In HotA there are also garrisons at sea, but I don't suppose you have done anything with them?
Other than looking nicer, there is'nt much benefit to having a Fort though, except if there are shooters behind the wall, it might be a bit harder to reach them.
But this gives a bit more use to Ballistics, Earthquake, Forgetfulness and Teleport, so that's pretty nice.

I don't know if it would make sense to upgrade the garrisons to Citadels or Castles though, it probably would'nt, since there is not supposed to be a moat, that would make them even more useful though.
Ideally there should be a gate and two arrow towers, but no moat or center tower, but that is probably easier said than done...

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 20, 2021 08:35 PM

The sticking point with most everything you've said is that the only wall graphics in the game are town graphics and there are no towns at sea. We could make them citadels or castles, but then the units manning the arrow towers may look really out of place since, again, we're pretty much stealing the setup from a town siege.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Phoenix4ever
Phoenix4ever


Legendary Hero
Heroes is love, Heroes is life
posted October 20, 2021 08:47 PM
Edited by Phoenix4ever at 20:52, 20 Oct 2021.

Yeah that makes sense.
So the garrisons depend on which terrain they are located on right? What about grass then?, is it Castle, Rampart or Conflux? I guess swamp is Fortress. (In HotA Cove is also in swamp, but Fortress is fine to represent swamp.)
HotA also added two new land terrains, Highlands (New Conflux terrain) and Wasteland, (For their second unreleased faction Factory.) but I suppose the fort garrisons would'nt work on these terrains?

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 20, 2021 08:57 PM
Edited by BTB at 20:59, 20 Oct 2021.

It's all manually selected.

[code]
83 FA 01 cmp edx,01 ; Sand > Stronghold
74 16 je 4A0FCC ;
83 FA 04 cmp edx,04 ; Swamp > Fortress
74 13 je 4A0FCE ;
83 FA 00 cmp edx,00 ; Dirt > Rampart
74 10 je 4A0FD0 ;
83 FA 07 cmp edx,07 ; Lava > Inferno
74 0E je 4A0FD3 ;
83 FA 02 cmp edx,02 ; Grassland > Castle
74 0B je 4A0FD5 ;
EB 0A jmp 4A0FD6 ; All others (-1)
42 inc edx ;
42 inc edx ;
42 inc edx ;
42 inc edx ;
42 inc edx ;
EB 04 jmp 4A0FD7 ;
4A dec edx ;
4A dec edx ;
4A dec edx ;
4A dec edx ;
[/code]

The others, then, would be Sub-T > Dungeon, Snow > Tower, and Rough > Stronghold.

We're literally calling siege battles for whatever towns. It's POSSIBLE to dig a little deeper and do overrides for different terrain, but then you run into the problem that there's no siege backgrounds for those terrains and they look really fugly.

On the plus side, this looks kind of amusing:

https://cdn.discordapp.com/attachments/692895170722660434/900412666781237248/unknown.png

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Phoenix4ever
Phoenix4ever


Legendary Hero
Heroes is love, Heroes is life
posted October 20, 2021 09:01 PM

Dirt should be Necro imo, Necro's native terrain is dirt.
That would mean there would be no garrison for Rampart and Conflux (and Cove and Factory) though.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 20, 2021 09:09 PM

It's fully customizeable; I went with Rampart because Rampart's terrain is Dirt in my hack.

Anyway, I've also got the Magog fireball explosion respecting fire immunity and visiting a Den of Thieves on the map gives the visiting hero expert-level Visions for the rest of the turn.

Also done but still to be put in the guide is a diplomacy change where the second sympathy point comes from hero faction instead of army majority, towns looking UP to find a place to build a boat instead of down, and Libraries/Arenas requiring a combined Attack/Defense (or Magic/Knowledge) stat of 10 for entry instead of level 10.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Phoenix4ever
Phoenix4ever


Legendary Hero
Heroes is love, Heroes is life
posted October 20, 2021 09:19 PM

Okay and great that you keep discovering things, the more we know the better.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
NimoStar
NimoStar


Honorable
Supreme Hero
Modding the Unmoddable
posted October 20, 2021 11:56 PM

I think just the wall is fine. In Heroes 4 we have that mechanic of garrisons acting as forts, actually.

However, it's not so interesting considering there is no wall destruction, earthquake or siege machines...
____________
https://www.moddb.com/mods/heroes-iv-ultimate/

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
deathstare
deathstare


Adventuring Hero
posted October 21, 2021 03:45 PM

Can we change routine of DISGUISE to Mass Dispel? I want to change the useless DISGUISE to Mass Dispel.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
BTB
BTB


Famous Hero
Moist & Creamy
posted October 21, 2021 09:03 PM

Seeing as we already have a Dispel spell... you just want to remove Disguise, then.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
deathstare
deathstare


Adventuring Hero
posted October 22, 2021 04:19 PM

BTB said:
Seeing as we already have a Dispel spell... you just want to remove Disguise, then.


I want to divide the dispel into two types. One is for single targets, and the other is a mass dispel that can eliminates obstacles.

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This thread is 23 pages long: 1 2 3 4 5 ... 10 ... 19 20 21 22 23 · «PREV / NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.1118 seconds