Forum Replies Created
-
AuthorPosts
-
November 1, 2011 at 5:50 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39622
ludmeister
ParticipantNo… I've not noticed that. I'll have to check more closely from here on. I'll let you know about anything I find.
Did you resurrect the officer during the battle? My theory is that their Agility is zeroed for the battle. The game resets an officer's Agility before every battle (I found this out because when you trade Chi Tu Ma/Red Hare from officer to officer, their Agility stat does not update until you've fought a battle).
When all else fails... manipulate the source code.
November 1, 2011 at 5:07 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39620ludmeister
ParticipantIt definitely was edited… I don't know exactly how Agility works, but there certainly is a good deal of randomness about the order of turns in battle.
Some interesting things about Agility that placing Agility in the status screen has gleaned:
Chi Tu Ma/Red Hare increases Agility by an additional 50%. If the resulting value is greater than 255, it will award that officer 255 Agility.
There are a handful of "special" generals that actually gain Agility increases as the game's Chapter increases. This is as shown below (this is found through gameplay, and not code inspection):
Chapter 1- Game beginning until Liu Bei accepts lordship of Xu Zhou
Chapter 2- The following story up until Liu Bei arrives at Chang An
Chapter 3- I believe that the game determines you are in Chapter 3 until Yuan Shao ambushes you
Chapter 4/5- Until you fight your first Shu based battle
Chapter 6- For game purposes, you are in Chapter 6 until Liu Bei gives his long speech about not usurping the throne, but ordering an attack against Wu and Wei
Chapter 7- Presumably, you are in Chapter 7 until you fight your first battle in Wei's province
{EDIT} The generals that I have found that gain Agility are:
Guan Yu
Zhang Fei
Zhao Yun
Huang Zhong
Pang Tong
Zhu Ge Liang
Ma Chao
Guan Xing
Zhang Bao
For the sake of illustration, each of these generals begin at "X" Agility.
Chapter 1: Agility = X
Chapter 2: Agility = X * 5 / 4
Chapter 3: Agility = X * 3 / 2
Chapter 4/5: Agility = X * 7 / 4
Chapter 6: Agility = X * 17 / 8 (approximate… but is greater than 200%!)
Chapter 7/8: Agility = X * 2
I thought this was extremely interesting, as it shows the Shu army's expertise in fighting in their home land.
However… the catch with this multiplication is that if the value exceeds 255… it wraps back around to 0. Stinky. So when modifying these 9 generals, do not give them an Agility any higher than 120… maybe even 116 to be safe.
When all else fails... manipulate the source code.
November 1, 2011 at 4:35 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39618ludmeister
ParticipantI've continued to read up on the hacking exploits of MiDKnighT, Niahak, sonic.penguin, DragonAtma, and of course the venerable Lord Yuan Shu, among others, and I must say…
I am humbled and honored to be quoted here at all. I'm learning a ton by reading your posts. Thank you one and all for your kind reception.
Hopefully when I get some time I'll be able to dig up how I made Agility visible in the status screen. In my mod, I removed the "T.P." visualization, and added "Agi", as I felt that was more important.
When all else fails... manipulate the source code.
October 31, 2011 at 8:01 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39612ludmeister
ParticipantAh… here's a couple of other tidbits that I've found:
0x39a28-0x39a2f- Experience gain multiplier (by chapter)
05 08 0a 0f 11 14 19 1e
Ever notice how you gained about 4x more experience points when you entered a new chapter? It's because of the formula for calculating experience, which is based off of the above list. Each officer's/rebel force's experience value is determined separately.
Soldiers * multiplier / 256 = experience awarded
The formula was arrived at via mathematics, not via code inspection, so it may be off, if ever so slightly.
0x39b26, 0x39b2a, 0x39b2e: Food use threshold
0x39b26: e8
0x39b2a: 03
0x39b2e: 00
String them together: 0003e8 (1000)
Every (active) soldier in your army is counted, and that total is divided by this threshold. If the value is less than one, then it becomes one. This is the amount of food your army eats every step on the map. This value is only calculated after a battle. That's why your army doesn't eat after leaving the first village at the start of a game (until you fight a battle).
When all else fails... manipulate the source code.
October 31, 2011 at 7:26 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39609ludmeister
ParticipantNow for the nitty gritty of tactic effects… at least, some of them…
In 0x3bb3f-0x3bc30, a good share of data is stored describing the effects of all the tactics.
0x3bb3f-0x3bb5c- How to target the tactic
80 80 00 80 00 80 80 80 00 00 01 01 00 00 01
00 00 00 00 00 00 80 80 01 00 80 01 80 00 00
00 means that no targeting is needed. 80 means an enemy officer is targeted. 01 means that an allied general is targeted.
0x3bb5e-0x3bb7b- Targets all or not
00 00 80 00 80 00 00 00 80 80 00 00 01 01 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 means to use the targeting info gleaned from input (see above). 80 means target all enemy officers, 01 means target all allied officers. Defense tactics, as well as special tactics such as Gui Huan and Tui Lu are special cases, and are simply target-less.
To make Shui Xing hit all enemy generals, therefore, we'd change 0x3bb45 from "80" -> "00", and 0x3bb64 from "00" -> "80". This means that Shui Xing needs no targeting from the player, and that it hits all enemy officers.
0x3bb7d-0x3bb9a- Elemental damage type (01- Fire, 02- Water)
01 01 01 01 01 02 02 02 02 02 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x3bb9c-0x3bbb9- Tactic damage, byte 1
3c 8c aa 14 d0 64 a0 c8 dc c4 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x3bbbb-0x3bbd8- Tactic damage, byte 2
00 00 00 05 07 00 00 00 05 09 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Obviously, only fire and water tactics do damage. To read the actual damage, take the tactic's byte 2, and concatenate its byte 1. So, Lian Huo would be 003c, and Huo Shen would be 07d0. This converts to 60 damage for Lian Huo, and 2000 for Huo Shen.
0x3bbda-0x3bbf7- TP Used
02 04 06 08 0c 03 06 08 0c 0f 03 05 0a 04 0a
05 04 03 11 07 05 05 06 04 05 0a 0a 06 05 06
0x3bbf9-0x3bc16- Not sure
00 00 00 00 00 00 00 00 00 00 80 80 80 80 80
80 80 80 80 80 00 00 00 80 00 00 80 00 00 00
While I'm not sure what this indicates, all purely helpful tactics have an "80" in the above list.
0x3bc18-0x3bc16- Not sure
0a 32 64 06 08 0c 0f 00 0a 32 64 01 02 04 06
Anyone have any clues on these values? :-)
0x3bc17-0x3bc1b- Tactic healing, byte 1
64 fe e8 94 ff
0x3bc1c-0x3bc20- Tactic healing, byte 2
00 01 03 11 ff
Healing power for Chi Xin through Wan Fu. Concatenated the same way as damage is.
Addendum:
It seems obvious that for the fifteen tactics that are not damage/healing related, their effects are hidden in functional code. I remember Meteorstrike doing some rather in-depth checking on how An Sha works (it's chance of success, and who is immune). That is beyond the scope of my little contribution.
That's about the extent of my expertise here. Hope this can be of help to someone.
Sonic Penguin: My pleasure. Hope it's helpful.
When all else fails... manipulate the source code.
October 31, 2011 at 6:59 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #39607ludmeister
ParticipantThis post on hacking Destiny of an Emperor is incredible. I wish this was around when I was doing my modding on the game. I'm intrigued by the map editor… I may have to play around with that a bit when I get more time.
I was asked to share my knowledge about Destiny of an Emperor tactics. So without further ado…
Obviously, there are thirty tactics in DoaE, and are represented in the ROM in this order:
01 Lian Huo, Ye Huo, Yan Re, Da Re, Huo Shen
06 Shui Tu, Shui Xing, Shui Lei, Hong Shui, Shui Long
0b Chi Xin, Tong Xian, Yin Xian, Jin Xian, Wan Fu
10 Ji Rou, Huo Jian, Shui Jian, Ce Mian, Ji Mian
15 Cheng Nei, Yi Xin, Li Jian, Qi Shou, Jie Ce
1a An Sha, Bei Ji, Fu Bing, Tui Lu, Gui Huan
As each variable is discussed, I'll display the stock ROM's data, to illustrate further what it means. Tactic availability is determined by four separate variables, found in 0x3b881-3b90d in the ROM, as follows:
0x3b881-0x3b89e- Tactic ID learned at level up (1st ID for level 2… last is level 31)
01 11 06 0b 15 18 02 12 07 19 1c 0c 03 08 0d
10 1b 16 17 09 04 0f 14 1d 1e 1a 0e 0a 05 13
Hence, ID #01 (Lian Huo) is learned at level 2, ID #11 (Huo Jian) is learned at level 3, ID #0f (Wan Fu) is learned at level 23… you get the picture.
0x3b8b2-0x3b8cf- Tactic appears in this "slot"
00 00 00 00 00 01 01 01 01 01 02 02 02 02 02
03 03 03 03 03 04 04 05 05 04 05 05 05 04 04
Since the ROM's tactic list is faithful to group Fire, Water, Healing, and Defense tactics, this is straight-forward. It gets interesting in the last two groups.
0x3b8d1-0x3b8ee- Priority level for tactic
01 02 03 04 05 01 02 03 04 05 01 02 03 05 04
03 01 02 05 04 01 03 03 01 02 04 05 02 04 05
Put simply, given your tactician can learn two tactics that are placed in a given "slot", the higher priority tactic is the one is given. Note that An Sha's priority is 04, and Bei Ji's is 05… thus the Pang Tongs and Zhu Ge Liangs of the world don't learn An Sha, even though An Sha is learned later in the game.
0x3b8f0-0x3b90d- Intellect needed for Tactic eligibility
3c 5a 78 b4 dc 46 64 82 a0 dc 46 a0 c8 fc dc
c8 50 6e f0 c8 78 b4 8c 8c a0 b4 f0 dc 8c 96
Fairly self-explanatory. Thought it was interesting that Jin Xian's INT threshold was 252… not 255 :-)
More to come soon…
When all else fails... manipulate the source code.
-
AuthorPosts