Jump to content

Minecraft Forge vs Bukkit, what does Forge have what Bukkit dont?


Recommended Posts

Posted

Hello Dear Community,

 

im asking myself, what does forge makes better then bukkit?

 

bcuz , i see ppl do "RPG" server on "bukkit" servers but why?!?,

 

i mean, on bukkit you cant add "custom armor/weapons/items" or ?

 

so where is the point O.o

 

on other hand forge allow to do all this stuff but why does forge isnt as bukkit?

I mean the same stuff which you code on "bukkit" you can code them on "forge" aswell or am i wrong?

Posted

You are correct, but on Bukkit you do not need to download anything to your client. And you can technically make custom blocks and items with vanilla. You do this with a custom resource pack for items, and for blocks in Bukkit it is a bunch of entity manipulation.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Posted

Let me offer my perspective as a former Bukkit plugin dev, and now (relative newbie) Forge dev...

 

The big difference back when Bukkit/CraftBukkit appeared was that modding your client back in 2011 was a considerably tougher affair than it is today.  Coupled with the fact that there weren't many mods around then (the original Industrial Craft was announced in Feb 2011), the client modding scene was a little... specialist.  On the other hand, CraftBukkit was a pretty much drop-in replacement for the vanilla server, and it meant your players could just connect with their vanilla client - no hard-to-install client mods needed, no battling item ID conflicts or manually inserting classes into the client JAR.  Perfect for running big multiplayer servers; you got protection plugins to combat griefing, mini-games, RPG plugins - there's quite a bit you can do without adding custom items.  And as Animefan8888 alluded to, it did allow sort-of-custom items with a little server-side trickery - as it happens, I created a fairly extensive custom item framework myself: https://dev.bukkit.org/projects/sensible-toolbox

 

Things have changed though, for two big reasons: 1) Forge is here to stay, and it's a very capable system; as far as I can tell there's nothing Bukkit can do these days that Forge can't, and 2) it's really really easy these days to download a modpack and just start playing.  Of course, actually modding for Forge is still a lot harder than for Bukkit - you need to understand the client/server separation, you need to understand models & textures (and possibly some OpenGL), you need to peer inside the vanilla code on a fairly regular basis, and you need to accept that there will be pain when a major new MC release comes out (something Bukkit makes 99% transparent).  But that's for developers to worry about; players mostly need not care.

 

tl;dr When Bukkit came out, it was the obvious choice for a multiplayer server.  Nowadays, not so much - Bukkit (and its derivatives) are mostly around because of inertia these days.

 

Posted

Excellent answer so i think to stay on Forge makes alot easyer for me,

 

since i never realy learn java only through lookin at tutorials of minecraft coding and this forum is very special to me bcuz all their help

made me a small minecraft forge coder.

 

thanks@all for your answers and have a happy new year since i forget to say that here ! :)

  • Like 1
Posted
  On 1/17/2017 at 5:42 PM, terraya said:

Excellent answer so i think to stay on Forge makes alot easyer for me...

 

Wow, over 150 posts with no karma, plus or minus ? That takes some special skill. Here, have a point  :)

The debugger is a powerful and necessary tool in any IDE, so learn how to use it. You'll be able to tell us more and get better help here if you investigate your runtime problems in the debugger before posting.

Posted
  On 1/17/2017 at 12:01 PM, diesieben07 said:

I agree, except for one thing: if you just want to write a server-side mod with Forge you don't need to understand the client-server difference or OpenGL any more than you do with a Bukkit Plugin.

Yep, very true.  The one thing Bukkit still has over Forge, then, is the version-transparent API (e.g. the 1.10 -> 1.11 ItemStack changes would be a non-issue for plugin devs).

 

Out of interest, what are your thoughts on Sponge (on top of Forge) as a server-side plugin API?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Add the crash-report or latest.log (logs-folder) with sites like https://mclo.gs/ and paste the link to it here  
    • Cracked Launchers are not supported
    • Hi, I have a problem in minecraft java (only in forge 1.20.1), When I start the game after a moment the game crashed with code 1 this only in forge 1.20.1 , I tried to reinstall java, Upgrade java to 17, update the drivers to the latest version, downgrade the drivers to the pervious version, deleting .minecraft and reinstall it , but none of these ways working.   here is the log:   [Launcher] Launching Minecraft... I'm hiding! mods after C:\Users\Windows\AppData\Roaming\.minecraft\mods\tl_skin_cape_forge_1.20_1.20.1-1.32.jar [InnerMinecraftServersImpl]  search changers of the servers read servers from servers.dat [] [InnerMinecraftServersImpl]  prepare inner servers save servers to servers.dat [Launcher] Game skin type: TLAUNCHER [Launcher] Starting Minecraft Forge 1.20.1... [Launcher] Launching in: C:\Users\Windows\AppData\Roaming\.minecraft Starting garbage collector: 96 / 227 MB Garbage collector completed: 60 / 214 MB [Launcher] Processing post-launch actions. Assist launch: true =============================================================================================== [05:29:03] [main/INFO]: ModLauncher running: args [--username, *********, --version, Forge 1.20.1, --gameDir, C:\Users\Windows\AppData\Roaming\.minecraft, --assetsDir, C:\Users\Windows\AppData\Roaming\.minecraft\assets, --assetIndex, 5, --uuid, *************************************, --accessToken, вќ„вќ„вќ„вќ„вќ„вќ„вќ„вќ„, --clientId, null, --xuid, null, --userType, mojang, --versionType, modified, --width, 925, --height, 530, --launchTarget, forgeclient, --fml.forgeVersion, 47.3.22, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] [05:29:04] [main/INFO]: ModLauncher 10.0.9+10.0.9+main.dcd20f30 starting: java version 17.0.12 by Oracle Corporation; OS Windows 10 arch amd64 version 10.0 [05:29:15] [main/INFO]: Loading ImmediateWindowProvider fmlearlywindow [05:29:24] [main/INFO]: Trying GL version 4.6 [05:29:60] [main/INFO]: Requested GL version 4.6 got version 4.6 [05:29:67] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/Windows/AppData/Roaming/.minecraft/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%23100!/ Service=ModLauncher Env=CLIENT FATAL ERROR in native method: Thread[pool-2-thread-1,5,main]: No context is current or a function that is not available in the current context was called. The JVM will abort execution.     at org.lwjgl.opengl.GL11C.nglGetString(org.lwjgl.opengl@3.3.1+7/Native Method)     at org.lwjgl.opengl.GL11C.glGetString(org.lwjgl.opengl@3.3.1+7/GL11C.java:978)     at net.minecraftforge.fml.earlydisplay.DisplayWindow.initRender(fmlearlydisplay@1.20.1-47.3.22/DisplayWindow.java:209)     at net.minecraftforge.fml.earlydisplay.DisplayWindow.lambda$start$5(fmlearlydisplay@1.20.1-47.3.22/DisplayWindow.java:292)     at net.minecraftforge.fml.earlydisplay.DisplayWindow$$Lambda$437/0x000001fab120a618.run(fmlearlydisplay@1.20.1-47.3.22/Unknown Source)     at java.util.concurrent.Executors$RunnableAdapter.call(java.base@17.0.12/Executors.java:539)     at java.util.concurrent.FutureTask.run(java.base@17.0.12/FutureTask.java:264)     at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(java.base@17.0.12/ScheduledThreadPoolExecutor.java:304)     at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@17.0.12/ThreadPoolExecutor.java:1136)     at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@17.0.12/ThreadPoolExecutor.java:635)     at java.lang.Thread.run(java.base@17.0.12/Thread.java:842) Here I am! [VersionManager] Refreshing versions locally... [VersionManager] Versions has been refreshed (6 ms) [Launcher] Launcher exited. [Launcher] Minecraft closed with exit code: 1 flush now [Launcher] [Crash] Signature "Bad video drivers" matches! [Crash] Signature "Bad video drivers" matches! [Launcher] [Crash] Crash has been recognized! [Crash] Crash has been recognized! flush now
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.