-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes to allow importing assets from MoM app 1.9.3 #1622
Changes to allow importing assets from MoM app 1.9.3 #1622
Conversation
…d on AssetStudio code.
…d by AssetStudio.
@seinsinnes Can you please check if the Descent App also still can be imported using these changes? FFG hasn't touched this app for years therefore it was still working with the old approach. On Steam you can find the app here: |
Thank you this looks all fine. Looking promising that we can finally get rid of these issues with your change. |
I've just gone through the standard build on a windows vm. I was able to get to it built successfully. A couple of things to note from that: These changes are to accommodate the code in AssetStudio. |
The generated binaries from the build: |
@seinsinnes Is it necessary to change the build script path to the Visual Studio location? This would force the users to use Visual Studio 2022 even when a new version comes out. |
Yes, I realise it is not ideal for the build script to point to a particular version of visual studio. Though it does point to pretty specific versions of other dependencies. The build script just needs a path to a recent version of msbuild. Apparently there is a whole powershell module just for locating visual studio components: I guess the other alternative would be to go through the AssetStudio code and change all the language that %WinDir%/Microsoft.NET/Framework/v4.0.3031/msbuild doesn't like to older idiom. |
…rdcoding the year
@Quantumrunner I've changed the build script again so it is not dependent on visual studio of a particular year. |
Thank you this looks better. Please add a comment in the script what the new line does to ensure people understand it in the future. |
Thanks. Waiting for another contributor to test and approve code changes now. I hope this will not take too long for him. |
Cool, Let me know if you run into any problems. |
Tried on Windows 11 and it works like a charm! |
Sorry, I was on the cell phone and I accidentaly pressed on "revert". Please, ignore it |
Tried to install the APK 2.5.9a but I think it must not be properly built... You can unzip it but not install it. 2.5.9b installs and starts but it still does not find the MoM (1.9.3) app |
@Larrynho Which version of Android are you on? Newer versions of Android block the ability of Valkyrie to access other apps' data directories. |
@dhollinger Im on Android 12 ( MIUI 13 ). It is my understanding that these 2.5.9a and b where re designed to work with newer versions of the MOM app and Android, right? ( even if you still have to enable the install from unknowm sources for Valkyrie ) |
Yes, Valkyrie-android-2.5.9b.apk The problem is that the import fails on Android 11, 12, 13. I can't figure out a good fix for that. |
@seinsinnes @Larrynho there are a few different potential problems here:
|
@dhollinger With regards to 1: Can you elaborate on the bug for Android 12 because my changes for MoM 1.9.3 don't work with Android 11 due to being denied access to Android/Data/com.fantasyflightgames.mom/? As for 2 the only way I see around that (if FFG doesn't update RtL) is to stop relying on the official app for assets and just have a downloadable/shareable blob of importable assets (but this might have IP implications) |
@seinsinnes Have you made sure that Android isn't blocking any permissions for the Valkyrie app? Sometimes Android itself will block certain permissions if those permissions haven't been used in a while. It's also possible that the loophole/bugfix that was pushed in Android 13 (details) was backported by certain Android distributions, such as Samsung, LG, OnePlus, etc and thus no longer allowing Valkyrie to access the files of MoM. In fact, it's likely that some workaround was going to be needed anyway since the Android developer docs specifically state that an App's app-specific files are not supposed to be accessible from by other apps - (details)[https://developer.android.com/training/data-storage] That's the best answer I can give you. I'm not an android dev, I work more on backend code running on linux-based systems, so my knowledge is limited. |
A guy in discord passed me the IMPORT folder from his phone, as a "workaround", and by copying it on my phone on the proper route, the app starts but once you load an scenario everything is meesed up, badly positioned, tiles iver other tiles, markers on incorrect positions etc... Is there any way that I do tgis import step manually from my MoM app installation to my Valkyrie installation?? Edit: tested with an IMPORT folder from another phone and now works flawlessly. It seems that the first import folder I tried was from a PC version |
@Larrynho Glad to hear it was resolved. I've added in the possibly of manually moving the data: If you use that apk and can copy the folder Android/data/com.fantasyflightgames.mom to Valkyrie/com.fantasyflightgames.mom then the import will run successfully. This works on my Android 13 device. To do the copy just requires a file browser with enough access to the storage. Anyway, you found a workaround so you don't need this. |
@dhollinger Yes, I spent some time fiddling with permissions and requesting various permissions with nothing much to show for it. |
After looking at the Proof of Concept: This is a build with this permission fix: Valkyrie-android-2.5.9d.apk |
Theese links are dead. Can you update them? I see official app update period is extremely long. |
@riwarek |
Valkyrie stopped being able to import assets from the latest MoM official app. This is due to the official app moving to a newer version of unity (2020.3.45f1).
This is noted in a couple of issues:
#1605
#1619
This branch replaces the Unity_Studio code with AssetStudio code allowing Valkyrie to read the newer unity files.
This is a fairly big change in the import code. I've only built and tested it on my mac so it still requires testing on other platforms.