ShadowOne333 / A-Link-to-the-Past-Redux

Source code recreation of A Link to the Past Redux
GNU General Public License v3.0
113 stars 2 forks source link

Compile instructions for windows confusing. #24

Open chrcoluk opened 2 months ago

chrcoluk commented 2 months ago

So I installed cygwin, git is already on the system.

The readme says to switch to linux instructions, but doesnt explain whether I should be using a cygwin shell (bash) or command prompt.

There is windows binaries and a make.bat which uses those binaries. I assume you compiling them for a reason, but if I use a cygwin shell, those binaries are not used.

I first tried the cygwin shell which uses the linux binaries and both asar and flips give the dreaded exec format error (they were +x perms).

I then added the cygwin bin path to my path variable, and started a windows command prompt, I also verified the included windows binaries work which they do, and ran make.bat with the flags I wanted, but this spits out some text saying the flags are not valid so the make.bat doesnt accept same syntax as the make.sh. The syntax it offers, gives me no option to compile with the retranslation.

* To compile normal Redux (New GFX) with one of the graphical patches, use only one of the standalone syntaxes.
   Normal Redux:        Redux+Green Agahnim:    Redux+Subtitle: Redux+Green Agahnim+Subtitle
   ./make.sh -r ./make.sh -g            ./make.sh -s            ./make.sh -c
* For Original GFX with one of the graphical patches, use the '-o' argument before the graphics you want
   Original GFX Redux:  OG GFX Redux+Green Agahnim:     OG GFX Redux+Subtitle:  OG GFX Redux+Green Agahnim+Subtitle:
   ./make.sh -o -r              ./make.sh -o -g                 ./make.sh -o -s                 ./make.sh -o -c

I also tried a 3rd way which is to run the linux make.sh from a windows command prompt, which i was able to do by launching with 'bash make.sh -o -t -s' however this gives the same exec format errors.

So it looks like I need to compile new linux binaries, but it feels like this could be far simpler if the windows batch file was feature equivalent to the linux make script.

I do have access to native linux machines, so thats probably what I will try next, but giving you this feedback here for the windows situation.

ShadowOne333 commented 2 months ago

Yeah the issue here is that I'm using different Linux distributions for my projects, either Gentoo or Ubuntu, and the binaries between the two aren't exactly compatible with each other.

I think I have an Ubuntu-compiled binary of both asar and flips in another Redux repository, but I can't remember which one, try looking for those and using the ones that say "XXXX-aptitude" or something like that, see if that makes them compile under Cygwin.

chrcoluk commented 2 months ago

I have edited the make.bat file, made some fixes and managed to compile it, I will try to match it to the linux make.sh feature set, and then upload it. But I have managed to compile the game with the options I wanted now using the windows binaries.

I will be playing the game for a bit to see if everything is ok, but seems ok, the music is working and I have the new title screen. Can also see from the prologue the retranslation is working as well.

chrcoluk commented 2 months ago

I came across a couple of missing chimes when text should trigger them for new map markers, but have now ended up with a unwinnable game.

The blue tunic was in the ice dungeon, but when I opened the chest in the swap expecting the cane of somaria it was the red tunic. I will redo the dark world tomorrow on the pre compiled redux, to see if it still occurs.

I have played through it in a way I never did before which I dont know if would tirgger a bug, I have been collecting dark world treasures without doing any of the bosses so I can do them all with the best sword possible and best tunic. I dont know if this may have glitched it.

The modified make.bat is in the zip.

make-fulloptions.zip

Zelda3_Redux504

ShadowOne333 commented 1 month ago

Oh you managed to update the make.bat script to match the same options as the make.sh? If you can, make a Pull Request for the make.bat change so I can review it and merge it.

As for items appearing in other dungeons... I'm not sure what the problem there is. Have you checked out the code itself for Redux?

If you happen to find something odd, do let me know. I seem to recall someone telling me about finding one of the Tunic someplace else, but I don't remember who or when that was, so it's possible it could be a bug or a typo somewhere.

chrcoluk commented 1 month ago

Yep it works with this in windows, but I do want to add a check in the script so it can detect if cygwin binaries are missing, then I will do the pull request.

I also added the 2 missing sounds in the retranslation that were missing so can do a pull request for that as well if you want.

chrcoluk commented 1 month ago

Ok I narrowed down the armor problem, The swap armor code once I disabled that, its fine again, however it is also fine using the pre packaged redux file, so thats my fault as I have fiddled with the source files somewhat. The windows batch file, doesnt use the same syntax, as I had noticed it wasnt accepting on run, so instead I edited the text output to instruct the flags to be entered at the prompt, but if you want it exactly how the linux script is accepting flags on the command I will alter a bit more so it works exactly the same way.

ShadowOne333 commented 1 month ago

Oh so the item obtained in the dungeon is okay in the normal Redux IPS file? The one inside "patches" should be the most recent one: https://github.com/ShadowOne333/A-Link-to-the-Past-Redux/blob/main/patches/Link%20to%20the%20Past%20Redux.ips

If that one works fine, then there's no need for me to screw around with the code. Thank you for confirming this. Once you finish testing the make.bat file, feel free to send the Pull Request.