Open lucia9096 opened 8 years ago
As a proof of concept, I spent 5 minutes banging this out in go:
https://gist.github.com/skroll/f4f46831daffb689de57b309ce36bf5d
Anyone else running iOS want to test this? It opens port 8080 (listening on all hosts) on your machine and works as a proxy, and just dumps "SW call" to stdout if it is proxying a call to the SW servers.
@skroll I'll load this on my server now and test it out.
@thatrandomguyo1 Your comments have not shown anything but complaints without any appreciation for the developers. If you can't see that, then you're just full of yourself.
There, comment free since questions aren't allowed.
I have an iOS device and Windows 10 laptop that I use as the proxy server, if you need help debugging let me know and I'll try and help, I have no coding background do you'll have to walk me through steps of its needed.
Well I implemented the capturing of the data and decryption in Go using the proxy. Won't post it here since I know how @kakaroto feels about the decryption keys being in the wild. I'll see if I can use a different lib in the SWProxy code.
@skroll current proxy seems to support 'connect' .Everything points to a bug in the proxy code probably related to 'connect' but without being able to use debug the code, I can't really fix it even using external help.
I have tried many times and spent alot of time trying to get the file of my monsters and runes(10+ hrs, probably should've just given up...). I have had no success so I was wondering if one of the mods who has an android phone could get the file for me. I would give hive information to my account.
@Knifetanner2 don't give your information to anyone, it's simply not worth it.
@thatrandomguyo1 I agree with you that saying "shut your mouth" is not an acceptable way to talk to others, and no one is telling you not to ask questions or to post here, however your comment was viewed (clearly by more than one person) as arrogant and self-entitled and helped no one. Saying "I see that is bug is still open, is there anything I can do to help you in fixing it?" or even "is there a reason why this bug hasn't been fixed yet?" is still better than trying to use sarcasm to let us know that your urgent need for the fix is more important than global warming.
@skroll @lstern yeah, CONNECT method is supported, and I know it used to work, maybe it stopped working recently? I have no idea. Using a proper proxy might be a good idea, I actually just googled "python proxy server" and copied the first implementation I found, it was a single file that did the job for the proof of concept I was looking to do. I'm sure there are better alternatives out there. If you want to port it to a different or more standard/complete proxy library, feel free to do it. Honestly, it was FRR day yesterday and I didn't even use the proxy/optimizer, I think the last time I used SWProxy was a couple of months ago, and I'm swamped with work so I spend most of my free time away from the PC, so you understand my motivation is a little low on this right now. But feel free to fix it any way you see fits. I'd vote for : try to fix the current proxy.py, if it seems overly complicated or takes more than ~30 minutes for a simple fix, then move for a port to a different library (or do both, if better library is available, use it instead, otherwise, default back to the local/broken proxy.py)
I have mac/ios and have had the same problems, but i just tried the work around from @knifesk and it worked like a charm. Thank you for you all amazing people here!
@daddyrubin > @knifesk said > If you double tap the home screen as soon as the "Connecting to game server" message appears and then switch to settings and set the proxy up, everything works as expected
I doubled tap home screen as soon as I saw "Downloading necessary information...." and went to set the proxy then got back in.
I've done some poking around - It looks like the issue is that the device/registered request never actually gets marked as complete.
I added some logic to mark it as complete (well, right now -any- post with a 0 content-length) and the parser is able to successfully grab my runes/monsters on ios, but it's screwing up the actual game. Not familiar enough with the HTTP protocol to know -why- it's not being marked as complete, going to have to screw around in wireshark and do some googling to dig further into it.
Could you share the code ? Maybe we could do a dirt fix to mark only this request then we can find the actual bug
On Sat, May 14, 2016 at 10:33 AM, Aureus notifications@github.com wrote:
I've done some poking around - It looks like the issue is that the device/registered request never actually gets marked as complete.
I added some logic to mark it as complete (well, right now -any- post with a 0 content-length) and the parser is able to successfully grab my runes/monsters on ios, but it's screwing up the actual game. Not familiar enough with the HTTP protocol to know -why- it's not being marked as complete, going to have to screw around in wireshark and do some googling to dig further into it.
— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/kakaroto/SWProxy/issues/83#issuecomment-219220630
Hack fix pull requested; I'll take a look at something less...horrible...after HoH is over. gotta get back to farming :)
Edit: Also, can't find build instructions, or I'd push out a package for people to try...any chance of getting those documented?
Thanks @aureus1 ! I Did some tests with android and this hack isn't breaking anything (did you experience any problem with this hack ?). As for the package build, are you using mac, linux or windows ?
No issues that I've seen; game seems fine once it's loaded.
Usually I'm on mac or windows, depending on which machine I happen to grab.
accepted the pull request. Created a custom build here (windows-only). I'll create an official relase once someone confirm that this is working and someone creates a MacOS build.
@aureus1 I'm building this using pyinstaller (pyinstaller SWProxy.spec)
404
Try this one, looks like i forgot to publish it: https://github.com/aureus1/SWProxy/releases/download/ios_Fix/SWProxy
hum, file is very small.seems like its not including Qt. Previous release had 14 MB
On Sat, May 14, 2016 at 11:09 PM, Aureus notifications@github.com wrote:
Try this one, looks like i forgot to publish it: https://github.com/aureus1/SWProxy/releases/download/ios_Fix/SWProxy
— You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub https://github.com/kakaroto/SWProxy/issues/83#issuecomment-219261975
Downloading + installing pyqt4 now; going to take a while over my cell phone connection (like it might be overnight - not available as a pip package, several 100MB worth of binary downloads). I'll post the binary when it finishes unless someone else gets to it first
I manually added the lines of code for the fix created by @aureus1 to the .99.1 release running in a Linux environment and it works with no errors for iOS and Android devices. Hope that is helpful in any way.
Thanks for the work on the fix!
Got PyQt4 set up; new binary here: https://github.com/aureus1/SWProxy/releases/download/ios_Fix/SWProxy
15MB, looks like it has QT pulled in.
Confirmed! Tested master 7f0d02f (Merge pull request #89 from aureus1/fix_ios_issue) with my iOS device and was able to launch the game 5 times out of 5
I downloaded this PyQt4 and the file that @aureus1 posted in his last comment, but don't know what I'm doing... Any suggestions? iOS, and Windows 10 here
Released a new version. @kupoback aureus1 file is a MacOS file.
Ah okay. I have a mac as well. However, still unsure what to do. I'll just wait as things wrap up for a .exe or .dmg
There already is a .exe: https://github.com/kakaroto/SWProxy/releases/tag/0.99.2
Ah, that I didn't see the link to. I just saw 0.99.1 Thank you. Once the game comes back online (can't seem to connect by default), I'll give this a try. Thank you
Cannot connect on either Mac or PC. Fails instantly.
Edit I got it to work. Had to re launch the app. A minor set back, but it works!
Thank you!
A big thank you to everyone who has worked on this, it is now working for me!
Windows 10 marked it as an unknown program and didn't before, but clicked the "More info" and it allowed me to run it, then had to make sure the Firewall exceptions were in place.
Thank you all!
So is it just me or we can't sync the swproxy with the game again prior to the latest application?