u/Jsincoo

Image 1 —
Image 2 —
Image 3 —
Image 4 —

Custom Biomes:

An implementation of BiomesAPI that allows server admins to create and inject custom made biomes at a packet level.

If I get some decent feedback on this post, I'll release pre-compiled binaries on Modrinth: https://github.com/LumaLibre/LittleBiomes

// Example config for a biome in LittleBiomes
- name: cotton_candy
  anchorMaterial: anvil
  anchorDisplayName: <b><gradient:#99B6F8:#C7B2F1:#CF7EAC>Cotton Candy</gradient></b>
    <#F7FFC9>Biome Anchor
  anchorLore:
  - <gray>Place to change all nearby
  - <gray>chunks to this biome!
  fogColor: ''
  waterColor: '#F6AAE2'
  waterFogColor: '#F6AAE2'
  skyColor: ''
  foliageColor: '#F6AAE2'
  grassColor: '#99B6F8'
  grassColorModifier: none
  biomePriority: normal
  ambientParticles:
    dust: 0.01
  ambientParticleData:
    dust: '#CF7EAC'
  blockReplacements:
    birch_leaves: acacia_leaves
  environmentAttributes:
    visual/block_light_tint: '#E90000'
u/Jsincoo — 15 days ago

Hi everyone, I came here to post about my custom biome library for Paper servers. This library doesn't require any external datapacks or dependencies and can be shaded directly into your plugin or used externally if you prefer.

  • This library is perfect if you have builders on your server and want to change the entire aesthetic of a build or environment.

  • On 26.1+, you can also use BiomesAPI to change the color of lights that come from blocks, the sky, or anywhere else really.

  • If you'd like more information or wish to start using BiomesAPI, check out the GitHub page for it: https://github.com/LumaLibre/BiomesAPI

  • We also have docs available at: https://biomes.lumas.dev

BiomesAPI is incredibly straightforward and easy to use. I've provided a fully working example below:

public final class ExamplePlugin extends JavaPlugin {

    @Override
    public void onEnable() {
        // Create a basic biome. Your namespace and key should be unique.
        CustomBiome biome = CustomBiome.builder()
                .resourceKey(BiomeResourceKey.of("test", "custombiome"))
                .settings(BiomeSettings.defaultSettings())
                .fogColor("#FFFFFF")
                .foliageColor("#F5F2EB")
                .skyColor("#000000")
                .waterColor("#F5F2EB")
                .waterFogColor("#000000")
                .grassColor("#9D00FF")
                .particleRenderer(ParticleRenderer.of(AmbientParticle.WITCH, 0.01f))
                // Remember that block replacements can only be seen with the PacketHandler as your biome renderer!
                .blockReplacements(
                        BlockReplacement.of(Material.BIRCH_LEAVES, Material.ACACIA_LEAVES),
                )
                .build();

        // Register your biome to finalize it and send it to Minecraft's internal registry.
        biome.register();


        // Change your mind later? No problem! Let's modify something:
        int red = 0xFF0000;
        biome.foliageColor(red);
        biome.modify(); // Connected players must re-log to see changes!
    }

}
reddit.com
u/Jsincoo — 16 days ago