Inactive [DEV] BukkitContrib Alpha 0.1.7 [1000]

Discussion in 'Inactive/Unsupported Plugins' started by Afforess, May 21, 2011.

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

    Afforess

    BukkitContrib is superseded by Spout, the new Bukkit/Client framework.
     
  2. Offline

    HeroicWill

    Hello, I am encountering an error while using your plugin on CB 860

    Since the plugin was installed, I get Internal exception: java.lang.NullPointerException whenever I reload my server from in game.
    I'm sorry, I currently can't give you the error from the console, as I have recently switched providers and working on SSH.

    Last, thank you for working on such an awesome plugin, keep up the good work!
     
  3. Offline

    OrtwinS

    Exept for the key-press/release events wich are obviously client-sided... what would the objections be to really include this in bukkit?

    Inventories have been server sided for ages, it seems weird these hooks are not build in in bukkit itself.

    Is making a github fork and add this to bukkit that hard or does the bukkit team have objections agains these hooks...?


    Also, great work @Afforess :D, I cant use it myself but I love that you gave Diddiz a good way to log chests in LogBlock.


    Its only for the key press/release events (read OP)
    all the inventory stuff is server sided.

    So you could actually make a flymod like in Zombes modpack that works server sided, with permissions (if the permitted user has the client mod that is)
     
  4. Offline

    alta189

    No, because this requires client side modding
     
  5. Offline

    OrtwinS

    As I said, 'exept for the key-press/release events wich are obviously client sided'.

    All the inventory stuff is server sided, if I understand the OP 'new event hooks' spoiler correct that includes the inventorie left/right clicks.
     
  6. Offline

    alta189

    Sorry, didn't completely read your post :p. I think Afforess had said something about incorporating the purely server side stuff... I think he said that he was going to keep it in BukkitContrib, but I may be wrong XD
     
  7. Offline

    narrowtux

    I think Afforess is quite upset with the speed the pull requests will be accepted. So if he creates this mod, it's much faster to add new hooks.
     
  8. Offline

    Arrorn

    The clientside mod is required to see any and all changes to the game. ie. custom skins, titles, cloaks, keystroke controls, etc. Otherwise the server plugin controls all of those said changes. Yes the server can still do loads of stuff with the serverside plugin only, but the client without the clientside mod may never see it depending on what the server does. Another example, my mod NameAWolf allows for the server to put names over wolves heads like player names in game, however without the clientside plugin you will never see this change.

    Hopefully this answers this question, I know many people have been asking it on this thread in different ways.
     
  9. Offline

    acetech09

    I am looking those things that make you put the 'depending' in there... you say it like there are things which don't require the clientside mod.

    I have a flight to catch in 2 hours so I want to know if I should download the BukkitContrib javadocs and try to write this plugin while I'm on the flight.
     
  10. Offline

    majsman12

    How do i Install this???
     
  11. Offline

    acetech09

    You install it just like any plugin. you install the clientside mod like any standard minecraft mod.
     
  12. Offline

    Arrorn

    The inventory api does not require the clientside mod such as events onInventoryOpen, inventoryClose, inventoryWindow click, etc. , as well as some utils. Read the OP: its a server API that is complemented by a client mod, it does not require it.
     
  13. Offline

    Afforess

    Okay, here's a rough breakdown:

    The InventoryListener and all of the InventoryEvents are Server side, no client mods are needed. I wrote the API and it took me a good 2 weeks of evenings to get it all fixed and working. (I should also mention that those 2 weeks were my finals weeks. ;) )

    Also, the open inventory methods in ContribPlayer all work server side.

    Everything else is for clients - however, BukkitContrib fails gracefully if the client is not installed. Example: If you try to find out which key is the foward key, it will return KEY.Unknown. If you try to set a cape/skin/cloak, it will just not send the packet, it won't through any exceptions. This is intentional, so that plugins can act as if all players are using the client mod, even if none are. (I did expose API to tell if individual players are using the client side mod though, not that I see any reason, but I err on the side of more information, not less).

    ATM, Yes, this mod leans heavily toward client side features, but this is in large part because of the huge limitations I feel server mods have compared to client mods, and I want to close the gap some. I do have plans for more server only API. I plan on implementing a useful cubiod library, as well as permission events (instead of manually hooking into each permission plugin).

    Does that answer your questions?

    (BTW - your question sparked an idea. Should I add a custom annotation, like @ClientOnly to methods that require the client mod? The Javadocs for BukkitContrib are on the OP, so it could be a handy reference...)

    There's a development build 2-3 pages back that should fix it, unless you want to wait for the official 0.0.6 release.

    Grum and others have a utopian view of what the inventory events should look like, but are unwilling (or moving glacially slow) on implementing them. I decided I had had enough, I did it myself.

    Should also mention that this plugin is licensed CC 3.0 BY, which means if Bukkit decides to use my code, I must get attributed in their credits for it.

    Which part - there is a server plugin and a client mod.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 15, 2016
  14. Offline

    acetech09

    Yes, that is EXACTLY what I was looking for as an answer.

    Rofl... i was just about to suggest that when reading through your reply, then hit the end. ;)
     
  15. Offline

    Tealk

  16. Offline

    Afforess

  17. Offline

    rtcabooservb

    ETA on 0.6 yet?
     
  18. Offline

    Afforess

    Good news:
    I've had no problems adding the new features for 0.0.6.

    Bad News:
    It took longer/I had less free time than expected. Releasing today would almost certainly mean I forget a few things and there would be bugs.

    Better News:
    I have lots of free time this weekend, and may be able to completely release 0.0.7 and 0.0.8 both.
     
  19. Offline

    alta189

    What listener do I use for the BukkitContribSPEnable Event?
     
  20. Offline

    rtcabooservb

    That's fine. I can wait. Besides, with the new bukkit update, the mysql connector for logblock broke so I can go nag another dev now. :p
     
  21. Offline

    Afforess

    BukkitContribListener
     
  22. Offline

    Tealk

    @Afforess
    is it possible with this plug in, to change the username over his head with "/nick"?
     
  23. Offline

    Jan Tojnar

    No, this is only framework, you need plugin using this plugin to do that. eg. CapeMe
     
  24. Offline

    Archelaus

    Afforess, could you possibly add more functionality for crafting? E.g. only allow crafting to occur if certain conditions are met.

    Also, PassivePicasso wanted to know if you could possibly figure out how to change ItemStack names (e.g. Sticks to SticksOfFire). Their tooltips.


    Apparently both these things were in celticmintrels inventory stuff.
     
  25. Offline

    Afforess

    There already is a onInventoryCraft event, which can be cancelled. As for modifying recipes - I don't recommend you use inventory events for that, add a custom recipe, using bukkit's existing API.

    There's no way item names was in CelticMinstrel's code, unless I'm totally forgetting some important packet. The name is client side. I can expose it though.
     
  26. Offline

    Liger_XT5

    I don't know if you fixed this in .6, but when I use reload, I get the following error:

    Show Spoiler

    2011-06-17 19:11:46 [WARNING] Failed to handle packet: java.lang.ClassCastException: org.bukkit.craftbukkit.entity.CraftPlayer cannot be cast to org.bukkitcontrib.player.ContribPlayer
    java.lang.ClassCastException: org.bukkit.craftbukkit.entity.CraftPlayer cannot be cast to org.bukkitcontrib.player.ContribPlayer
    at org.bukkitcontrib.BukkitContrib.getPlayerFromId(BukkitContrib.java:92)
    at org.bukkitcontrib.packet.PacketKeyPress.run(PacketKeyPress.java:43)
    at org.bukkitcontrib.packet.CustomPacket.a(CustomPacket.java:54)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:399)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:309)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
     
  27. Offline

    Afforess

    @Liger_XT5 - hadn't seen that, but I can certainly fix it. ;)
     
  28. Offline

    alta189

    @Afforess I am getting a 403 error on the javadocs


    Code:
    Forbidden
    
    You don't have permission to access /BukkitContrib/ on this server.
    
    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
     
  29. Offline

    Afforess

    @alta189

    Sorry - just finished uploading the changes. Should be up now.
     
  30. Offline

    alta189

  31. Offline

    Liger_XT5

    Thanks! Stupid question, does the players have to update their MC mod files too?
     
Thread Status:
Not open for further replies.

Share This Page