# Velocity Proxy De **Velocity Proxy** is het centrale toegangspunt van het Tulpencraft-netwerk. Alle spelers die verbinding maken met Tulpencraft komen binnen via de Velocity-proxy. De proxy stuurt spelers door naar de centrale Lobby. De achterliggende Minecraft-servers zijn **niet zelfstandig vanaf het internet bereikbaar**. --- ## 🌐 Basisinformatie | Eigenschap | Waarde | | -------------------- | -------------------------- | | Hostname | `mc-proxy001` | | Software | Velocity | | Rol | Centrale netwerkproxy | | Publiek adres | `tulpencraft.nl` | | Minecraft-poort | `25565` | | Eerste backend | `lobby` | | Besturingssysteem | Linux | | Installatiedirectory | `/srv/minecraft/velocity/` | --- ## πŸ—οΈ Architectuur Tulpencraft gebruikt een centrale netwerkarchitectuur. De verbinding van een speler verloopt altijd via de proxy en vervolgens naar de Lobby: ``` Minecraft-client β”‚ β”‚ tulpencraft.nl:25565 β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Velocity Proxy β”‚ β”‚ mc-proxy001 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Lobby β”‚ β”‚ mc-proxy001 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚ β–Ό β–Ό β–Ό Survival Events SkyBlock ``` ### Belangrijk ontwerpprincipe De Velocity-proxy maakt voor spelers uitsluitend de **Lobby** tot eerste backend. De spelservers bevinden zich achter de Lobby. De gewenste verkeersstroom is: ``` Speler ↓ Velocity ↓ Lobby ↓ Spelserver ``` Niet: ``` Speler β”œβ”€β”€β†’ Survival β”œβ”€β”€β†’ Events └──→ SkyBlock ``` De achterliggende servers zijn dus geen zelfstandige publieke Minecraft-servers. --- # πŸ”€ Velocity Velocity verzorgt de centrale netwerklaag van Tulpencraft. De proxy handelt onder andere af: * inkomende Minecraft-verbindingen; * doorsturen naar de Lobby; * netwerkcommando's; * serverroutering; * versiecompatibiliteit; * proxyplugins; * centrale netwerkfunctionaliteit. De hoofdconfiguratie staat in: ``` /srv/minecraft/velocity/velocity.toml ``` --- # πŸ”Œ GeΓ―nstalleerde plugins De huidige pluginset op `mc-proxy001` bestaat uit: | Plugin | Versie | Rol | | ---------------- | -----------: | -------------------------------------- | | VLobby | 2.1.1 | Lobbycommando's en routering | | ViaVersion | 5.11.0 | Minecraft-versiecompatibiliteit | | ViaBackwards | 5.11.0 | Ondersteuning oudere Minecraft-clients | | MCKotlinVelocity | 1.5.1-k2.4.0 | Kotlin-runtime voor Velocity | | Simple Voice Chat| 2.6.18 | Voice-chat proxy | | bStats | β€” | Anonieme plugin-statistieken | De pluginbestanden bevinden zich in: ``` /srv/minecraft/velocity/plugins/ ``` De huidige directorystructuur is: ``` /srv/minecraft/velocity/plugins/ β”œβ”€β”€ bStats/ β”œβ”€β”€ MCKotlinVelocity-1.5.1-k2.4.0.jar β”œβ”€β”€ viabackwards/ β”œβ”€β”€ ViaBackwards-5.11.0.jar β”œβ”€β”€ viaversion/ β”œβ”€β”€ ViaVersion-5.11.0.jar β”œβ”€β”€ vlobby/ └── VLobby-2.1.1.jar ``` De mappen bevatten de configuratie en plugin-data van de betreffende plugins. --- # πŸšͺ VLobby [[plugins:vlobby|VLobby]] verzorgt de lobbycommando's op de Velocity-proxy. De huidige pluginversie is: ``` VLobby 2.1.1 ``` Configuratie: ``` /srv/minecraft/velocity/plugins/vlobby/configuration.conf ``` De configuratie gebruikt momenteel de handler: ``` command-handler="COMMAND_TO_SERVER" ``` De beschikbare routeringscommando's zijn onder andere: ``` /survival /events /lobby /hub ``` De configuratie koppelt deze commando's aan de betreffende servers. Voorbeeld: ``` survival=survival events=events lobby=lobby hub=lobby ``` ### Cooldown VLobby gebruikt momenteel een cooldown van **5 seconden** voor de geconfigureerde commando's. De Nederlandse melding hiervoor is: ``` Je kunt dit commando niet zo snel opnieuw gebruiken. Wacht