Inside a code cave it’s better to use ldr ?,label and label: (the value). This way user can customize it directly with Breeze without addition tool
Post automatically merged:
Banner Saga 2.59.06 TID: 0100465008756000 BID: 1A21C8B4419B207F
@prof72 I have taken a look at the game, it looks like it is data driven. Meaning that the code is generic and is being applied to almost everything in the game. How the game behave is driven by the data. Looking into what the code does will show that hacking it will affect the game in so many ways it's like hacking away the pillar will bring down the building and just just the floor where the pillar is at. This also mean that pointer is very hard to find and most will turn out to be no good at some point in the game. To hack the game the data needs to be examined and acted upon as it pass through the game code.
I found only one pointer code that seems to work but I won't be surprised at some point it may stop working.
[shield = 1000 for character in focus (friend and foe) so use a conditional key for this one]
580F0000 015AA6A8
580F1000 00000000
580F1000 00000038
580F1000 00000090
580F1000 000001D8
580F1000 000001B8
780F0000 00000084
640F0000 00000000 000003E8
If anyone interested to know more about my observation vote with "like" and if there is enough interest I will do a more detail write up on data driven game code and my 2 cents on how to hack them.
View attachment 331628
This is how the data looks like with shield, similar pattern can be found with the other attributes.
The question is which piece of data can be used to decide what to do. To find the code to hook is super easy as the same code is used to access all the data, find any data and you find the code to hook.
Yeah , this game is strange ,when I did mine was at the left side, if the bad guy starts on that side he gets the armor
As I mentioned before all 3 of the Banner Saga series are procedural generated code, i.e scripted.. so its all done dynamically, loaded when needed, unloaded when not needed. code isn't there to patch if it doesn't exist or run at least once (needed).
It is similar to how Civilization games are done - I did make codes for all 3 of these games (engine) originally, I'm trying to dig them up from my archives.
I do remember they were a PITA