GNU/Linux >> Linux の 問題 >  >> Linux

Linux 用 Windows 10 サブシステムでの 0verkill のビルド - 2D ASCII アート デスマッチ ゲーム

私は Windows Subsystem for Linux の大ファンです。実際のユーザー モード ELF バイナリを実行するのは実際の Linux ですが、すべて Windows 10 上にあります。仮想マシンでは実行されません。この YouTube ビデオでは、ファイル システム間でファイルを共有する際に注意する必要があることについて説明します。

<ブロック引用>

この LINUX on WINDOWS スタッフとは何ですか? これは、Bash/Windows Subsystem for Linux/Ubuntu on Windows/Snowball in Hell に関する FAQ と、いくつかの詳細なリリース ノートです。はい、それは本物です、そしてそれは壮観です。そんなに文字が読めない?これは、Windows 10 の Ubuntu で行ったビデオです。

Windows ストアから Ubuntu だけでなくインストールできるようになりました (最初に Windows PowerShell 管理プロンプトからこれを実行してください) - "Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux "

tmux や Midnight Commander などの素敵なものを使用して、Windows 10 に非常に光沢のある Linux 環境をセットアップしました。 bash/Ubuntu/WSL シェルは、PowerShell および CMD.exe と同じ「コンソール ホスト」(conhost) を共有するため、タイプがフォント、色、ANSI などの新しいサポートを追加すると、すべての端末がその新しい機能を取得します。

これがどこまで行くのか見たかった。 Linux on Windows はどの程度 Linuxy ですか? Windows 10 のコンソールでの ANSI/ASCII サポートはどの程度優れていますか?明らかに、これを確認する唯一の実際の方法は、0verkill をビルドすることです。 0verkill は、アスキー アートのクライアント サーバー 2D デスマッチのようなゲームです。 クライアントとサーバーの両方があり、多くのクールな機能があります。さらに、それを構築すると、システムがかなりうまく機能します。また、20 歳近くになるのも楽しいです。

<ブロック引用>

上級者向けのヒント: 新しい無料のオープン ソース ColorTool を使用して、コマンド プロンプトの色をグローバルに簡単に変更できることをご存知ですか?重度色覚のソラリゼーションまたは色盲スキームに簡単に切り替えることができます。

https://github.com/hackndev/0verkill に 0verkill コードのフォークがあるので、そこから始めました。 aclocal、autoconf、configure、および make を使用する ./rebuild スクリプトがあることを確認したので、いくつかのものを適用する必要がありました。

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

次に、./rebuild でビルドしたところ、大量の警告が表示されました。このかなり古いコードは、fprintf でいくつかの (現在、現代の世界では) 疑わしいことを行っているようです。警告は無視できますが、遭遇する可能性のある大きなエラーに集中するために、Makefile.in の CFLAGS に -Wno-format-security を追加することにしました。

その後、もう一度再構築すると、いくつかの警告が表示されますが、大きな問題はありません。いいね。

./server を使用してサーバーをローカルで実行します。これにより、複数のクライアントを接続できます。ここではローカルに接続するだけですが、ネットワークが機能していることは素晴らしいことです。

$ ./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

次に、./0verkill を使用して、別の bash/Ubuntu コンソール ウィンドウ (または tmux ペイン) でクライアントを実行します。

素晴らしい。うまく機能し、ウィンドウサイズに合わせてスケーリングし、ASCIIと色が見栄えがします。

あとは、一緒に遊んでくれる人を探すだけです...

スポンサー: サードパーティの .NET コードをデバッグするための最新の JetBrains Rider、Smart Step Into、デバッガーの改善、C# インタラクティブ、新しいプロジェクト ウィザード、および列のコードの書式設定を入手してください。


Linux
  1. 組み込みLinuxシステムを構築するための4つのツール

  2. WINDOWS11を無料でLinuxに変更する10の理由

  3. Wget エラー bash Linux 用 Windows サブシステム

  1. Linux用のWindowsサブシステムの説明、WSLおよびWSL2

  2. LinuxとWindows:どちらのOSがPCゲームに適しているか

  3. Linux 用 Windows サブシステムの Kali

  1. Linux の Windows サブシステムへの Oracle JDK のインストール

  2. Sublime Text から Windows Subsystem for Linux (WSL) を使用する

  3. Windows Subsystem for Linux での Windows 共有のマウント