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.

Featured Replies

Posted

Hello, 

in mod I am working on I have a need to store some values that I would need to check on in multiple places in my mod. I know that this value will be unique for every player (pretty much every instance of Minecraft running the mod will have this value different).

 

In Android, there are SharedPreferences into which one can store such information. Is there dedicated class/space in forge that I should take advantage of? Is there a recommended approach for this?

 

Or will it be okay just to create a public static class, let's say SharedPreferences with HashMap and getters and setters for indexes in the HashMap?

 

Thank you in advance.

54 minutes ago, DeadPix said:

Hello, 

in mod I am working on I have a need to store some values that I would need to check on in multiple places in my mod. I know that this value will be unique for every player (pretty much every instance of Minecraft running the mod will have this value different).

 

In Android, there are SharedPreferences into which one can store such information. Is there dedicated class/space in forge that I should take advantage of? Is there a recommended approach for this?

 

Or will it be okay just to create a public static class, let's say SharedPreferences with HashMap and getters and setters for indexes in the HashMap?

 

Thank you in advance.

Are these values gonna be accessed on the server or is this a client only feature?

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

I am not sure how to exactly determine that. But probably only client side? It will be mostly client relevant values like 'is this thing on or off' and similar. Is that client side only?

2 minutes ago, DeadPix said:

I am not sure how to exactly determine that. But probably only client side? It will be mostly client relevant values like 'is this thing on or off' and similar. Is that client side only?

Sounds like you need to read about sides.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

I am only a little bit smarter after reading it now, than I have been after reading it the last time. But also I am now certain that I need it client side only. 

 

So, what does it mean for my original question, please?

1 minute ago, DeadPix said:

So, what does it mean for my original question, please?

I would just store it in a static variable in your ClientProxy or an @SideOnly(Side.CLIENT) class.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Actually the more important question is whether this value needs to persist between saves. If it does not, then you are free to create public static fields that store the values, and then regenerate them each time the game starts. But if you need to save them then generally you would add them either to the player or to the world in a saveable way, such as using the WorldSaveData mechanism. You can also pretty easily just create your own file format for saving the information -- like on client side you could store it along with config info.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

4 minutes ago, jabelar said:

You can also pretty easily just create your own file format for saving the information -- like on client side you could store it along with config info. 

@DeadPix Though I would only do this if, this value doesn't control anything important as it could be edited by the player.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

@jabelar@Animefan8888

Alright, thank you guys for your input - in the end, I decided to create a weaker version of aforementioned SharedPreferences (for boolean value only) and it seems to work exactly as I wanted it to. I need it only client side - and the scenario when player edits those values, is not a problem. I do not need it to persist between game loads, so I also do not save it anywhere, but in the future I will need some persistent functionality for something else, so I am also grateful for your suggestion on reading around it, jabelar. Thanks.

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.