PaperMC / Paper

The most widely used, high performance Minecraft server that aims to fix gameplay and mechanics inconsistencies
https://papermc.io/
Other
9.85k stars 2.28k forks source link

C library layer for Paper plugins #9564

Closed hwittenborn closed 1 year ago

hwittenborn commented 1 year ago

Is your feature request related to a problem?

I'm wanting to use Paper as a base for a Minecraft server I'm working on, which will feature several custom plugins. I don't know Java very well, and I'd like to write plugins inside of Rust if possible.

Describe the solution you'd like.

If the Paper plugin API had a C interface, this would solve the problem just fine. I would be more than fine maintaining Rust bindings to the C interface, and having the C interface would also open up the opportunity to write plugins in languages such as Go, Python, C++, and any other language that can use C APIs.

Describe alternatives you've considered.

I could learn Java, but I wouldn't have any use for it outside of Paper Plugin development. Being able to use a language I already use would be extremely helpful in developer productivity on my part.

Other

I'd be open to help work on this if needed, I'm just opening this issue to get some feedback.

electronicboy commented 1 year ago

This is pretty much not something we're interested in maintaining

On Wed, 2 Aug 2023, 17:59 Hunter Wittenborn, @.***> wrote:

Is your feature request related to a problem?

I'm wanting to use Paper as a base for a Minecraft server I'm working on, which will feature several custom plugins. I don't know Java very well, and I'd like to write plugins inside of Rust if possible. Describe the solution you'd like.

If the Paper plugin API had a C interface, this would solve the problem just fine. I would be more than fine maintaining Rust bindings to the C interface, and having the C interface would also open up the opportunity to write plugins in languages such as Go, Python, C++, and any other language that can use C APIs. Describe alternatives you've considered.

I could learn Java, but I wouldn't have any use for it outside of Paper Plugin development. Being able to use a language I already use would be extremely helpful in developer productivity on my part. Other

I'd be open to help work on this if needed, I'm just opening this issue to get some feedback.

— Reply to this email directly, view it on GitHub https://github.com/PaperMC/Paper/issues/9564, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJMAZCHUBOUCPB7EEKUGITXTKBNRANCNFSM6AAAAAA3BR67FA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

lynxplay commented 1 year ago

As cat said, this is nothing that fits this project as it is far outside of scope, nor do we have the capacity to maintain such an API. I'll be closing this issue hence, I hope you can understand as to why :+1: