No description
Find a file
2026-08-19 02:15:15 +02:00
.rundevserver . 2026-08-10 00:31:28 +02:00
buildserver . 2026-08-19 02:15:15 +02:00
core . 2026-08-19 02:15:15 +02:00
minigame . 2026-08-08 03:41:09 +02:00
rules . 2026-08-19 02:15:15 +02:00
.bazelrc . 2026-08-19 02:15:15 +02:00
.gitignore . 2026-08-05 21:40:52 +02:00
BUILD . 2026-08-06 22:05:43 +02:00
maven_install.json . 2026-08-10 21:45:45 +02:00
MODULE.bazel . 2026-08-10 21:45:45 +02:00
README.md . 2026-08-19 02:15:15 +02:00

TODO

BUILD

  • make sure it doesn't break when using nats
  • lwk make sure velocity plugin works at runtime
  • make dev-server use $DOCKER and fallback to docker if podman is not available.
  • refactor BUILD files: MODULES.bazel

core

  • configurator: need to use json nodes for storing data so i can rlly update subfields
  • convert commands to new api
  • CommandExecutor now has a style parameter which is always MessageStyle(not ScrowMessageStyle), this kinda sucks. i could merge kencommandapi into core or make it more flexible(but then i need even more generics) need to think about this.

bukkit

  • MAKE A MINIGAME FIRST
  • notification: Friend is now offline/online
  • maybe lowk make kencommandapi's type's use Result instead of exceptions so we can have cleaner error messages
    • maybe <msg> -- <raw input>: player not online -- kento2, you can't add yourself as friend: kento2 -- this is weird again
    • or similarly illegal argument <raw input>: <msg>: illegal argument kento2: you can't add yourself. this is good lwk
    • or just completely leave it up to the type: <msg> but then we'd get inconsistencies or uninformative error messages. maybe the error messages also just get simpler. you can't add yourself as friend, player not online at /msg, but with more arguments is super confusing.
    • or <arg-id>: <msg>: player: not online could work. but then we'd get player: you can't add yourself as friend which is kinda weird maybe. also these IDs can be confusing.
  • make /friend add use argument requirement for self-check
  • /ignore command

Project

modules

  • core-lib: stateless library
  • core-bukkit-api stateful api, for minecraft development, depends on core-lib
  • core-bukkit-api stateful plugin, same as core-bukkit-api but implements it
  • core-velocity-api stateful api, for proxy development, depends on core-lib
  • core-velocity-impl stateful plugin, same as core-velocity-api but implements it

Building

compile the bukkit-impl plugin:

bazel build //core/bukkit:plugin

This produces bazel-bin/core/bukkit/plugin.jar I think.