fosspill / FFXIV_Modding_Tool

FFXIV Modding Tool is the Cross-platform Commandline interface alternative for TexTools
https://ffmt.pwd.cat/
GNU General Public License v3.0
47 stars 4 forks source link

Mac: Certain mods makes game load black screen #237

Closed richard-tirta closed 3 years ago

richard-tirta commented 3 years ago

13/11/21 Update / Solution

Original bug report:

Describe the bug First time installing mod and in a mac. Everything seems fine with ffmt and the problem check. However when activating the mods, the game won't start and load. The computer rather freeze as you have to 'force close' to close FFXIV.

Screen Shot 2021-02-21 at 7 43 23 AM

To Reproduce Steps to reproduce the behavior:

  1. Install FFMT per guide.
  2. Install mods per guide (I use TheBody 2.0)
  3. Open FFXIV Launcher on mac, enter creds and hit play.
  4. The game launched with a blank black screen instead of getting to the lobby as per image above.

Expected behavior Game starts and allowed us to the lobby to select character.

Desktop (please complete the following information): ffmt 0.9.8.0 Game version 2021.2.10.0 MacOS 10.15.7

Additional context GameDirectory=/Users/Richard/Library/Application Support/FINAL FANTASY XIV ONLINE/Bottles/published_Final_Fantasy/drive_c/Program Files (x86)/SquareEnix/FINAL FANTASY XIV - A Realm Reborn

BackupDirectory=/Users/Richard/Documents/My Games/FFXIV Index Backups

ConfigDirectory=/Users/Richard/Documents/My Games/Final Fantasy XIV - A Realm Reborn

Modlist.cfg [ { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c0301/obj/body/b0001/material/v0001/mt_c0301b0001_b.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "Normal", "part": "Texture - Normal", "race": "Hyur_Midlander_Male_NPC", "file": "chara/human/c0104/obj/body/b0001/texture/--c0104b0001_c_n.tex", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "Specular", "part": "Texture - Specular", "race": "Hyur_Midlander_Male", "file": "chara/human/c0101/obj/body/b0001/texture/--c0101b0001_c_s.tex", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "Specular", "part": "Texture - Specular", "race": "AuRa_Male", "file": "chara/human/c1301/obj/body/b0001/texture/--c1301b0001_b_s.tex", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "SmallClothes Legs", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/equipment/e0000/material/v0001/mt_c0101e0000_dwn_b.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "Specular", "part": "Texture - Specular", "race": "Hyur_Highlander_Male", "file": "chara/human/c0301/obj/body/b0001/texture/--c0301b0001_c_s.tex", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "3D", "part": "Model", "race": "Hyur_Midlander_Male", "file": "chara/human/c0101/obj/body/b0002/model/c0101b0002_top.mdl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c0101/obj/body/b0001/material/v0001/mt_c0101b0001_c.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c1301/obj/body/b0101/material/v0001/mt_c1301b0101_c.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c1301/obj/body/b0001/material/v0001/mt_c1301b0001_b.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "Specular", "part": "Texture - Specular", "race": "AuRa_Male", "file": "chara/human/c1301/obj/body/b0001/texture/--c1301b0001_c_s.tex", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c1301/obj/body/b0101/material/v0001/mt_c1301b0101_b.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c1301/obj/body/b0001/material/v0001/mt_c1301b0001_c.mtrl", "enabled": true }, { "modpack": "TB_Type1_SFW", "name": "Body", "map": "ColorSet", "part": "Material", "race": "All_Races", "file": "chara/human/c0301/obj/body/b0001/material/v0001/mt_c0301b0001_c.mtrl", "enabled": true } ]

fosspill commented 3 years ago

This is very interesting as earlier versions has worked fine on Mac. You'll have to excuse possible dumb questions here, though.

If you run ffmt reset your game returns to a working state?

Has it worked previously for you?

Can you start the game in console? Does that provide any output?

richard-tirta commented 3 years ago

If I run ffmt reset my game returns to a working state. The game itself has work previously but the ffmt has not. I started the game by dragging it to terminal and it starts the launcher but does not provide any output.

fosspill commented 3 years ago

Another question then, and this comes down to lack of knowledge: Do you run FFXIV through some sort of winewrapper on your own or do you use the official version for Mac?

If you are using the official version I'm afraid I'm unsure about how to troubleshoot.

fosspill commented 3 years ago

@hybridindie Sorry to mention you like this, but I believe you've ran the game on MacOS with ffmt? Is it now broken for you too?

littleclay commented 3 years ago

As another data point, I use the official macOS FFXIV client and I know that, as of version 5.3 of the game, previously FFMT worked. I just tried loading a mod with FFMT that worked on my Mac before and I see the same issue (e.g. the game hangs). When I run ffmt reset the game goes back to a working state. My OS is also Catalina (10.15.7).

shinnova commented 3 years ago

Could you test with the previous release of ffmt? That would be version 0.9.7. This will help us figure out if the regression is in ffmt, the framework, or the game client itself.

richard-tirta commented 3 years ago

Assuming I can't use homebrew for 0.9.7. I downloaded and try to use manual install, but Mac is screaming to me since it's not an approved developer apps. I had to bypass one by one of the files. But doesn't seem I can't execute with ffmt but ./ffmt?

Just tested with 0.9.7 it's showing same symptoms.

fosspill commented 3 years ago

Ah, what a shame.

If 0.9.7 had worked we would have known that the issue was either in ffmt or the xivmoddingframework, but since you found the same symptoms it may very well be a game client regression as well.

I think the best next step would be for me or @shinnova to buy a mac license and test on proper mac hardware.

hybridindie commented 3 years ago

@fosspill Sorry for the delay here, you know bills and all. I'm not seeing any issues. Just reset everything and made sure to start fresh. He's the steps I took and mind you I'm on Big Sur 11.2.1 with an i9 and 32G so it's a beefy system.

  1. Wiped FFXIV and all Mods
  2. Homebrew cask is integrated now so that command is defunct just home-brew install dotnet-sdk

This unfortunately installs a wrong version of the SDK @ 5.0.3 where FFMT wants 3.1.0

It was not possible to find any compatible framework version
The framework 'Microsoft.NETCore.App', version '3.1.0' was not found.
  - The following frameworks were found:
      5.0.3 at [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

You can resolve the problem by installing the specified framework and/or SDK.

The specified framework can be found at:
  - https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=3.1.0&arch=x64&rid=osx.11.0-x64
  1. Went back and downloaded the self-contained release version
  2. Backed up the indexes
  3. loaded Tight&Firm ( of course )
  4. Booted the game, this took a few and logs show it was indexing and the such. This might have been cause I needed a hot fix.
  5. Game ran fine, a little sluggish while the texture caches were built but ran perfect once I actually got into the world.

I'd love to hear what other problems are happening cause I can't see any.

fosspill commented 3 years ago

Alright, that's interesting. Will look into the dotnet-sdk issue!

There is a pattern here though and even if it may be of pure coincidence I think it is worth pursuing for now: Everyone reporting the issue is still on Catalina but the game client has been officially updated to support Big Sur I believe. This may be a regression due to changes in how codeweavers has to move forward to support newer MacOS versions.

If anyone could take a leap of faith and upgrade to Big Sur and see if the problem remains that would be fantastic.

Oh and @all-contributors please add @hybridindie for userTesting and bugs

allcontributors[bot] commented 3 years ago

@fosspill

I've put up a pull request to add @hybridindie! :tada:

richard-tirta commented 3 years ago

Upgrade to Big Sur and it still showing same issue. Although I didn't take the advice of wiping FFXIV, mods and using the self-contained version.

hybridindie commented 3 years ago

Upgrade to Big Sur and it still showing same issue. Although I didn't take the advice of wiping FFXIV, mods and using the self-contained version.

I would suggest trying the self contained version. There were massive changes to the underlying systems leading up to and within Big Sur. You aren't gaining anything by trying to compile it yourself either. This doesn't run inline with FFXIV so performance isn't an issue.

fosspill commented 3 years ago

If self contained version works for more people we should remake the recipe for brew to just grab the precompiled version.

hybridindie commented 3 years ago

If self contained version works for more people we should remake the recipe for brew to just grab the precompiled version.

I don't see anything wrong with this. Truly, unless someone is / wants to help and contribute there really is no reason to compile it.

fosspill commented 3 years ago

Fair points. I still prefer distributing source over binaries as the likelihood for tampering is lowered somewhat. Regardless I agree that it is the right choice in this issue.

So I have a question now. There are two different versions we've packaged for MacOS. Does both work?

Installer: https://github.com/fosspill/FFXIV_Modding_Tool/releases/download/v0.9.8/FFXIV_Modding_Tool-mac-selfcontained-0.9.8.zip This version unzips and installs the application when you run the executable the first time. I take it this is the one you already tested and it worked well?

Pure zip: https://github.com/fosspill/FFXIV_Modding_Tool/releases/download/v0.9.8/FFXIV_Modding_Tool-mac-0.9.8.zip This version has to be unzipped and a decent launch script should be made (there is one included which gives some pointers). Can just be launched by CDin into the extracted folder and running ./ffmt

I'd love to know if neither breaks FFXIV when applying a mod!

fosspill commented 3 years ago

If someone (@richard-tirta?) could test the two linked versions that would be fantastic! I'd love to know which alternative would work best

richard-tirta commented 3 years ago

I did this: Wiped FFXIV including the config files Installed https://github.com/fosspill/FFXIV_Modding_Tool/releases/download/v0.9.8/FFXIV_Modding_Tool-mac-selfcontained-0.9.8.zip. Install FFXIV Re-setup FFMT Install BodyType2 (https://www.xivmodarchive.com/modid/17279) Start up the game. The game freeze.

Disable the mods (ffmt mods disable). The game start normal.

fosspill commented 3 years ago

Sorry about the slow reply here, but I'm very unsure about what to do here since the selfcontained version seems to work for some but not others.

There is however a new version out now with 5.50 support. Could someone please test if the newest version, by some miracle, works better?

fosspill commented 3 years ago

@shinnova Could we easily make a mono version as well to see if that would be better?

vvsRin commented 3 years ago

i use the self contained version and it works fine, some mods caused it to crash on older versions but i will test on new release.

shinnova commented 3 years ago

i use the self contained version and it works fine, some mods caused it to crash on older versions but i will test on new release.

What kind of mods would cause a crash? And do they still crash on the newest release?

@shinnova Could we easily make a mono version as well to see if that would be better?

That shouldn't be a problem!

richard-tirta commented 3 years ago

So. I think I might unconsciously using the homebrew version. Since I decided to clean my homebrew and now it's just not running ffmt at all. However, wonder how to run the self contained one? I click the ffmt file and I got this.

Screen Shot 2021-04-16 at 10 55 21 AM
fosspill commented 3 years ago

Nice! You are so close. Open your terminal through launchpad (I think that's what it's called?). Then type cd /Users/Richard/Downloads/FFXIV_Modding_Tool-mac-selfcontained and then ./ffmt v

richard-tirta commented 3 years ago

Yeah, still not working. Somehow my gut feeling lies within the mod itself. Here I'm trying to do TheBody 2.0, trying to see if there's other male mods I can use but mostly requires the body as base. Since if I disable the mods then the game will load fine. And is there a way to delete the mods once imported? Trying to see if different mods configuration will fix the issue (I tried not to install all).

fosspill commented 3 years ago

https://ffmt.pwd.cat/#/userguide/usage/mods

Basically: Edit the modlist.cfg file (disable the mods you don't want) and run ffmt mods refresh Not very elegant. Working on better solution slowly, but it gets the job done

vvsRin commented 3 years ago

@shinnova its just random ones actually (usually newer ones). Most mods pre-2021 work fine, and there's also ones post 2021 that work. Usual crashing for me is mostly newer clothing mods, i'll look and test some now and will update on if they're more stable.

fosspill commented 3 years ago

Yeah would be super handy to see which mods it is.

I'm afraid that this is a regression in FFXIV for Mac itself since it's running its own proprietary wine wrapper, but it may also be something in specific parts of the framework code that we could work around (or worst case error out or warn if we believe it can cause mac specific crashes)

vvsRin commented 3 years ago

update: still had a clothing mod crash the game (Peacock princess) on the ffxiv mod site. I've tested a few mount mods which work fine, most face mods work as well (i have a few) and also hair mods work as well. I've only experienced crashes from clothing mods and one mod that modified viera ears.

also in the future would there be an option to use mods for eyes? Considering they use actual .pngs and not .ttmp(2)?

shinnova commented 3 years ago

Will take a look at Peacock princess to see if there's something that stands out about it. Do you have examples of clothing mods that work? So I can compare them.

also in the future would there be an option to use mods for eyes? Considering they use actual .pngs and not .ttmp(2)?

We're currently working on being able to import/export textures and models directly which would allow you to do that. In the meantime, if you can get someone to import the .png onto the eye(s) you want and turn that into a .ttmp(2) file you can use eye mods that way.

richard-tirta commented 3 years ago
Screen Shot 2021-04-16 at 11 20 12 AM

this was the error I got with the body. I excluded the file in question but it still crashed out though.

vvsRin commented 3 years ago

@shinnova Yes sure! the current mod im using for clothing that works is MHW - Golden Dream(Thavnair, because it comes with two mods in the folder but i only used one)

richard-tirta commented 3 years ago

Some good update. I got the game running while A mod is installed. However, I'm very cautious as only installing few mod packs. When I load the game it doesn't seem to do anything I'm expecting so I guess the mod pack isn't hitting the mark. However, I'm being cautious not to install all as I don't want to crash the game.

Screen Shot 2021-04-21 at 4 54 23 PM
richard-tirta commented 3 years ago

So I hit the mod pack that is corrupted. However, there's no way for me to pinpoint that and find which one is due to following reason:

vvsRin commented 3 years ago

@richard-tirta try adding them in separately and seeing if it changes anything, then single out which one makes it crash. If nothing changes and it crashes then try a different body mod (Tight&Firm 2.0 works fine), its trial and error with some of them for now.

vvsRin commented 3 years ago

@richard-tirta also you can do ffmt r to reset the mod config

fosspill commented 3 years ago

Very much appreciate all the testing that has been done here! With more specific mods that we know cause crashes it'll be easier to find a root cause.

vvsRin commented 3 years ago

No problem!

shin-k0101 commented 3 years ago

Some mods freeze when loading game graphics in the Mac version of the FF XIV client. I believe this is a problem with MacOS or the Mac version of the FF XIV client. The same problem does not occur in the Windows version of the FF XIV client imported with FXIV_Modding_Tool. The specific name of the mod is often "Bibo+" for example, which is a relatively new mod.

fosspill commented 3 years ago

Sadly this is my conclusion as well.

Is it possible to play the Windows version of FFXIV on Mac through Wine?

fosspill commented 3 years ago

Would it be possible for anyone to test if the same issue happens when you run the windows version through wine? Or through crossover, for instance? https://www.codeweavers.com/compatibility/crossover/final-fantasy-xiv

Technically the FFXIV mac version is already ran using crossover, but there may be differences.

aeroplvne commented 3 years ago

@fosspill i just tried to import a body mod "ttmp" file and it worked. it's the "ttmp2" that doesn't ! (if it can help in any way)

vvsRin commented 3 years ago

@aeroplvne its honestly just trial and error with some, i have mostly .ttmp2 files that i use that work fine and a few .ttmp

vvsRin commented 3 years ago

@fosspill ill test crossover later

fatcatsings commented 3 years ago

Would it be possible for anyone to test if the same issue happens when you run the windows version through wine? Or through crossover, for instance? https://www.codeweavers.com/compatibility/crossover/final-fantasy-xiv

Technically the FFXIV mac version is already ran using crossover, but there may be differences.

@fosspill Hello, I just came across this tool recently as I've been working on running the Windows client of FFXIV through the newly optimized Crossover 21 software:

https://github.com/seathasky/FF14-MAC_ModSupport

I had some issues with FFMT but I found this thread and followed the self-contained installer and I was able to successfully mod the Windows client of the game on my Macbook Pro M1 Max with TheBody2.5.

It might be worth reaching out to the people working on that Crossover project I linked above and see if you could team up with them to build FFMT into their install. It's amazing that we're finally hacking together a decently optimized version of the game on Mac.

fosspill commented 3 years ago

@fatcatsings thank you!

I see the guide you linked specifically mentions Dalamud working. In which case I'd highly recommend testing out penumbra and see if that would work.

Thanks to penumbra I have a feeling ffmt will be less and less needed, so time may possibly be better spent there instead. Could you test that too?

fatcatsings commented 3 years ago

@fosspill Oh awesome, thank you so much for telling me about Penumbra. I was able to install it via Dalamud and sure enough, it does work well!

That being said, I'm glad to have FFMT as a backup to hard inject mods if I need it. Thanks for all your hard work!

fosspill commented 3 years ago

That's great news! Also means that you don't have to redo your mods every patch :grinning:

I'll add a link to Penumbra somewhere in the readme so that others may find it too

Further, I'll close this specific issue as it is out of my hands. That's also proven by the fact that the game works fine - even when modded - if ran through crossover, if I understood you right.

So, to reiterate: