This is an updated and improved version of the File Manager plugin by Goldorion, which I will continue to maintain in his absence.
New procedure blocks introduced to the plugin
Changelog
v6.5
-Ported to MCreator 2024.3 and neoforge 1.21.1
-Fixed json array getter procedures causing build error when using variables to get entries
v6.4.1
-Fixed json arrays not working in forge 1.20.1
v6.4
-Added global session variables for json objects and arrays
-Fixed the file global session variable causing build errors
v6.3
-Added 2 procedure blocks to read datapack json files
-Fixed the url to file procedure
v6.2
-Added 5 new procedure blocks to check the data type of json properties
v6.1
-Added new procedure block, file from path
v6.0
-Ported to 2024.2 and neoforge 1.20.6
-Added a directory iterator procedure
-Added the json array variable type
-Added new procedure blocks to use json arrays
Comments
Would it be possible to get a Util "get current worlds directory" or something to get the serverconfig location inside the world directory?
I know I could techincally use the "get current worlds name" and get that location, but that brings up a few issues.
1. Same issue as previous comment mentions with the directories being named differently from how the world is named.
2. If the server and client saves are in the same directory as they are when testing with MCreator, there's no way to know if it's multiplayer or singleplayer and for what directory to enter (saves/world or world). If I test for some file that only exists on server then even if I load into a singleplayer world it'd return true.
I could use Global variable to store what I need, but that requires you to save the world for it to be stored in /data. For what I need it needs to update that rather frequently and saving that often, at least with more mods, will just lag the game constantly.
Hi Nerdy, wanted to say that code block "Get current world's name", doesnt return the world directory name, but the world in game name, as such, if you create a world named "New World" twice, you cannot write to the second one, as one has the dir name of "New World" and the second "New World (1)", and in both worlds the code block returns "New World".
Additionally, if you create a world "Example" and through minecraft rename it to "Eksample", it will return "Eksample" which will cause issues as the directory is still named "Example" and because of that, you cant write anything to that world anymore as directory "Eksample" does not exist. Please suggest workarounds for now. I hope to hear from you.
I am having an issue with text entry of JSON Array. (I am on 2024.2). Whenever I try to get the text entry for a JSON array from index, if the index is a variable, I get an error in console. The error is: error: "incompatible types: possible lossy conversion from double to int"
So I found a workaround, but it's annoying. First, I placed round blocks behind all of my local variables. Then, I went into the custom code editor and just placed (int) directly in front of any Math.round() functions. Seems to work fine, just sucks having to lock and unlock the code whenever I make modifications.
Hello, I installed the plugin but I have a problem... FYI I am in 2024.2 and it tells me that the plugin is loaded...
When I open a procedure I have the "file manager" tab displayed with all the blocks, but when I want to create a file I have to declare a "file" variable, but this type of variable is not not accessible (does not exist...). I recreated a new workspace, without success... Could you tell me where the problem is?
PS: I have plugin 1.16.5 and sorry for the English: I'm not English...
Hi Nerdy
I made an account just to make this comment :)
This is genuinely a really fantastic plugin that greatly broadens the uses for MCreator so thank you very much for that.
One thing I think may be a great addition to this plugin (I am not sure if it is possible based off of what JAVA code allows within the Minecraft platform) but to be able to save a players skin to the server as a .png file and then load it onto a player from the server using the saved name.
This could have multiple uses but one example would be players saving a few .png files under their name to the server and loading different skins within the game afterwards?
Anyway just wanted to say thanks and mention my idea :)