Granblue Fantasy HTTPS Mudfish Support

Something is not so good with Mudfish on GBF (granblue fantasy) now that GBF is using HTTPS. I don’t really understand why but GBF is slower with Mudfish than without. I would expect Mudfish to dramatically improve performance for GBF as long as Mudfish is doing TLS offloading rather than TLS passthrough (and having no TLS between browser and Mudfish’s proxy).

Is anyone from the Mudfish team able to look into why it doesn’t help? This has the potential to alleviate a huge performance regression from playing GBF over HTTPS overseas since the cost of the TLS handshake is so high and they aren’t properly re-using connections.

9 Likes

I’m having the same performance degradation sadly. Hopefully they can rectify it

Also experiencing horrible latency with mudfish after forced HTTPS from GBF. Praying that something can be done on Mudfish’s end to save the game.

Reporting same issue, Mudfish just doesn’t change anything right now and I’m using the best nodes on my end as well.

1 Like

Indeed, Mudfish in its current state no longer seems to do anything anymore for Granblue Fantasy now being forced HTTPS. I’ve used Mudfish for several years to play this game and I really hope that there might be something that can be done to make it improve the experience again.

@weongyo Can you share any thoughts on this please?

Experiencing similar latency issues since the recent forced https from gbf. I hope this is looked into as well have been using mudfish for 2 years or so now and it’s been a big help as an overseas player

1 Like

It’s the same here, I hope it’s handled faster because I can’t race in the raid.

I am also having the same issue. With mudfish the game runs slower than without

I am experiencing the same problem granblue fantasy is running very slow and feels unplayable. I hope the mudfish would look into it and see if there is a problem at their hand

I am experiencing issues with https change on the browser extension for chrome. Everything is from not loading at all to taking 3 times the amount of regular loading without even using the extension.

I think most of the users affected by this issue (changing the default protocol HTTP to HTTPS) are the user of Mudfish Browser Extension, right?

I’m not sure how much this could be helpful with Mudfish but you could check some tests as follows:

  1. Instead of using Mudfish Browser Extension, if you use Mudfish Cloud VPN program for PC after equipping “Granblue Fantasy” game item, is it even same? Could you feel that the same latency?
  2. If you’re using a user of Mudfish Browser Extension, did you enable Use the secure connection option? If then, please disable it and test again.

If Granblue Fantasy used HTTP-only in the past, it means the connection was terminated at the proxy side and proxied to the game server. However if the game starts to use HTTPS-only as default, it means the connection isn’t terminated and is continue to the game server. This is a big difference and Mudfish can’t terminate the connection at the proxy side if it’s SSL connection. If Mudfish terminates the connection, it’s called “A man in the middle (MITM) attack” and the browser rejects the connection due to invalid SSL certificates.

In a view of Mudfish Browser Extension, nothing to do regarding to TLS handshake and TLS session reuse because it’s up to the browser’s decision. :frowning:

Is there any way to force the browser to accept invalid SSL certificates?

What if you give us a root CA that we can set the browser to always trust so that we allow mudfish to MITM us?

How to Man in the Middle HTTPS Using mitmproxy - Earthly Blog seems to kind of cover that it should be possible to trick the browser into accepting the MITM attack if we manually add the certificate

using the apps and equipping the Granblue Fantasy item instead of using the browser extension completely solve the issue, however that means when im browsing while playing, the traffic will be counted to the PPT balance right :cry:

Thinking about it more, I think we would need a local proxy so that performs a MITM and then communicates to mudfish over HTTP and mudfish does HTTPS to server. I guess at that point we can just write our own proxy

@weongyo Are the mudfish servers usable with standard proxy protocol if we try to put a proxy on localhost that terminates TLS with a trusted cert? We can fix the HTTPS issue on our own but it would be nice to still be able to use Mudfish in this scenario or we lose the better routing benefits.

@here Not sure how much my trick I can suggest is helpful for you guys but I think it’s worth to test new Mudfish Browser Extension for Chrome. When you get a chance, please follow the below steps, test and let me know whether it works for you.

Steps

1. Download new Mudfish Browser Extension for Chrome.

This is found at Index of /releases/ link and this link is a direct link. After downloading it, please unzip it first at any directory.

2. Uninstall the existing Mudfish extension and load new one.

Follow the steps to load the unpacked extension.

  • Goto Chrome Settings using three dots on the top right corner.
  • Then Select Extensions. Or you may directly open extensions using chrome://extensions URL.
  • Now, enable developer mode
  • Click on “Load Unpacked” button and select your Unzip folder. Note: You need to select the folder in which the manifest file exists.
  • The extension will be installed now.

3. Opens “option” menu of Mudfish Browser Extension.

New option page looks like below.

Click “Advanced” tab. At “PAC” section, please change the body as follows. This rule is to add shExpMatch(url, "https://*.akamaized.net/*") line not to proxy *.akamaized.net domains.

function FindProxyForURL(url, host) {
  host = host.toLowerCase();
  if (isPlainHostName(host) ||
      isInNetEx(host, "127.0.0.0/8") ||
      isInNetEx(host, "10.0.0.0/8") ||
      isInNetEx(host, "172.16.0.0/12") ||
      isInNetEx(host, "192.168.0.0/16") ||
      isInNetEx(host, "fc00::/7") ||
      isInNetEx(host, "fe80::/10") ||
      shExpMatch(url, "https://*.akamaized.net/*") ||
      shExpMatch(url, "http://mudfish.net/*") ||
      shExpMatch(url, "https://mudfish.net/*")) {
        return "DIRECT";
  }
  return "{0}";
}

If this works for your game, the game assets (e.g. images, movies and scripts) provided by Akamai CDN will be accessed directly via the browser.

4. Turn on Mudfish extension, connects the game and test again.

It’s done. I hope it’s helpful a little bit for your gaming experience.

1 Like

I’ve tried it just the same as usual, there is no change in me, I don’t know if others are the same as me.

Yes, this update made the extension more responsive (the performance is similar but no better than the full VPN mode). Unfortunately, the said game has chosen to use HTTP/1.1 protocol instead of HTTP/2, which made it difficult for competitive foreign players to play due to the distance. Regardless, thank you for taking the time to help improve the situation, @weongyo