A Forge mod that implements SpongeAPI

Overview

SpongeForge Build Status

Currently not stable and under heavy development!

A Forge implementation of the Sponge API.

Prerequisites

Cloning

The following steps will ensure your project is cloned properly.

  1. git clone --recursive https://github.com/SpongePowered/SpongeForge.git
  2. cd SpongeForge
  3. cp scripts/pre-commit .git/hooks

Setup

Note: SpongeForge uses Gradle as its build system. The repo includes the Gradle wrapper that will automatically download the correct Gradle version. Local installations of Gradle may work but are untested. To execute the Gradle wrapper, run the ./gradlew script on Unix systems or only gradlew on Windows systems.

Before you are able to build SpongeForge, you must first prepare the environment:

  • Run ./gradlew setupDecompWorkspace --refresh-dependencies

IDE Setup

For Eclipse

  1. Run ./gradlew eclipse
  2. Import Sponge as an existing project (File > Import > General)
  3. Select the root folder for SpongeForge and make sure Search for nested projects is enabled
  4. Check Sponge when it finishes building and click Finish

For IntelliJ

  1. Make sure you have the Gradle plugin enabled (File > Settings > Plugins).
  2. Click File > New > Project from Existing Sources > Gradle and select the root folder for SpongeForge.
  3. Make sure Use default gradle wrapper is selected. Older/newer Gradle versions may work but we only test using the wrapper.
  4. Make sure Create separate module per source set is selected. This ensures that Intellij properly handles SpongeForge's Kotlin and Java dependencies.

Running

Note: The following is aimed to help you setup run configurations for Eclipse and IntelliJ, if you do not want to be able to run SpongeForge directly from your IDE then you can skip this.

For Eclipse

  1. Running ./gradlew eclipse should have generated the run configurations automatically.
  2. When launching the server for the first time, it will shutdown by itself. You will need to modify eula.txt to set eula=true (this means you agree to the Mojang EULA, if you do not wish to do this then you cannot run the server).

For IntelliJ

  1. Run ./gradlew genIntelliJRuns
  2. Restart IntelliJ IDEA or reload the project, the run configuration should now be generated.
  3. When launching the server for the first time, it will shutdown by itself. You will need to modify eula.txt to set eula=true (this means you agree to the Mojang EULA, if you do not wish to do this then you cannot run the server).

Building

Note: You must Setup the environment before you can build SpongeForge.

In order to build SpongeForge you simply need to run the gradlew command. On Windows systems you should run gradlew instead of ./gradlew to invoke the Gradle wrapper. You can find the compiled JAR files in ./build/libs but in most cases you'll only need 'spongeforge-x.x.x-x-x.x-x.jar'.

Updating your Clone

The following steps will update your clone with the official repo.

  1. git pull
  2. git submodule update --recursive
  3. ./gradlew setupDecompWorkspace --refresh-dependencies

FAQ

A dependency was added, but my IDE is missing it! How do I add it?

If a new dependency was added, you can just restart your IDE and the Gradle plugin for that IDE should pull in the new dependencies.

Contributing

Are you a talented programmer looking to contribute some code? We'd love the help!

  • Open a pull request with your changes, following our guidelines.
  • Please follow the above guidelines for your pull request(s) to be accepted.

Help! Things are not working!

Some issues can be resolved by deleting the '.gradle' folder in your user directory and running through the setup steps again, or even running gradle cleanCache and running through the setup again. Otherwise if you are having trouble with something that the README does not cover, feel free to join our IRC channel and ask for assistance.

Issues
  • Water & Lava Will Not Spread, Even With a Block Update

    Water & Lava Will Not Spread, Even With a Block Update

    This just came across from one of my players so I decided to test it myself. Water nor Lava will not spread even if I place a block next to it to update it. It still stays as a source block but does not move at all.

    Server details: SpongeForge: 1151 Forge: 1732 (1.8.9) Pixelmon: 4.2 RAM: 16GB

    opened by xChristopher210 76
  • SkyFactory 3 - mob spawning causes huge TPS issues v2

    SkyFactory 3 - mob spawning causes huge TPS issues v2

    Related to https://github.com/SpongePowered/SpongeForge/issues/1156

    visualvm

    https://timings.aikar.co/v2/?id=30c9da39b59d42279e405c86aabe5943&section=lag

    After fixing the setEntity method the TPS is slightly better, but still there are more methods causing TPS issues.

    SpongeForge: 1.10.2-2202-5.1.0-BETA-2016

    opened by KaiKikuchi 63
  • Hermitpack lag issues

    Hermitpack lag issues

    @bloodmc @LemADEC refrencing the hermit pack issue that wasnt resolved in ticket #948

    hermit pack warmroast
    WarmRoasthermitpack.zip timings https://timings.aikar.co/v2/?id=f11ff43a4cd447288ecfab1e069e7991

    type: performance 
    opened by NyleGarcia-dev 62
  • Damageable interface conflicts with EntityLivingBase

    Damageable interface conflicts with EntityLivingBase

    Currently the only conflicting issues are the float based health methods.

    Minecraft (EntityLivingBase):

        float getHealth()
        void setHealth(float amount)
        void damageEntity(DamageSource source, float amount) // This one isn't really an issue due to the different definition
    

    Sponge (Damageable):

        double getHealth()
        void setHealth(double amount)
        void damage(double amount)
    

    The clean implementation of the SpongeAPI seems to be with Mixins, however a Mixin class must extend the same parent class as the class it mixes into. So to implement Player you have to both extend EntityPlayer (a subclass of EntityLivingBase) and implement the Player interface from Sponge's API. Because now you have to have methods that differ only by return type, the code will run, but not compile. @Shadow does nothing here because the methods are defined by the fixed base class.

    Even by injecting the fixed methods into EntityLivingBase isn't a solution because EntityPlayerMP needs a Mixin also. Which means that while the runtime EntityLivingBase is fixed at runtime, your player Mixin won't compile because of the compile time conflict.

    opened by modwizcode 53
  • [1.10.2/spongeforge] Adding sponge to server dropping tps to unplayable levels

    [1.10.2/spongeforge] Adding sponge to server dropping tps to unplayable levels

    With build 5.0.0-BETA-1788 https://gyazo.com/f9497191e70b1528f04ad361fd4a1860 https://timings.aikar.co/v2/?id=3dcf1ba0542c4327b50a63ea3acb143c << running since server start https://timings.aikar.co/v2/?id=38f24078ac2041b7af0fbaaf9b85f908 << running for a few min Still the same issue when adding sponge to a world that has 20 tps the world will start experiencing major lag. with tps dropping to 1-.68 tps

    Also after disabling sponge the tps resumed to its normal level at 20 https://gyazo.com/a3f73dd8035e40dc9f32c537e03ba70e

    type: performance 
    opened by NyleGarcia-dev 47
  • Async Light causes IndexOutOfBoundsException SPacketChunkData

    Async Light causes IndexOutOfBoundsException SPacketChunkData

    I am currently running Minecraft: 1.12.2 SpongeAPI: 7.1.0-SNAPSHOT-d453c3e SpongeForge: 1.12.2-2705-7.1.0-BETA-3206 Minecraft Forge: 14.23.4.2705

    • Java version: openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
    • Operating System: CentOS Linux release 7.5.1804 (Core)

    Plugins

    Minecraft, Minecraft Coder Pack, SpongeAPI, SpongeForge, Aliases, BattleLog, CatClearLag, Holograms, LangSwitch, LuckPerms, MMCReboot, MMCRestrict, MMCTickets, Nucleus, Plan, ProjectCore, ProjectPortals, ProjectWorlds, ServerListPlus, SleepVote, Total Economy, Universe Guard 2, VillagerShops, Web-API, WorldEdit, spark
    

    Mods:

    Mods (97): Minecraft, Minecraft Coder Pack, Forge Mod Loader, Minecraft Forge, SpongeAPI, SpongeForge, AE2 Stuff, Actually Additions, Advanced Solar Panels, Ambience, Applied Energistics 2, AutoRegLib, BC Builders, BC Energy, BC Factory, BC Robotics, BC Silicon, BC Transport, BD Lib, Baubles, Blood Debug, Brandon's Core, BuildCraft, BuildCraft Compat, BuildCraft Lib, CoFH Core, CoFH World, CodeChicken Lib, ComputerCraft, CustomNPCs, DiscordIntegration, Draconic Evolution, Ender IO, Ender IO Applied Energistics Conduits, Ender IO Base, Ender IO Conduits, Ender IO Integration with Forestry, Ender IO Integration with Tinkers' Construct, Ender IO Integration with Tinkers' Construct, Ender IO Machines, Ender IO Open Computers Conduits, Ender IO Powertools, Ender IO Refined Storage Conduits, EnderCore, EnderStorage, Ex Compressum, Ex Nihilo Creatio, Extra Cells 2, Extra Planets, Extreme Reactors, Faction Mod, Galacticraft Core, Galacticraft Planets, ICBM-Classic, Immersive Engineering, IndustrialCraft 2, Inventory Tweaks, Iron Chest, It's the little things, JourneyMap, Just Enough Items, MJRLegendsLib, Malisis Advert, MalisisCore, Mantle, Mekanism, MekanismGenerators, MekanismTools, Micdoodle8 Core, NoMoreRecipeConflict, NuclearCraft, OMLib, Open Glider, Open Modular Turrets, OpenBlocks, OpenModsLib, OpenModsLib Core, PlusTiC, Quark, Random Things, Reborn Core, Redstone Arsenal, Redstone Flux, SG Craft, Simply Jetpacks 2, Smooth Font Core, Steve's Carts 2, TESLA, Thermal Dynamics, Thermal Expansion, Thermal Foundation, Tinkers' Construct, VanillaFix, What Are We Looking At, Wireless Crafting Terminal 2, Zero CORE, p455w0rd's Library
    

    Issue Description

    Last I heard a user was in space looking at schematics in chests and then they crashed... I am usually able to see what's up based on the crash report but the only evidence I have is that player statement and the dim affected in the crash report. Seems like it may correlate with extra-planets. Unsure.

    https://gist.github.com/sfxworks/2a3d0f1a51d2fd5294b7b31203469a5c

    system: network version: 1.12 
    opened by sfxworks 46
  • Server crash with Sponge dealing with dimensions

    Server crash with Sponge dealing with dimensions

    Forge: 1.10.2-12.18.3.2272 Sponge: 1.10.2-2254-5.2.0-BETA-2272 Galacticraft: 1.10.2-4.0.0.58-BETA

    When launching my server with just forge and Galacticraft things work well, however when adding Sponge it crashes with Dimension errors. I believe I saw this with Sponge issue #1360 however that was for 1.8.9 so you understandably weren't supporting it you told @radfast. This is with supported 1.10.2, so hopefully you can see if the dimension issues with Sponge have a possible resolution?

    Thanks!

    Silent

    Full Log: https://pastebin.com/vtETxR0K

    Relevant Section of Crash Log :
    [00:29:25] [Server thread/ERROR] [galacticraftplanets/]: Skipping event FMLPostInitializationEvent and marking errored mod galacticraftplanets since required dependency galacticraftcore has errored
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: PostInitialization - Galacticraft Planets took 0.000s
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Finished: PostInitialization took 0.064s
    [00:29:25] [Server thread/ERROR] [FML/]: Fatal errors were detected during the transition from POSTINITIALIZATION to AVAILABLE. Loading cannot continue
    [00:29:25] [Server thread/ERROR] [FML/]: 
    	States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    	UCHIJ	mcp{9.19} [Minecraft Coder Pack] (minecraft.jar) 
    	UCHIJ	FML{8.0.99.99} [Forge Mod Loader] (forge-1.10.2-12.18.3.2272-universal.jar) 
    	UCHIJ	Forge{12.18.3.2272} [Minecraft Forge] (forge-1.10.2-12.18.3.2272-universal.jar) 
    	UCHIJ	Micdoodlecore{} [Micdoodle8 Core] (minecraft.jar) 
    	UCHIJ	spongeapi{5.2.0-SNAPSHOT-a3257a0} [SpongeAPI] (minecraft.jar) 
    	UCHIJ	sponge{1.10.2-2254-5.2.0-BETA-2272} [SpongeForge] (spongeforge-1.10.2-2254-5.2.0-BETA-2272.jar) 
    	UCHIE	galacticraftcore{4.0.0} [Galacticraft Core] (GalacticraftCore-1.10.2-4.0.0.58-BETA.jar) 
    	UCHIE	galacticraftplanets{4.0.0} [Galacticraft Planets] (Galacticraft-Planets-1.10.2-4.0.0.58-BETA.jar) 
    [00:29:25] [Server thread/ERROR] [FML/]: The following problems were captured during this phase
    [00:29:25] [Server thread/ERROR] [FML/]: Caught exception from Galacticraft Core (galacticraftcore)
    java.lang.IllegalArgumentException: Invalid dimension id -28
    	at net.minecraft.world.DimensionType.lambda$getById$0(DimensionType.java:636) ~[atm.class:?]
    	at java.util.Optional.orElseThrow(Optional.java:290) ~[?:1.8.0_111]
    	at net.minecraft.world.DimensionType.func_186069_a(DimensionType.java:636) ~[atm.class:?]
    	at micdoodle8.mods.galacticraft.core.GalacticraftCore.postInit(GalacticraftCore.java:372) ~[GalacticraftCore.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
    	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
    	at net.minecraftforge.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:616) ~[forge-1.10.2-12.18.3.2272-universal.jar:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
    	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
    	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.10.2.jar:?]
    	at net.minecraftforge.fml.common.LoadController.sendEventToModContainer(LoadController.java:243) ~[LoadController.class:?]
    	at net.minecraftforge.fml.common.LoadController.propogateStateMessage(LoadController.java:221) ~[LoadController.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_111]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_111]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_111]
    	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_111]
    	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[minecraft_server.1.10.2.jar:?]
    	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[minecraft_server.1.10.2.jar:?]
    	at net.minecraftforge.fml.common.LoadController.redirect$onPost$zzb000(LoadController.java:552) ~[LoadController.class:?]
    	at net.minecraftforge.fml.common.LoadController.distributeStateMessage(LoadController.java:145) [LoadController.class:?]
    	at net.minecraftforge.fml.common.Loader.initializeMods(Loader.java:810) [Loader.class:?]
    	at net.minecraftforge.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:108) [FMLServerHandler.class:?]
    	at net.minecraftforge.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:333) [FMLCommonHandler.class:?]
    	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:214) [ld.class:?]
    	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:431) [MinecraftServer.class:?]
    	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
    [00:29:25] [Server thread/WARN] [FML/]: Can't revert to frozen GameData state without freezing first.
    [00:29:25] [Server thread/TRACE] [mcp/mcp]: Sending event FMLServerStoppedEvent to mod mcp
    [00:29:25] [Server thread/TRACE] [mcp/mcp]: Sent event FMLServerStoppedEvent to mod mcp
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Minecraft Coder Pack took 0.000s
    [00:29:25] [Server thread/TRACE] [FML/FML]: Sending event FMLServerStoppedEvent to mod FML
    [00:29:25] [Server thread/TRACE] [FML/FML]: Sent event FMLServerStoppedEvent to mod FML
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Forge Mod Loader took 0.000s
    [00:29:25] [Server thread/TRACE] [Forge/Forge]: Sending event FMLServerStoppedEvent to mod Forge
    [00:29:25] [Server thread/TRACE] [Forge/Forge]: Sent event FMLServerStoppedEvent to mod Forge
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Minecraft Forge took 0.000s
    [00:29:25] [Server thread/TRACE] [Micdoodlecore/Micdoodlecore]: Sending event FMLServerStoppedEvent to mod Micdoodlecore
    [00:29:25] [Server thread/TRACE] [Micdoodlecore/Micdoodlecore]: Sent event FMLServerStoppedEvent to mod Micdoodlecore
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Micdoodle8 Core took 0.000s
    [00:29:25] [Server thread/TRACE] [spongeapi/spongeapi]: Sending event FMLServerStoppedEvent to mod spongeapi
    [00:29:25] [Server thread/TRACE] [spongeapi/spongeapi]: Sent event FMLServerStoppedEvent to mod spongeapi
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - SpongeAPI took 0.000s
    [00:29:25] [Server thread/TRACE] [sponge/sponge]: Sending event FMLServerStoppedEvent to mod sponge
    [00:29:25] [Server thread/TRACE] [sponge/sponge]: Sent event FMLServerStoppedEvent to mod sponge
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - SpongeForge took 0.005s
    [00:29:25] [Server thread/TRACE] [galacticraftcore/galacticraftcore]: Sending event FMLServerStoppedEvent to mod galacticraftcore
    [00:29:25] [Server thread/TRACE] [galacticraftcore/galacticraftcore]: Sent event FMLServerStoppedEvent to mod galacticraftcore
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Galacticraft Core took 0.009s
    [00:29:25] [Server thread/ERROR] [galacticraftplanets/]: Skipping event FMLServerStoppedEvent and marking errored mod galacticraftplanets since required dependency galacticraftcore has errored
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Step: ServerStopped - Galacticraft Planets took 0.000s
    [00:29:25] [Server thread/DEBUG] [FML/]: Bar Finished: ServerStopped took 0.016s
    [00:29:25] [Server thread/INFO] [FML/]: The state engine was in incorrect state ERRORED and forced into state SERVER_STOPPED. Errors may have been discarded.
    [00:29:25] [Server thread/INFO] [FML/]: The state engine was in incorrect state ERRORED and forced into state AVAILABLE. Errors may have been discarded.
    
    status: accepted system: world type: bug version: 1.10 (u) version: 1.11 (u) 
    opened by silent-mobious 44
  • Piston duplication blocks issue

    Piston duplication blocks issue

    I am currently running

    • SpongeForge version: 1.12.2-2705-7.1.0-BETA-3445

    • Forge version: 14.23.4.2705

    • Java version: java version "1.8.0_144"

    • Operating System: Linux

    • Plugins/Mods: Mods (14): Minecraft, Minecraft Coder Pack, Forge Mod Loader, Minecraft Forge, SpongeAPI, SpongeForge, BiblioCraft, Chisel, Iron Chest, Pixel Extras, Pixelmon, RandomPatches, RandomTweaks, Tree Chopper

    Issue Description https://youtu.be/akmr2KRE8og.

    status: pr pending type: bug version: 1.12 
    opened by noremac09 44
  • Sponge gets into problems with ender eye.

    Sponge gets into problems with ender eye.

    When I use the enderEye on our server it writes

    6:44:50 PM CONSOLE: thread/FATAL]: Error executing task

    We generated the strongholds before adding sponge so we're pretty sure they are there. We removed sponge and throwing the ender pearls worked after adding again the pearl won't fly.

    status: accepted type: bug version: 1.10 (u) version: 1.11 (u) version: 1.12 
    opened by Raycoms 43
  • [1.10.2] move block event?

    [1.10.2] move block event?

    RFTools Elevator as seen on the picture will move to the desired level but also stay on current and hence duplicating the blocks it uses as floor.

    https://gyazo.com/7cca4f9e8bfae05df72bef4489f0fafb

    this all started when we enabled sponge on the server nothing shows in the logs and

    current sponge installed is: spongeforge-1.10.2-2026-5.0.0-BETA-1626

    system: event type: bug version: 1.10 (u) 
    opened by FiveEYZ 36
  • 'give' command's nbt parsing doesn't work

    'give' command's nbt parsing doesn't work

    I am currently running

    image

    • Plugins/Mods:
      • TriggerReactor

    Issue Description /trg run #CMDCON "give "+$playername+" minecraft:paper 1 0 {display:{Name:\""+color("&e300원")+"\"}}"

    This command is used to replicate the user using give command in-game, and it does so as it was executed in the console.

    However, as you can see, the command did work

    image

    But the Text instance is not parsed correctly but is merely giving the result of the #toString()

    Any idea?

    opened by wysohn 0
  • Add Forge Energy capability to the DataAPI in the same manor as the Forge Fluid capability

    Add Forge Energy capability to the DataAPI in the same manor as the Forge Fluid capability

    I'd like to manipulate the Forge Energy storage of entities via SpongeAPI. Since this is dependent on Forge, I'm not sure how this would affect SpongeVanilla via the unified SpongeAPI.

    This would require adding Keys.ENERGY_LEVEL (perhaps some other keys?) org.spongepowered.mod.data.ForgeEnergyStorageDataProcessor org.spongepowered.api.extra.energy.* for exposed types and manipulators

    I'm sure I'm missing a lot of detail, but I would love more input on this.

    Does SpongeCommon need any implementation for this or can this live entirely within SpongeForge and SpongeAPI?

    opened by voidstarr 1
  • Cancelling the Block place event does not always prevent blocks from being placed

    Cancelling the Block place event does not always prevent blocks from being placed

    When you attempt to cancel the ChangeBlockEvent.Place event to prevent blocks from Forge Multipart CBE to be placed, the blocks are placed regardless... I tested different protection plugins and they all seems to face the same issue. Below you can see a really simple snippet I wrote to test this out

    @Listener
    public void onBlockPlacedByPlayer(ChangeBlockEvent.Place event, @First Player player) {
         player.sendMessage(ChatTypes.ACTION_BAR, Text.of("You can't build here!"));
         event.setCancelled(true);
    }
    

    What happens is that when you place a block from vanilla or other mods you get the message in the hotbar and the block doesn't get placed, as expected. However, doing this with a block from the said mod will send the message in the player's hotbar, as expected, but it will also still place the block, regardless the fact that we just cancelled the event...

    Tested with API version 7.3.0 and spongeforge-1.12.2-2838-7.3.0

    opened by JimiIT92 0
  • Minefactory Reloaded rubber trees not growing from sapling

    Minefactory Reloaded rubber trees not growing from sapling

    I am currently running

    • SpongeForge version: 1.12.2-2838-7.3.0

    • Forge version: 14.23.5.2854

    • Java version: 1.12.2

    • Operating System: Windows 10 (10.0/amd64)

    • Plugins/Mods:-

    Mods (84): Minecraft, Minecraft Coder Pack, Forge Mod Loader, Minecraft Forge, SpongeAPI, Sponge, Applied Energistics 2, Aroma1997Core, AromaBackup, AromaBackuprecovery, Asgard Shield Reloaded, BuildCraft, BuildCraft Builders, BuildCraft Compat, BuildCraft Energy, BuildCraft Factory, BuildCraft Lib, BuildCraft Robotics, BuildCraft Silicon, BuildCraft Transport, ChickenChunks, CoFH Core, CoFH World, CodeChicken Lib, ComputerCraft, Ender IO, Ender IO Applied Energistics Conduits, Ender IO Base, Ender IO Conduits, Ender IO Integration with Forestry, Ender IO Integration with Tinkers' Construct, Ender IO Integration with Tinkers' Construct, Ender IO Machines, Ender IO Open Computers Conduits, Ender IO Powertools, Ender IO Refined Storage Conduits, EnderCore, Energy Converters, Ex Nihilo Creatio, Extra Utilities 2, Extreme Reactors, Flux Networks, FoamFix, FoamFixCore, Industrial Foregoing, IndustrialCraft 2, Iron Chest, Iron Furnaces, JourneyMap, Just Enough Items, McJtyLib, MineFactory Reloaded, Mod Support, Morpheus, Not Enough Items, OpenBlocks, OpenModsLib, OpenModsLib Core, Phosphor Lighting Engine, Pixel Extras, Pixelmon, Pixelmon Go, ProjectE, RFTools, RFTools Dimensions, Redstone Flux, Shadowfacts' Forgelin, Silent Lib, Simple Generators, Solar Flux Reborn, SpongeForge, Tesla Core Lib, Tesla Core Lib Registries, Thermal Dynamics, Thermal Expansion, Thermal Foundation, Tiny Progressions, TorchMaster, Traveler's Backpack, Universal Modifiers, Valkyrie Lib, Vein Miner, Waila, Zero CORE

    Plugins (5): Minecraft, Minecraft Coder Pack, SpongeAPI, Sponge, LuckPerms

    Issue Description Hi, I made a pixelmon mod pack for me and my friends to play on a sponge server, it works fine but the problem is that the minefactory reloaded rubber saplings dont grow for some reason they just disappear when they grow up with bone meal and if they grow up naturally they give the server a "Ticking World" error. Can someone please help me with this? I searched google and there was no helpful information. (P.S the other rubber saplings work fine (Mega Rubber Sapling, Sacred Rubber Sapling etc) its just the regular "Rubber Sapling" that doesnt work. (P.S if your wondering how I got Minefactory Reloaded on 1.12.2 I downloaded it from someone who compiled it using Gradle from this site : https://github.com/skyboy/MineFactoryReloaded/issues/709)

    here is the server log :

    latest.log

    opened by starpixel2608 0
  • Spongeforge GUI Exploit

    Spongeforge GUI Exploit

    I am currently running

    • SpongeForge version: spongeforge-1.12.2-2838-7.3.1-RC4102

    • Forge version: 14.23.5.2854

    • Java version: 8

    • Operating System: Ubuntu 16

    • Plugins/Mods: Mods (14): Minecraft, Minecraft Coder Pack, Forge Mod Loader, Minecraft Forge, SpongeAPI, Sponge, GhostDrops, Pixel Extras, PixelEvent, Pixelmon, Pixelmon Trainer Commands, SpongeForge, SwapClaims, Wondertrade. I tested also with only SPONGEFORGE and forge ad no mods

    Issue Description There is a exploit with some nasty client that cause server to crash. When he join it send some sorta of inventory gui/stuff that cause this error https://pastebin.com/Nk3zFx6E and server to crash. I know some devs started to fix it with these commits https://github.com/SpongePowered/Sponge/commit/dededb4dd67574d11c065bb94f0ede630afcde09 https://github.com/SpongePowered/Sponge/commit/f0cc7a64a50e08e9d2d3a80291ba2f3245a0f6c0

    The problem is if enable the new antiexploit fix (it might work) but it keep to kick all innocent players that try to grab items and/or put items from/to chest/shulker and trow this error https://pastebin.com/swUkWPLe

    A real fix would be nice, because this exploit is super anoying for these stupid brainless kids :)

    opened by Malachiel87 1
  • Sponge 1.12.2 anvil issue

    Sponge 1.12.2 anvil issue

    https://www.youtube.com/watch?v=nxSlfWHiSoo&feature=emb_logo&ab_channel=Akishiro

    image

    opened by kasdo 1
  • Sponge + Modular Routers Not Playing Ball

    Sponge + Modular Routers Not Playing Ball

    after before

    I am currently running

    • SpongeForge version: 1.12.2-2838-7.3.1 RC4082

    • Forge version: 1.12.2-14.23.5.2854

    • Java version: 8

    • Operating System: Ubuntu/Linux

    • Mods List:

    • https://www.technicpack.net/modpack/the-1122-pack.1406454/mods

    • Plugin list I have stripped all the plugins out and tested. Still end up with the same issue. (just ruling things out :))

    Issue Description When using the "item router" from "modular routers" any block that is pushed out from the item router has no texture, the new block that is being pushed out is called a "Template Frame". This issue only occurs when sponge is installed.

    Git Paste/Bin https://github.com/AnCasper/an-casper/blob/master/errors%20The%201.12.2%20Pack%20Sponge%20Modular%20Routers

    opened by AnCasper 2
  • Astral Sorcery Discidia experience not being given to players, despite running 7.3.0 Sponge

    Astral Sorcery Discidia experience not being given to players, despite running 7.3.0 Sponge

    I am currently running

    • SpongeForge version: 7.3.0
    • Forge version: 1.12.2-14.23.5.2854
    • Java version: 8
    • Operating System: Linux
    • Plugins/Mods: SkyFactory 4 v 4.2.2 modpack (lots of mods) | Plugins: Auction, Broadcast, CarrotShop, CatClearLag, EconomyLite, Enjin Minecraft Plugin, EpicBanItem, GriefDefender, LuckHolders2, LuckPerms, MagiBridge, Mobpression, NuVotifier, Nucleus, PacketGate, Personal Time, PersonalWeather, PlaceholderAPI, Rankup, SimpleCommands, Simplevotelistener, SkyClaims, TabList, TeslaCore, TeslaCrate, TeslaLibs, spark

    Issue Description Players are unable to gain experience in the Discidia constellation of astral sorcery/ This is a different experience type than normal MC experience, and this issue is supposedly fixed in the version of sponge I am using.

    No logs/error occur when a player tries to get XP in the constellation.
    opened by zediious 3
  • Failed to process all PhaseContext with ExoticBirds during WorldGeneration

    Failed to process all PhaseContext with ExoticBirds during WorldGeneration

    Duplicate of closed #2376

    I am currently running

    • SpongeForge version: 1.12.2-2838-7.3.0
    • Forge version: 14.23.5.2854
    • Java version: build 1.8.0_282-b08
    • Operating System: Ubuntu 20.04
    [18:39:41] [Server thread/ERROR] [Sponge]: /******************************************************************************************************************************************************************************************/
    [18:39:52] [Server thread/ERROR] [Sponge]: /******************************************************************************************************************************************************************************************/
    [18:39:52] [Server thread/ERROR] [Sponge]: /*                                                                      Failed to process all PhaseContext captured!                                                                      */
    [18:39:52] [Server thread/ERROR] [Sponge]: /******************************************************************************************************************************************************************************************/
    [18:39:52] [Server thread/ERROR] [Sponge]: /* During the processing of a phase, certain objects were captured in a PhaseContext. All of them should have been removed from the PhaseContext by this point Tick{NeighborNotification} */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* PhaseContext :                                                                                                                                                                         */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - Source: SpongeLocatableBlock{blockState=minecraft:air, position=(-1218, 75, 1162), worldReference=world}                                                                         */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - BlockItemEntityDrops: BlockItemEntityDropsSupplier{Captured=3}                                                                                                                   */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - SourceBlock: Block{minecraft:air}                                                                                                                                                */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - SourcePos: BlockPos{x=-1218, y=75, z=1162}                                                                                                                                       */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - NotifiedBlockState: exoticbirds:nest[eggcount=3,facing=west]                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - NotifiedPos: BlockPos{x=-1218, y=76, z=1162}                                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* Phases remaining :                                                                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*   - Phase: Tick{NeighborNotification}                                                                                                                                                  */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     Context:                                                                                                                                                                           */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - Source: SpongeLocatableBlock{blockState=minecraft:air, position=(-1218, 75, 1162), worldReference=world}                                                                         */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - BlockItemEntityDrops: BlockItemEntityDropsSupplier{Captured=3}                                                                                                                   */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - SourceBlock: Block{minecraft:air}                                                                                                                                                */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - SourcePos: BlockPos{x=-1218, y=75, z=1162}                                                                                                                                       */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - NotifiedBlockState: exoticbirds:nest[eggcount=3,facing=west]                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - NotifiedPos: BlockPos{x=-1218, y=76, z=1162}                                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*   - Phase: General{Unwinding}                                                                                                                                                          */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     Context:                                                                                                                                                                           */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - Source: SpongeLocatableBlock{blockState=minecraft:leaves[check_decay=true,decayable=true,variant=birch], position=(-1218, 75, 1162), worldReference=world}                       */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - UnwindingState: Block{Decay}                                                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - UnwindingContext: GeneralizedContext{isCompleted=true}                                                                                                                           */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - IsPostingSpecial: false                                                                                                                                                          */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*         - Source: SpongeLocatableBlock{blockState=minecraft:leaves[check_decay=true,decayable=true,variant=birch], position=(-1218, 75, 1162), worldReference=world}                   */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*   - Phase: Block{Decay}                                                                                                                                                                */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     Context:                                                                                                                                                                           */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - Source: SpongeLocatableBlock{blockState=minecraft:leaves[check_decay=true,decayable=true,variant=birch], position=(-1218, 75, 1162), worldReference=world}                       */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*   - Phase: Tick{Block:RandomBlockTickPhase}                                                                                                                                            */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     Context:                                                                                                                                                                           */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*     - Source: SpongeLocatableBlock{blockState=minecraft:leaves[check_decay=true,decayable=true,variant=birch], position=(-1218, 75, 1162), worldReference=world}                       */
    [18:39:52] [Server thread/ERROR] [Sponge]: /*                                                                                                                                                                                        */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* Minecraft : 1.12.2                                                                                                                                                                     */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* SpongeAPI : 7.3-7127e0882                                                                                                                                                              */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* Sponge : 1.12.2-7.3.0                                                                                                                                                                  */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* SpongeForge : 1.12.2-2838-7.3.0                                                                                                                                                        */
    [18:39:52] [Server thread/ERROR] [Sponge]: /* Minecraft Forge : 14.23.5.2854                                                                                                                                                         */
    [18:39:52] [Server thread/ERROR] [Sponge]: 
    

    When I turned off the generation of nests from the mod the error stopped appearing

    opened by IlyaVorozhbit 1
  • Issue with /worldborder set

    Issue with /worldborder set

    • SpongeForge version: Last

    • Forge version: 2838

    • Java version: 8u121

    • Operating System: Win10 x64

    • Plugins/Mods: None

    Issue Description /worldborder set doesn't work in all dimensions. It applies only in dimension where command have written. For example, if i set worldborder distance to 1536 in overworld, nether will still have default worldborder distance(60 000 000 blocks). With simple Forge server all works fine.

    opened by Dan4oby 0
Releases(v7.3.0)
  • v7.3.0(Aug 30, 2020)

    This contains the full release of SpongeAPI 7.3.

    Additional fixes and features are:

    • Ensured that cancelling DamageEntityEvent cancels all damage effects.
    • Offering ConnectedDirectionsData to some blocks will now work as intended.
    • Fixed startup crash with Applied Energetics 2.
    • Added config option to disable neighbour notifcations in unloaded chunks.
    • Fixed Sponge choosing an incorrect transaction when in CraftItemEvent.Preview.
    • Fixes CollideEntityEvent containing the wrong cause.
    • Fix ItemStack builder not always pruning empty data containers causing an erroneous tag compound to appear.
    • Fixed various Configurate - DataContainer translator issues.
    • Fixed some entities being activated when they shouldn't be.
    • Fixed UserStorageService sometimes throwing exceptions.
    • Fixed ClassCastException for AreaEffectCloudProcessor.
    Source code(tar.gz)
    Source code(zip)
    spongeforge-1.12.2-2838-7.3.0-dev-shaded.jar(21.55 MB)
    spongeforge-1.12.2-2838-7.3.0-dev.jar(8.41 MB)
    spongeforge-1.12.2-2838-7.3.0.jar(21.61 MB)
  • v7.2.3(Jul 2, 2020)

    No big things to worry about this time, but here are some things that have changed:

    • LaunchProjectileEvent will now be fired if no-one is listening to SpawnEntityEvent but a plugin is listening to LaunchProjectileEvent
    • Fixed death event not firing when using mods such as FirstAid that cancel the LivingHurtEvent to do their own damage calculations.
    • Increased performance of getting Users from the UserStorageService
    • Stagger saving and unloading offline user data to reduce the liklihood of actions such as Nucleus' /invsee causing User {} is not initialized errors to bring down the server.
    • When User {} is not initialized errors occur, the server no longer crashes.
    • Server#copyWorld() now registers the world.
    • Fix command completion when using GenericArguments#allOf
    • Ensure that child commands do not have arguments added to the context if there are no arguments to add.
    • If chunk-load logging is enabled, queueing a chunk for load is now logged.
    • Even more performance and memory improvements!

    We also added the following features that are slated for API 7.3. They are available now if you build against API 7.3 snapshots, but note that the APIs are not yet in a release build of API 7 and so are subject to change:

    • Simple placeholder support.
    • SaveChunkEvent.
    • select and whilst instead of stopFilter and skipFilter in BlockRay.
    • New world serialisation behaviour - METADATA_ONLY, which saves everything about a world, but not its chunks.
    Source code(tar.gz)
    Source code(zip)
    spongeforge-1.12.2-2838-7.2.3-dev-shaded.jar(21.23 MB)
    spongeforge-1.12.2-2838-7.2.3.jar(21.28 MB)
  • v7.2.2(May 31, 2020)

    Version 7.2.2 is now available for your general usage. We have made one significant change that might affect you if you use a MySQL or MariaDB database.

    Updated MariaDB Connector to v2.6.0

    We have updated our MariaDB Connector from v2.0.3 to v2.6.0. This is to allow servers to use MySQL 8.0.3+ without having to make it act like a MySQL 5.x server. While we expect there to be no impact on the vast majority of servers and plugins (especially if you use our SQL Service), there has been a minor change that can break code that relies on the name of the driver.

    • https://mariadb.com/kb/en/mariadb-connector-j-240-release-notes/
    • https://jira.mariadb.org/browse/CONJ-654

    Server Owners

    We advise that if you use MySQL or MariaDB databases with your plugins that you throughly test the upgrade and that you backup beforehand. We do say this every time, but it is especially important this time.

    Plugin Developers

    If you rely on the name of the driver or database type, you will need to update your plugins to account for the changes noted in the links above.

    Other changes

    • Fixed issues with inventory querying
    • Rewrote the entity collisions module to resolve issues not involving entity collisions
    • Fixed command functions not executing via command blocks when explict permissions were not set
    • Fixes entities being unable to pick up items after being unvanished
    • Fire SpawnEntityEvent then LaunchProjectileEvent for Projectiles
    • Cancelling Forge's LivingHurtEvent is now respected by Sponge
    • Fixed Some Sponge data not being persisted when no custom data is present on an entity
    • Added extra check when saving level_sponge.dat to ensure that the file is being saved correctly
    • Lots of performance and memory improvements
    Source code(tar.gz)
    Source code(zip)
    spongeforge-1.12.2-2838-7.2.2-dev-shaded.jar(21.18 MB)
    spongeforge-1.12.2-2838-7.2.2.jar(21.24 MB)
  • v7.2.1(Apr 30, 2020)

    Notable changes in this release are:

    • Projectiles and items will now fire movement events
    • Fixed issue where the PatternMatchingElement may return more than one entry when an exact match is provided
    • Improved vanish, preventing collisions and mob spawning around the vanished player when appropriate
    • Fixed dupe when cancelling InteractInventoryOpen event
    • Fixed custom data removal for offline players
    • Stop firing ChangeDataHolderEvent.ValueChange when an entity is constructed
    • Fixed deserialisation of numbers in JSON
    • Fixed duplicatication of spawn chunks in memory
    • Improve performance when calculating which crafting recipe to present
    • JoinData is now only updated after the player has joined
    • Improved performance of vehicle movement
    • Fixed performance issue with owner/notifier tracking
    • Fixed incorrect EquipmentProperty being returned for armor pieces
    • Fixed potential deadlock when disconnecting players
    Source code(tar.gz)
    Source code(zip)
    spongeforge-1.12.2-2838-7.2.1-dev-shaded.jar(21.03 MB)
    spongeforge-1.12.2-2838-7.2.1.jar(21.08 MB)
  • v7.2.0(Mar 29, 2020)

    USERS OF OLDER VERSIONS OF SPONGEFORGE SHOULD UPDATE TO THIS VERSION. This is to protect yourself against a potential DoS exploit.

    See https://forums.spongepowered.org/t/spongeapi-7-2-and-spongeforge-spongevanilla-recommended-build-7-2-0-released/35500

    Notable changes in this release are.

    • Update Sponge API to 7.2 release
    • ClickInventoryEvent.NumberPress no longer causing item duplication
    • Entity#getValues​(), Entity#getKeys() and Entity#getContainers() now supply all vanilla manipulators for the Entity this is called on
    • Fixed interaction events not being called correctly when left clicking in the air
    • Improve the outdated Mixin message to make it clearer what you have to do if an older version of Mixin is loaded before Sponge’s
    Source code(tar.gz)
    Source code(zip)
    spongeforge-1.12.2-2838-7.2.0-dev-shaded.jar(21.03 MB)
    spongeforge-1.12.2-2838-7.2.0.jar(21.08 MB)
  • v7.1.10(Feb 28, 2020)

  • v7.1.8(Jan 1, 2020)

  • v7.1.7(Nov 18, 2019)

Owner
SpongePowered
Organization behind the Sponge Project
SpongePowered
Modifications to the Minecraft base files to assist in compatibility between mods.

MinecraftForge Forge is a free, open-source modding API all of your favourite mods use! Version Support 1.16.x Active 1.15.x LTS Download Forum Discor

Minecraft Forge 4.6k May 2, 2021
please read README to see how to play this. and star me to help me! this is very helpful and thanksful for me.

Sharustry Mod Browser / 모드 브라우저로 다운로드하기 Only possible with 124 or higher, only can download "latest" release 124 버전 이상에서만 가능하고, 오직 가장 최근의 정식 릴리즈만 다운로드

Sharlotte 14 Mar 27, 2021
Equivalent Exchange 3 Apache 2 Equivalent Exchange 3 pahimar Equivalent-Exchange-3. Mods for Minecraft. License: Apache 2 , .

Welcome to Equivalent Exchange 3! All versions are available here Minecraft Forums page Compiling EE3 - For those that want the latest unreleased feat

Rob Davis 725 Apr 14, 2021
A Forge mod that implements SpongeAPI

SpongeForge Currently not stable and under heavy development! A Forge implementation of the Sponge API. Homepage Source Issues Documentation Community

SpongePowered 1.1k Mar 14, 2021
BuildCraft

Welcome to BuildCraft on GitHub Reporting an issue Please open an issue for a bug report only if: you are sure the bug is caused by BuildCraft and not

BuildCraft Team 1.2k Apr 21, 2021
The most powerfull forge server software (not yet) which aims for high capacity and performance on 1.16.5 modded server.

GoldenForge The most powerfull forge server software (not yet) which aims for high capacity and performance on 1.16.5 modded server. Current work Asyn

null 12 Apr 18, 2021
Primary repo for the Figura Project

Downloads Modrinth Curseforge Join the Discord! Figura REQUIRES the Fabric API to run. You can find the Fabric API here. Figura The Figura Project is

Zandra 82 Apr 7, 2021
A minecraft mod that allows using minecrafts structure block based test system

MC Tester Mod This mod allows using the automated structure based test system Mojang created for minecraft. The test system is only partially included

2No2Name 11 Mar 23, 2021
A Minecraft Mod for Fabric which aims to make Block Entity rendering faster and more customizable with almost no compromises.

Enhanced Block Entities EBE is a 100% client side mod for Minecraft on the Fabric mod loader which aims to increase the performance of block entity re

null 18 Mar 21, 2021
LoliServer 是 Minecraft 较新版本 1.16.5 中的 Forge + Bukkit 服务端核心, 支持Forge Mod和Bukkit 插件, 兼容性与性能优秀, 于Mohist1.16.5基础加以维护更新

LoliServer 1.16.5 LoliServer-1.16.5,基于Forge并融合Paper/Spigot/Bukkit的高性能高兼容性的服务端核心 上游项目 Mohist Bukkit Paper CraftBukkit Spigot MinecraftForge Atom Thermo

LoliServer 32 Apr 20, 2021
🗺️ Minecraft map editor and mod

A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting! Use it in creative, survival in sing

EngineHub 1.9k Mar 14, 2021
A Fabric mod designed to improve the chunk performance of Minecraft.

C^2M-Engine A Fabric mod designed to improve the chunk performance of Minecraft. So what is C2ME? C^2M-Engine, or C2ME for short, is a Fabric mod desi

null 66 Apr 1, 2021
A minecraft utility mod for 1.12.2.

Teddyware Utility Mod Teddyware is a utility mod for minecraft anarchy servers for 1.12.2. It is like optifine, and should only be used on servers tha

null 11 Apr 4, 2021
A minecraft mod that allows additional windows to be opened alongside the game

Breakout API BreakoutAPI is a Minecraft mod which allows developers to create new windows that run alongside Minecraft. All the windows run on the sam

Raph Hennessy 10 Mar 7, 2021