GithubHelp home page GithubHelp logo

tanacchi / rogue_game Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 0.0 697 KB

The Roguelike Game

Home Page: https://gitpitch.com/tanacchi/tanacchi.gitpitch?p=rogue_game#/

License: MIT License

CMake 4.54% C++ 95.46%
cpp roguelike-game roguelike-dungeons map-generation rogue-game roguelike roguelike-rpg-game

rogue_game's Introduction

rogue_game

Build Status

version 0.6.1 in development.

logo

Wikipedia

Releases(リリース)

Latest(最新版)
Release List(リリース一覧)

How to build(ビルド方法)

$ mkdir build ; cd build ;cmake .. ;make ;cd -

How to play(遊び方)

$ ./rogue_game

Dungeon mode(ダンジョンモード)

Key Action
(Arrows(矢印キー)) Move your character(キャラクター移動)
Space(スペース) Open inventory(アイテム選択)

Inventory mode(アイテム選択モード)

Key Action
(Arrows(矢印キー)) Move cursor(カーソル移動)
Enter Decide item(アイテム決定)
Space(スペース) Exit inventory mode(アイテム選択モードを出る)
BackSpace Exit inventory mode(アイテム選択モードを出る)

Dependencies(依存パッケージ)

  • ncurses

    To install
    $ sudo apt install libncurses5-dev

  • libboost 1.71

    To install
    $ sudo apt install libboost-all-dev

rogue_game's People

Contributors

tanacchi avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

rogue_game's Issues

Menu mode structure

メニュー内容

  • 攻撃
    • 通常攻撃
    • 奥義
      • 回転斬り
      • その他
  • アイテム
    • 回復
    • 装備
    • その他
  • (セーブ)
  • (設定)
    • 言語
    • オートセーブ
    • 難易度
    • その他
  • 終了

Layer of map elements.

<●> <●>

=========== Character ==================

  • Player
  • Monster

=========== Items =====================

  • gold
  • food
  • scroll

=========== Dungeon ==================

  • horizontal_wall
  • vertical_wall
  • path
  • floor
  • trap
  • stairs
  • none

Draft of GitPitch slide

目次

  1. 自己紹介
  2. rogue_game とは
  3. 動機
  4. コンセプト
  5. 開発状況
  6. 進捗
  7. 今後の展望
  8. さいごに

自己紹介

  • kyutech B3
  • CIR-KIT ロボットを作ってつくチャに出てたよ
  • C++ & ROS & Python 初心者
  • 最近やってること
    • 機械学習のお勉強
    • 個別指導塾の報告書システム制作
  • Twitter & Github アカウント

rogue_game とは

Rogue Like Game

動機

ロボット飽きてきたわ
何かしら規模の大きなシステムを作りたい

コンセプト

元祖のレトロ感 + ラミィの親しみやすさ + オジリナリティ

開発状況

To Do とか

進捗

  • マップデータ読み込み
  • プレイヤーの操作
  • アイテムの取得&使用
  • 1748 lines
  • 512 commits

今後の展望

  • モンスター(敵)を実装
  • マップの自動生成
  • より美しく、拡張しやすい実装に(隠し通路・特殊攻撃)

さいごに

ゲーム制作でコーディングスキル
GitPitch ええよ

Draft of development philosophy

開発目標

  • C++ の言語知識の習得(言語機能、STL)
  • オブジェクト指向に則ったシステムの構築技術の獲得
  • コーディング・デバッグ技術の向上
  • 以下を満足する品質の高いコードおよびゲームの作成
    • 可読性 (コードの読みやすさ)
    • 保守性 (デバッグのしやすさ等)
    • 拡張性 (アイテムやキャラクター、その他機能の追加の簡易さ)
    • 操作性 (簡単キーボード入力)
    • 整合性 (マップの生成など)
    • 効率性 (処理速度, リソース管理)
    • 中毒性 (飽きずに利用してもらえる)

Action handler specification

Item クラスに使用時の挙動を記述するのは不可能なので
Player, Enemy, Map の全てを操作する権限を持つ
クラスを作ろうかと思う.

そのうち Planer, Enemy に特殊攻撃を実装すると予想されるので
動作主がアイテムとは限らないことに留意する必要がある.

Action クラスを媒介として
ActionHandler に登録する形にするか

Release plan

ver_1.*

  • テキストファイルからマップを生成
  • アイテム(金塊と回復のみ)
  • エネミーは移動(ランダム)、攻撃のみ
  • プレイヤーは移動、攻撃、固定HP回復が可能
  • スコアランキングを備える

ver_2.*

  • マップ作成エディタでマップの作成・詳細設定
  • プレイヤーに経験値・レベルアップ機能を追加
  • エネミーに追尾機能を追加
  • アイテムのバリエーションは公式のものと同様
  • セーブ・ロードが可能
  • C++17 で記述

ver_3.*

  • マップの自動生成
  • 色付きマップ
  • エネミーに特殊攻撃を追加
  • アイテムのバリエーションは「ラミィの大冒険」と同等
  • 各種操作・表示設定が可能
  • パッシブスキル
  • 主人公のパラメータ設定

ver_4.*

  • イベント処理(ハンドラ追加)
  • フレームワーク化

ver_5.*

  • GUI 化
  • LISP 処理系実装(内部コマンド)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.