Forum Replies Created
-
AuthorPosts
-
ludmeister
ParticipantMiDKnighT–
Thank you for your work on slot 2 and 3! I have slot 3 removed, but I'm having problems locating the bytes that you referenced as far as slot 2 was concerned… mostly, the bytes you referenced were not 75's.
Quote:To fix slot 2:0x3853B: "75"->"7E"
0x7EDF1: "75"->"7E"
0x80022: "75"->"7E"
0xFEDF1: "75"->"7E"
Then copy memory from 7500-756F to 7E00-7E6F
Could you give me a few bytes around each "75" so that I could narrow down the search for the correct ones in my ROM? Thank you very much, your help on this is very much appreciated!
When all else fails... manipulate the source code.
ludmeister
ParticipantCabalpapa, you are exactly right: Wei forces do have a 180-weapon… this bug you found is due to the fact that running into a random encounter sets the region of a battle. Evidently, running into a castle battle does not.
So, the "region" value is set to zero (Wei) at the start of the game (and your army doesn't require food either!) until you actually get into your first battle. Then, the region is set to one (for Yellow Turbans… appropriate) and your castle battles will be much more appropriate.
When all else fails... manipulate the source code.
ludmeister
ParticipantI think what you're saying makes a lot of sense, actually. I think hacking out the option to choose slot 3 is totally fine; your page switch code is much more important, and makes sense to always have access to it. It will be nice to have for other functions which are very important… for instance, you could put default VIT/LDR/POL calculation stuff there, if you haven't already.
When all else fails... manipulate the source code.
ludmeister
ParticipantIs Sonic's Musou one of those 40 damage tactics, or might that be one of the other 179? If I'm right, I think that Sonic replaced "Fu Bing" with this one…
When all else fails... manipulate the source code.
ludmeister
ParticipantMy goodness. This is incredible work! The possibilities will be endless…
When all else fails... manipulate the source code.
ludmeister
ParticipantAwesome! I'll patch 'er up and give'r a-go. :cactuar:
When all else fails... manipulate the source code.
ludmeister
ParticipantAh. I should probably give you some insight into the state of my game when it happened:
1st round of Qing Zhou (back door in cave) battle
Liu Bei/Zhang Fei/Guan Yu/Chen Deng/Liao Hua
vs.
Zhang Jao/Zhang Bao/Zhang Liang/Ma Yuanyi
Memory at end of log file (0x6000 to 0x625f):
Code:6000: 00000000000000003553000000000000
6010: 0100007E01000201061C0B0707120908
6020: 02020000000001001B6433136433340A
6030: 0B0A0000000000000000000000000000
6040: 00000000000000000000000000000000
6050: 00000000000000000000000000000000
6060: 00000000000000000000000000000000
6070: 730300070000B6010035040001010000
6080: 0B0E0B05FFFFFFFF0000000000000000
6090: 020100050306FF020100050380808080
60a0: 0080808080808000A9AAA838003B3D0C
60b0: 0D0E0F001E1914190014142819231E0A
60c0: 02030116140116040303020100000000
60d0: 0E0100006A01000082010000C6000000
60e0: A1000000F0000000A5000000B2010000
60f0: 77010000580100002F01000000000000
6100: C1E0E8000000000032C2DFE900000000
6110: 53C0DFE854000000D5E0000000000000
6120: D300000000000000C0DFE80000000000
6130: 28D5DFE8000000000000000000000000
6140: 00000000000000000000000000000000
6150: 00000000000000000000000000000000
6160: 140100007B01000086010000CB000000
6170: A1000000F0000000A5000000B2010000
6180: 77010000580100002F01000000000000
6190: 000000000000000000000000F5FCA599
61a0: 0A8C4B8D44A58F23B960E16D0AB1BCA9
61b0: C42A7C0D40504B7D0163575E37652C14
61c0: 00000000000000000000000000000000
61d0: 01000101000000000000000100000400
61e0: 00000000060606070703010200040403
61f0: 01020006080507093A00003A00000000
6200: 01000101000000000000000000000000
6210: 32000004000404000000000000000000
6220: 00000000000000000000000000000000
6230: 00000000000000000000000000000000
6240: 00000000000000000000000000000000
6250: 000000000000000000000000B1070000When all else fails... manipulate the source code.
ludmeister
ParticipantThanks MiDKnighT! I'm at a loss to know how to proceed there, since I have no knowledge of how DoaE's battery saving works.
Also, in case you are interested, I just produced a log-file that shows at least one show-stopping bug (maybe it is the only one) before a round of battle starts. I'm guessing it is a case of a mismatched RTS.
Here's a link to the log file. It's zipped, and is 528K (100,000 lines of text!) Sorry, I wanted to be thorough and show from the accepting of the last character's actions, to showing where the hang occurs (which is more of an endless loop than an actual freeze). However, 100,000 lines is much better than what it was originally (3,200,000+ lines)!
Please don't feel any big rush on either of these things, though.
When all else fails... manipulate the source code.
ludmeister
ParticipantMiDKnighT– I do intend to stay around. I'm definitely curious for feedback, war stories, and bug reports on the Remix, as it showcases a few of the new changes that you and I have introduced, and I'm very interested to see how your 255 tactics and VIT/LDR/POL work out. I will definitely want to play around with these huge enhancements as well.
Ah… and I still need to download the Destiny of an Editor code, and check it out…
Do you know what's going wrong with Save Slot 2 and 3? Is this due to the 1MB expansion? Or did I unwittingly bork something? That's a scary thought… :scratch:
When all else fails... manipulate the source code.
ludmeister
ParticipantThank you MiDKnighT. :-)
When all else fails... manipulate the source code.
May 31, 2013 at 12:14 am in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40448ludmeister
ParticipantI've applied the fix for the Random Spoils routine, so it doesn't reward you for retreating. I don't know exactly what changes you've made to the algorithm beyond the potential AI fix, MiDKnighT, so I'll just let you know what I did so you can apply the fix yourself. Hopefully this will work in the best interest of IPS v1.3.
I inserted this code "A92EC500F00F" in between "A2021E0005387E0005CA10F6" and "A5AD65604A65AF6510297FC9083005A90E". Here's what it does:
Code:1E:A55F:A9 2E LDA #$2E <– #$2E is the message saying, in effect "You retreated successfully"
1E:A561:C5 00 CMP $0000 = #$2E <– Is that the message that was just shown?
1E:A563:F0 0F BEQ $A574 <– If so, do not execute spoils algorithm
…
1E:A574:A9 0E LDA #$0E
1E:A576:4C 40 A5 JMP $A540
1E:A540:20 82 C4 JSR $C482 <– Continue exiting battleThis will work as long as you don't use a tactic to retreat from battle (unless that tactic uses text #$2E as it's reporting of success.)
Note: I just needed to insert those six bytes "A92EC500F00F". Thankfully, I didn't have to do any extra changes to branches.
When all else fails... manipulate the source code.
May 30, 2013 at 7:05 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40441ludmeister
ParticipantQuote:So how about this? In the above code:– Replace 619C with 6210 (Replace STR with VIT/RES/CON)
– Replace 61A8 with 619C (Replace INT with STR)
– Leave AGI as it is.
Perfect. I think that makes a lot of sense. Yup, that's the Base AC code :nod:
When all else fails... manipulate the source code.
May 30, 2013 at 6:49 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40439ludmeister
ParticipantVitality isn't a bad idea… it has applications in Base AC, but here are a few other potential uses, off the top of my head:
* Resisting damage tiles and the detrimental effects of lack of food
* Absorbing damage from enemy tactics
* Resisting the effects of all-or-nothing tactics (Yi Xin/Li Jian/An Sha), along with INT of course.
Perhaps, if it gets used for all of these, a better moniker for the stat would be Resistance (RES).
However, VIT might be used to determine effectiveness of healing tactics used on an officer's army, and the effectiveness of Life/Raise. That's a distinctly "Vitality" characteristic… that's something that Dungeon and Dragons used to do with Constitution.
Hmm. Maybe Constitution (CON) is the best all-around name for the attribute. What do you think?
Are there plans, at some later point, to bring Poison-based tactics into the mix? Vitality/Resistance/Constitution would be a primary defense (over-against INT) against Poison.
On a side note: Perhaps Leadership could affect the officer's Accuracy rating, and the Leader's Leadership could affect the power/effectiveness of all tactics?
When all else fails... manipulate the source code.
May 30, 2013 at 6:23 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40437ludmeister
ParticipantQuote:The other bug I'm looking at is a major duel break. It must have been introduced by a recent enhancement.Doh!
If I come up with anything more to help, I'll let you know. I'm testing my mod now and am using Duel a fair bit.Ah, and just as I posted this I saw the good news. :thumleft:
When all else fails... manipulate the source code.
May 30, 2013 at 5:54 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40435ludmeister
ParticipantMiDKnighT:
This is the portion of the Duel code the executes right before I'm hanging:
Code:01:8E05:20 40 8D JSR $8D40
01:8E08:E0 3D CPX #$3D
01:8E0A:D0 03 BNE $8E0F
01:8E0C:4C A5 8D JMP $8DA5
01:8E0F:A5 79 LDA $0079 = #$05
01:8E11:85 B1 STA $00B1 = #$05
01:8E13:A5 4B LDA $004B = #$07
01:8E15:85 B2 STA $00B2 = #$00
01:8E17:20 B0 90 JSR $90B0The "JSR $90B0" instruction calls the subroutine where execution halts. I hope I'm helping.
EDIT: Eureka! It is checking the loser's officer ID with the Duel Death protections, and the check is succeeding. This, in $01:90c0, sends execution to $01:90cf… which is not the way the code is supposed to be divided. Here's the offending code.
Code:01:90B8:B9 A8 60 LDA $60A8,Y @ $60D8 = #$BA
01:90BB:A0 3F LDY #$3F
01:90BD:D9 80 84 CMP $8480,Y @ $84B0 = #$BB
01:90C0:F0 0D BEQ $90CF
01:90C2:88 DEY
01:90C3:10 F8 BPL $90BD
01:90C5:A6 B1 LDX $00B1 = #$04
01:90C7:20 00 88 JSR $8800
01:90CA:C9 DC CMP #$DC
01:90CC:90 03 BCC $90D1
01:90CE:4C 48 91 JMP $9148
01:90D1:A6 B1 LDX $00B1 = #$04
01:90D3:20 20 88 JSR $8820I assume that BEQ statement wants to go to $01:90ce… am I right?
2nd EDIT:
I changed 0x50d0 from "f00d" to "f00c" and my freezing problem is fixed!
When all else fails... manipulate the source code.
-
AuthorPosts