Skip to content

bonsai/cli-fps-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cli-fps

build DL pages

ターミナルで動くミニFPS。高さマップ式レイキャスターで、壁・ブロック・階段を描画する。 階段(0.25刻みの段差)を登って高さ1.0の高台に上がれる。レンダリングは「ブロック塗り」と「ライトワイヤーフレーム」の2スタイル切替。

実行

go run .        # または go build && ./cli-fps

Windows Terminal / UTF-8対応ターミナルで実行すること(生のstdinを使うため、パイプ越しは不可)。

操作

キー 動作
W / S / ↑ / ↓ 前進 / 後退
A / D 左右ストレイフ
← / → 旋回
SPACE 射撃(敵は2発で倒れる)
V ブロック ⇔ ワイヤーフレーム切替
M ミニマップ表示切替
R リスタート(ゲームオーバー/勝利時)
Q / Ctrl+C 終了

ルール

  • 赤い敵を全滅させれば勝ち。接近されると殴られる(HP 0でゲームオーバー)。
  • 黄色いブロックが階段と高台。段差0.25ずつなら登れる(一気に高い壁は登れない)。
  • 高台の上にいる間、地上の敵の攻撃は届かない。HUDの ALT が現在の足場の高さ。

デバッグ

go run . -frame                      # 1フレームだけ描画して終了
go run . -frame -x 11.5 -y 10.5 -a 0 -wire   # 視点・スタイル指定

マップ凡例 (main.go の rawMap)

  • # 壁 (高さ2.6) / . 床 / 1-6 ブロック (n×0.25)
  • P プレイヤー初期位置 / E 地上の敵 / F 高台(1.0)上の敵

About

Terminal FPS in Go - heightmap raycaster with climbable stairs, block/wireframe rendering

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages