Skip to content

Project goals #3

@fenhl

Description

@fenhl

Edit: Updated project goals can be found in the discussion below, starting with this comment. Original opening comment follows:

Before we do any actual coding, we should define the project goals. Here are some of my ideas, in decreasing priority:

  1. The most important goal should imo be feature parity with the “Notchian” vanilla Minecraft server, specifically the latest stable release of the standalone minecraft_server.jar. That is, anything which is considered a feature (as opposed to a bug or implementation detail) of the Notchian server is (in 20XX) also a feature of the Hematite server.
  2. Custom features which are not present in Notchian (see below for examples) should be disabled by default. For example, the presence of a hematite.json config file in the server directory could trigger custom features.
  3. Besides a standalone binary, there should also be a library crate which can be used by the Hematite client for the local singleplayer server.
  4. A branch which tracks the latest snapshots and pre-releases.
  5. As a custom feature, an implementation of a future version of the Wurstmineberg Minecraft API or perhaps even a superset capable of replacing wurstminebot is something I would like to see.
  6. Multi-world support as a custom feature.
  7. Performance, obviously.
  8. A way to detect Hematite clients and use a more performant variant of the protocol for them (e.g. chunk caching), perhaps as a custom feature. I'm not sure if this is worth the additional code complexity.

What do you think about these? And do you have any other suggestions for project goals?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions