Oprettelse og opsætning af en Minecraft-server

Oprettelse og opsætning af en Minecraft-server

Minecraft er et af de mest populære onlinespil i dag. På mindre end tre år (den første officielle udgivelse fandt sted i efteråret 2011) har han fået millioner af fans over hele verden.

Spiludviklere fokuserer bevidst på de bedste eksempler for tyve år siden, hvor mange spil efter nutidens standarder var primitive med hensyn til grafik og uperfekte med hensyn til brugervenlighed, men samtidig var de virkelig spændende.

Som alle sandkassespil giver Minecraft brugeren store muligheder for kreativitet - dette er faktisk hovedhemmeligheden bag dets popularitet.

Organiseringen af ​​servere til at spille i multiplayer-tilstand udføres af spillerne selv og deres fællesskaber. I dag opererer titusindvis af spilservere på internettet (se f.eks. listen her).

Der er mange fans af dette spil blandt vores kunder, og de lejer udstyr til spilprojekter i vores datacentre. I denne artikel vil vi tale om, hvilke tekniske punkter du skal være opmærksom på, når du vælger en server til
Minecraft.

Valg af platform

Minecraft-spillet indeholder følgende arkitektoniske elementer:

  1. server - et program, hvormed spillere interagerer med hinanden over et netværk;
  2. klient - et program til at oprette forbindelse til serveren, installeret på afspillerens computer;
  3. plugins - tilføjelser til serveren, der tilføjer nye funktioner eller udvider gamle;
  4. mods - tilføjelser til spilverdenen (nye blokke, genstande, funktioner).

Der er mange serverplatforme til Minecraft. De mest almindelige og populære er Vanilla og Bukkit.

Vanilje Dette er den officielle platform fra udviklerne af spillet. Distribueret i både grafiske og konsolversioner. En ny version af Vanilla udkommer altid samtidig med en ny version af Minecraft.

Vanillas ulempe er dets overdrevne hukommelsesforbrug (ca. 50 MB pr. spiller). En anden væsentlig ulempe er manglen på plugins.

bukkit blev oprettet af en gruppe entusiaster, der forsøgte at forbedre den officielle Minecraft-server. Forsøget viste sig at være ret vellykket: Med hensyn til funktionalitet er Bukkit meget bredere end Vanilla - primært på grund af understøttelsen af ​​forskellige mods og plugins. Samtidig bruger den mindre hukommelse per spiller – omkring 5-10 MB.

Ulemperne ved Bukkit er, at den fylder for meget RAM, når den starter op. Derudover, jo længere serveren kører, jo mere hukommelse har den brug for (selvom der er få spillere). Når du vælger Bukkit som server, skal du huske på, at dens nye versioner som regel indeholder fejl; den stabile version vises normalt omkring 2-3 uger efter udgivelsen af ​​den officielle version af Minecraft.

Derudover har andre platforme for nylig vundet popularitet (for eksempel Spout, MCPC og MCPC+), men de adskiller sig i begrænset kompatibilitet med Vanilla og Bukkit og meget begrænset understøttelse af mods (f.eks. kan du kun skrive mods til Spout fra bunden ). Hvis de bruges, så kun til eksperimenter.

For at organisere en spilserver anbefaler vi at bruge Bukkit-platformen, da den er den mest fleksible; derudover er der under den mange forskellige mods og plugins. Den stabile drift af Minecraft-serveren afhænger i høj grad af det korrekte valg af hardwareplatformen. Lad os overveje dette spørgsmål mere detaljeret.

Hardwarekrav

Både serveren og Minecraft-klienten er meget krævende for systemressourcer.
Når du vælger en hardwareplatform, skal du huske på, at en multi-core-processor ikke vil give store fordele: Minecraft-serverkernen kan kun bruge én beregningstråd. Den anden kerne vil dog være nyttig: nogle plugins udføres i separate tråde, og Java bruger også mange ressourcer ...

Derfor er det bedre for en Minecraft-server at vælge en processor, der har højere single-core ydeevne. En mere kraftfuld dual-core processor vil blive foretrukket frem for en mindre kraftig multi-core processor. På specialiserede fora anbefales det at bruge processorer med en clockhastighed på mindst 3 GHz.

En stor mængde RAM er påkrævet for normal funktion af Minecraft-serveren. Bukkit fylder ca. 1 GB RAM; derudover tildeles hver spiller, som nævnt ovenfor, fra 5 til 10 MB. Plugins og mods bruger også ret meget hukommelse. For en server med 30 - 50 spillere skal du derfor have mindst 4 GB RAM.

I Minecraft afhænger meget (for eksempel indlæsning af de samme plugins) af filsystemets hastighed. Derfor er det at foretrække at vælge en server med et SSD-drev. Spindeldrev er usandsynligt egnede på grund af den lave tilfældige læsehastighed.

Internetforbindelsens hastighed er også af stor betydning. Til et spil på 40-50 personer er en 10 Mb/s kanal nok. Men for dem, der planlægger et større minecraft-projekt, inklusive et websted, et forum og et dynamisk kort, er det yderst ønskeligt at have en kanal med en højere båndbredde.

Hvilken specifik konfiguration er bedst at vælge? Fra konfigurationer, vi tilbyder Vi anbefaler, at du er opmærksom på følgende:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 rub/måned;
  • Intel Core 2 Quad Q8300 2.5 GHz, 6 GB RAM, 2×500 GB SATA, 3500 rub/måned - vi bruger denne konfiguration til vores MineCraft testserver, som du kan spille på lige nu (hvordan du gør dette er beskrevet nedenfor);
  • Intel Core i3-2120 3.3 GHz, 8 GB RAM, 2x500 GB SATA, 3500 rub/måned

Disse konfigurationer er ganske velegnede til at skabe en Minecraft-server til 30-40 spillere. Nogle ulemper er manglen på SSD-drev, men vi giver en anden vigtig fordel: en garanteret 100 Mb/s kanal uden nogen begrænsninger og forhold. Ved bestilling af alle de konfigurationer, der er anført ovenfor, opkræves installationsgebyret ikke.

Vi har også mere produktive, men samtidig selvfølgelig dyrere servere (ved bestilling af disse konfigurationer opkræves der heller ikke opsætningsbetaling):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 rub/måned;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3×1TB SATA, 9000 rub/måned.

Vi anbefaler også at være opmærksom på den nye budgetmodel med et SSD-drev baseret på Intel Atom C2758-processoren: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2 × 240 GB SSD, 4000 rubler / måned, installationsbetaling - 3000 rubler.

Installation og kørsel af Bukkit-serveren i Ubuntu OC

Før du installerer serveren, lad os oprette en ny bruger og tilføje den til sudo-gruppen:

$ sudo useradd -m -s /bin/bash <brugernavn> $ sudo adduser <brugernavn> sudo

Indstil derefter adgangskoden, under hvilken den oprettede bruger vil oprette forbindelse til serveren:

$ sudo passwd <brugernavn>

Genopret forbindelse til serveren under en ny konto, og fortsæt med installationen.
Minecraft er skrevet i Java, så Java Runtime Environment skal være installeret på serveren.

Opdater listen over tilgængelige pakker:

$ sudo apt-get opdatering

Kør derefter følgende kommando:

$ sudo apt-get install default-jdk

For at installere og køre Bukkit, er det også tilrådeligt at installere en terminal multiplexer - for eksempel en skærm (andre terminal multiplexere kan bruges - se vores oversigt):

$ sudo apt-get installscreen

Skærm vil være nødvendig, hvis vi opretter forbindelse til spilserveren via ssh. Med den vil det være muligt at starte Minecraft-serveren i et separat terminalvindue, og selv efter lukning af ssh-klienten vil serveren fungere.

Lad os oprette en mappe, hvor serverfilerne vil blive gemt:

$ mkdir bukkit $ cd bukkit

Efter det, lad os gå til Bukkit officielle hjemmeside download side. I den øverste højre del af siden kan du se et link til den seneste server build, der anbefales til brug (anbefalet build). Vi anbefaler at downloade det:

$ wget <link til anbefalet version>

Lad os nu køre skærmen:

$ sudo skærm

og kør følgende kommando:

$ java -Xmx1024M -jar craftbukkit.jar -o falsk

Lad os forklare, hvad de anvendte parametre betyder:

  • Xmx1024M - maksimal mængde RAM pr. server;
  • jar craftbukkit.jar - nøgle til serveren;
  • o falsk - giver adgang til serveren fra piratkopierede klienter.

Serveren starter.
Du kan stoppe serveren ved at skrive stop-kommandoen i konsollen.

Opsætning og konfiguration af serveren

Serverindstillingerne gemmes i server.properties-konfigurationsfilen. Den indeholder følgende muligheder:

  • generator-indstillinger - indstiller skabelonen til at generere en super flad verden;
  • tillade-nether - bestemmer muligheden for overgang til Nether. Som standard er denne parameter sat til sand. Hvis indstillet til false, så vil alle spillere fra Nether blive flyttet til det normale;
  • level-name er navnet på mappen med kortfilen, der vil blive brugt under spillet. Mappen er placeret i samme mappe som serverfilerne. Hvis der ikke er en sådan mappe, opretter serveren automatisk en ny verden og placerer den i en mappe med samme navn;
  • enable-query - når den er sat til sand, aktiverer GameSpy4-protokollen for at lytte til serveren;
  • allow-flight - Tillader flyvninger i Minecraft-verdenen. Standardværdien er falsk (ingen flyvninger);
  • server-port - angiver den port, der skal bruges af spilserveren. Standardporten for Minecraft er 25565. Vi anbefaler ikke at ændre denne indstilling;
  • niveau-type - definerer typen af ​​verden (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon - åbner fjernadgang til serverkonsollen. Den er deaktiveret (falsk) som standard;
  • niveau-seed - input til niveaugeneratoren. For at kunne skabe tilfældige verdener skal dette felt stå tomt;
  • force-gamemode - indstiller de spillere, der forbinder til serveren, til standard spiltilstand;
  • server-ip - angiver den IP-adresse, der vil blive brugt af spillere til at oprette forbindelse til serveren;
  • max-build-height - angiver den maksimale højde af en bygning på serveren. Dens værdi skal være et multiplum af 16 (64, 96, 256 osv.);
  • spawn-npcs - Tillader (hvis sat til sand) eller deaktiverer (hvis indstillet til falsk) NPC'er at spawne i landsbyer.
  • white-list - aktiverer og deaktiverer brugen af ​​en hvid liste over spillere på serveren. Hvis den er sat til sand, vil administratoren være i stand til at oprette en hvidliste ved at tilføje spillerkaldenavne til den manuelt. Hvis indstillet til falsk, kan enhver bruger, der kender sin IP-adresse og port, få adgang til serveren;
  • spawn-animals - Tillader venlige mobs at spawne automatisk, hvis de er sat til sand)
  • snooper-aktiveret - tillader serveren at sende statistik og data til udviklere;
  • hardcore - slår Hardcore-tilstanden til på serveren;
  • texture-pac er teksturfilen, der vil blive brugt, når afspilleren opretter forbindelse til serveren. Værdien af ​​denne parameter er navnet på zip-arkivet med teksturer, som er gemt i samme mappe som serveren;
  • online-tilstand - gør det muligt at kontrollere premium-konti for brugere, der forbinder til serveren. Hvis denne parameter er sat til sand, vil kun premium kontoindehavere kunne få adgang til serveren. Hvis kontobekræftelse er deaktiveret (indstillet til falsk), kan alle brugere (inklusive f.eks. spillere, der har forfalsket et kaldenavn) få adgang til serveren, hvilket skaber yderligere sikkerhedsrisici. Med verifikation deaktiveret kan du spille Minecraft over et lokalt netværk uden adgang til internettet;
  • pvp - tillader eller forbyder spillere at kæmpe mod hinanden. Hvis denne parameter er sat til sand, kan spillerne ødelægge hinanden. Hvis indstillet til falsk, kan spillere ikke give direkte skade på hinanden;
  • sværhedsgrad - indstiller spillets sværhedsgrad. Kan tage værdier fra 0 (nemmest) til 3 (sværeste);
  • gamemode - angiver, hvilken spiltilstand der vil blive indstillet for spillere, der tilslutter sig serveren. Kan tage følgende værdier: 0 - Overlevelse, 1-Kreativ, 2-Eventyr;
  • player-idle-timeout - inaktiv tid (i minutter), hvorefter spillere automatisk afbrydes fra serveren;
  • max-players - det maksimalt tilladte antal spillere på serveren (fra 0 til 999);
  • spawn-monsters - tillader (hvis indstillet til sand) gydning af fjendtlige hober;
  • generere-strukturer - muliggør (sand) / deaktiverer (falsk) generering af strukturer (skattekammer, fæstninger, landsbyer);
  • view-distance - justerer radius af opdaterede bidder, der skal sendes til afspilleren; kan tage værdier fra 3 til 15.

Minecraft-serverlogfiler skrives til server.log-filen. Det er gemt i samme mappe som serverfilerne. Loggen vokser konstant i størrelse og optager mere og mere diskplads. Du kan strømline driften af ​​loggemekanismen ved hjælp af den såkaldte logrotation. Til rotation bruges et særligt værktøj - logrotate. Det begrænser antallet af poster i loggen til en vis grænse.

Du kan indstille logrotation, så alle poster slettes, så snart logfilen når en vis størrelse. Du kan også indstille en periode, hvorefter alle gamle poster vil blive betragtet som irrelevante og slettet.

De vigtigste rotationsindstillinger er i filen /etc/logrotate.conf; derudover kan individuelle indstillinger oprettes for hver applikation. Filer med individuelle indstillinger gemmes i mappen /etc/logrotate.d.

Opret en tekstfil /etc/logrotate.d/craftbukkit og indtast følgende parametre i den:

/home/craftbukkit/server.log { roter 2 ugentlige komprimering missingok notifempty }

Lad os overveje deres betydning mere detaljeret:

  • rotationsparameteren angiver antallet af rotationer før sletning af filen;
  • ugentlig angiver, at rotationen vil blive udført ugentligt (andre parametre kan indstilles: månedlig - månedlig og daglig - daglig);
  • compress angiver, at de arkiverede logfiler skal komprimeres (muligheden er nocompress);
  • missingok specificerer, at i mangel af en logfil, skal arbejdet fortsætte, og der skal ikke vises nogen fejlmeddelelser;
  • notifempty angiver ikke at flytte logfilen, hvis den er tom.

Du kan læse mere om logrotationsindstillinger. her.

Optimeringstips

Tag med det samme forbehold for, at denne sektion kun vil give tip, der kun er relateret til optimering af spilserveren. Spørgsmålene om finjustering og optimering af serveren, som Minecraft er installeret på, er et separat emne, der ligger uden for denne artikels rammer; interesserede læsere kan nemt finde den information, de har brug for, på internettet.

Et af de mest almindelige problemer, der opstår, når man spiller Minecraft, er de såkaldte lags - situationer, hvor programmet ikke reagerer på brugerens input i tide. De kan være forårsaget af problemer både på klientsiden og på serversiden. Nedenfor vil vi give anbefalinger, der vil hjælpe med at reducere sandsynligheden for problemer på serversiden.

Overvåg regelmæssigt hukommelsesforbruget på serveren og plugins

Hukommelsesforbrug kan spores ved hjælp af specialiserede administrative plugins - f.eks. Lagmeter.

Hold øje med plugin-opdateringer

Som regel stræber udviklere af nye plugins med hver ny version på at reducere belastningen.

Prøv ikke at bruge mange plugins med lignende funktionalitet

Store plugins (f.eks. Essentials, AdminCMD, CommandBook) inkluderer meget ofte funktionaliteten fra mange mindre plugins. For eksempel indeholder det samme Essential funktionerne i iConomy, uHome, OpenInv, VanishNoPacket, Kit-plugins. Små plug-ins, hvis funktionalitet er fuldstændig dækket af funktionaliteten af ​​en stor, kan i de fleste tilfælde fjernes for ikke at overbelaste serveren.

Begræns kortet og download det selv

Hvis du ikke begrænser kortet, vil belastningen på serveren stige betydeligt. Du kan begrænse kortet ved hjælp af plugin Verdensgrænse. For at gøre dette skal du køre dette plugin og udføre /wb 200-kommandoen og derefter tegne kortet ved hjælp af /wb fill-kommandoen.

Tegning vil selvfølgelig tage meget tid, men det er bedre at gøre det én gang og lukke serveren for teknisk arbejde. Hvis hver spiller tegner kortet, vil serveren arbejde langsomt.

Udskift tunge plugins med hurtigere og mindre ressourcekrævende

Ikke alle Minecraft-plugins kan kaldes vellykkede: de indeholder ofte en masse unødvendige og unødvendige funktioner, og nogle gange bruger de også meget hukommelse. Mislykkede plugins erstattes bedst med alternative (der er en hel del af dem). For eksempel kan LWC-plugin'et erstattes med Wgfix+MachineGuard, og DynMap-plugin'et med Minecraft Overviewer.

Rens altid dråben eller installer et plugin for automatisk at fjerne dråben

Drops i spil er genstande, der falder ud, når en pøbel dør, eller nogle blokke bliver ødelagt. Lagring og behandling af drops optager mange systemressourcer.

For at få serveren til at køre hurtigere, er det tilrådeligt at slette drop. Dette gøres bedst ved hjælp af specielle plugins - for eksempel NoLagg eller McClean.

Brug ikke anti-cheats

Såkaldte anti-cheats er ofte installeret på spilservere – programmer, der blokerer for forsøg på at påvirke spillet på uærlige måder.

Der er også anti-cheats til Minecraft. Enhver anti-cheat er altid en ekstra belastning på serveren. Det er at foretrække at installere beskyttelser til løfteraketten (som dog ikke giver en absolut garanti for sikkerhed og let går i stykker - men dette er et emne for en separat diskussion) og for klienten.

I stedet for en konklusion

Alle instruktioner og anbefalinger er meget mere effektive, hvis de understøttes af specifikke eksempler. Baseret på installationsinstruktionerne ovenfor, skabte vi vores egen MineCraft-server og satte noget interessant på kortet.

Her er hvad vi fik:

  • Bukkit-server - stabil anbefalet version 1.6.4;
  • Statistik plugin - til at indsamle statistik om spillere;
  • Plugin WorldBorder - til at tegne og begrænse kortet;
  • WorldGuard plugin (+WorldEdit som en afhængighed) - for at beskytte nogle områder.

Vi inviterer alle til at spille på det: at oprette forbindelse, tilføje en ny server og angive adressen mncrft.slc.tl.

Vi vil blive glade, hvis du i kommentarerne deler din egen erfaring med at installere, konfigurere og optimere MineCraft-servere og fortælle os, hvilke mods og plugins du er interesseret i og hvorfor.

Fed nyhed: Fra 1. august er opsætningsgebyret for dedikerede servere med fast konfiguration reduceret med 50 %. Nu er engangsinstallationsbetalingen kun 3000 rubler.

Læsere, der ikke kan efterlade kommentarer her, er velkomne til at slutte sig til os på blog.

Kilde: www.habr.com

Tilføj en kommentar