Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

How viable, is reading resources, e.g. pictures from server and send them to clients?

Featured Replies

Posted

Normally this should (probably?) be done with resource packs but it is not something I like much.

So, as title, how viable, is reading resources, e.g. pictures and images from the server and send them to clients?

 

Thanks in advance.

You can define a server resource pack in the server.properties.

See Default Resource Packs here: https://minecraft.fandom.com/wiki/Resource_Pack

This is downloaded "out-of-band" from the specified url

 

I don't think sending images directly from the server to the client is a good idea.

* It is outside the normal lifecycle of resource loading

* Doing so with custom login network packet(s) is going to slow down the login and potentially break the 30 second timeout for people with slow machines/networks

 

If you do want to do it, one way is to look at how skins and capes are handled in SkinManager.

 

But in general having a client make a random network connection is a bad idea, a potential security hole and a privacy issue.

When I see this kind of thing happening in modpacks, e.g. trying to connect to discord or the like, I generally just uninstall the mod or the whole mod pack.

Boilerplate:

If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one.

If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install

Large files should be posted to a file sharing site like https://gist.github.com  You should also read the support forum sticky post.

  • Author

Hi, first of all, thanks for the reply.

How about only send the data when requested? For example the client can decide whether they want to requesting and get the images.

 

I'm also not considering using external links and such, maybe something like how maps are handled?

Edited by poopoodice

Then why not just implement it how the MapInstance/Item works?

But, the Map renders as blank while waiting for the server to send the data. Maybe that is ok for you? 

Edited by warjort

Boilerplate:

If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one.

If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install

Large files should be posted to a file sharing site like https://gist.github.com  You should also read the support forum sticky post.

  • Author

Was curious more on the custom server i/o (without using resource packs), and the image transfer since the image will be way larger than a map does.

 

In fact I just realised that some of the images are around 4~5 MB... probably not a good idea to transfer them then... sorry for bothering and thanks for the help.

Edited by poopoodice

  • Author
3 hours ago, warjort said:

* Doing so with custom login network packet(s) is going to slow down the login and potentially break the 30 second timeout for people with slow machines/networks

Actually I have a one last question, if I managed to compress the images to lower qualities, e.g. size of around 100 KB or even less (hopefully not!), will it still be an issue to communicate them with clients? Or it really depends on the situation (user end)?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.