このリポジトリは、同人誌「RPGOS NPC独自アセンブリプログラミング」で紹介されているサンプルコードを収録しています。
NPCプログラミング環境は、「RPGOS」上のNPCをアセンブリ言語のような独自言語でプログラミングできる環境です。
ブラウザ上で以下のURLからアクセスできます: https://plicy.net/GamePlay/209620
または、PLiCyサイト内で「NPCプログラミング環境」で検索してください。
├── docs/ # ドキュメント
│ └── action_set_reference.md # アクションリファレンス(全アクションの詳細仕様)
├── ch01/ # 第1章のサンプルコード
│ ├── prog_step_halt.act.txt # 一歩進んで停止するプログラム
│ ├── prog_turn_step.act.txt # 右旋回してから一歩進むプログラム
│ └── prog_square.act.txt # 四角形を描くように移動するプログラム
├── ch02/ # 第2章のサンプルコード
│ ├── write_syscall_complete.act.txt # Writeシステムコール(完成版)
│ └── write_syscall_macro.act.txt # Writeシステムコール(マクロ版)
├── ch03/ # 第3章のサンプルコード
│ ├── read_syscall_wo_macro.act.txt # Readシステムコール(マクロなし版)
│ └── echoback_program.act.txt # エコーバックプログラム
└── compiler/ # コンパイラツール
├── README.md # コンパイラの説明
├── c_to_npc.sh # C言語からNPCアセンブリへのコンパイラ
├── test_echoback.c # エコーバックテスト用Cコード
├── test_hello.c # Hello World テスト用Cコード
└── test_puts.c # puts関数テスト用Cコード
- 拡張子は
.act.txtを使用しています - これは「アクション」を記述したテキストファイルであることを示しています
- 一般的なテキストエディタで開いて編集できます
- 上記URLのNPCプログラミング環境にアクセス
- 右側の「ユーザーランドNPC アクションプラン設定」フォームにサンプルコードをコピー&ペースト
- 「実行」ボタンを押してNPCの動作を確認
NPCプログラミング環境では、以下のような基本アクションが使用できます:
STP: 一歩前進HLT: 停止TUL: 左旋回TUR: 右旋回SWA: 作業領域Aに値を設定SYC: システムコール実行
全アクションの詳細については、docs/action_set_reference.md をご覧ください。