Arduino Mini ボスバトルゲーム:レトロ風LCDゲームプロジェクト
必要な部品と材料
| 部品 | 数量 | 備考 |
|---|---|---|
| Arduino UNO | 1 | |
| 16×2 キャラクタLCD(HD44780互換) | 1 | ピンヘッダー直付けタイプ推奨 |
使用ソフトウェア
- Arduino IDE
プロジェクト概要
16×2 LCDで遊ぶターン制RPG風ボスバトルゲーム。プレイヤーは勇者、敵はデーモン。アナログ入力(A0)に接続した抵抗分圧ボタン(または複数ボタン)でコマンド選択。レトロゲーム(初代ポケモン、マリオ等)へのオマージュ。
ゲームルール
- プレイヤーHP:10、敵HP:10
- ターン制:プレイヤー攻撃 → 敵攻撃 → ステータス表示のサイクル
- 先にHPが0になった方が敗北
プレイヤーのコマンド(ボタンのアナログ値で判定)
| アナログ値範囲 | コマンド | 効果 |
|---|---|---|
| 0〜50 | イシンの剣 | ダメージ2 |
| 50〜150 | カナスの杖 | ダメージ1+攻撃力+1(永続) |
| 150〜300 | トリーズの呪文 | ダメージ0+攻撃力+2(永続) |
| 300〜500 | メセウスの薬 | ダメージ0+HP+2 |
| 500〜750 | 決定/次へ | 画面遷移、敵ターンへ |
敵の行動(ランダム)
| 乱数 | 攻撃名 | 効果 |
|---|---|---|
| 1 | ボーンスピア | ダメージ2 |
| 2 | 呪われた剣 | ダメージ1+敵攻撃力+1 |
| 3 | 呪われた呪文 | ダメージ3+敵攻撃力-2 |
| 4 | スカルリチュアル | ダメージ0+敵攻撃力+2 |
画面構成(screen変数で管理)
- Screen 0:ターン数表示
- Screen 1:コマンド選択・実行表示
- Screen 2:敵の攻撃表示・ダメージ計算
- Screen 3:プレイヤーHP表示
- Screen 4:敵HP表示
Screen 4の後、Screen 0に戻りターンインクリメント。
ソースコード
Arduinoスケッチが2バージョン提供されています(コメント量の違いのみ)。LiquidCrystalライブラリ使用。主な変数:turn, screen, health, ehealth, attackdamage, stats, enemyattack。アナログ入力でボタン判定、random()で敵行動決定。
回路図
LCDをArduinoのピン(8,9,4,5,6,7 = RS,EN,D4,D5,D6,D7)に直結。ボタンはA0に分圧回路で接続(図参照)。
製造プロセス
- ミニショベル操作マスター:包括的ガイド
- ミニショベル安全操作:専門家による確実なガイドライン
- 専門家ガイド:ミニショベルを現場へ安全に輸送する方法
- EMAR Mini:Raspberry Pi 4搭載のコンパクト緊急支援オープンソースロボット
- プロジェクション溶接:エンボスメント技術をマスターする
- ミニVMCマシン解説:小規模プロジェクト向けコンパクトCNCフライス盤
- ミニドリルマシン:精密穴あけ・締付け用コンパクト電動工具
- ミニCNC旋盤の理解:機能、特長、メリット
- ミニ潜水ポンプの仕組みと用途:家庭用からアクアリウムまで
- ミニメタル切断バンドソーの特徴と用途を理解する
- ミニクレーン必須ガイド:タイプ・用途・選定ヒント