GNU/Linux >> Tutoriales Linux >  >> Linux

Construyendo 0verkill en el subsistema de Windows 10 para Linux:juego de combate a muerte con arte ASCII en 2D

Soy un gran admirador del subsistema de Windows para Linux. Es Linux real que ejecuta binarios ELF en modo de usuario real, pero todo está en Windows 10. No se ejecuta en una máquina virtual. Hablo sobre esto y algunas de las cosas que debe tener en cuenta al compartir archivos entre sistemas de archivos en este video de YouTube.

¿QUÉ ES TODO ESTO DE LINUX EN WINDOWS? Aquí hay preguntas frecuentes sobre el subsistema Bash/Windows para Linux/Ubuntu en Windows/Snowball in Hell y algunas notas detalladas de la versión. Sí, es real, y es espectacular. ¿No puedes leer tanto texto? Aquí hay un video que hice en Ubuntu en Windows 10.

Ahora puede instalar no solo Ubuntu desde la Tienda Windows (asegúrese de ejecutar esto primero desde un indicador de administrador de Windows PowerShell) - "Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux "

Configuré un entorno Linux muy brillante en Windows 10 con cosas encantadoras como tmux y Midnight Commander. El shell bash/Ubuntu/WSL comparte el mismo "host de consola" (conhost) que PowerShell y CMD.exe, por lo que a medida que el tipo agrega nueva compatibilidad con fuentes, colores, ANSI, etc., cada terminal obtiene esa nueva característica.

Quería ver hasta dónde llegaba esto. ¿Qué tan Linuxy es Linux en Windows? ¿Qué tan buena es la compatibilidad con ANSI/ASCII en la consola en Windows 10? Claramente, la única forma real de verificar esto sería intentar construir 0verkill. 0verkill es un juego tipo duelo a muerte en 2D cliente-servidor en arte ASCII. Tiene cliente y servidor y muchas características interesantes. Además, construirlo ejercitaría bastante bien el sistema. También tiene casi 20 años, lo cual es divertido.

CONSEJO PROFESIONAL: ¿Sabía que puede cambiar fácilmente los colores de la línea de comandos de forma global con la nueva ColorTool de código abierto y gratuita? Puede cambiar fácilmente a esquemas solarizados o incluso daltónicos para la deuteranopía.

Hay una bifurcación del código 0verkill en https://github.com/hackndev/0verkill, así que comencé allí. Vi que había un script ./rebuild que usa aclocal, autoconf, configure y make, así que necesitaba apt en algunas cosas.

sudo apt-get install build-essential autotools-dev automake
sudo apt-get install libx11-dev
sudo apt-get install libxpm-dev

Luego lo construí con ./rebuild y recibí MUCHAS advertencias. Parece que este código bastante antiguo hace algunas cosas (ahora, en el mundo moderno) cuestionables con fprintf. Si bien puedo ignorar las advertencias, decidí agregar -Wno-format-security a CFLAGS en Makefile.in para centrarme en cualquier error mayor que pueda encontrar.

Luego reconstruyo nuevamente y recibo algunas advertencias, pero nada importante. Genial.

Ejecuto el servidor localmente con ./server. Esto le permite conectar varios clientes, aunque solo me conectaré localmente, es bueno que la red funcione.

$ ./server
11. 1.2018 14:01:42  Running 0verkill server version 0.16
11. 1.2018 14:01:42  Initialization.
11. 1.2018 14:01:42  Loading sprites.
11. 1.2018 14:01:42  Loading level "level1"....
11. 1.2018 14:01:42  Loading level graphics.
11. 1.2018 14:01:42  Loading level map.
11. 1.2018 14:01:42  Loading level objects.
11. 1.2018 14:01:42  Initializing socket.
11. 1.2018 14:01:42  Installing signal handlers.
11. 1.2018 14:01:42  Game started.
11. 1.2018 14:01:42  Sleep

A continuación, ejecute el cliente en otra ventana de la consola bash/Ubuntu (o en un panel tmux) con ./0verkill.

Impresionante. Funciona muy bien, escala con el tamaño de la ventana, ASCII y el color se ve muy bien.

Ahora solo necesito encontrar a alguien que juegue conmigo...

Patrocinador: Obtenga el último JetBrains Rider para depurar código .NET de terceros, Smart Step Into, más mejoras del depurador, C# Interactive, nuevo asistente de proyectos y formato de código en columnas.


Linux
  1. 4 herramientas para construir sistemas Linux embebidos

  2. Explicación del subsistema de Windows para Linux, WSL y WSL2

  3. 10 RAZONES PARA CAMBIAR WINDOWS 11 A LINUX GRATIS

  4. Linux vs Windows:qué sistema operativo es mejor para juegos de PC

  5. Kali en el subsistema de Windows para Linux

Cómo instalar el subsistema de Windows para Linux

La guía definitiva del subsistema de Windows para Linux (Windows WSL)

Los 15 mejores emuladores de Windows para entusiastas de Linux

Los 15 mejores emuladores de Linux para sistemas Windows

Los 20 mejores juegos ASCII en el sistema Linux

Cómo instalar y configurar el subsistema de Windows para Linux