Crear y configurar un servidor de Minecraft

Crear y configurar un servidor de Minecraft

Minecraft es uno de los juegos en línea más populares en la actualidad. En menos de tres años (el primer lanzamiento oficial tuvo lugar en el otoño de 2011), ha ganado millones de fans en todo el mundo.

Los desarrolladores de juegos se centran deliberadamente en los mejores ejemplos de hace veinte años, cuando muchos juegos según los estándares actuales eran primitivos en términos de gráficos e imperfectos en términos de usabilidad, pero al mismo tiempo eran realmente emocionantes.

Como todos los juegos sandbox, Minecraft ofrece al usuario grandes oportunidades para la creatividad; este, de hecho, es el principal secreto de su popularidad.

La organización de los servidores para jugar en modo multijugador la llevan a cabo los propios jugadores y sus comunidades. Hoy en día, decenas de miles de servidores de juegos operan en Internet (consulte, por ejemplo, la lista aquí).

Hay muchos fanáticos de este juego entre nuestros clientes y alquilan equipos para proyectos de juegos en nuestros centros de datos. En este artículo hablaremos sobre los puntos técnicos a los que debe prestar atención al elegir un servidor para
Minecraft.

Elige una plataforma

El juego Minecraft incluye los siguientes elementos arquitectónicos:

  1. servidor: un programa con el que los jugadores interactúan entre sí a través de una red;
  2. cliente: un programa para conectarse al servidor, instalado en la computadora del jugador;
  3. complementos: adiciones al servidor que agregan nuevas funciones o amplían las antiguas;
  4. mods: adiciones al mundo del juego (nuevos bloques, elementos, funciones).

Existen muchas plataformas de servidores para Minecraft. Los más comunes y populares son Vanilla y Bukkit.

Vainilla Esta es la plataforma oficial de los desarrolladores del juego. Distribuido tanto en versión gráfica como de consola. Una nueva versión de Vanilla siempre sale al mismo tiempo que una nueva versión de Minecraft.

La desventaja de Vanilla es su excesivo consumo de memoria (aproximadamente 50 MB por reproductor). Otro inconveniente importante es la falta de complementos.

bukkit fue creado por un grupo de entusiastas que intentaron mejorar el servidor oficial de Minecraft. El intento resultó bastante exitoso: en términos de funcionalidad, Bukkit es mucho más amplio que Vanilla, principalmente debido a la compatibilidad con varias modificaciones y complementos. Al mismo tiempo, consume menos memoria por reproductor: entre 5 y 10 MB.

Las desventajas de Bukkit son que consume demasiada RAM cuando se inicia. Además, cuanto más tiempo esté funcionando el servidor, más memoria necesitará (incluso si hay pocos jugadores). Al elegir Bukkit como servidor, tenga en cuenta que sus nuevas versiones, por regla general, contienen errores; La versión estable suele aparecer entre 2 y 3 semanas después del lanzamiento de la versión oficial de Minecraft.

Además, otras plataformas han ganado popularidad recientemente (por ejemplo, Spout, MCPC y MCPC +), pero se diferencian en una compatibilidad limitada con Vanilla y Bukkit y un soporte muy limitado para mods (por ejemplo, solo puedes escribir mods para Spout desde cero). ). Si se utilizan, sólo para experimentos.

Para organizar un servidor de juegos, recomendamos utilizar la plataforma Bukkit, por ser la más flexible; Además, debajo hay muchas modificaciones y complementos diferentes. El funcionamiento estable del servidor de Minecraft depende en gran medida de la elección correcta de la plataforma de hardware. Consideremos esta pregunta con más detalle.

Requisitos de hardware

Tanto el servidor como el cliente de Minecraft exigen mucho los recursos del sistema.
Al elegir una plataforma de hardware, debe tenerse en cuenta que un procesador multinúcleo no brindará grandes ventajas: el núcleo del servidor de Minecraft solo puede usar un hilo de cálculo. El segundo núcleo, sin embargo, será útil: algunos complementos se ejecutan en subprocesos separados y Java también consume muchos recursos...

Por lo tanto, para un servidor de Minecraft, es mejor elegir un procesador que tenga un mayor rendimiento de un solo núcleo. Se preferirá un procesador de doble núcleo más potente a un procesador multinúcleo menos potente. En foros especializados se recomienda utilizar procesadores con una velocidad de reloj de al menos 3 GHz.

Se requiere una gran cantidad de RAM para el funcionamiento normal del servidor de Minecraft. Bukkit ocupa aproximadamente 1 GB de RAM; Además, para cada jugador, como se mencionó anteriormente, se asignan de 5 a 10 MB. Los complementos y modificaciones también consumen bastante memoria. Por lo tanto, para un servidor con 30 - 50 jugadores, necesitará al menos 4 GB de RAM.

En Minecraft, mucho (por ejemplo, cargar los mismos complementos) depende de la velocidad del sistema de archivos. Por tanto, es preferible elegir un servidor con unidad SSD. Es poco probable que las unidades de husillo sean adecuadas debido a la baja velocidad de lectura aleatoria.

La velocidad de la conexión a Internet también es de gran importancia. Para un juego de 40-50 personas, un canal de 10 Mb/s es suficiente. Sin embargo, para aquellos que están planeando un proyecto Minecraft más grande, que incluye un sitio web, un foro y un mapa dinámico, es muy deseable tener un canal con mayor ancho de banda.

¿Qué configuración específica es mejor elegir? De configuraciones que ofrecemos Le recomendamos que preste atención a lo siguiente:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 rublos/mes;
  • Intel Core 2 Quad Q8300 2.5 GHz, 6 GB de RAM, 2×500 GB SATA, 3500 rublos/mes - utilizamos esta configuración para nuestro servidor de prueba de MineCraft, en el que puedes jugar ahora mismo (cómo hacerlo se describe a continuación);
  • Intel Core i3-2120 3.3 GHz, 8 GB de RAM, 2x500 GB SATA, 3500 rublos/mes

Estas configuraciones son bastante adecuadas para crear un servidor de Minecraft para 30-40 jugadores. Alguna desventaja es la falta de unidades SSD, pero le damos otra ventaja importante: un canal garantizado de 100 Mb / s sin restricciones ni ratios. Al solicitar todas las configuraciones enumeradas anteriormente, no se cobra la tarifa de instalación.

También tenemos servidores más productivos, pero al mismo tiempo, por supuesto, más caros (al solicitar estas configuraciones, tampoco se cobra el pago de instalación):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 rublos/mes;
  • 2x IntelXeon 5504, 2GHz, 12GB de RAM, 3×1TB SATA, 9000 rublos/mes.

También recomendamos prestar atención al nuevo modelo económico con una unidad SSD basada en el procesador Intel Atom C2758: Intel Atom C2758 2.4 GHz, 16 GB de RAM, 2 × 240 GB SSD, 4000 rublos / mes, pago de instalación - 3000 rublos.

Instalación y ejecución del servidor Bukkit en Ubuntu OC

Antes de instalar el servidor, creemos un nuevo usuario y agréguelo al grupo sudo:

$ sudo useradd -m -s /bin/bash <nombre de usuario> $ sudo adduser <nombre de usuario> sudo

A continuación, establezca la contraseña con la que el usuario creado se conectará al servidor:

$ sudo contraseña <nombre de usuario>

Vuelva a conectarse al servidor con una cuenta nueva y continúe con la instalación.
Minecraft está escrito en Java, por lo que Java Runtime Environment debe estar instalado en el servidor.

Actualiza la lista de paquetes disponibles:

$ sudo apt-get update

Luego ejecute el siguiente comando:

$ sudo apt-get install default-jdk

Para instalar y ejecutar Bukkit, también es recomendable instalar un multiplexor de terminal, por ejemplo, screen (se pueden usar otros multiplexores de terminal; consulte nuestra visión de conjunto):

$ sudo apt-get installscreen

Será necesaria la pantalla si nos conectamos al servidor del juego vía ssh. Con él, será posible iniciar el servidor de Minecraft en una ventana de terminal separada, e incluso después de cerrar el cliente ssh, el servidor funcionará.

Creemos un directorio donde se almacenarán los archivos del servidor:

$ mkdir bukkit $ cd bukkit

Después de eso, vayamos a Página de descarga del sitio web oficial de Bukkit. En la parte superior derecha de la página, puede ver un enlace a la última versión del servidor recomendada para su uso (compilación recomendada). Recomendamos descargarlo:

$ wget <enlace a la versión recomendada>

Ahora ejecutemos la pantalla:

$ pantalla sudo

y ejecute el siguiente comando:

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

Expliquemos qué significan los parámetros utilizados:

  • Xmx1024M: cantidad máxima de RAM por servidor;
  • jar craftbukkit.jar: clave del servidor;
  • o falso: permite el acceso al servidor desde clientes pirateados.

El servidor se iniciará.
Puede detener el servidor escribiendo el comando de detención en la consola.

Instalar y configurar el servidor

La configuración del servidor se almacena en el archivo de configuración server.properties. Contiene las siguientes opciones:

  • configuración del generador: establece la plantilla para generar un mundo súper plano;
  • permitir-nether: determina la posibilidad de transición al Nether. De forma predeterminada, este parámetro está establecido en verdadero. Si se establece en falso, todos los jugadores del Nether serán trasladados a la normalidad;
  • nombre-nivel es el nombre de la carpeta del archivo del mapa que se utilizará durante el juego. La carpeta está ubicada en el mismo directorio que los archivos del servidor. Si no existe tal directorio, el servidor crea automáticamente un mundo nuevo y lo coloca en un directorio con el mismo nombre;
  • enable-query: cuando se establece en verdadero, activa el protocolo GameSpy4 para escuchar el servidor;
  • enable-flight: permite vuelos en el mundo de Minecraft. El valor predeterminado es falso (sin vuelos);
  • puerto-servidor: especifica el puerto que utilizará el servidor del juego. El puerto predeterminado para Minecraft es 25565. No recomendamos cambiar esta configuración;
  • tipo de nivel: define el tipo de mundo (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon: abre el acceso remoto a la consola del servidor. Está deshabilitado (falso) de forma predeterminada;
  • semilla de nivel: entrada para el generador de niveles. Para poder crear mundos aleatorios, este campo debe dejarse en blanco;
  • force-gamemode: configura a los jugadores que se conectan al servidor al modo de juego estándar;
  • server-ip: especifica la dirección IP que utilizarán los jugadores para conectarse al servidor;
  • max-build-height: especifica la altura máxima de un edificio en el servidor. Su valor debe ser múltiplo de 16 (64, 96, 256, etc.);
  • spawn-npcs: permite (si se establece en verdadero) o deshabilita (si se establece en falso) que los NPC se generen en las aldeas.
  • lista blanca: habilita y deshabilita el uso de una lista blanca de jugadores en el servidor. Si se establece en verdadero, el administrador podrá crear una lista blanca agregando apodos de jugadores manualmente. Si se establece en falso, cualquier usuario que conozca su dirección IP y su puerto podrá acceder al servidor;
  • spawn-animals: permite que mobs amistosos se generen automáticamente si se establece en verdadero)
  • habilitado para snooper: permite que el servidor envíe estadísticas y datos a los desarrolladores;
  • hardcore: activa el modo Hardcore en el servidor;
  • textura-pac es el archivo de textura que se utilizará cuando el reproductor se conecte al servidor. El valor de este parámetro es el nombre del archivo zip con texturas, que se almacena en el mismo directorio que el servidor;
  • modo en línea: permite verificar las cuentas premium de los usuarios que se conectan al servidor. Si este parámetro se establece en verdadero, sólo los titulares de cuentas premium podrán acceder al servidor. Si la verificación de la cuenta está deshabilitada (establecida en falsa), cualquier usuario (incluidos, por ejemplo, los jugadores que falsificaron un apodo) puede acceder al servidor, lo que crea riesgos de seguridad adicionales. Con la verificación desactivada, puedes jugar Minecraft a través de una red local, sin acceso a Internet;
  • pvp: permite o prohíbe que los jugadores luchen entre sí. Si este parámetro se establece en verdadero, los jugadores pueden destruirse entre sí. Si se establece en falso, los jugadores no pueden infligir daño directo entre sí;
  • dificultad: establece el nivel de dificultad del juego. Puede tomar valores de 0 (más fácil) a 3 (más difícil);
  • modo de juego: especifica qué modo de juego se configurará para los jugadores que se unan al servidor. Puede tomar los siguientes valores: 0 - Supervivencia, 1-Creativo, 2-Aventura;
  • player-idle-timeout: tiempo de inactividad (en minutos), después del cual los jugadores se desconectan automáticamente del servidor;
  • max-players: el número máximo permitido de jugadores en el servidor (de 0 a 999);
  • spawn-monsters: permite (si se establece en verdadero) el desove de mobs hostiles;
  • generar-estructuras: habilita (verdadero) / deshabilita (falso) la generación de estructuras (tesoros, fortalezas, aldeas);
  • distancia de visualización: ajusta el radio de los fragmentos actualizados para enviarlos al jugador; Puede tomar valores del 3 al 15.

Los registros del servidor de Minecraft se escriben en el archivo server.log. Se almacena en la misma carpeta que los archivos del servidor. El registro crece constantemente de tamaño y ocupa cada vez más espacio en el disco. Puede optimizar el funcionamiento del mecanismo de registro mediante la denominada rotación de registros. Para la rotación se utiliza una utilidad especial: logrotate. Limita el número de entradas en el registro a un límite determinado.

Puede configurar la rotación de registros para que todas las entradas se eliminen tan pronto como el archivo de registro alcance un tamaño determinado. También puede establecer un período después del cual todas las entradas antiguas se considerarán irrelevantes y se eliminarán.

La configuración de rotación principal se encuentra en el archivo /etc/logrotate.conf; Además, se pueden crear configuraciones individuales para cada aplicación. Los archivos con configuraciones individuales se almacenan en el directorio /etc/logrotate.d.

Cree un archivo de texto /etc/logrotate.d/craftbukkit e ingrese los siguientes parámetros en él:

/home/craftbukkit/server.log { rotar 2 comprimir semanalmente falta ok notifempty }

Consideremos sus significados con más detalle:

  • el parámetro de rotación especifica el número de rotaciones antes de eliminar el archivo;
  • semanal indica que la rotación se realizará semanalmente (se pueden configurar otros parámetros: mensual - mensual y diario - diario);
  • compress especifica que los registros archivados deben comprimirse (la opción es nocompress);
  • Missingok especifica que, en ausencia de un archivo de registro, el trabajo debe continuar y no se deben mostrar mensajes de error;
  • notifempty especifica no mover el archivo de registro si está vacío.

Puede leer más sobre la configuración de rotación de registros. aquí.

Consejos de optimización

Inmediatamente haga una reserva de que esta sección proporcionará consejos relacionados únicamente con la optimización del servidor del juego. Las cuestiones de ajuste y optimización del servidor en el que está instalado Minecraft son un tema aparte que está fuera del alcance de este artículo; Los lectores interesados ​​pueden encontrar fácilmente la información que necesitan en Internet.

Uno de los problemas más comunes que surgen al jugar Minecraft son los llamados retrasos, situaciones en las que el programa no responde a tiempo a las entradas del usuario. Pueden deberse a problemas tanto del lado del cliente como del lado del servidor. A continuación le daremos recomendaciones que ayudarán a reducir la probabilidad de problemas en el lado del servidor.

Supervise periódicamente el consumo de memoria del servidor y los complementos.

El consumo de memoria se puede rastrear mediante complementos administrativos especializados, por ejemplo, Medidor de retraso.

Manténgase atento a las actualizaciones de complementos

Como regla general, los desarrolladores de nuevos complementos se esfuerzan por reducir la carga con cada nueva versión.

Intente no utilizar muchos complementos con funciones similares

Los complementos grandes (por ejemplo, Essentials, AdminCMD, CommandBook) suelen incluir la funcionalidad de muchos complementos más pequeños. Por ejemplo, el mismo Essential contiene las funciones de los complementos iConomy, uHome, OpenInv, VanishNoPacket, Kit. Los complementos pequeños, cuya funcionalidad está completamente cubierta por la funcionalidad de uno grande, en la mayoría de los casos se pueden eliminar para no sobrecargar el servidor.

Limita el mapa y descárgalo tú mismo.

Si no limita el mapa, la carga en el servidor aumentará significativamente. Puedes limitar el mapa usando el complemento. Frontera Mundial. Para hacer esto, necesita ejecutar este complemento y ejecutar el comando /wb 200, y luego dibujar el mapa usando el comando /wb fill.

Dibujar, por supuesto, llevará mucho tiempo, pero es mejor hacerlo una vez, cerrando el servidor para trabajos técnicos. Si cada jugador dibuja el mapa, el servidor funcionará lentamente.

Reemplace los complementos pesados ​​​​por otros más rápidos y que consuman menos recursos

No todos los complementos de Minecraft pueden considerarse exitosos: a menudo contienen muchas funciones innecesarias e innecesarias y, a veces, también consumen mucha memoria. Es mejor reemplazar los complementos fallidos por otros alternativos (hay bastantes). Por ejemplo, el complemento LWC se puede reemplazar con Wgfix+MachineGuard y el complemento DynMap con Minecraft Overviewer.

Limpie siempre la gota o instale un complemento para eliminarla automáticamente

Las caídas en los juegos son elementos que desaparecen cuando una mafia muere o se destruyen algunos bloques. El almacenamiento y procesamiento de drop consumen muchos recursos del sistema.

Para que el servidor funcione más rápido, es recomendable eliminar el drop. La mejor manera de hacerlo es utilizar complementos especiales, por ejemplo, NoLagg o McClean.

No uses anti-trampas

En los servidores de juegos suelen instalarse los llamados anti-trampas, programas que bloquean los intentos de influir en el juego de forma deshonesta.

También existen anti-trampas para Minecraft. Cualquier anti-trampas es siempre una carga adicional en el servidor. Es preferible instalar protecciones para el lanzador (que, sin embargo, no ofrecen una garantía absoluta de seguridad y se rompen fácilmente, pero este es un tema para una discusión aparte) y para el cliente.

En lugar de una conclusión

Cualquier instrucción y recomendación es mucho más efectiva si está respaldada por ejemplos concretos. Según las instrucciones de instalación anteriores, creamos nuestro propio servidor MineCraft y pusimos algo interesante en el mapa.

Esto es lo que tenemos:

  • Servidor Bukkit: versión estable recomendada 1.6.4;
  • Complemento de estadísticas: para recopilar estadísticas sobre jugadores;
  • Complemento WorldBorder: para dibujar y limitar el mapa;
  • Complemento WorldGuard (+WorldEdit como dependencia): para proteger algunas áreas.

Invitamos a todos a jugar en él: para conectarse, agregue un nuevo servidor y especifique la dirección mncrft.slc.tl.

Estaremos encantados de que en los comentarios comparta su propia experiencia en la instalación, configuración y optimización de servidores MineCraft y nos diga qué modificaciones y complementos le interesan y por qué.

Buenas noticias: A partir del 1 de agosto, la tarifa de instalación para servidores dedicados de configuración fija se redujo en un 50%. Ahora el pago único de instalación es de solo 3000 rublos.

Los lectores que no puedan dejar comentarios aquí pueden unirse a nosotros en Blog.

Fuente: habr.com

Añadir un comentario