Configuration doesn't work.
donkschlonk opened this issue ยท 8 comments
{
"Vex": {
"abilities": ["fly","prevent_fall"]
}
}
Is what I put in the morphs.json file and it changes nothing even after restarting the game and doing /metamorph reload morphs. I want to do this with all the mobs in the "modpack" I'm making to play with my friends. I did use JSONLint and it said it was valid and I also tried "minecraft:vex" and putting in the example you gave and even that didn't work. My only guess right now is that it only works for server config. Is that the case or am I just doing it wrong?
Try "vex" with a lowercase "v"? That at least appears to be correct according to the Minecraft Wiki. Also, make sure you json lint the entire morphs.json file. And don't delete the stuff that was already in the json.
All of what you said makes sense and I did make all those changes and still nothing works. No matter what type of "vex" or anything I put in, it doesn't work. Even when I put in the example JSON provided on the Configuration page, that didn't work either. I made sure to save the file and then do /metamorph reload morphs. I did go back and reset the JSON file to type between the given empty map and I also put it all through JSONLint to make sure it's valid.
Hmm... there might be some issue with some previous morph configuration in the file?
Please upload your whole morphs.json file to a text sharing service like pastebin and send the url to it over yonder.
https://pastebin.com/hYppK6hj What I first sent was all I added. I wanted to test to see if it would work before I started doing the rest of them.
I created a version of the morphs.json file with only the contents of your pastebin and nothing else, and it works fine. Vex morph has flight and does not take fall damage.
- What version of Metamorph, McLib, and Minecraft are you using?
- Where are you putting the morphs.json file?
- Are you sure the morph you're testing with is a Vex and not some other mob?
Minecraft version is 1.12.2
Metamorph version is 1.1.8
McLib version is 1.0.3
The morphs.json file is always kept in the config folder for Metamorph where it originally was (...\Roaming.minecraft\config\metamorph\morphs.json). Vex is the one I'm testing because it's vanilla and the Metamorph mod didn't already make it able to fly even though it should. I'm sure what I'm testing is the only entity called Vex because I also did minecraft:vex and it still didn't work.
I'm not convinced that it's a Vex. How did you acquire this morph? Did you kill it randomly in the world, or did you spawn it with a creative spawn egg, or did you acquire the morph from the creative morphing menu? It could be an Evoker morph, or some other random entity from a mod that either overwrote the Vex or has a mob that looks similar to a Vex.
The other somewhat likely possibility, is that the file path containing your Minecraft instance has weird characters in it that are preventing the config from loading properly. That, or some deep, technical issue. Best way to test for that is for you to load your game and world again in the instance using the problematic json file, then linking the pastebin to the log here.
Okay, I figured it out. It's really a dumb reason. It's because I decided to set the config so that the player would acquire the morph immediately after killing the mob. It's really dumb that that's an option even it makes a lot of functionality of the mod not work. Now that I turned that off and collected the ghost it worked.
Thanks for helping me through this.