Supported Plugin Languages

Discussion in 'Plugin Development' started by MistahCheese, Jan 3, 2011.

  1. Offline

    MistahCheese

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    So, I saw the "plugins don't have to be developed in java" thing, but I was wondering specifically what languages are supported (hoping for Python and/or C++). Anyone know? Thanks!
  2. Offline

    Sindacious

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Seconding this thread, native (p|j)ython support would be awesome.
  3. Offline

    AnonymousJohn

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Lua would be awesome to program in. But I can learn Python. And I can stick with Java, if need be.
    WolfX likes this.
  4. Offline

    Procrastination

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I think I'm mixing it up, but is python the easy one to learn or was it perl.
  5. Offline

    legendblade

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Python is incredibly easy to learn; I learned it in a single day at work. On the other hand, compared to Java, I don't really care for it much.
  6. Offline

    hey0

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If they're taking the route I think they are (which would be having a TCP server or something so you can interact with the mod), any language with a network library could be used to script for bukkit. Of course, I don't know how they're going to do it so you'll have to wait for a developer.
    Higgs and Shoot like this.
  7. Offline

    Master_rg

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    But still keep in mind that adding a lot of plugin languages doesn't support the performance in the worst case.. especially if you have to send your "plugins" through a set of parsers, which may not lead to the wished gaming experience.


    Regards
  8. Offline

    WolfX

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Dinnerbone: Plugins are handled through a PluginLoader
    Dinnerbone: We can write PluginLoader to handle all interaction with a given language
  9. Offline

    robhol

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    But the question is how many will actually be supported. Of course people won't (and shouldn't) spend their time writing middleware for eleventy billion languages. In other words, how many plugin languages are there concrete, definite plans to support?
    I've seen several people push C# and Lua, (I couldn't agree more,) for Python (I don't know it, but it seems great,) a few for C/C++ (eurgh) and since there are dozens of more or less suitable languages, assuming that they'll all work is probably going to lead to bad surprises.
  10. Offline

    AnonymousJohn

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I know! Let's push for them to support Lolcode!!! Best programming language ever! xD
  11. Online

    zeeveener BukkitDev Staff

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Apple Script! lol. I am not a developer, but have been really tempted to try. If they can make it so at least one really easy/simple language is usable, I will be content lol.
  12. Offline

    Ben S

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    C/C++ vote here. Although I'm content with any decent OO language as well. I think scripting should be avoided. It's just a little slow considering some servers can have up to 100 players.
  13. Offline

    Tythus

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I would have to agree just based on keeping it light
  14. Offline

    sk89q

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    This is kind of early -- Bukkit is still very early in its development -- so no one has seriously considered supporting another language yet. Feel free to pick the job up though :p
  15. Offline

    torrentails

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'd love to see Python as a useable plugin code although I really don't mind java eithr.
  16. Offline

    msleeper

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Can I write plugins in PHP?
  17. Offline

    SirM3aky

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Is C# a viable language for this? I'm currently learning it and would love to start developing plug-ins :)
    Killie01 likes this.
  18. Offline

    huadianz

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Depends on how Bukkit will be implemented I guess. If it is a native code DLL and we decide to hax0r Notch's code, we can make it run using any DLL capable language, well, on Windows only. I don't think Notch will like having a whole new modified server released though...
  19. Offline

    Killie01

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    i am a learning c# programmer and i always wanted to make plugins for hMod but that was java
    if this supports c# i can't thank the developers of bukkit more than i will do
  20. Offline

    torrentails

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    By the sounds of it, we probably be able to code in just about any language we want, someone just needs to code the right hooks and intereters for it. Brainf*ck and Befunge anyone?
  21. Offline

    AnonymousJohn

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    See, torrentails, that's exactly what I'm saying: Lolcode ftw! xD

    In any case, I'd be happy to program plugins in C++, Java, Python or Lua. I suppose I never really thought of PHP for writing plugins (I've always thought of it as web-page stuff, but I suppose it IS a scripting language), but I'd be pretty happy programming in that, too. I'd be happy just programming in general. It's what I do for fun xD
  22. Offline

    Sosser

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    C# would be nice.

    Playing around with the MCAdmin source code was so fun ;)
  23. Offline

    root

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    asm :)

    any language will do, really - most of the object orientated languages share enough syntax to be pretty easy to learn once you have an initial base language.
  24. Offline

    Sosser

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Yes, that's true.

    So i suppose any c based language will do for me ;)
    (As i am not that familiar with c just yet)
  25. Offline

    The_Wrecker

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'll opt for just Java. Since the minecraft server and minecraft itself is written in Java. Best support imho.
  26. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    i would prefer C++, but doing this plugin dev keeps me doing something in java which is good
  27. Offline

    Sindacious

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'm thinking whitespace!
    AnonymousJohn likes this.
  28. Offline

    mindless728

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
  29. Offline

    jblaske

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    C# or VB.net would be most excellent.
  30. Offline

    skorgu

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    +1 for Python. If you're going the TCP route for the core plugin might I suggest ZeroMQ instead of a raw protocol? It's somewhat higher level and there are tons of libraries for different languages so you'd get interop basically for free.

Share This Page