Very Many Players (Fabric) — mod suurten pelaajamäärien Minecraft-palvelimien suorituskyvyn parantamiseen
Very Many Players on Fabric-mod, joka nopeuttaa Minecraft-palvelimia suurella pelaajamäärällä: entiteettien haku, asynkroniset chunkit ja…
Very Many Players on Fabric-mod, joka nopeuttaa Minecraft-palvelimia suurella pelaajamäärällä: entiteettien haku, asynkroniset chunkit ja bottisuoja.
Very Many Players (Fabric) — mod suurten pelaajamäärien Minecraft-palvelimien suorituskyvyn parantamiseen
Minecraft-versio, jolla artikkeli on testattu ja kirjoitettu: 26.1.2
Tuettujen versioiden vaihteluväli: 1.18.x – 26.1.2
Very Many Players on Fabric-mod, joka parantaa Minecraft-palvelimen suorituskykyä, kun pelaajia on samaan aikaan paljon paikalla. Tekijä on koonnut saman projektin alle sarjan kohdennettuja optimointeja vanilla-koodiin: nopeampi entiteettien haku säteeltä, asynkroninen alueen lataus sisäänkirjautuessa ja muita asioita, joita suurten palvelimien ylläpitäjät yleensä joutuvat itse säätämään keskenään. Pelin toiminta ei tämän myötä muutu — mod ei koske mekaniikkoihin, se vain nopeuttaa taustaprosesseja.
Mitä mod tekee palvelimella
Perustana ovat uudelleenkirjoitetut palvelinkoodin "kuumat" kohdat. Sen sijaan, että käytäisiin läpi kaikki maailman entiteetit lähimpien etsimiseksi, mod pitää yllä spatiaalisia indeksejä ja tekee haun nopeasti ja ennustettavasti. Samalle periaatteelle rakentuvat pelaajien haku säteeltä pakettien lähettämistä varten, seurantajärjestelmät (trackerit) ja luonnollisen kutunnan tarkistukset. Pienellä palvelimella ero ei näy. Kun pelaajia on 100+ hajallaan kartalla, jokainen tällaisten tarkistusten tick maksaa paljon — ja juuri siellä modin vaikutus näkyy.
Chunkkien ja verkon käsittely
Oma chunkkien lähetysjärjestelmä on modin toinen suuri osa. Chunkit jonottuvat prioriteetin mukaan (lähempänä pelaajaa olevat ensin) ja niitä voidaan lähettää nopeusrajoituksella. Tämä näkyy erityisesti uusien pelaajien liittyessä: sen sijaan, että sata chunkkia "ammuttaisiin" kerralla ja verkko tukkeutuisi, palvelin lähettää ne tasaisena virtana.
Erillinen ominaisuus on yksilöllinen piirtoetäisyys verkkopakettien tasolla. Jokainen pelaaja voi saada oman määränsä chunkkeja ympärilleen ilman, että palvelimen yleisasetusta muutetaan.
Bottisuoja
Yhteyksien käsittelyn verkkosilmukat on jaettu ryhmiin: kättelyn (handshake) ja kirjautumisen vaiheet käsitellään erikseen pelitilasta. Jos bottiaalto yrittää liittyä palvelimelle massana, se kuormittaa vain omaa silmukkaansa, eivätkä jo yhteydessä olevat pelaajat huomaa viivettä.
Asetukset
Tiedosto — config/vmp.properties. Luodaan automaattisesti palvelimen ensimmäisen käynnistyksen jälkeen modin kanssa. Muoto on tavallinen Java .properties, jota voi muokata millä tahansa tekstieditorilla. Muutokset otetaan käyttöön palvelimen uudelleenkäynnistyksen yhteydessä.
Parametrit
Parametri | Mitä se tekee |
| Optimoidun entiteettitrackerin pääkytkin. |
| Edellisen apulippu. |
| Pelaajan sisäänkirjautumisen aloituschunkkien lataus omassa säikeessä. |
| Sama osalle komennoista (esim. teleportaatiolle). Oletuksena pois päältä yhteensopivuusriskien takia. |
| Pelaajien portaalilaskenta viedään omaan säikeeseen. |
| Ottaa käyttöön Log4j2:n AsyncAppenderin palvelinlokeille. |
| Jakaa verkkosilmukat yhteyden eri tiloille (handshake/login/play). |
| Rajoittaa chunkkien määrää, jonka palvelin lähettää yhdelle pelaajalle sekunnissa. -1 — ei rajoitusta; mikä tahansa positiivinen kokonaisluku — yläraja chunkkeja sekunnissa |
| Tulostaa konsoliin viestejä chunkkien asynkronisesta latauksesta. |
| Tulostaa konsoliin chunk-seurantajärjestelmän viestejä (diagnostisia). |
Yhteenveto
Very Many Players pitää TPS:n vakaana palvelimilla, joilla on kymmeniä-satoja samanaikaisia pelaajia, muuttamatta pelin mekaniikkaa. Hyöty syntyy pienten optimointien summasta — nopeampi entiteettien haku, raskaiden operaatioiden siirto pois päätickistä, chunkkien virtamainen lähetys. VMP on hyödyllisin projekteissa, joissa on jatkuvasti suuri pelaajamäärä: SMP-palvelimet, joissa 50+ paikkaa, minipeliverkostot, julkiset anarkiapalvelimet.
Asennus
Tyypillinen asennus vie noin 5 minuuttia. Kulku on sama; vain Loader ja sopiva build vaihtuvat.
- 1Install a mod loader (Forge, Fabric or NeoForge) that matches your Minecraft version.
- 2Download the mod file (.jar) built for that same version.
- 3Place the .jar into your .minecraft/mods folder.
- 4Launch Minecraft with the modded profile and check the mod loads in-game.











