Bukkit vs Spigot

Discussion in 'Bukkit Help' started by SmileOfDeath130, Nov 21, 2021.

  1. Offline

    SmileOfDeath130

    I've been running a spigot Minecraft server for some time now, and developing plugins for it as well. I am confused about this Bukkit/Spigot thing. What is the difference between Bukkit and Spigot?

    In my server folder, there is a spigot.yml and a bukkit.yml. Both seem to contain important settings. I am trying to write a world management plugin and I saw a post from someone else confused similarly. In it, the reply stated that bukkit.yml applies to the entire server and every world in it, while spigot.yml is per-world. However, in bukkit.yml there is an "allow-end" option. In server.properties there is an "allow-nether" option. In addition, neither server.properties, spigot.yml, nor bukkit.yml seem to have any settings in common. How can I change bukkit.yml settings per-world, and is there an easier way to manage all these setting for the server?
     
  2. Online

    timtower Administrator Administrator Moderator

    @SmileOfDeath130 Spigot is a fork of CraftBukkit.
    Does some things differently below the surface.

    Just pick one of the two and stick with it, easiest way to do things.
     
  3. Offline

    SmileOfDeath130

    How should I manage the different config files and settings within per world?
     
  4. Online

    timtower Administrator Administrator Moderator

    Are the normal settings not suitable then?
     
  5. Offline

    SmileOfDeath130

    Yes -- as I mentioned, I'm writing a world management mod, and many of the settings contained within bukkit.yml, spigot.yml, and server.properties seem to be settings that I would like to have per world. For instance, the "ticks-per.animal-spawns" in bukkit.yml would be a setting that a proper world management tool would regulate. The settings for everything seems to be very disjointed. Heck, even the allow-nether and allow-end settings are in server.properties and bukkit.yml. How can I properly regulate all of the different settings both per-world and as a whole?
     
  6. Online

    timtower Administrator Administrator Moderator

    @SmileOfDeath130 The WorldCreator object has fields for those settings.
    You use code to change it, not files.
     
  7. Offline

    SmileOfDeath130

    I've been using the WorldCreator Object for a while now, but it does not have anywhere near the in-depth settings control that I need. The only methods that the object provides are the methods for:
    - Changing the biome provider for the world
    - Changing the world environment
    - Changing whether the wold will generate structures
    - Changing the chunk generator
    - Changing if the world is hardcore or not
    - Changing the seed
    - Changing the type of world

    These are pretty simple settings, but still useful. However, I need more control of the world generation/loading.
    If you look at bukkit.yml you get much more in-depth settings such as:
    - spawn limits for every type of mob
    - spawning rates for every type of mob
    - ticks per garbage collection per chunk

    Is there a way to change these settings, and if not change them, override them while creating/loading a world?
     
  8. Online

    timtower Administrator Administrator Moderator

    @SmileOfDeath130 Something is reading those values, find what reads them, then hack into it to write them again.
    Or look at other world managers.
     
  9. Offline

    SmileOfDeath130

    Any suggestion on how to do that? There must be a better way than "hacking" into whatever is reading the file, right?

    If not, thanks for your help, I appreciate it.
     
  10. Online

    timtower Administrator Administrator Moderator

    @SmileOfDeath130 Finding code from CraftBukkit.
    Would personally go for option 2 though.
     

Share This Page