Multiverse / Multiverse-Core

The original Bukkit Multi-World Plugin!
BSD 3-Clause "New" or "Revised" License
949 stars 299 forks source link

Request: Per-World Time #79

Closed Inscrutable closed 13 years ago

Inscrutable commented 13 years ago

Is it possible to implement per-world time with a multiworld setup?

Current world time modifications affect all worlds in MV2 (RB1060) It would be quite nice to allow different time zones in each world. (I hope it's not a stupid question. I haven't seen this requested elsewhere)

Rigby90 commented 13 years ago

Each World has it's own time, whatever plugin or command you're using to change time is doing it wrong if it's setting all worlds.

We can look into adding the ability to keep it a certain time constantly per world, so one world is always day and the other is always night set.

Inscrutable commented 13 years ago

Thank you for your prompt response!

That's Odd. The only time setting command I have is the native vanilla craftbukkit.command.time and craftbukkit.command.time.set. I am running a lot of plugins, so it is possible one is interfering somehow. So if I'm the only one with this problem, I guess I have to track down which one it is :(

If it is any use at all, here is the list of Plugins I am running on my server (under RB1060): Buildr 0.6.1, Cenotaph 1.6.6, CFBanner 1.8, ChestRestock 1.1, ChestShop 3.02, creaturebox 0.76, Giant Trees 0.33, HeroicDeath 1.9.1, HigherExplosives 2, HookShot 1.32, iConomy 5.01, KitPlugin 1.2.1, Landmarks 0.2f, Lockette 1.38, MobBounty 4.1, MobRider 0.39, MoveCraft 0.70, MultiInv 2.3.2, Multiverse-Core 2, MyWarp 2.0, Pail 0.5.2, PermissionsEx 1.13, PorteCoulissante 1.2.1, PhoenixTerrainMod 0.7.1, RetractableBridge 1.3.6, Stargate 0.64, Tossers 1.2, ToughMelt 1.5, WeatherGod 0.31, WolfPound 1.0.3, Modifyworld 1.13, Permissions(PEx Bridge) 2.7.7, ScubaKit 2.1.7, dynmap 0.21, mChat 1.7.10_5, mcMMO 1.1.11, WorldBorder 1.4.1. (a few are out-of-date, but they still work OK without throwing errors).

fernferret commented 13 years ago

Well you're not running essentials, so I give you props for that. However, as developers we spend most of our time in our own code, as it's impossible to test out all plugins. Not sure what Modifyworld does, but i'd look into that one too.

As a side note, this has been requested before :P

So in order to set the time in world 1 to morning, just go there as an op and do /time set 0 if that doesn't work, someone is overriding the default bukkit commands.

Inscrutable commented 13 years ago

To clarify, Modifyworld is the antibuild portion of PermissionsEx. No time set stuff in there as far as I know. I already tried the time setting routine, and other users in parallel worlds advised that their time was set as well. I am running PailPlus, so I can try disabling plugins one by one until I find the culprit. I will post again here and elsewhere when/if I do. Thanks again. (and LOL at the essentials comment)

Inscrutable commented 13 years ago

Dagnabbit, I had hoped I was done with this. OK, I tried running the server with NO plugins other than Multiverse-Core 2.0-b228. (Server 1.7.3, RB#1060) The same thing happened: Time set in one world appears to affect ALL worlds. (b218 does the same, by the way). I had to mvtp around quite a bit to be sure of this. So I can't blame another plugin. Any other ideas?

fernferret commented 13 years ago

Hmmm I'll take a look /cc @Rigby

EDIT: Tested with the built in time command and it sets time in all worlds: /time set 0

Server startup:

151 recipes
16 achievements
09:10:24 [INFO] Starting minecraft server version Beta 1.7.3
09:10:24 [INFO] Loading properties
09:10:24 [INFO] Starting Minecraft server on *:25565
09:10:24 [INFO] This server is running Craftbukkit version git-Bukkit-0.0.0-985-g2cc4221-b1064jnks (MC: 1.7.3)
09:10:25 [INFO] CleanroomGenerator version 0.0.4 is enabled!
09:10:25 [INFO] Preparing level "world"
09:10:25 [INFO] Preparing start region for level 0 (Seed: -8770177622278397413)
09:10:25 [INFO] Preparing start region for level 1 (Seed: 8845916545199586327)
09:10:26 [INFO] Preparing spawn area: 65%
09:10:26 [INFO] [GiveTo] v0.7 enabled (loaded items: 233)
09:10:26 [INFO] [Multiverse-Core] - Version 2.0-UNKNOWN Enabled - By Rigby and fernferret
09:10:26 [INFO] [AllPay] - Version 1.0.3 - using only an item based economy for Multiverse-Core v2.0-UNKNOWN
09:10:26 [INFO] [Multiverse-Core] - Multiverse Config -- Loaded
09:10:26 [INFO] [Multiverse-Core] - World Config -- Loaded
09:10:26 [INFO] [Multiverse-Core] Loading World & Settings - 'world' - NORMAL
09:10:26 [INFO] Preparing start region for level 2 (Seed: -8770709337959716933)
09:10:26 [INFO] [Multiverse-Core] Loading World & Settings - 'sky' - SKYLANDS
09:10:26 [INFO] Preparing start region for level 3 (Seed: -8835165113293168935)
09:10:27 [INFO] [Multiverse-Core] Loading World & Settings - 'test' - NORMAL
09:10:27 [INFO] [Multiverse-Core] Loading World & Settings - 'world_nether' - NETHER
09:10:27 [INFO] Preparing start region for level 4 (Seed: -8671450110128338170)
09:10:27 [INFO] [Multiverse-Core] Loading World & Settings - 'test_nether' - NETHER
09:10:27 [INFO] [Multiverse-Core] 5 - World(s) loaded.
09:10:27 [INFO] [MultiVerse-Portals] - Version 2.0-UNKNOWN Enabled - By Rigby and fernferret
09:10:27 [INFO] [MultiVerse-Portals]  8 - Portals(s) loaded
09:10:27 [WARNING] [Multiverse-Core] Portal huge has an invalid DESTINATION!
09:10:27 [WARNING] [Multiverse-Core] Portal test has an invalid DESTINATION!
09:10:27 [INFO] PermissionsBukkit v1.1 is now enabled
09:10:27 [INFO] [WolfPound] - Version 1.0.3 Enabled
09:10:27 [INFO] [AllPay] - Version 1.0.3 - using only an item based economy for WolfPound v1.0.3
09:10:27 [INFO] Server permissions file permissions.yml is empty, ignoring it
09:10:27 [INFO] Done (0.291s)! For help, type "help" or "?"
09:10:29 [INFO] fernferret [/127.0.0.1:58601] logged in with entity id 81 at ([world] -47.50618829410338, 64.0, -92.07615013779507)
09:11:17 [INFO] fernferret: Set time to 0
09:11:41 [INFO] fernferret: Set time to 15000
fernferret commented 13 years ago

Ok so /time set 0 uses the built in minecraft commands, therefore setting all times in all worlds. I would take a look at timeshift: http://dev.bukkit.org/server-mods/timeshift/

Inscrutable commented 13 years ago

OK, I gave it a whirl. Timeshift fixes worlds in a given timezone, It does not enable worlds to have regular time with offset cycles.

I have been unable to find a plugin that permits staggered day cycles. Perhaps it is not possible with Bukkit?

It seems that this would be desirable in multiworld setups, because it would allow the peak-CPU demand times of Dawn and Dusk to be offset, or staggered, and thus spread the load more evenly. It would also be kinda fun with the Vampire plugin, world-hopping to outrun Dawn. :)

fernferret commented 13 years ago

Let's put this one on hold, till 1.8 (I imagine a bunch will change with creative being able to change the time and all). I'm going to leave the issue closed (as I don't think this is going to be a feature of MV itself) and if no one comes up with a solution, we can start on MV-Time, another plugin. My thing lately is to not rewrite plugins just for the sake of rewriting, if we can find one that almost does what you want, I can work with that dev to get some more features.

GnaXi commented 11 years ago

Not to be a butthole and wake up an old monster, but even 2 years later, this is still not working correctly. The /time set command in bukkit, causes all worlds to change time.

chuck4100 commented 10 years ago

yes...

Xinoms commented 8 years ago

lol, now in 2016 I'm having the exact same problem. Whenever I set the time in the main world of my server it changes the time in the other world I have on the server, is there nay news on whether theres a solution to this???

markhughes commented 8 years ago

Would Multiverse be open to a PR?

fernferret commented 8 years ago

Yep! I noticed we had a PR come in last week to fix some tests, but I haven't had any time to look at it.

On Fri, Aug 5, 2016 at 2:18 AM, Mark Hughes notifications@github.com wrote:

Would Multiverse be open to a PR?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/Multiverse/Multiverse-Core/issues/79#issuecomment-237785638, or mute the thread https://github.com/notifications/unsubscribe-auth/AAEca0lUnItouzNOl3Rl5PSW7OsHdGNFks5qcvHmgaJpZM4A3k3q .

Supuhstar commented 6 years ago

This is still an issue...

I want my Creative worlds to stay day, and Survival to cycle normally

Jadiction commented 5 years ago

@Supuhstar Replying for the sake of other's stumbling upon this possibly needing help. That is doable with the gamerule "doDaylightCycle". I currently do as such with my worlds while using Multiverse and it works fine. I also use /time set without it messing up other worlds as well, but that is with Essentials, not the vanilla version.

dumptruckman commented 5 years ago

I implied in #1824 that this behavior is not caused by multiverse. If you had another plugin that added worlds, you'd encounter the same problem. The vanilla time command works fine in vanilla because there's only 1 world where time is noticeable. When you add in the concept of multiple worlds, the command works just the same as before, setting the overall server time rather than the individual world time.

Ideally, this "problem" should be fixed at a server implementation level (craftbukkit/spigot) since that is the reason why multiple worlds are possible. If they refuse to fix it, we could consider a feature request for an /mv time command or some such to allow setting per world time. However, I'm sure other plugins exist that let you do this.

Jadiction commented 5 years ago

I use this plugin: https://dev.bukkit.org/projects/customtime for per-world time modifications. For example, you can make day time 10 minutes and nighttime 2 minutes, or day/night disabled as well.

benfoster04 commented 4 years ago

I don't like bumping old threads. However, I do believe this is something that should be taken seriously and implemented directly into Multiverse Core, not into some sub plugin. As kindly aforementioned by @dumptruckman, a command along the lines of /mv time or maybe a complete override on the /time command should be implemented.

Jadiction commented 4 years ago

@benfoster04 I'm sure if someone opened a PR for it, DTM would look at it and merge it assuming it lives up to the standards & works.

BornToDoStuff commented 3 years ago

I would really appreciate being able to control time with /mv time or a /time override. I have many worlds and being able to give a time command to them separately would be very convenient.

benwoo1110 commented 3 years ago

This issue is outdated and closed, if you wish to have a new feature request, please open a new issue following the issue template. Thanks!

KneesDev commented 1 year ago

It's been over a decade and this issue is not fixed.