Skip to content

feat: add typed command overloads, command execution and recipes to the plugin api - #17

Merged
NaySurGithub merged 1 commit into
mainfrom
feat/commands-recipes
Nov 14, 2026
Merged

NaySurGithub merged 1 commit into
mainfrom
feat/commands-recipes

Conversation

@NaySurGithub

Copy link
Copy Markdown
Contributor

Batch 5 of the plugin API additions.

Depends on the batch 4 PR (#16); merge that one first. The base branch is the batch 4 branch so the diff only shows this batch.

What it adds

  • commandAddOverload: typed parameters (int, float, string, bool, target, position, block position, message, JSON, enum) for a command of the plugin; enum values are completed by the client. FalconCommandDescriptor is not changed, for binary compatibility: overloads come in a separate call.
  • serverExecuteCommand (as the console) and playerExecuteCommand (as the player, with their permissions).
  • registerRecipe (shaped or shapeless crafting table recipes) and removeRecipe (plugin, pack or vanilla crafting recipe).
  • C++ (Commands, Player, Recipes), Java (commands(), server().recipes()) and Wasm bindings, README section; the examples give /give-diamond an int overload and add a recipe.

All functions are appended at the end of FalconServerApi (API 1.0.6, bumped by batch 1).

Checks

CI of the batch 6 branch (feat/world), which contains this one: Linux, Windows (MSVC and MinGW), .NET and Java jobs green; the macOS jobs were cancelled by the runner, as on main.

@NaySurGithub
NaySurGithub merged commit d1c0385 into main Nov 14, 2026
7 of 10 checks passed
@NaySurGithub
NaySurGithub deleted the feat/commands-recipes branch November 14, 2026 20:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant