Home › Forums › Destiny of an Emperor › DoaE Artificial Intelligence Enhancements + New Tactics
Tagged: Destiny of an Emperor, Destiny of an Emperor hack, Destiny of an Emperor hacking, Destiny of an Emperor Rom, DoaE artificial intelligence, NES AI, NES Artificial Intelligence, NES hacking, ROM Hacking, Yuan Shu
- This topic has 645 replies, 10 voices, and was last updated 4 years, 9 months ago by
MiDKnighT.
-
AuthorPosts
-
September 28, 2012 at 1:22 am #44365
sonic.penguin
ModeratorNice touch w/ the iron ore :)
September 28, 2012 at 1:34 am #44366sonic.penguin
ModeratorYuan Shao saying there will be peace in Jingzhou <– there is no period here. Is it Jingzhou or Yizhou?
September 28, 2012 at 1:46 pm #44367Perhong_Angtong
ParticipantAre you planning on more additional stuff for the game? This is already incredible, and I'll probably take the modifications for a spin sometime soon! The Dueling sounds extra interesting to me!
http://www.youtube.com/pananning
http://pananning.blogspot.com
http://openmedia.ca/lockdownYeah... Pretty much...
September 29, 2012 at 12:16 am #44368sonic.penguin
ModeratorSo far, its all pretty much fleshed out, granted the few minor glitching bugs are keeping it from being great. There has been some great DOAEditing going on over the past few years so keep up to date with some of the latest and greatest w/ the Yuan Shao, Rise of Lu Bu, Rise of Ieyasu, Yuan Shu, and other semi-related Jin Xuan mods. I think a Liu Biao mod was in the works but he's been out for a while…
October 1, 2012 at 9:00 pm #44370MiDKnighT
ModeratorI made a little progress on our last guy glitch today.
Good:
$A7FA:60 RTS A:00 X:0A Y:80 S:2C P:nvUbdIZC
$A02C:20 48 A9 JSR $A948 A:00 X:0A Y:80 S:2E P:nvUbdIZC
Bad:
$A7FA:60 RTS A:00 X:0A Y:80 S:42 P:nvUbdIZC
$A71E:4C 48 A7 JMP $A748 A:00 X:0A Y:80 S:44 P:nvUbdIZC
When it works it is RTS'ing back to $A02C and it overflows when it keeps going back to $A71E. I might be able to fix it if I add an RTS and a jump if the stack is looking like it's going to overflow at 0x7A910. I'll try this next and see if it works.
October 1, 2012 at 10:16 pm #44371sonic.penguin
Moderatorgreat to hear. I also retested the 'jump back' caused by dueling and it appears to have fixed itself upon reapplying the IPS patch. While I have had this feature happen in the past before, I believe it might have been caused by editing text that overflowed into something. While I'm not sure what that something might have been, it was an easy fix. so thats 1 more down.
October 10, 2012 at 3:44 pm #44372MiDKnighT
ModeratorHeaven smiles upon us. I think I've fixed the stack overflow crash. Changes:
0x799B0:
2082C44CC0990000000000BA86BFE010
B0034C96A8E07090034C96A84C40A700
BAE010B009E8BD0001C91DD00160A206
4CEAA600000000000000000000000000
0x7A030:
00000000000000A90E2082C44C27A000
It's basically adding a wall to prevent stack overflow:
1E:99C0:BA TSX <– Get stack pointer
1E:99C1:E0 10 CPX #$10 <– Has it fallen under $0110?
1E:99C3:B0 09 BCS $99CE <– If not skip ahead
1E:99C5:E8 INX
1E:99C6:BD 00 01 LDA $0100,X @ $0106 = #$00 <– Check last stack
1E:99C9:C9 1D CMP #$1D <– Is it the problem stack?
1E:99CB:D0 01 BNE $99CE <– If not skip ahead
1E:99CD:60 RTS <– Get out of subroutine if we're going to overflow
1E:99CE:A2 06 LDX #$06
1E:99D0:4C EA A6 JMP $A6EA <– Continue
How I think it works is…instead of crashing the game the bad guys go back to being kinda dumb. But this shouldn't happen often. Pretty much as often as it used to crash.
Please test it out and let me know.
October 10, 2012 at 3:49 pm #44373MiDKnighT
ModeratorFor my reference… The problem was that it would start a new subroutine at $A71B without closing it. The mess up originated from $99A3.
$99A3:4C EA A6 JMP $A6EA A:00 X:06 Y:09 S:18 P:nvUbdIZC
$A6EA:A9 0E LDA #$0E A:00 X:06 Y:09 S:18 P:nvUbdIZC
$A6EC:20 82 C4 JSR $C482 A:0E X:06 Y:09 S:18 P:nvUbdIzC
0E:A71B:20 9B A8 JSR $A89B
0E:A71E:4C 48 A7 JMP $A748
0E:A721:DD 51 A8 CMP $A851,X @ $A856 = #$C8
0E:A724:B0 03 BCS $A729
0E:A726:CA DEX
0E:A727:10 F8 BPL $A721
October 10, 2012 at 11:03 pm #44374sonic.penguin
ModeratorAwesome, glad you were finally able to get around to it. Will put it into the Rise of Ieyasu 2.0 to release it now and can finally feel more comfortable working on Flames of Wu that it isnt all for nothing.
October 11, 2012 at 7:12 pm #44375MiDKnighT
ModeratorLet me know if you see any weird affects with the fix. It should work fine but you never know.
October 12, 2012 at 12:46 am #44376sonic.penguin
ModeratorThanks for the confidence booster >_> I'll see if it can be more rigorously tested in the next few days :twisted:
October 12, 2012 at 1:06 pm #44377MiDKnighT
ModeratorI'm confident it will work but like I said, you never know.
October 15, 2012 at 12:45 am #44378sonic.penguin
ModeratorFound a bug! Okay, so your whole party is snuffed out and you have 1 guy left and they get defeated in a duel by lets say Zhang Fei…. the game locks up.
November 12, 2012 at 8:54 pm #44385sonic.penguin
Moderatorbumping this *someone* sees the previous post
November 18, 2012 at 4:52 pm #44386MiDKnighT
ModeratorThat's kind of a rare scenario, got a save state? :-)
-
AuthorPosts
- You must be logged in to reply to this topic.

