CustomSkinLoader

CustomSkinLoader

1M Downloads

Unable to Fetch Updated Skins.

VanillaChan6571 opened this issue ยท 7 comments

commented

I am using Legacy Options and set my skins to an HTTP site so I can upload them and play with my friends as they can see. The only issue I cannot find or fix is YOU HAVE TO RESTART THE GAME to fetch new skin files.

If someone uploaded or updated their skin. Cloudflare is not caching the website as it automatically updates on refresh.

Steps I did:

Disabled Cloudflare Caching.
Messed with cacheExpiry even set it to 0 (Thinking it will automatically always get new skin on relog or rejoin)
Disable Caching
Messed with retryTimings

The only way is to restart the game which is not useful or Wait 4-5 mins. Rejoin Server then reload resource pack by F3+T and skin gets updated. Kinda a lot of work.

commented

I could not find any thing about "load from cache" in the log file, each request was sent to the skin server.

commented

MemoryLeakFix is not compatible with this mod which explains the Fetching New Skins were not working.

However you still need to Save & Quit, then Rejoin the world THEN F3 + T to get your new skin.

commented

cc @xfl03
i'm not sure how caches work

commented

All APIs force 90s of caching time locally:

+ UUIDTypeAdapter.fromUUID(profile.getId())).setCacheTime(90));

HttpRequestUtil.HttpResponce responce=HttpRequestUtil.makeHttpRequest(new HttpRequestUtil.HttpRequest(jsonUrl).setCacheTime(90).setUserAgent(ssp.userAgent).setPayload(this.jsonAPI.getPayload(ssp)));

HttpRequestUtil.HttpResponce responce = HttpRequestUtil.makeHttpRequest(new HttpRequestUtil.HttpRequest(skin).setUserAgent(ssp.userAgent).setCheckPNG(ssp.checkPNG != null && ssp.checkPNG).setLoadContent(false).setCacheTime(90));

HttpRequestUtil.HttpResponce responce = HttpRequestUtil.makeHttpRequest(new HttpRequestUtil.HttpRequest(cape).setUserAgent(ssp.userAgent).setCheckPNG(ssp.checkPNG != null && ssp.checkPNG).setLoadContent(false).setCacheTime(90));

HttpRequestUtil.HttpResponce responce = HttpRequestUtil.makeHttpRequest(new HttpRequestUtil.HttpRequest(elytra).setUserAgent(ssp.userAgent).setCheckPNG(ssp.checkPNG != null && ssp.checkPNG).setLoadContent(false).setCacheTime(90));

Not sure what remote servers caches rules are.

commented

Please provide .minecraft/CustomSkinLoader/CustomSkinLoader.log

commented

All APIs force 90s of caching time locally,
Not sure what remote servers caches rules are.

So I use my own private server to grab them. So when I upload it using an uploader. When I refresh the browser it automatically updates. This is useful for my friends to see my skin and have them upload their skin too.

Please provide .minecraft/CustomSkinLoader/CustomSkinLoader.log

Here is CustomSkinLoader.log

CustomSkinLoader.log

commented

I guess what I am saying is... It requires more steps to reload other people's skins or load them. My thought of using this system I set up would be simple as using Mojang Skin System just pick the skin in the launcher and re-login to the server and updated to other people and you. But is clearly how it's coded or done is not how it works what I thought it would do.