Archived
1
0
Fork 0
⛏️ Extensible Minecraft server implementation in Kotlin
This repository has been archived on 2025-03-02. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2021-01-10 22:57:04 +01:00
.github/workflows Fix the GitHub workflow 2020-11-30 07:21:30 +01:00
.idea Move player implementations out of API project 2021-01-10 22:57:04 +01:00
.runConfigurations Fix EventBus test 2021-01-03 14:04:57 +01:00
buildSrc Move player implementations out of API project 2021-01-10 22:57:04 +01:00
gradle/wrapper Update Gradle, fix a ByteBuf leak and kick the client when a decoding error occurs 2021-01-02 22:31:31 +01:00
test-plugin Move player implementations out of API project 2021-01-10 22:57:04 +01:00
uranos-api Move player implementations out of API project 2021-01-10 22:57:04 +01:00
uranos-nbt Use the refreshVersions Gradle plugin 2021-01-03 13:06:53 +01:00
uranos-packet-codecs Move player implementations out of API project 2021-01-10 22:57:04 +01:00
uranos-packets Move player implementations out of API project 2021-01-10 22:57:04 +01:00
uranos-server Move player implementations out of API project 2021-01-10 22:57:04 +01:00
.gitignore Change license to Apache 2.0 2021-01-03 15:58:16 +01:00
build.gradle.kts Sync entities when joining or when viewers change 2021-01-10 14:40:03 +01:00
gradle.properties Give each entity an UID and make entity classes open 2021-01-04 19:13:31 +01:00
gradlew Initial commit 2020-08-01 23:55:31 +02:00
gradlew.bat Initial commit 2020-08-01 23:55:31 +02:00
LICENSE Rename project to Uranos 2021-01-02 23:20:43 +01:00
README.md Move player implementations out of API project 2021-01-10 22:57:04 +01:00
settings.gradle.kts Use the refreshVersions Gradle plugin 2021-01-03 13:06:53 +01:00
versions.properties Bump versions 2021-01-03 13:15:54 +01:00

Uranos

Milestones

  • Players can see entities
  • Players can see other players
  • Players can send and receive chat messages
  • Players can see Titles
  • Weather and time
  • Players can hear sounds
  • Players can see particles
  • Players can have items (with metadata) in their inventory
  • Inventories
  • World modifications are sent to players
  • PlayerInteract events are emitted when blocks are clicked
  • Command framework + permissions
  • Commands can be sent from the console
  • Players can be teleported between worlds
  • Entity AI framework
  • Scoreboards + Teams
  • Crafting

Development

Because IntelliJ sometimes removes needed imports for types which have the same name as types in java.util when running the Optimize Imports action, you need to disable automatic wildcard imports for this package (Editor / Code Style / Kotlin / Imports / Packages to Use Import With '*').

Conventions

KDoc

  1. If the name of the target is already sufficient for understanding what it does or what it's value represents, you should not add a comment. If you want to provide additional information however, you should start the comment with a short description nevertheless.
  2. The name of the return type, property type or type of the enclosing class should not be wrapped in square brackets.
  3. If a comment only consists of the @returns block tag, the latter should be replaced with a sentence starting with Returns .

Code

  1. If a member function of a class creates an instance of another class which represents the same value, the functions name should be as<name of the other class>. If the new instance does not exactly represent the value of the original instance (for example because it is rounded), the name should be to<name of the other class>.