kavezo / ZipZap

48 stars 16 forks source link

Uncertain Readme #60

Open When-Suddenly opened 2 years ago

When-Suddenly commented 2 years ago

Hello, this isn't an issue pre-sei but the tutorial in the readme stops after setting up the server but has no links for a client program to actually connect to the server. the https://android.magica-us.com link appears to have an upload option and some options starting with "fix scrollbug" but no downloadable APK or a download link labeled "ca.crt".

Is anyone able to explain how to proceed from here?

Thank you for your time.

ViniSalvon commented 2 years ago

The Readme file is somewhat out of date. The client program is the .apk that comes inside ZipZap.rar file that you downloaded in Releases and the certificate (ca.crt) is generated on the same folder when you run setupServer.bat on Windows. You need to transfer both files to your Android system (physical mobile or emulators, I've had the best experience using Nox with Android 5 - Lollipop).

After that, you just have to setup the certificate for Magia Record. If you're using Android 5, that's easily done in the Settings (I don't remember where now, but I think it's quite intuitive, and I guess that the answer can be find in the other issues threads).

When you do it, prepare to take a long time while the game download the assets (my PC isn't thaaaat great and I have and HD instead of SSD, as far as I can remember it took 3~5 hours to download everything). And it "fails" a lot of time, and each fail, you need to press "Ok" (or something like that) to proceed. There will be a time that the progress will look to be stuck. Ignore it, just press to proceed all the times and it will resume. After that, happy playing. You can buy any meguca on the store, you have a lot of gacha tickets, evolution stones and everything else.

It is quite good, actually. The only major problem imo are the videos, there are some videos that crashes and you can't proceed to watch that chapter (including, unfortunately, the ending). Aside from that (and the issue that I reported), the experience is quite good overall.

It would be great if @kavezo fixed these problems (and even better if there were a local 2 players option to play with friends), but I'm thinking that she abandoned this project. I'm learning Python, eventually I might try to do it, but now my focus is to do my best to not starve and keep me away from living on the streets xD

When-Suddenly commented 2 years ago

Thank you for this information! I have gotten further in the tutorial and have the apk from the folder installed (don't know how I missed it the first time) I did as you said however I am getting a "connection error code:410 whenever I run the game on android. I am using an app called DNSChanger for IPV4/IPV6 however I am new to DNS changing so I think something outside my expertise is happening and failing. The server is up and the DNS says my IP on windows. I am on the same network on both devices. Got any ideas as to what is happening?

ViniSalvon commented 2 years ago

It depends when it is happening. If the game is on the download screen, and this error occurs while it is downloading the assets, then it is supposed to happen (a lot of times, some of then with different error codes). Just hit "Ok" and it will resume.

But... if it happens in a black screen or something, then it's probably:

1) Something about the DNS config (or you haven't actually started the server) 2) Something about the certificate

The 1) is easy to check: if you're able to start a browser (Chrome, Firefox, etc.) in your Android device/emulator, check if you're able to access https://android.magica-us.com. If you are, then your DNS setup is fine and the server is running, so, the problem is likely to be the case 2).

Tips for problem 1):

Tips for problem 2):

If you checked that your problem is n°2 and you still can't play, lemme know, I'll check again the steps that I made in order to make it work.

ForgottenMemory commented 2 years ago

I actually got it to work on an unrooted Android 12 device (I generally do not like to use android emulators as most seem rather shady). This will be a bit longer but here is what worked for me and did not, in case it may help someone. For newer android versions there is often the problem of the device circumventing a custom set DNS address (from my experience even through DNS changer apps.) When using a custom DNS app, if the setting is available it is important to set private DNS in the android system settings to off, at least for my device that does not accept IPs and only hostnames. It is also important to make sure that both devices are not just on the same network but that communication between devices in the same network is not disabled in the routers settings. The DNS changer app I used is DNS66 from F-Droid, but at this point it still managed to circumvent the custom DNS server. What did work in the end was forcing the IP onto the games host name in my router, that is running OpenWRT, such options are generally not available in standard consumer router firmware, however. I also had to edit the config file mentioned here in the readme. Just putting a custom DNS file (in allow mode) pointing to the private servers IP did actually not work, even though it should be doing the same thing, though maybe it would work on a different device? Not using DNS66 to point the device to the private servers DNS and just changing my routers setting did also not work. I am personally not yet that adept at networking, but setting my router’s firewall up to prevent DNS leaks and maybe also blocking IPv6 would probably also do the trick and actually may be the more elegant solution. Forcing the host name onto the IP in the router and pointing the device with DNS66 to the private servers IP however still seems to work so far.

I have not tried playing the game myself with android emulators but the ones that are probably fine are Windows Subystem for Android (Windows 11, many apps I tried do not work probably because so far a library necessary to install Chrome and the Android Webview will not install), and Waydroid (open source, personally could not get Android 11 to work on Ubuntu 22.04 (Android 11 is necessary to run arm based apps, at acceptable speeds)). I personally have not had any luck with the one included in the android SDK in the past, as even my own rather simple apps did often not display correctly and I had to fall back to using my own device. I have also heard good things about Genymotion, though I have not used it in years myself, so no idea if it is still worth a try.