Checking and modifying blocks at the same coordinates in multiple worlds simultaneously

Discussion in 'Plugin Development' started by TarmacFFS, Mar 2, 2015.

Thread Status:
Not open for further replies.
  1. Offline

    TarmacFFS

    This is my first plugin and I'm not familiar with the Bukkit API at all, so any help (even a point in the right direction) would be fantastic.

    What I have on my server are 3 worlds, "The Past", "The Present", and "The Future". The Present and The Future are copies of The Past, so all 3 have identical generation. The goal of my plugin is as follows:

    1. The Future is affected by The Present and The Past.
    2. The Present is affected by The Past
    3. For every block change in a world that affects another world(s), we check to see if that pattern exists at that location in the affected worlds. If the block pattern exists, we update it. If the block pattern doesn't exist, we leave it alone.

    That would be all for the first version, where the next feature would be to add WorldGuard and GriefPrevention support so that zones can be protected from updates.

    My questions are:
    1. How intensive is this process going to be? I get that it will scale with the number of people on the server, but I don't truly understand the implications of just how much processing something like this would take.
    2. Is this something that could be done using worlds on one bukkit server?
    3. Would this make more sense as a server-to-server (BungeeCord) type plugin where each server represents a time-line, or rather, a world?
    Lastly: Where do I begin?
     
  2. Offline

    pie_flavor

    @TarmacFFS Cool idea. I feel like it'll be hard. For example, say you're in the past. You place a chest and put items in it. You go to the future and take the items.
    You go to the present and take the items. You can see the problem here.
    Unless, of course, you find a way of catching every little thing (in this case, deleting the items form the player's inventory without warning) in which case this would be a damn cool plugin and you should post it to DBO.
    But what if you put a diamond pickaxe in that chest in the past?
    What happens when you mine obsidian in the future, when someone takes it in the present?
    What happens when you mine a block in the nether?
    What happens if you kill a blaze in the nether?
    What happens if you go to the end in the future using the blaze powder?
    For that matter, what happens to the dragon?
     
  3. Offline

    TarmacFFS

    One step at a time.

    Right now, I'm only interested in physical blocks. I'd love to use it as a platform to create a full-fledged time-traveling mod, but for now I'm simply looking to build a minimum viable product.

    Also, pardon my ignorance, but what is DBO?
     
  4. Offline

    mrCookieSlime

    TarmacFFS likes this.
  5. Offline

    TarmacFFS

    Thank you.

    Is there a better place to post this inquiry? An IRC channel, A sub-reddit, or some other more active forum for dev discussion?
     
  6. Offline

    timtower Administrator Administrator Moderator

    @TarmacFFS This is Bukkits only forum though.
     
  7. Offline

    TarmacFFS

    Understood, and thank you.

    I assumed there would be more activity with so many plugins made for bukkit/spigot.
     
Thread Status:
Not open for further replies.

Share This Page