You are browsing as a guest. Sign up (or log in) to start making projects!

8h 7m 47s logged

Let me just shortly re implement everything

Context
I am creating a custom mini game server for Minecraft with Minestom
A library allowing to write a java Minecraft server from scratch

Overview

Yesterday and today i did this here

  • Now hard coded values are instead read from properties file
  • Made nearly all commands rely on same design in chat to look good
  • Players who disconnect also leave queues now automatically
  • On shutdown the server actually closes things like THE DATABASE CONNECTION :|
  • Made queue reset if players leave while in start sequence
  • Made a little game loop system for all games (countdown to start/countdown to end)
  • Create auto completion for queue- & permissions command
  • Rewrote large portions of the queue and party system

Config file

I now use the same thing for config files the official Minecraft server uses. .properties. It is actually a library provided by java and does not use any other dependencies.

Same design everywhere to feel at home

Mostly all commands now rely on the same design in the chat to make it look more consistent.

Disconnecting players

I have made a event handler for player disconnection which tells the queue and party system to kick this player from their system. Because you should not be in a party with someone who
is not on the server.

Actually handling shutdown now

Previously the server just terminated everything including the database connection :| now Minestom sends my program a signal and i gracefully close database, kick players and so on.

Game loop system

Just a small collection of functions helping with standard game presidia like starting after 5 seconds or sending all players back to the lobby after 10 seconds.

Auto completion

I added auto completion to commands the user will interact with to make it easier.

Rewriting CoDe

YAY my favorite thing. My original code was kind of spaghetti code and now i rewrote large portions which should improve understand ability?

The hardest thing

Probably the hardest thing i am facing with this project is Minestom’s lack of documentation. It has a wiki which only covers the basics. The rest is java doc but many functions/variables are defined like this: this_specific_thing() Does this_specific_thing but doesn’t tell what this_specific_thing is. But thankfully Minestom is open source so i can just look at the source code thought it is a bit hard for me because i am still somewhat of a java newbie.

0
13

Comments 0

No comments yet. Be the first!