宇宙戦争

ソースコード https://github.com/SorataBaka/galactic-war


概要

宇宙である戦艦は地球を、敵が投げた流星から防ぐというゲームである。このゲームはオリジナルとは言えないと思いますが、アタリ株式会社のスペースインベーダーとアタリ株式会社のブレイクアウトというゲームの合同を作ります。このゲームでは、プレイヤーが戦艦をコントロールして、上野方面から戦艦向きに流星というオブジェクトが飛びます。地球を防ぐために、その流星を崩しなければいけない、というゲームである。


スクリーンショット

Game screenshot Game screenshot Game screenshot Game screenshot Game screenshot Game screenshot Game screenshot Game screenshot

インストール

ゲームのソースコードはGitHubでホストされています。 このガイドは Linux 向けに書かれています。 Windowsの場合は、ここからソースコードをダウンロードしてください。

実行ファイルをインストールする

1. ここから実行可能ファイルをダウンロードする

2. 次のコマンドで、ファイルを実行する。

> ./glwar

ソースからビルドする

1. 以下を使用して依存関係をインストールします。

> sudo apt update

> sudo apt install build-essential

> sudo apt-get install libncurses5-dev libncursesw5-dev

2. ここから実行可能ファイルをダウンロードする。または、以下のようにダウンロードする。

> wget https://github.com/SorataBaka/galactic-war/archive/refs/tags/v1.0.1.tar.gz

3. tar ファイルからソースコードを抽出します。

> tar xvzf ./v1.0.1.tar.gz

4. ソースコードからコンパイルする

> cd ./galactic-war-1.0.1

> make

5. 実行可能ファイルを実行する。

> ./glwar


操作方法

キー 説明
[A] 船を左に移動
[D] 船を右に移動
[Space] ミサイルを1発発射する
[X] 爆弾を爆発させる
[C] 広範囲にわたるレーザーを発射する
全キーが変更可能

開発履歴

v1.0.1
2024/01/31
リリースノート
ソースコード
  1. マイナーなバグ修正
v1.0.0
2024/01/31
リリースノート
ソースコード
最初に完成したリリース
  1. レーザーと爆発というスキルが出来ている。
  2. 決定画面をつくった。
  3. ソースコードをきれいにされた
v0.0.4
2024/01/29
リリースノート
ソースコード
  1. リーダーボードを表示できる。
  2. ゲームが終わったら、名前を入力出来て、リーダーボードに印刷する。
  3. 流星のランダム的に発生パラメータを変更させた。
v0.0.3
2024/01/29
リリースノート
ソースコード
  1. メインスクリーンとロゴを表示できる。
  2. ゲームが始まる前に案内スクリーンをつくった。
  3. ゲームが修了の時、スコアを表示できる。
  4. バックグラウンドに星をランダム的に表示できる。
  5. 流星とミサイルがぶつけた時に、ゲームがエラーの問題が直しました。
v0.0.2
2024/01/23
リリースノート
ソースコード
  1. Epoch時間に基づいて、ミサイルと流星の移動を管理する。
  2. ソースコードをきれいにされた。
v0.0.1
2024/01/22
リリースノート
ソースコード
  1. 最初に動作するプロトタイプ
  2. 戦艦移動できる
  3. 戦艦がミサイルを発生できる
  4. 戦艦がAとDキーで左右の移動ができる

開発計画

  1. ✅ あるデータを元にして、プレイヤーの戦艦を表示する方を作る。
  2. ✅ プレイヤーの入力から、データである立場とか、状態などを変換する方を作る。
  3. ✅ 移動ができるあと、戦艦がミサイルを投げるするかたを作る。
  4. ✅ 敵の流星はランダム的に発生する方を作る。
  5. ✅ ミサイルと流星がぶつけたときに、ロジックを作る。
  6. ✅ プレイヤーが失敗するときに、流星がさせられた損害というロジックを作る。
  7. ✅ ゲームおしまい画面。
  8. ✅ ホーム画面を作る。
  9. ✅ 決定を変更画面を作る。
  10. オプショナル

  11. ✅ リーダーボードをファイルから読んだり、ファイルに書いたりすることをできる。
  12. ✅ 爆発とか、レーザーとかをつくる。