|
|
nero468
Tavern Dweller
|
posted November 12, 2024 07:23 PM |
|
|
Thanks a lot. We have found everything but aren't sure how to do it correctly. I'm fairly new to hex editing. Can you show us what to change exactly when we want to modify the type of a spell. So that for example blind only lasts for 2 round no matter the spellpower.
|
|
AlexSpl
Responsible
Supreme Hero
|
posted November 12, 2024 09:23 PM |
|
Edited by AlexSpl at 21:24, 12 Nov 2024.
|
There's no universal solution. Maybe this thread would be of help, as there you can find many examples of how to make small patches (check out the "4. SPELL" section particularly). Still being technically hex-editing, writing such patches requires some knowledge of assembly language.
|
|
AlexSpl
Responsible
Supreme Hero
|
posted November 14, 2024 02:31 PM |
|
|
Try to look into h3hota.exe instead, at 0x63EA68 you'll find modifiers for None/Basic/Advanced/Expert Logistics.
|
|
SilverG
Known Hero
|
posted November 16, 2024 02:24 PM |
|
|
Is there a way to manipulate the RMG to consider the: Throng, Swarm, Zounds and Legion numbers while generating the map?
I mean entering the Monsters:"Strong" and Value:"50000 - 500000" just keeps spawning "Hordes" of lvl1 creatures on the map.
|
|
phoenix4ever
Legendary Hero
Heroes is love, Heroes is life
|
posted November 21, 2024 07:26 PM |
|
|
Is there any way to make Town Portal work on water? (It is one the reasons I hate being on water, cause I can't defend my towns.)
Also can Dimension Door be made to NOT work on water?
(Not sure if I will implement the above, if possible. I was just curious.)
|
|
AlexSpl
Responsible
Supreme Hero
|
posted November 25, 2024 11:31 AM |
|
Edited by AlexSpl at 11:35, 25 Nov 2024.
|
Quote: Is there any way to make Town Portal work on water?
Only with a boat along, in hex - 1D682: 74 -> EB. I think you understandeth that evacuating a hero from a boat is not a trivial task to do in a hex-editor.
Quote: Also can Dimension Door be made to NOT work on water?
This can be done without much pain in ... hex, as there's no need in evacuation. Though it's still time-consuming patch, so feel free to write it for yourselves for free in your free time
|
|
phoenix4ever
Legendary Hero
Heroes is love, Heroes is life
|
posted November 25, 2024 12:04 PM |
|
|
Thanks Alex
Yeah I just tested the TP hack and of course it teleports the entire boat to town, so I guess there NEEDS to be water directly outside every town for this to work, so not very practical.
But okay, then we learned this as well.
|
|
Csaros
Hired Hero
|
posted November 26, 2024 01:10 PM |
|
Edited by Csaros at 09:37, 27 Nov 2024.
|
Is it possible to edit turn order? Specifically when arrow towers / catapult / ballista / first aid tent move within the round. I'd like to bump Ballista and the tent to the beginning (preferably Arrow Towers - Catapult - Tent - Ballista - Units).
I know increasing Speed of the Tent or the Ballista would work, but then they can move and when somebody moves them, the game crashes.
|
|
ArchDruid
Adventuring Hero
|
posted November 27, 2024 01:38 AM |
|
|
Hello Everyone!
I'm seeking help for some Hex editing.
Where do I find in the Homm3.exe the stored values of Spyglass and Speculum artifacts?
Both these artifacts give +1 scouting radius, when equipped. I'd like to change the radius of Speculum to +2 and change it to a minor artifact.
I found the values in artraits.txt, that's not a problem. I just can't find the location in the exe file.
Please somebody help!
|
|
SilverG
Known Hero
|
posted November 27, 2024 08:02 AM |
|
Edited by SilverG at 08:03, 27 Nov 2024.
|
ArchDruid said: Hello Everyone!
I'm seeking help for some Hex editing.
Where do I find in the Homm3.exe the stored values of Spyglass and Speculum artifacts?
Both these artifacts give +1 scouting radius, when equipped. I'd like to change the radius of Speculum to +2 and change it to a minor artifact.
I found the values in artraits.txt, that's not a problem. I just can't find the location in the exe file.
Please somebody help!
SCOUTING
--------------------------------
23E828 Speculum
23E82C Spyglass
------ --------
These are only for the ATK/DEF/SP/KNOW skills
SPYGLASS & SPECULUM
-------------------
These are named at 0E4355 and 0E4392, respectively. Their +1 visibility bonuses are coded as increments to EBX (43) at 0E438A and 0E43C6, respectively.
--------------------------------------------------------------------
If we could edit this in a way to say make it a fixed byte... Nut sure need Expert Help here. Maybe a Push Byte: 6A XX....
|
|
Csaros
Hired Hero
|
posted November 27, 2024 09:31 AM |
|
|
43 is inc ebx. It increases the ebx register by 1. To get it to add 2, you need to either use 43 43 (inc ebx twice) or 83 c3 02, as 83 c3 02 is add ebx, 2 (which adds 2 to the ebx).
Since there is no space, you need to first jump to some free space (using E9 XX XX XX XX or EB XX), type in whatever code you removed to facilitate that jump, and replace the 43 with either 43 43 or 83 c3 zz.
|
|
AlexSpl
Responsible
Supreme Hero
|
posted November 27, 2024 11:31 AM |
|
Edited by AlexSpl at 11:34, 27 Nov 2024.
|
Quote: Is it possible to edit turn order? Specifically when arrow towers / catapult / ballista / first aid tent move within the round.
See the following fragment of code @ 0x473BBC -
automaticTurn[0] = combatManager::automate_first_aid_tent(this);
if ( this->fortificationLevel >= eFortificationCitadel )
{
if ( this->Armies[this->currArmyGroup][this->currArmyIndex].armyType == CREATURE_ARROW_TOWER )
{
switch ( this->Armies[this->currArmyGroup][this->currArmyIndex].gridIndex )
{
case LOWER_TOWER_DRAW_GRIDINDEX:
cellIx = 13;
break;
case MAIN_BUILDING_GRIDINDEX:
cellIx = 14;
break;
case UPPER_TOWER_GRIDINDEX:
cellIx = 5;
break;
default:
cellIx = msg;
break;
}
if ( this->wallLevel[cellIx] )
{
if ( !combatManager::IsQuickCombat(this) )
{
v21 = &this->Armies[this->currArmyGroup][this->currArmyIndex];
if ( !combatManager::is_computer_action(this) )
{
msg_3 = 0;
goto LABEL_46;
}
}
combatManager::automate_ballista(this);
combatManager::ResetMouse(this);
}
else
{
v10 = &this->Armies[this->currArmyGroup][this->currArmyIndex];
v10->sMonInfo.attributes |= CF_IMMOBILIZED;
this->iNextAction = 12;
}
...
As you can see, turn order of siege weapons is heavily hard-coded and determined by the order of method calls, such as combatManager::automate_first_aid_tent(this); and combatManager::automate_ballista(this); in the above fragment. And don't forget about AI and its battle simulation, which also uses determined move order. So, even if you somehow manage to change move order of siege weapons for human players, AI won't be acknowledged of that change obviously. Therefore, I don't think you can do much here in hex.
|
|
purerogue3
Known Hero
|
posted November 27, 2024 05:16 PM |
|
|
Does the AI consider non-stat abilities (Attack A, B, Resistance A, B) etc?
So if you give a new ability (similar to Joust) the AI is ignorant of it, its not capable of machine-learning /simulation?
|
|
FfuzzyLogik
Known Hero
|
posted November 27, 2024 08:55 PM |
|
|
Hello,
Yes, some abilities are "programmed to be considered".
For example, jousting is used : IA use cavaliers and "moove more" to maximize damage due to jousting...
I'm also quite sure some are not used. For example, if you have a wraith in front IA won't calculate the "mana drain" and calculate if its better to kill some stack to get enough mana instead of an other stack of creatures...
But hoping any IA learning on such an old game... No ! How you can imagine a game from 1999 can have that ??? Even on far more recent games, there is absolutely no deep learning ! I'd say even on actual games there is not !
Don't hope the initial program to take care of any ability you add and "learn it" or "consider it"... You'll have to take care of how IA use it and add progamming things to calculate when this may be used. To the "best" it may use "the best damage" possible" but I think more chances it will not consider it at all... And it can eventually cause some bugs...
____________
FfuzzyLogik.
If I'm crazy ? Sure, because its madness to be normal...
|
|
purerogue3
Known Hero
|
posted November 27, 2024 09:20 PM |
|
|
Hi,
I was wondering if it operated by heuristics as you said or consider possible moves by damage..
Guess it means if we are moving abilities to keep the same unit number and change graphics etc. instead
And not to expect AI to consider any new abilities, even if simple, you have added..
So the AI will lose a little ability compared to human player once you start changing things without augmenting AI.
edit: Does it consider Life Drain? No retal, paralyze etc?
They would have to be specifically named.
|
|
SilverG
Known Hero
|
posted December 03, 2024 09:27 PM |
|
|
Is there a way to manipulate the RMG to consider the: Throng, Swarm, Zounds and Legion numbers while generating the map?
I mean entering the Monsters:"Strong" and Value:"50000 - 500000" just keeps spawning "Hordes" of lvl1 creatures on the map.
|
|
|