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 ]
New Server | HOMM1: info forum | HOMM2: info forum | HOMM3: info forum | HOMM4: info forum | HOMM5: info forum | MMH6: wiki forum | MMH7: wiki forum
Heroes Community > Heroes 3.5 - WoG and Beyond > Thread: How to edit HotA?
Thread: How to edit HotA? This thread is 12 pages long: 1 2 3 4 5 6 7 8 9 10 11 12 · NEXT»
Baronus
Baronus


Supreme Hero
posted January 20, 2016 11:31 AM
Edited by Baronus at 11:07, 23 Jan 2016.

Baronus

It is possible edit all hero skills in Heroes III. Everybody can.
First you need Hex editor. Eg. Frhed. Freeware.
http://frhed.sourceforge.net/en/
And open HotA.exe. See heroes3.exe to compare.
You can find in HotA exe the same area like Heroes3.exe and look at this:
http://www.celestialheavens.com/forum/7/14543
Modding guide in polish:
http://soe.bnx.pl/readarticle.php?article_id=6
Basic Heroes III Hero editing:
Line 0x279DD0 (in  heroes3.exe in Hota near this value)
0A 00 00 00 0B 00 00 00 0C 00 00 00 D1 00 00 00 P1 00 00 00 D2 00
00 00 P2 00 00 00 SB 00 00 00 FF FF FF FF
S1 00 00 00 S2 00 00 00 S3 00 00 00 XX XX XX 00 YY YY YY 00 01 01
First hero:
00 00 00 00 07 00 00 00 00 00 00 00 06 00 00 00 01 00 00 00 01 00
00 00 01 00 00 00 00 00 00 00 FF FF FF FF
00 00 00 00 02 00 00 00 04 00 00 00 44 F1 67 00 34 F1 67 00 01 01
0A - sex [ 00 - m /01 - w]
0B - race [07 - human]
0C - profession [00 - knight 01 - cleric, 02 - ranger etc. see herotraits table for number or erm
tool guide. ]
D1 - first skill [00 - pathfinding, 01 - archery see herotraits table for number or erm tool guide. ]
P1 - first skill level [ 01 - basic, 02 - advanced, 03 - expert]
D2 - second skill
P2 - sec. sk. level
SB - spellbook yes 01, no - 00 .
FF FF FF FF - starting spell (no for knight) see spell table txt for number or erm tool guide.
S1, S2, S3 - start units 00 - pikeman , 01- halabardier etc. se crtraits.txt for number or erm tool
guide.
XX XX XX - dont change
YY YY YY - dont change
00 01 01 - ????

HotaA heroes editing.

Found by Dixlot.

HotA heroes are in HotA dat. Its a short file and  heroes are at the start. First is biography and rest the same like heroes3.exe. You can edit all using HexD editor.

Changing skills. Editing skills is too possible. See:
www.celestialheavens.com/forum/7/8806?start=100
Here are the offsets along with some of the commonly used percent values that I wrote down.
offset: 0x0023e998(luck)
offset: 0x0023e9a8(leadership)
offset: 0x0023e9b8(necromancy)
offset: 0x0023e9c8(mysticism)
offset: 0x0023e9d8(scouting)
offset: 0x0023e9e8(archery)
offset: 0x0023e9f8(offence)
offset: 0x0023ea08(armorer)
offset: 0x0023ea18(estates)
offset: 0x0023ea28(eagle eye)
offset: 0x0023ea38(diplomacy)
offset: 0x0023ea48(resistance)
offset: 0x0023ea58(learning)
offset: 0x0023ea68(logistics)
offset: 0x0023ea78(sorcery)
offset: 0x0023ea88(intelligence)
offset: 0x0023ea98(first aid)
Some Percentages:
05% - CD CC 4C 3D
07% - 29 5C 8F 3D
0.0833333333 - AB AA AA 3D
10% - CD CC CC 3D
14% - 29 5C 0F 3E
15% - 9A 99 19 3E
0.1666666667 - AB AA 2A 3E
18% - EC 51 38 3E
20% - CD CC 4C 3E
25% - 00 00 80 3E
30% - 9A 99 99 3E
40% - CD CC CC 3E
45% - 67 66 E6 3E
60% - 9A 99 19 3F
Here's a site that converts values.
http://babbage.cs.qc.edu/IEEE-754/
20 % you must write 0.2, 80% = 0.8 etc.

Movement is in tables (Logistics).
Catapult too in txt. Elemental magic you can edit too in txt.
You must edit HotA txt tables NOT game txt tables. And then HotA DAT using HexD editor.
HotAeng.lod
Using MMArchive and Txtedit
https://sites.google.com/site/sergroj/mm

And thats all. :-)

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


Hired Hero
posted January 20, 2016 11:54 AM
Edited by tax_375 at 11:55, 20 Jan 2016.

Thank you for the detailed information Great to have a short guide/summary!

Is it possible to bring back banned heroes by default?

For example Galthran.

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


Supreme Hero
Heroes is love, Heroes is life
posted January 20, 2016 12:18 PM
Edited by phoenix4ever at 12:28, 20 Jan 2016.

Thanks for this guide Baronus.

About editing the skills in HotA, which file is that?
HotA.dat?, or is it only for editing heroes?
HotA.dat and HiScore.dat seems to be the only .dat files I can find...

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


Supreme Hero
posted January 20, 2016 12:42 PM
Edited by Baronus at 13:04, 20 Jan 2016.

At this moment I know nothing about Galthran.
Editing heroes from SoD --> HotA.exe and herotratis.txt from HotAeng.lod
Editing heroes from HotA--> HotA.dat (only I suppse)
Editing skills --> HotA.exe and spell.txt and other txt HotAeng.lod and maybe HotA.dat (at this moment I dont know).
HotA dat is short, there is no problem searching inside.

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


Hired Hero
posted August 24, 2016 07:50 AM

I have investigated a little bit further regarding Galthran and other heroes. The switch between enable or disable a hero by "default" must be somewhere in homm3/hota map editor or homm3/hota exe file. I have excluded all other data files and its neither in the hero starting sskills, starting spells etc... part of the executable files (linked above - when you look the files with hex editor).

Is it possible when you start a new game and choose towns/heroes/resource the game.exe file somehow use map editor.exe to set the chosen town/hero? Because in this case I think the "default hero switch" must be somewhere in the map editor.exe file?

Any ideas, suggestions on this one?

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


Supreme Hero
posted August 24, 2016 09:03 PM

I dont know how they do it. I think that maybe by replacement data between Mullich and Haart. Or maybe by script? I dont know where is replacement. There are two heroes named sir Haart in exe and in txt. There is limit default heroes 16 for town. But you can play it using map configurations. Copy map, go to editor and put Mullich in your town. You must in map properties sign Mullich yes. And you play Mullich.

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


Supreme Hero
Work at Magic Dimmension
posted August 25, 2016 12:42 AM

Baronus said:
I dont know how they do it. I think that maybe by replacement data between Mullich and Haart. Or maybe by script? I dont know where is replacement. There are two heroes named sir Haart in exe and in txt. There is limit default heroes 16 for town. But you can play it using map configurations. Copy map, go to editor and put Mullich in your town. You must in map properties sign Mullich yes. And you play Mullich.


One Lord Haart is from Castle, and one from Necropolis (the second one is from campaign). Sir Mullich was added because there was one hero less for campaign since in those campaign Haart from Castle was off (because in Lore both Haarts are the same person).

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


Adventuring Hero
posted August 25, 2016 07:11 AM

What will I do when the game is updated ? So I have to edit the whole HotA.dat file again ?

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


Hired Hero
posted August 25, 2016 08:34 AM
Edited by tax_375 at 08:57, 25 Aug 2016.

To Baronus: Yes I know that in map editor I can set the Heroes to be playable. I try to create this small modification for a couple of my friends I am playing with. Map editing isn't an option because we like to play random maps, so it would be annoying before each game to modify the generated random map and also who sets the heroes in map editor could see the map before the gameplay . But I won't give up search continues..

Which one of the txt files contain the 2 sir haart?

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


Supreme Hero
posted August 26, 2016 10:09 AM

In herotraits eg. All txt with hero in name and heroes list.

Yes you must update each new HotA version.
Note your changes in notebook and made text document. And you can only copy past. Its faster.

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


Hired Hero
posted August 30, 2016 08:36 PM

Okay I tested these (learning skill for example) txt files but changing the text files only change game text not the game play itself so all skills etc...has to be in the game.exe file. If you want to change anything game play related, its in the exe

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


Supreme Hero
posted September 01, 2016 12:35 AM
Edited by Baronus at 00:37, 01 Sep 2016.

No. Skill probability is in txt. Attributtes prob too. Tavern prob. too. Number of monsters too. I this case txt is executable.

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


Hired Hero
posted September 01, 2016 08:55 AM

Yes I wasn't exact, you are right, but anyway changing the SSTRAITS.txt didn't worked for me.

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


Supreme Hero
posted September 04, 2016 10:57 PM

SSTRAITS is txt executable file. But DESCRIPTION only! If you change skill as I wrote in first post, skill description is not correct. You must change it too. Example in my version learning give 100% exp. And I changed sstraits from 15 to 100%.

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

Hero of Order
Part of the furniture
posted September 05, 2016 01:37 AM
Edited by Maurice at 09:59, 05 Sep 2016.

Baronus said:

Some Percentages:
05% - CD CC 4C 3D
07% - 29 5C 8F 3D
0.0833333333 - AB AA AA 3D
10% - CD CC CC 3D
14% - 29 5C 0F 3E
15% - 9A 99 19 3E
0.1666666667 - AB AA 2A 3E
18% - EC 51 38 3E
20% - CD CC 4C 3E
25% - 00 00 80 3E
30% - 9A 99 99 3E
40% - CD CC CC 3E
45% - 67 66 E6 3E
60% - 9A 99 19 3F



The first two bytes of each four you list here aren't part of the actual percentage. They determine the speed at which the percentages increase; as such, you need to reorganize your list based on the first two bytes:

05% - CD CC 4C 3D
10% - CD CC CC 3D
20% - CD CC 4C 3E
40% - CD CC CC 3E

07% - 29 5C 8F 3D
14% - 29 5C 0F 3E

0.0833333333 - AB AA AA 3D
0.1666666667 - AB AA 2A 3E

15% - 9A 99 19 3E
30% - 9A 99 99 3E
60% - 9A 99 19 3F

18% - EC 51 38 3E

25% - 00 00 80 3E

45% - 67 66 E6 3E

As you can see from the sets that have multiple percentages, they increase in step size by 80 (HEX, not decimal; in decimal the step size is 128!) on the third byte each time and each step the percentage doubles.

Keep in mind that it's Little Endian format, so the smallest byte is on the left and subsequent bytes increase in size. Converting those third and fourth byte hexadecimal values to decimals, we get the following list:

CD CC
05% - 4C 3D - 15692
10% - CC 3D - 15820 (and 15820 - 15692 = 128)
20% - 4C 3E - 15948 (and 15948 - 15820 = 128)
40% - CC 3E - 16076 (and 16076 - 15948 = 128)

29 5C
07% - 8F 3D - 15759
14% - 0F 3E - 15887 (and 15887 - 15759 = 128)

AB AA
8.33% - AA 3D - 15786
16.67% - 2A 3E - 15914 (and 15914 - 15786 = 128)

9A 99
15% - 19 3E - 15897
30% - 99 3E - 16025 (and 16025 - 15897 = 128)
60% - 19 3F - 16153 (and 16153 - 16025 = 128)

EC 51
18% - 38 3E - 15928

00 00
25% - 80 3E - 16000

67 66
45% - E6 3E - 16102

I wouldn't be surprised is the first two bytes are a pointer to a starting percentage value somewhere else in the data file.

Basically, the generic formula seems to be:

PERCENT = BASE_PERCENT * 2 ^( ( OFFSET_VALUE - BASE_VALUE ) / 128 )

Where BASE_PERCENT is some start percentage, the BASE_VALUE being the 3rd and 4th byte belonging to that start percentage and OFFSET_VALUE the corresponding value from the list above. I can't fathom the reason for such a non-linear function, however. But maybe it's because I am too sleepy at the time of writing this.

Edit: After making this post, I checked the executable itself and found the mentioned values at the mentioned address. The information is presented in an awkward fashion there and indeed mixed up. I'll see if I can get the complete information from that section and translate it.

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

Hero of Order
Part of the furniture
posted September 05, 2016 07:52 PM
Edited by Maurice at 19:55, 05 Sep 2016.

I've made a closer examination of the specific section listed and I've encountered the following values:


5    CD CC 4C 3D
10   CD CC CC 3D
15   9A 99 19 3E
20   CD CC 4C 3E
25   00 00 80 3E
30   9A 99 99 3E
40   CD CC CC 3E
50   00 00 00 3F
60   9A 99 19 3F
100  00 00 80 3F
200  00 00 00 40
300  00 00 40 40


The progression in these values don't make much sense to me, but I've found the same table in the HotA exe as well as the H3 exe.

What I did learn, though, is that First Aid actually provides 100, 200 and 300 healing bonus respectively. Not sure how this works out ingame though (whether it's a static amount of HP added, or a percentage increase as the value seems to imply), as I usually don't pay much attention to the First Aid Tent.

What I am unsure of, though, is where the other skills are listed. Tactics, Artillery, Ballistics, Pathfinding, Navigation, Scholar, Wisdom and the four Magic Schools are missing from this list, apparently.

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


Supreme Hero
posted September 06, 2016 12:03 PM
Edited by Baronus at 12:15, 06 Sep 2016.

Good you reorganize these values.
Yes I thought too how is formula of that but no so long:-) I dont have solutin but I can link another online calculator:
http://www.h-schmidt.net/FloatConverter/IEEE754.html
For all beware! Remember you must reverse it using calculator!
5% = 0.05 = CD CC 4C 3D (in game) --> 3D 4C CC CD (calculator)
Skills are in:
(luck) points
(leadership) points
(necromancy) percent of CD CC CC 3D = 10%
(mysticism) points (basic hero regeneration and with 3 levels bonuses)
(scouting) points (basic hero look and with 3 levels bonuses)
(archery) bonus percent CD CC CC 3D = 10%
(offence) bonus percent CD CC CC 3D = 10%
(armorer) bonus percent CD CC CC 3D = 10%
(estates) number of gold 1000 = 1000g
(eagle eye) percent of CD CC CC 3D = 10%
(diplomacy) percent of CD CC CC 3D = 10%
(resistance) percent of CD CC CC 3D = 10%
(learning) bonus percent CD CC CC 3D = 10%
(logistics) bonus percent CD CC CC 3D = 10% (Daily movement is in txt tables you can correct it there. Here is bonus to this value 25, 50, 100%)
(sorcery) bonus percent CD CC CC 3D = 10%
(intelligence) bonus percent CD CC CC 3D = 10%
(first aid) bonus percent CD CC CC 3D = 10% ( basic is 25 health points, so  2 = 50 hp , 6 = 150hp , 14 = 350 hp)
ballistics - in txt tables you can correct wall power and probablity of destroy it.
wisdom, air, water, earth, fire - in txt tables you can correct mana cost, city probability and I think level and spell school too.
23 skills you can correct.
Tactics, Artillery, Pathfinding, Navigation, Scholar - at this moment I dont know how to edit. Hard codded probably.

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


Supreme Hero
Heroes is love, Heroes is life
posted September 06, 2016 01:07 PM

If anything needs "correction", it's Learning, Eagle Eye, First Aid & Mysticism, unfortunately I have no luck doing that.

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

Hero of Order
Part of the furniture
posted September 06, 2016 03:21 PM

Baronus said:
For all beware! Remember you must reverse it using calculator!
5% = 0.05 = CD CC 4C 3D (in game) --> 3D 4C CC CD (calculator)


That the difference between representing the value in Little Endian or in Big Endian. CD CC 4C 3D is the Little Endian representation, while 3D 4C CC CD is the Big Endian representation. For most consumer computers, Little Endian is the standard.
____________
The last Reasonable Steward of Good Game Design and a Responsible Hero of HC. - Verriker

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


Hired Hero
posted September 08, 2016 12:05 AM
Edited by tax_375 at 00:06, 08 Sep 2016.

With Baronus and Maurice's replies I can see now the full "picture". I was able to successfully modify the Learning, Misticism and Sorcery skills and get some boost to the magic heroes. Thank you guys, you are awesome!

 Send Instant Message | Send E-Mail | View Profile | Quote Reply | Link
Jump To: « Prev Thread . . . Next Thread » This thread is 12 pages long: 1 2 3 4 5 6 7 8 9 10 11 12 · NEXT»
Post New Poll    Post New Topic    Post New Reply

Page compiled in 0.0705 seconds