Skip to content
This repository has been archived by the owner on Nov 5, 2019. It is now read-only.

Usys issue #351

Open
mrcoffee1026 opened this issue May 15, 2018 · 2 comments
Open

Usys issue #351

mrcoffee1026 opened this issue May 15, 2018 · 2 comments

Comments

@mrcoffee1026
Copy link

Affected Plugin

All plugins should be affected by this issue but lets start with Vampire since it's the one used in the example, and the one I'm actually attempting to get to work the same way. (ver 2.13.7)

Describe your Environment

This server is running CraftBukkit version git-Spigot-2086bb0-d0a3620 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT)

Steps to Reproduce this Bug

Attempt following your own example as described:
https://www.massivecraft.com/massivecore#the-universe-system-usys

Let us have 5 worlds. Let us put 3 of these in a "survival" universe and the other 2 in a "creative" universe and have both of these universes in the "default" multiverse. Then we shall apply the two vampire aspects to the "default" multiverse. This is taken directly from the example:

Wouldn’t it be great if players could be vampires in the survival-mode worlds but not in the creative-mode worlds? Players are supposed to roleplay in the survival-mode worlds and vampirism is great fun when roleplaying. However in the creative-mode worlds there’s no roleplaying going on and vampirism is irritating and unwanted.

With usys you could then create two universes in your default multiverse:
...
Then you point the aspect “vampire_player” to use the default multiverse (this is acctually the case by default)

The last sentence basically says it all... as it tells you it's already done before you have done anything (this is actually the case by default). Also... the vampire_aspects... having been applied to the "default" multiverse... which has a "default" universe included which cannot be removed and always includes all worlds... means that these aspects are already being applied without making any changes anywhere.

Observed Results

I can in no way reproduce the expected result of having vampires enabled in one world and not the other. A member of discord suggested that this portion of the documentation might only be referring to the "player state" and that separating worlds into different multiverses might only allow the states to become disconnected from one world to another... for instance if I'm infected in a survival world, visiting a creative one where I have not been, I should not experience effects However, this is not the case. I put a dark altar in a creative world, used it... and my level of infection carried over into a survival world. So if they are correct, this feature doesn't work, and if this documentation is correct, this feature doesn't work. Either way, this feature doesn't work.

Expected Results

Applying aspects to one and only one multiverse should... actually be possible. A multiverse should not encompass every world by always including a "default" universe. A world should only be able to be in ONE multiverse, otherwise there is no point. The added parenthetical " Each world belongs to exactly one universe. (in each multiverse)" effectively ruins anything this sorting system is attempting to do, as - currently each multiverse you create includes a "default" universe which includes all worlds from every other multiverse, regardless of which universe they were assigned to. So assigning an aspect to an individual multiverse has no effect in any way as there is no way to remove any world from a multiverse, it is always in the "default" universe of whatever multiverse is specified regardless of which multiverse as assigned to the aspect. This should be fixed and/or the documentation made far more clear. The example as stated is just awful. I'm also really unclear as to why this can't be set up like the premium Werewolf plugin I put in from you, where it has a simple config where I simply disable the plugin in the worlds I don't want it used. Having to jump through hoops just to find the configuration area and then have it made even "better" with this non working example well... please let me have some clarification on this asap.

@mrcoffee1026
Copy link
Author

Some throwing things at this and kicking it around for awhile, this is what I've determined: the example is beyond misleading if not flat out misinformation. Making a universe often gets that universe listed as a "multiverse" even though the command for making a multiverse is not at all similar, and that universe cannot be used by any of the multiverse commands. There seems to be no pattern as to why sometimes universes appear as a multiverse and why they do not. Restarting the server several times either fixes the problem... or will actually produce a multiverse of the identical name which it will leave on the multiverse list. The difference now is... now it can be deleted with the multiverse commands, and the original universe is still in tact, so nothing is lost.

While the example called for putting everything in the same multiverse, that is an unnecessary step to take as the worlds are all in that one already. There's no way to remove them from that multiverse. They'll still have everything applied to the "default" multiverse applied to them. There is no way of avoiding this. You can create additional universes for sorting the worlds within the default multiverse... but if the aspects can only be assigned to multiverses, so it seems as though covering that information would be necessary. However, changing the assignment of the aspect has no detectable effect. If this changes anything, there is no evidence of that.

To solve this problem I created 2 new multiverses: creativeworlds and survivalworlds . I then put a creative universe into the creativeworlds multiverse and a survival universe into the survivalworlds multiverse. I took the silly step of having the vampire aspects applied to the survivalworlds, but again, this doesn't actually do anything that I can tell at all. However, a restart later I found that there were three folders now available in mcore: vampire_uconf@creative , vampire_uconf@survival and vampire_uconf@default. Since default applied to all worlds, it superceded anything in the other 2 folders. I basically set all of the line items to 0, removed the altar and stake recipes from them, nearly all of the settings I wiped out for the default file, and saved that copy for creative. THIS had the desired effect, of leaving the plugin effectively disabled in creative worlds, and enabled in survival worlds. At some point, one of the above actions did "detach" the worlds from each other. It did not happen at the expected time, but since usys also randomly creates a multiverse with the name you just gave a new universe, that likely has something to do with it. If it finally calms down and you get a restart in at the right window, they will separate as they should, but during the same power cycle that seems unlikely if not impossible.

The /usys aspect command does not appear to have any purpose at all. Creating a universe will often create a twin multiverse which cannot be removed (since - while it is listed in the multiverse menu, it is not one... so none of the multiverse commands work on it). There may be something higher level your other plugins actually use of this system that vampires does not... but there does not seem to be any point to the "multiverse" hierarchy since all of the file changing took place at the universe level. There also does not seem to be any reason an aspect could not be applied to multiple multiverses or to none if each universe is going to get it's own aspect file to mess with anyway (with every available aspect already integrated, I might add).

I also spoke out of turn, It is clear you had nothing to do with the Werewolf plugin, they just recommended this one as a 'go with', sorry about my confusion.

@mrcoffee1026
Copy link
Author

mrcoffee1026 commented Jun 20, 2018

Further investigation... there is no way to disable Vampire (or any other mcore plugin) in any world, by any method other than to completely remove the plugin. The system core multiverse issue is a pervasive one. Since every world exists in the default multiverse... and apparently the default gets some sort of hidden backup copy of the original instance.json files that can not be edited, removed, or even seen. All settings for every world are hardcoded to use these settings so... nothing can be done about it. Mcore appears to just add a layer of abstraction to the entire procedure for the sole purpose of wasting the user's time since no changes made within this plugin have any effect on the plugins installed that supposedly use it. If I hadn't been hounded by users to use Vampires, I'd completely uninstall both. As it stands, I'm stuck with it until 1.13 at which point I'll be forced to remove it since there is NO support for this plugin AT ALL. I don't care how busy you are, a month + without a reply == no support. I urge server owners to not waste time on this.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant