News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Battle of Olympus - Rebalanced + SRAM Saving  (Read 12979 times)

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #40 on: July 24, 2017, 10:20:01 pm »
"Hear the words of the gods. Don't forget it" is at 0x15A7A-0x15A9A:
3246CA1976882F6EF913AF376882F8EF24C0DEEC9B7B80FA74CF91CB4EA6806FC0

It must be coded somehow because a simple TBL wouldn't make this readable.
0x1D2C6 is the code that reads this. Let's see..

edit: while we're at it, I think it could be a good idea to not use the very start of the sram, use like its middle $7000 because I recall reading somewhere that the very start may be more prone to data loss when powering on a real console? Don't quote me on this, but it costs nothing to be safe there.
« Last Edit: July 24, 2017, 10:33:49 pm by nesrocks »

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #41 on: July 24, 2017, 10:43:23 pm »
"Hear the words of the gods. Don't forget it" is at 0x15A7A-0x15A9A:
3246CA1976882F6EF913AF376882F8EF24C0DEEC9B7B80FA74CF91CB4EA6806FC0

It must be coded somehow because a simple TBL wouldn't make this readable.
0x1D2C6 is the code that reads this. Let's see..
Awesome let me know what you find. :)
I'm definitely going to add you and a few others in the credits to this hack. ;)
edit: while we're at it, I think it could be a good idea to not use the very start of the sram, use like its middle $7000 because I recall reading somewhere that the very start may be more prone to data loss when powering on a real console? Don't quote me on this, but it costs nothing to be safe there.
Ok thanks for the info!
I'll make the change when I get home.

Btw, do you think it's possible to add more text then the spaces allowed in the password screen? If I could only put something like... "Hit START to LOAD GAME or input PASSWORD"

Cheers! :thumbsup:

8-bit fan
« Last Edit: July 24, 2017, 10:53:45 pm by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #42 on: July 24, 2017, 10:59:02 pm »
Btw, do you think it's possible to add more text then the spaces allowed in the password screen? If I could only put something like... "Hit START to LOAD GAME or input PASSWORD"
With the amount of free space yes, should be doable.
Your scratchpad link is giving access denied due to not being the owner.

Password screen text:
pointer: 0x1D9B3 (the default 04 DA points to DA14)

At DA14 you have: 20A416B50E1405127F1408057F170F1204137F0F067F070F04ACFF
20 and A4 are the position (low and high). 16 is the length in characters. The rest is the text, which is TBL convertable. Use this tbl:

Code: [Select]
01=a
02=b
03=c
04=d
05=e
06=f
07=g
08=h
09=i
0A=j
0B=k
0C=l
0D=m
0E=n
0F=o
10=p
11=q
12=r
13=s
14=t
15=u
16=v
17=w
18=x
19=y
1A=z
A0=0
A1=1
A2=2
A3=3
A4=4
A5=5
A6=6
A7=7
A8=8
A9=9
AA=?
AB=!
AC=.
AD=,
AE='
AF=-
B0=
B1=A
B2=B
B3=C
B4=D
B5=E
B6=F
B7=G
B8=H
B9=I
BA=J
BB=K
BC=L
BD=M
BE=N
BF=O
C0=P
C1=Q
C2=R
C3=S
C4=T
C5=U
C6=V
C7=W
C8=X
C9=Y
CA=Z

FF is the end of the text.
« Last Edit: July 24, 2017, 11:06:19 pm by nesrocks »

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #43 on: July 24, 2017, 11:05:49 pm »
Awesome!!
I'll take a look tonight! :)

Here's a google link to the IPS:
https://drive.google.com/open?id=0B3c4zWxe_g5ONmVjY0pyVGxKb0E

Let me know if that works!

8-bit fan
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

abw

  • Sr. Member
  • ****
  • Posts: 303
    • View Profile
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #44 on: July 24, 2017, 11:06:54 pm »
Ah, sorry, I missed seeing all of your updates today :(. Congrats on getting SRAM loading to work - still being able to enter other passwords is actually kind of a nice feature.

As for the text, here's what you've got:
Code: [Select]
0x32 (string length: 50 tokens)
0b01000 H
0b11011 (switch to lowercase)
0b00101 e
0b00001 a
0b10010 r
0b11101
0b10100 t
0b01000 h
0b00101 e
0b11101
0b10111 w
0b01111 o
0b10010 r
0b00100 d
0b11101
0b01111 o
0b00110 f
0b11101
0b10100 t
0b01000 h
0b00101 e
0b11110 (manual line break)
0b00111 g
0b01111 o
0b00100 d
0b10011 s
0b00000 (switch to punctuation)
0b01101 .
(switch to lowercase)
0b11101
0b11011 (switch to uppercase)
0b00100 D
0b11011 (switch to lowercase)
0b01111 o
0b01110 n
0b00000 (switch to punctuation)
0b01111 '
(switch to lowercase)
0b10100 t
0b11101
0b00110 f
0b01111 o
0b10010 r
0b00111 g
0b00101 e
0b10100 t
0b11101
0b01001 i
0b10100 t
0b00000 (switch to punctuation)
0b01101 .
(switch to lowercase)
0b11111 (manual page break; switch to uppercase)

And here's what you want:
Code: [Select]
0x2B (string length: 43 tokens)
0b01000 H
0b11011 (switch to lowercase)
0b00101 e
0b00001 a
0b10010 r
0b11101
0b10100 t
0b01000 h
0b00101 e
0b11101
0b10111 w
0b01111 o
0b10010 r
0b00100 d
0b11101
0b01111 o
0b00110 f
0b11101
0b10100 t
0b01000 h
0b00101 e
0b11110 (manual line break)
0b00111 g
0b01111 o
0b00100 d
0b10011 s
0b00000 (switch to punctuation)
0b01101 .
(switch to lowercase)
0b11101
0b11011 (switch to uppercase)
0b00111 G
0b11011 (switch to lowercase)
0b00001 a
0b01101 m
0b00101 e
0b11101
0b10011 s
0b00001 a
0b10110 v
0b00101 e
0b00100 d
0b00000 (switch to punctuation)
0b01101 .

Or, putting it all together:
Code: [Select]
0x015A7A: 2B 46 CA 19 76 88 2F 6E F9 13 AF 37 68 82 F8 EF 24 C0 DE EC FB 0B 4B D9 86 C5 20 1A

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #45 on: July 24, 2017, 11:12:22 pm »
Hi abw! :)
Awesome and thanks for the text update code!!  :thumbsup:
You are definitely going in the credits as well. ;)

I'm on the road now so I'll check back in later tonight!

Feel free to check out what I've done so far:
https://drive.google.com/open?id=0B3c4zWxe_g5ONmVjY0pyVGxKb0E

Cheers!!  :beer:

8-bit fan
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #46 on: July 24, 2017, 11:13:09 pm »
magic
Wow the bit wizard, I have no idea how to figure that out  :beer:

About the password screen text, say you want to have two lines that say line 1: "Enter" and line 2: "Line 2":
Code: [Select]
208405B50E140512
2084 = position high and low
05 = length
B50E140512 = letters reading "Enter"
immediately after that:
20C406BC090E05B0A2FF
20C4 = same position + #40 = two lines below
06 = length
BC090E05B0A2 = letters reading "Line 2" (B0 is space)
FF = stop reading strings

Well, here is something like it:
Code: [Select]
208417B90E101514B001B0C0B1C3C3C7BFC2B4B00F12B008091420C417C3C4B1C2C4B0140FB0BCBFB1B4B0140805B007010D05ACFF
« Last Edit: July 24, 2017, 11:25:47 pm by nesrocks »

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #47 on: July 24, 2017, 11:27:57 pm »
Awwwwwwwesome!!!! :D
I got 2 geniuses helping me out here!!  ;D

Can't wait to check these out later! :)

8-bit fan
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #48 on: July 24, 2017, 11:39:19 pm »
Your patch lets me use spaces on character names and that converts to "0" in game. Didn't see why that is.

This should replace your giant code :)
Code: [Select]
07:FCB0:A2 00     LDX #$00                    // start the counter
 07:FCB2:BD 00 60  LDA $6000,X @ $6000 = #$00  // loop starts here
 07:FCB5:9D 69 01  STA $0169,X @ $0169 = #$00  // no need to use Y since X and Y are always the same value
 07:FCB8:E8        INX                         // increase the counter
 07:FCB9:E0 1A     CPX #$1A                    // is it done (you want to loop it if X <= #19)
 07:FCBB:D0 F5     BNE $FCB2                   // if it isnt, go back to the loop start (F5 is like here minus 11 bytes so it goes backwards)
>07:FCBD:60        RTS ----------------------

Even in your code, you load 00 to Y several times, but that wasn't needed since there was nothing writing to Y (just load it once and that's it). Actually, since you were manually reading and writing to each address you should have forgotten about X and Y altogether and used 8D for STA and AD for LDA which don't use X or Y. http://www.6502.org/tutorials/6502opcodes.html#LDA
Of course the loop is even better.

In Super Pitfall I did your way too, but we all learn in time   :thumbsup:
« Last Edit: July 25, 2017, 12:38:38 am by nesrocks »

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #49 on: July 25, 2017, 01:53:11 am »
Thanks nesrocks!!!! :D
OK I'm back on my computer now...time to get to work! :)

July 25, 2017, 05:17:26 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Thanks nesrocks and abw once again! :)

I updated the texts on the password screen and now it should be pretty clear to the player they have either the option to LOAD GAME by pressing START or to input PASSWORD:


I also updated my giant block of code with the much condensed and improved one. Thanks nesrocks! And yup, I'm still learning and you and everyone else have been a great help! :)

abw, I tried to replace the code you gave me to replace "Don't forget it" to "Game saved". However, it garbled up some of the texts with the password overlaying them. I think I must have missed the manual page break or something. And like nesrocks said, this is magic so I have no clue on how to edit this at all....all my attempts just break or jumble the line of texts. Can you help with this? Here's a screenshot of what's happening:


Here's the latest version IPS with everything added so far:
https://drive.google.com/open?id=0B3c4zWxe_g5OaFpmN2hsaF9PbXc

Thanks everyone! We're close! :)

8-bit fan
« Last Edit: July 25, 2017, 05:17:26 am by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

abw

  • Sr. Member
  • ****
  • Posts: 303
    • View Profile
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #50 on: July 25, 2017, 10:15:14 am »
magic
Wow the bit wizard, I have no idea how to figure that out  :beer:
If you liked that, you'll love this: the pointer to the Temple dialogue actually starts at RAM $99A8 / file 0x159B8. The next 194 bytes are various script engine commands for checking or updating quest status flags and your current olive count, eventually determining which of the 18 different text strings should be displayed. The text strings themselves are the easy part :p

abw, I tried to replace the code you gave me to replace "Don't forget it" to "Game saved". However, it garbled up some of the texts with the password overlaying them. I think I must have missed the manual page break or something. And like nesrocks said, this is magic so I have no clue on how to edit this at all....all my attempts just break or jumble the line of texts. Can you help with this? Here's a screenshot of what's happening:
Ha, sorry, I had tested that on top of my earlier SRAM saving version where I had also stopped the password from displaying. Since you're still displaying the password, you'll want to keep that final 0b11111 to trigger a page break, otherwise text gets overwritten like in your screenshot. Try this instead:
Code: [Select]
0x015A7A: 2C 46 CA 19 76 88 2F 6E F9 13 AF 37 68 82 F8 EF 24 C0 DE EC FB 0B 4B D9 86 C5 20 1B F0

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #51 on: July 25, 2017, 02:21:36 pm »
Awesome abw!! :D
I'll put that fix in now! :)
Btw, how do you figure something like this out? Please enlighten a noob here. :)
Is there somewhere where I could read up on this? Thanks!

Hey nesrocks,
So I was testing the game out again today from the start, and it turns out that changing the texts on the password screen screwed up the initial name entry screen royally:


So I'm thinking adding that 2nd line of texts overwrote the texts on this screen.

Would a subroutine instead work better to avoid this?

I'll check it out...

Thanks! :)

8-bit fan
« Last Edit: July 25, 2017, 02:27:48 pm by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #52 on: July 25, 2017, 02:49:40 pm »
Yeah, you needed to change the pointer to a bigger area in the ROM to insert the new text.

Quote from: nesrocks
Password screen text:
pointer: 0x1D9B3 (the default 04 DA points to DA14)

Meaning the game looks on that address to know where to find the text. The original pointer in 0x1D9B3 says the text is on ROM address 0x01DA14.
So if you want the new text to be on 0x1FFC0 for example, change the pointer in 0x1D9B3 to B0 FF (which is FFC0 minus #10 bytes from the header, which is just a iNES ROM thing and the original game didn't have).
« Last Edit: July 25, 2017, 02:55:04 pm by nesrocks »

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #53 on: July 25, 2017, 02:59:56 pm »
Hey nesrocks! :)
I just did exactly that and it's all good now! Thanks!! :D

Ok...looks like I'm almost done now other than adding/changing texts in the title and credits screens...

Also, any ideas on bridging the gap at the shore in Argolis? We're talking about something like adding ground tiles so that the player can access the Dolphin.

But first thing's first, would this be game breaking? Is this blocked for a reason?
I can't recall at the moment. I just remember on each of my play-thru that this part stuck out like a sore thumb to me. It always bothered me that you can't access the Dolphin in the area.

8-bit fan

July 25, 2017, 04:10:51 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
This is the place I'm talking about:


Can anyone help with placing some ground/rock tiles in the middle of the gap?

Thanks!  :thumbsup:

8-bit fan
« Last Edit: July 25, 2017, 04:10:52 pm by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

KingMike

  • Forum Moderator
  • Hero Member
  • *****
  • Posts: 6928
  • *sigh* A changed avatar. Big deal.
    • View Profile
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #54 on: July 25, 2017, 04:47:40 pm »
I'm not familiar with the game. Are you supposed to be able to go around the dolphin, or is it the end of a screen (thus the gap would be there to prevent the player from moving too far out of bounds)?
"My watch says 30 chickens" Google, 2018

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #55 on: July 25, 2017, 05:43:33 pm »
I'm not familiar with the game. Are you supposed to be able to go around the dolphin, or is it the end of a screen (thus the gap would be there to prevent the player from moving too far out of bounds)?
Hi KingMike,
Well, the game lets you to ride the Dolphin to cross the sea once you have the Ocarina.
What you do is once you reach a shore, you play the Ocarina and the Dolphin jumps out and lets you ride on it. Except this one, which has always bothered me while playing the game. That's why I want to put some footing in between the gap so that the Dolphin is accessible here as well. But I need to figure out how to add ground tiles first... :)

8-bit fan



July 26, 2017, 07:16:02 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Ok, nevermind on the part in Argolis.
After playing through the game, the reason that section is blocked off is because that section is a secret area in which you must 'figure out'. Riding the dolphin to reach the broken shore is sort of a 'hint' telling the player 'hey, you haven't been in this area in Argolis before, there must be something here...'

So yeah, even though I'd still like to have access to the shore, I understand why it's there now. I guess I'll leave this one alone.

...so that means the hack is almost ready!  :D



July 26, 2017, 07:19:29 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Latest version(0.9) IPS:
https://drive.google.com/open?id=0B3c4zWxe_g5OUWJiV3FqNE5wMUk



July 26, 2017, 07:36:22 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Found a bug:
Messing with the drop rate caused NO salamander skin drops! :O

Need to fix this...



July 26, 2017, 09:39:32 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Ok, tweaked it so that Salamander Skins drop now. Albeit their drop rate has been cut in half. This was unavoidable because I wanted to raise the drop for other items, and the skin drop is dependent on the same drop table. I decreased the drop for olives from the previous increased version to accommodate for the skins. This actually worked out because it was WAY too easy to accumulate olives in v0.9 of the hack as it was dropping 75% of the time along with the already decreased olives penalty upon death.

It's at v0.91 now, I'll upload a new IPS later.

Cheers!!  :beer:
« Last Edit: July 26, 2017, 09:41:46 pm by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/

nesrocks

  • Hero Member
  • *****
  • Posts: 609
    • View Profile
    • nesrocks.com
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #56 on: July 27, 2017, 02:12:39 pm »
There is still the problem with allowing spaces on the heroes names. Any idea what caused it?

8.bit.fan

  • Full Member
  • ***
  • Posts: 242
    • View Profile
    • 8-bit fan's Hacking Projects
Re: Battle of Olympus - Rebalanced + SRAM Saving
« Reply #57 on: July 27, 2017, 04:05:49 pm »
There is still the problem with allowing spaces on the heroes names. Any idea what caused it?
Hey nesrocks! :)
Ok so I looked into this and I've traced it back to the point at which this had happened. Turns out, the routine to load the password from SRAM to RAM is the culprit. I tried switching it back to my gigantic version of the code, and the same thing happens. But this is as far as I've got so far(I'm at work). Perhaps filling the spaces with FF's after "START" and "CONTINUE" both use the same routine? I'll keep looking but I don't think this is a blocker for the hack...even though it's weird and/or annoying.

On the other hand, I've added your names to the game :) ...I added them to the name entry screen because I didn't want to mess with the texts at the title...they look so nice! ;)
Here's the latest version(0.99):
https://drive.google.com/open?id=0B3c4zWxe_g5OaUZtcklSS3JITkk

I've test played the game all the way up to midway of Phthia right after I got the sword. And everything seems to work good! The new drop rate and reduced penalty for olives makes the game A LOT more enjoyable.

Oh, and before I forget, any suggestions on a name for this hack?
Battle of Olympus: Re-balanced + SRAM Saving
Battle of Olympus: Modernized + SRAM Saving
Battle of Olympus: SRAM + Olives
Battle of Olympus: I Love My Olives
Battle of Olympus: The Adventure of Orpheus

Cheers!  :beer:

8-bit fan

July 27, 2017, 06:20:21 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Fixed it!!  :D
I recreated the original routine and put it at 0x01FDB0, and pointed to it after "START"!
These are great because I'm learning more and more and learning more on how to use FCEUX! I finally got a hang of the Trace Logger!! :)

I'll upload the fixed version soon! :)

 :beer:

July 28, 2017, 03:38:48 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
New title screen:


:)

July 29, 2017, 12:24:18 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Hey abw nesrocks or anyone that can help,
I need your help to decode and rewrite some texts that's in one of those cryptic formats at the last password/save spot in Tartarus. This time, there's an old guy giving out the word of gods instead of a god, and his message is different! And yes, it's in that cryptic format that abw helped decode before.



Can someone help me locate and rewrite this text from:
Quote
Let me tell you the word of the gods.
To:
Quote
Let me tell you the word of the gods. Game saved.

Any help would be much appreciated! :)

Thanks!! :D

8-bit fan

July 29, 2017, 01:53:08 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
I've located the text. It's at:
0x0174E2

Now to rewrite it....  :o

July 29, 2017, 02:01:01 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Actually due to it only having 28 spaces instead of the previous slot of 32, or 2C after we rewrote it, we should probably change the texts to:
Quote
"The word of the gods. Game saved."

July 29, 2017, 03:17:09 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
I think I figured it out...stay tuned. :)

July 29, 2017, 03:50:26 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Ugh...looks like I got everything except the last letter wrong...
Here's the code:
Quote
27A6D05EDDF2275E6ED105E9DE4981BED9F61697B30D8A4

I'll keep looking at this.
If any of you have any suggestions, please let me know.

Thanks!

July 30, 2017, 12:23:10 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Ok just test played through the whole thing and this hack appears to be finished! :)

I'll upload it to the site in a couple of days.

I just want to say a BIG thank you for all those that's contributed and helped out this newbie here with this hack. Couldn't have done it without you all! Thank you all so much!! :D

Cheers!!  :beer:

8-bit fan

July 31, 2017, 01:09:33 am - (Auto Merged - Double Posts are not allowed before 7 days.)
Just submitted the hack to the site! :)

I've given everyone a big shout out and thanks in the readme file, as well as a shorter version under the hack page's description and in game.

Thank you all again and hope to work with everyone again in my next hack!!  :D :thumbsup:

Cheers!!  :beer: :woot!:
« Last Edit: July 31, 2017, 01:09:33 am by 8.bit.fan »
In the year of 200X, a super robot named Mega Man...
http://www.8bitfan.info/