STEEM.CRAFT | #5 | Added new inventory menu and more changeable settings

Here, the new inventory menu is displayed, there, it is possible to change settings of the world and also view the votes, comments and the history of the world in the future.

Hello, Steemians and Minecraft players,

this time, I have again new features for the steemworlds.sk addon, multiple new menus which allow changing the settings of the world and functions which allow changing settings through the new inventory menu has been added.

1. Repository

https://github.com/Abwasserrohr/STEEM.CRAFT

2. Index

  1. Repository
  2. Index
  3. New features and changes
    3.1 Added more settings to the worlds & also store it
    3.2 Added inventory menus for steemworlds.sk
  4. Pull requests
  5. GitHub Account
  6. How to contribute

3. New features and changes

3.1 Added more settings to steemworlds.sk & also store it on blockchain

Using words instead of plot based worlds, on which the players only have a part of the world has some big advantages for us. Players can change all world based settings as they need it, which is really nice to have. To make this possible, a settings menu is needed. While it would be possible to just create some comments, inventory menus are fancier in my opinion. This doesn't mean that there won't be any commands in the future, but for now, the menu will do the job.

Before we can start with a menu which has all kinds of settings and gamerules, functions are needed to do the work for the menu, since the menu just calls the functions later on click.

I added all settings that are important in my opinion, once I get some feedback about other important settings, there will be more. But the most important settings, for now, are in my opinion:

  • weather cycle
  • daylight cycle
  • weather
  • time
  • random tick interval

Unfortunately, some world settings, like the weather didn't work in Vanilla Skript, which is why I created a function to change the weather, this only works with skript-mirror, on which STEEM.CRAFT depends on anyways.

Another new function is that changes of the world are now applied using the applySteemWorldSettings function, this has the advantage that the settings can be applied anytime it is necessary without doing it again and again everywhere.

All the settings are loaded from the general storage, where the settings of the steemworlds are stored. This is important since the world loses some of its values on restart if the world is created again.

Commit: https://github.com/Abwasserrohr/STEEM.CRAFT/pull/38/commits/fffaf931732e42405fb763209c06faa118896235

3.2 Added inventory menus for steemworlds.sk

In vanilla Minecraft, the options to make a menu easy to use is limited. I decided to use inventory menus as a menu since it is possible to add customized heads into the game, this can get very intuitive for players later on.

Here, you can see the current version of this menu, it currently only allows to change some settings. Since the menus not only have to change things but also display it properly, there is more work to do than just doing commands.

To be sure that I'm the actual owner of the world, I created a new function called getWorldPermission.

While this function is very small, it is important to have such tasks, like checking for permissions of a world within functions, since if there is a change in the future, this makes it easier to maintain.

Commit for getWorldPermission: https://github.com/Abwasserrohr/STEEM.CRAFT/commit/662a3229d7556994869010ca5a716104671a2d7b

I don't want to show any examples about the inventory menu since most of the times, it is pretty clear what happens and there is not really an explanation needed, I also try to explain everything within comments.

But the reason, why I did an inventory menu instead of just comments (besides more fancy) is because it is easier for the player to just type in /steemworlds or /sw to view the inventory menu and find what they're searching from there than using a command which then shows subcommands.

The inventory menu also has some configurable options, these allow the server operator who runs STEEM.CRAFT to change the style and look of the menu to fit with the corporate identity of the server.

Instead of just normal items, custom heads can be used as an item in the inventory menu, this allows for some crazy customization in the future, in the current default options, you can see the custom item right away, it is the long one with the base64 encoded json string.

Commit for inventory menu: https://github.com/Abwasserrohr/STEEM.CRAFT/commit/8c50d565ab05e4291697450523d39432338b66e8

4. Pull requests

https://github.com/Abwasserrohr/STEEM.CRAFT/pull/38


5. GitHub Account

https://github.com/Abwasserrohr


6. How to contribute

If you want to contribute to STEEM.CRAFT, contact me here in the comments or on Discord. Please contact me directly, I'm the sewage pipe on Discord. I look forward to meeting people who want to get in touch with Skript and Minecraft.
Of course, you can also start forking STEEM.CRAFT, creating pull requests and improve it without contacting me.

Discord: https://discord.gg/FRuK5BC


Thank you for reading my contribution post.

This time, I put everything in one big pull request, since the changes have all a similar reason to be added and it made sense for me to put it all together and test it. In the future, I will split them into multiple smaller pull requests to make it easier to review.

Instead of just commands, players can now use the new inventory menu to change settings fast and easy without having to remember all the necessary commands, which is quite nice for players. Changing settings was possible before too, but for these commands, players usually need very strong permissions, since world settings should not be changed for the entire world, but since every user who has a steemworld also owns it and also because every steemworld is unique, it is possible to give the players this feature, which is in most cases only available to the server operator.

Adding features which aren't possible in normal plot based plugins is a great way to stand out with steemworlds.sk.

If you have new ideas, feedback or bugs you have found, tell me here in the comments, I really appreciate it. :)

Additional to a 100% upvote from me, I will send everyone who has a unique idea to STEEM.CRAFT 1 SBI as a bonus in the comments.

Have a great week,

@immanuel94

STEEM.CRAFT IS NOT A OFFICIAL MINECRAFT PRODUCT.
NOT APPROVED BY OR ASSOCIATED WITH MOJANG.

H2
H3
H4
3 columns
2 columns
1 column
21 Comments
Ecency