lan-cache-docker
lan-cache-docker copied to clipboard
doesnt work with league of legends
the cache works for blizzard and steam but league of legends crashes during update.
I don't play LoL myself but I'll try and test this out after the weekend.
after searching around for a while i learnt that league also uses another address for updates
- worldwide.l3cdn.riotgames.com
after adding this to the config files it starts working for a while then gives errors all similar in type: etag mismatch in slice response while reading response header from upstream
on the host pc the client starts updating normally and it pulls data from the cache but sometimes it decides to give an error . it says to restart the client to continue the update but it still goes on updating even after the error:
Patching failed and we're not sure why. Please restart the client to try patching again. (Error code 004.)
its just annoying and it starts the update back from 0% reading the cache data again.
server side log example (every other error is similar):
2017/12/04 20:33:40 [error] 9#9: *31 etag mismatch in slice response while reading response header from upstream, client: 192.168.88.244, server: worldwide.l3cdn.riotgames.com, request: "GET /releases/live/projects/lol_game_client/releases/0.0.1.137/packages/files/BIN_0x00000002 HTTP/1.1", subrequest: "/releases/live/projects/lol_game_client/releases/0.0.1.137/packages/files/BIN_0x00000002", upstream: "http://95.107.145.110:80/releases/live/projects/lol_game_client/releases/0.0.1.137/packages/files/BIN_0x00000002", host: "l3cdn.riotgames.com"
maybe its a slicing module problem but im out of ideas. please help.
Can you try putting this into the league nginx conf file?
After proxy_cache_key "league $uri$slice_range"; # $is_args$args
add:
proxy_hide_header ETag;
that did cause the error to go away but now it doesn't always serve data from the cache even after fully caching it; goes to 12% from the cache then starts sending GET requests again.
changes i made to fix some stuff: added:
- worldwide.l3cdn.riotgames.com
to the league_dnsmasq.config and league_nginx.config
uninstalled:
- bind9
sudo apt-get purge --auto-remove bind9
because it was blocking tcp port 53 and not letting dnsmasq run as intended.
edit: the league cache folder is only 6.9gb of the 18 gb download size. i think maybe disabling slicing for league might solve the issue but i don't know how to disable it in your setup, if you could help it would be great.
Do you have any follow up on this @RyanEwen ? Also do you have any simple walk trough guide to install this?
I'm sorry I haven't gotten around to working on this particular game.
The readme has a quick-start but for more detailed setup check the Wiki: https://github.com/RyanEwen/lan-cache-docker/wiki/Setup-instructions
the steamcache generic setting works for everything including league.
Next time I work on this project I will try to find the differences between steamcache generic and this, and close that gap. I don't get to work on this very often, though. Hopefully someone else might find the time sooner than I.
the problem persists, some suggestion.