Phantasy Star II Improvement v4.4 | ReConstruct: Phantasy Star IV v1.2

Started by FlamePurge, May 21, 2012, 03:45:02 PM

Previous topic - Next topic

tryphon

My participation in this project is anecdotal, I don't deserve credit :)

FlamePurge

Too late, I added you anyway. :) I uploaded the fixed version to RHDN; it'll be up sooner or later. I also updated the music track titles a bit. Namely, that "Restration" typo is gone now.

Edit - And, it's up! Provided there are no more textual issues, this should be the last update. I'd kind of like to change the font to Phantasy Star IV's, but that's neither here nor there, and I've kind of grown attached to the old font.
Check out and discuss my projects

tryphon

I can help you for PSII or PSIII, but not PSIV, sorry :)

lory1990

QuoteMy participation in this project is anecdotal, I don't deserve credit

You suggested where to put the fix, so you DO deserve credit  :)

FlamePurge

Quote from: tryphon on July 31, 2014, 11:14:01 AM
I can help you for PSII or PSIII, but not PSIV, sorry :)
That's not what I said; I said, "I used to think that I would like to replace Phantasy Star II's font with the same font that was used in Phantasy Star IV, but I have decided that the original Phantasy Star II font fits Phantasy Star II better." It's OK though, thanks for offering. :)

Edit - Actually, come to think of it, I still want to shove PSII's font up by one pixel, and change the awkward floating period into an ellipsis. The second change there would save a lot of space in the script.
Check out and discuss my projects

lory1990

I found a bug which is also in the original game. When you are using only Rolf and select ORDER, a wrong piece of text is displayed. Take a look:



vivify93, tell me how you want to go about it: do you prefer leaving it alone, including new text, or something else? It's all up to you. I'll see if I can fix it.

FlamePurge

I noticed the "Hey,Shir is coming back!" text is in the middle of the area where the character introductions are. Would we have to somehow find a piece of text around there to replace this with? I noticed there's a piece of menu text in with the key item descriptions that says "Nothing happens." Would it be at all possible to make it display that message? They look like they're in entirely different dialogue blocks, though.
Check out and discuss my projects

lory1990

Fortunately, the pointers for both the block and text are referenced independently so we only need to change two bytes. Change the values 09 and 27 at
the following addresses respectively:

$A49E = 00
$A49F = 04

So now we are referencing the 1st block and the 4th pointer of the text in it, which is the one you wanted.


Another thing. Recently while going through the whole script in the game, I found an unused piece of dialogue:

96 - "Good grief! We now have to worry about the lake getting flooded."

The number 96 is the pointer for that text. Had I found this line sooner, I could've told you to use it for the old man in Paseo. Probably you want to leave it as is,
but if you want you can replace the pointer you used for the fix with this one so that this text doesn't go unused and you can have him have a unique line. Of course
this is also additional information so that you or someone else are aware of this.

FlamePurge

Actually, that'd be great. Let me leaf through the topic and I'll see if I understand; I'm a bit tired.

Edit - For the Paseo grandpa, I'd change 9D to 96 at $E6BB?

Edit - I did that, it works flawlessly! Thanks. So does the new message for trying to rearrange a one-man team.

Hey, lory1990, this is a stretch, but--do you by chance know how to change what technique a weapon casts? I've been wanting to make it so the Fire Staff casts Gifoi for a long time, but no one I knew could figure out how to do it.
Check out and discuss my projects

lory1990

No problem.

As for Fire Staff casting Gifoi, go to address $268F: you should see the value 01. That's the id for Foi. So change it to 02 (Gifoi). Do you want the addresses of where the functionality is implemented and where to change id values?

If you want to implement anything else, feel free to ask. I'll try and see if I can work it out. I'll post again if I find something odd, bugs and whatnot.

This is also Phantasy Star IV topic. I wish I could help out with that game as well, but before that, I wish I could also study PSIII code first, so it'll take a while.

A bit off-topic, but this reminds me... Even fedorajoe had some things he wanted to implement in his hack (PSII Modernization), like weapons with different techniques effects, shift cast on any party member, etc. Maybe he could take a look at  this thread as well to check what's been found. Has he been around recently?


FlamePurge

Holy crap!!! Thank you so, so much lory1990!!! I've been wanting to do this for ages, this will totally balance out so many more teammates.:) Also, I would absolutely love if you'd document where tech-cast-by-item functionality is implemented.

As for the implementation of other features, the only two things I honestly want to do is shove the font up by one pixel and change the weird floating dot in the font (···OK. Which one of you lugs is gonna hold this?) to an ellipsis. And those are both such non-issues that you don't even need to worry about it. I'm basically just waiting to hear of more bugs I need to fix, or you and others need to help me fix, at this point. :)

fedorajoe contacted me, actually, after I made v1.0 of PSII Improvement, wondering how I managed to do it. I told him about you and to come check out the topic and I've been waiting on a response.
Check out and discuss my projects

lory1990

For the tech-cast-by-item I will post a link to a txt file for you to go through and maybe you could include it in your hack folder along with the ROM and other documents; you can also edit my document however you want  if you don't like something, like the layout, choice of words etc... Will that be OK?

As for fedorajoe, I was wondering because I sent him some emails with bug fixes and other stuff but he never replied. But it's OK, though, I was just curious.

darkanx

This patch probably isn't stack-able with the Modernization hack, is it?

FlamePurge

Quote from: lory1990 on August 05, 2014, 06:10:36 PM
For the tech-cast-by-item I will post a link to a txt file for you to go through and maybe you could include it in your hack folder along with the ROM and other documents; you can also edit my document however you want  if you don't like something, like the layout, choice of words etc... Will that be OK?

As for fedorajoe, I was wondering because I sent him some emails with bug fixes and other stuff but he never replied. But it's OK, though, I was just curious.
He's got a pretty busy life as a businessman, I gather, so maybe he just got really busy.

As for the hacking note text file, that'd be absolutely wonderful. fedorajoe actually sent me this large folder filled with his PSII modding notes. I'd love to add the tech-cast-by-item data to it.

Quote from: darkanx on August 05, 2014, 08:22:59 PMThis patch probably isn't stack-able with the Modernization hack, is it?
Considering that once lory1990 can get in contact with fedorajoe, he's probably going to put in all of the bug fixes I have in Phantasy Star II Improvement in his Modernization Hack, you might be able to get the best of both worlds. Who knows, maybe he'll find a better use for the Fire Staff than how I decided to upgrade it. :p

I'm going to wait until the end of the week before I start releasing v1.2 of the Improvement. I just want to be sure lory1990 doesn't have anything else for me to fix.

Edit - You actually might be able to combine the two. I didn't touch tech progression or who can equip what aside from allowing Nei access to some late-game equipment. I also didn't touch starting equipment, shops, weapons and weapon stats aside from fixing the Laconia Dagger... it looks like they'd be compatible in all aspects except for text, meaning you'd probably want to get a hex editor and the table files and put some equipment names in proper case.
Check out and discuss my projects

lory1990

As for other things to implement in your hack, I've been thinking... How about making Anti and Rever usable in battle as well? The choice of not including them was most likely intentional; I doubt it's a bug  since no one who has these techs can use them in battle. Maybe they thought it would make the game too easy, but I don't agree too much on this. Opinions?

Anyway I presume you know how to edit technique data, also to make them usable in battle. It was only a suggestion...
The only problem is Amy will end up with 17 techs and the limit is 16. Of course a simple workaround is to just drop techniques like Foi, Gra or Gigra since I personally never used them too much in general, let alone with Amy.

FlamePurge

I think it's fine as-is. Poison, to my knowledge, doesn't really do anything in battle, right? It just prevents you from being healed, I think... And having Rever usable in battle would really shatter the balance of the game. Not something I'd want to do.
Check out and discuss my projects

lory1990

I wrote the document about the tech-cast-by-item. Here's the link:

https://www.dropbox.com/s/pdbs8s9ul03zq30/tech_cast_by_item.txt

Feel free to ask for clarifications if any. Note that other than changing ids for the technique produced by any item, the way it was coded doesn't make it so flexible. For example if you want to make a new item cast a technique there are some considerations to take into account. First of all, not all the tech-cast items are sequential, meaning that it takes some programming logic to achieve this effect. It's hard to explain without seeing the code, so I don't expect you to understand this completely. The items in the inventory list from Amber Robe onward are handled singularly so you can just change the id of the item being tested and make it cast techniques.
Another problem is that you can't add new technique casts from item use without changing the code itself, and this results in bytes being shifted and that breaks the game. Of course it can be done just like the music freeze fix, putting additional code at the end, but I prefer avoiding this if possible. Another problem off the top of my head is that items producing Gra all share the same code, meaning that if you change the id for Gra all the items are affected, so additional logic must be implemented.

FlamePurge

That's very interesting. Thanks, Lorenzo. I'm grateful you documented it. :)
Check out and discuss my projects


tryphon

Do you see a problem if I include your findings in the datacrystal wiki ? (unless you prefer to do it yourself of course).