IzzelAliz / Arclight

A Bukkit(1.19/1.20) server implementation in modding environment using Mixin. ⚡
GNU General Public License v3.0
1.59k stars 235 forks source link

[1.16.5] Worlds Behavior is extremly wrong! GameRules, DayCycle, ClimateCycle! #937

Open EverNife opened 1 year ago

EverNife commented 1 year ago

I have confirmed that ...

Arclight version

arclight-forge-1.16.5-1.0.25-SNAPSHOT

OS & Java versions

OS: Windows, jdk-11.0.12.7-hotspot

Plugins and Mods

Pixelmon

Basic plugins like Vault, LuckPerms, and a few private ones!

Description

Ok, there are many problems and are probably all related to the same cause. I was not able to fully understand what is causing it though.

[1] All GameRules are not PER_WORLD, they are PER_SERVER, so there is no way to, for example, enable KeepInventory in a specific world and keep it disable in another world. [2] Changing time in any world does not work, you can only change time on the MAIN WORLD. [3] Changing weather in any world does not work, you can only change weather on the MAIN WORLD. [4] Changing any of these on the MAIN WORLD will reflect on all worlds, so, lets say you set time to 0 on the main World, all other dimesions will have its time set to 0. [5] If you set time to main world and go to another world, and se time there, and go back to the main world, the set time will not work anymore, not even on the main world.

The image bellow i set time to DAY but there is no change to it. image

The example code bellow will not work if you are not on the main dimension: (to be honest after some teleporation, not even on the main dimension anymore)

player.getWorld().setTime(0); //Will only work if you are on the MAIN_WORLD, otherwise will have no effect.
player.getWorld().setGameRule(GameRule.KEEP_INVENTORY, false); //Will change on all worlds, not only the world you are in!

And why worlds are called like this?

pixelmon/ultra_space
//and with symlinks
world_pixelmon_ultra_space

That is a lot contra-intutive! Is there a reason for that? Why not just use the ending of the name-space like

pixelmon:ultra_space --> ultra_space


Because of these crazy namings datapack worlds will not works properly on! If you want i may open a separated issue for Datapack worlds, but if the dimesion has the same type as OverWorld it will receive the Overworld name, so, we end up with like 4 Worlds called "world"

I am making a few tests chaning the world names to see what happens, but i think there are several points here that are a little bit crazy.

But at least i was able to make datapack overworlds work with archligh by just fixing the nammings

image

Step to reproduce

No response

Logs

No response

Server pack link (Optional)

No response

EverNife commented 1 year ago

As there are several problems related, and i am not sure what will be the approach given to this situation o will not open a pull_request for now.

For reference, this is what i did to use Dimension's registry key ending part as world name.

https://github.com/EverNife/Arclight/commit/c6544e77f10b3c1386029e112666cda1032805c5

As this will fix datapack worlds, it cannot be implemented like this for existing production servers, mainly because will change all world names '-'.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

EverNife commented 1 year ago

Bump

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

EverNife commented 1 year ago

Bump

burdoto commented 11 months ago

not sure if this is related but it seems so, we have noticed that weather doesnt work at all on our 1.20.1 server

EverNife commented 11 months ago

not sure if this is related but it seems so, we have noticed that weather doesnt work at all on our server

it should only work well on the main world

burdoto commented 11 months ago

well it doesnt at all, not in any modded dims, and not in the default overworld either

EverNife commented 11 months ago

The version will be probably droped down before anyone tries to fix this, as its a bug on both archligh and mohist

burdoto commented 11 months ago

update: on our 1.20.1 server it suddenly started raining and it wont stop one thing to note is that i saw the worldedit "weather-lock" flag work for the first time ever on arclight (i tried it MANY times over the years, it never worked for me; not on spigot, not bukkit, not paper)

EverNife commented 11 months ago

update: on our 1.20.1 server it suddenly started raining and it wont stop one thing to note is that i saw the worldedit "weather-lock" flag work for the first time ever on arclight (i tried it MANY times over the years, it never worked for me; not on spigot, not bukkit, not paper)

As your error seems to be on 1.20.2 i would suggest you to open a new issue, they will probably no even look at this one anymore as its 1.16.5

But both yours and mine issues are 1.16.5 newer.

As for 1.7.10 Crucible it works fine. And for 1.12.2 mohist/magma it works fine.