SlideShare a Scribd company logo
1 of 30
Download to read offline
「火吹山の魔法使い」
を astah*で
佐々木IT粗物店代表[見習い]
ビジネスモデリングとの出会い
• 創研プランニング・・・現OTI?
• UMLの使い道を広げたいと
• OMGリチャード・ソーリー会長
• 質疑の際に鎌田さんが、依田さんを紹介
• 六本木ヒルズのエレベータ降り口で、待ち伏せ
• ビジネスモデリング研究会へ参加
• そして要求開発アライアンスへ
……しかし、私はすでにバックエンド要員
身の回りのことをWebシステムで
• モジモジくん https://mojimoji2.herokuapp.com/projects
• 個人翻訳業主さん用の生産管理支援
• お買い上げ ローカル・・・先頭画面をカレンダにして誕生日を表示など
• 化粧品訪販レディさんの、売上管理支援
• MovieLib http://movielib.herokuapp.com/works/
• 私物録画メディアの登録・照会
• あとでやる http://myprivatetodo.herokuapp.com/
• 緩~い、toDo
• にっかちゃん http://mynikka.herokuapp.com/
• 任意の日課項目を設定して、記録する。距離とか回数も残せる
• バーチャル学芸員 https://vircurater0.herokuapp.com/
• 仮想ギャラリー。写真展参加作品を収録して、来訪者にも開放
昔々・・・ゲーム、作りたかった
• PC98やMacintoshPlusの頃・・・やっとMSX2を購入
• ゲームのシナリオ探し・・・グインサーガ、雑誌タクティクスの付録など
• ゲームブック「火吹山の魔法使い」
• マルチストーリーが段落に分けられてシャッフルされている。
• サイコロを振りながら、進路や戦闘を進め、最終ボスを倒す
• 後期、サイコロを持っていなくても済むよう、ページヘッダにランダムな出目が
• 2DDのFDは720KB
• DOSやBASICが使う分を除くと、とてもシナリオ入らず、断念
• 今なら、Webシステムでできてしまう
• そのまま実装すると、捕まってしまう
• FightingFantasyエンジンを作って、シナリオは分離。
• テキトーなダミー物語を公開し
• 「火吹山」シナリオは、身内だけに㊙提供しようかと
ユースケース図
ドメイン分析
モンスターをカタログへ
FightingFantasyとは、どんな世界か
• 技術力点・体力点・運点
• キャラクタ生成
• 戦闘ルール
• 運試し
• 体当たり
• 食事を摂る
•技術原点 org_skill
サイコロ一個の出目+ 6≦12
•体力原点 org_strength
サイコロ二個の出目+12≦24
•運原点 org_luck
サイコロ一個の出目+ 6≦12
キャラクタ生成
• サイコロを二個の出目+キャラの現在技術点
=キャラクタのヒットポイント
• サイコロを二個の出目+怪物の技術点
=怪物のヒットポイント
• 大きい方が攻撃, 小さい方は防御
等しいときは相打ち
• 防御側は、体力点-2・・・・一律
• このときプレイヤーは運試しできる
• サイコロ二個の出目の合計Dと
• キャラの現在運点を比べて
• 現在運点≧Dなら吉、そうでないときは凶
• 攻撃側のときは、
• 吉なら重症を負わせ、敵の体力点は、さらに-2
• 凶だとかすり傷になり、敵の体力点は1しか減らない
• 防御側のとき
• 吉なら辛うじてかわして、自分の体力点は1しか減らない
• 凶ならまともに喰らい、体力点はさらに-1
戦闘ルール
• 運試しは
• 逃亡可能なとき、逃亡の成否などにも使えるが
• 運試しする都度
• 現在運点が-1されていく
• つまり運に頼ってばかりいると、運に見放されていく(^_-)
• 運点の回復は、
• 段落中に指示がある・・・・ラッキーな発見があったときなど
• ツキの薬を飲む
しかない
• 薬には、技の薬、力の薬、ツキの薬があるが、
技と力は、一服飲むと、原点に戻るだけだが、
なぜか
ツキの薬は、原点が+1されて、そこまで戻る
運試し
• 二個のサイコロの、合計値の出現確率って
1、あ、いや2~12が均等に出現するわけではない
計算してみるとこんな感じ。数値は合計値
7となる場合は17%あり、
出目の合計が7以上とか7以下、というのは
かなりの確率で出現するってことですね
• サイコロを使わないように、作ることもできるが
• それだと普通のRPG
• FightingFantasyの世界には不可欠ですね
体当たり
• サイコロ二個の出目の合計Dと
• キャラクタの現在技術点を比べて
• 現在技術点≧Dなら成功、そうでないときは失敗
• 現在技術点は、段落中の指示で減点されることがある
• 強い怪物に威圧されて、自信を無くしたときなど
他にも、出目と現在体力点で、橋を渡り切れるか、などこの手の仕掛けは
あちこちに
食事を摂る
• 食料は10食分、持っていくことになる
• 途中、アイテムとして見つかることはなさそう
• 食料相当になるアイテムもなさそう
• ゲーム・ローグのように、倒した怪物の死骸を食べる、なんてのもありません
• 段落に指示があるときしか、食べられない
• 食べると、残食料が1減り、現在体力点が+4される
• ただし体力原点は越えられない
• 歩き方・・・段落の技術内容を分解しないと、ロジックが集約されそうにな
い(以下、数例)
• プレイヤーの意思で、進路を選べる
• choiceAndGo
• 運試しの結果で、進路が決まる
• tryLuckAndGo
• 遭遇したモンスターと戦う。回避不可、逃亡不可。倒したら次へ
• fight1
• go
• 見つけた何かを装備したいなら、何か一つ置いてそれを装備して、進む
• choiceAndGo
• selectEquippedItem
• findAndEquip
• go
歩き方
• カギが鍵(^_-)
• ザックに入れて持ち歩くだけ
• 最終ボスを倒し、財宝を得るために宝箱
を開けるとき
• 冒険中に得たいくつかのカギを、組合わせ
て開けることになるが
• 組み合わせが違うと
• 開かない
• 毒矢が飛び出す
などとなる。
• 原作での仕掛けは、カギに与えられている番号を加えて、その段落番号に飛ぶこと
で実現される
• つまり段落番号は、通常は静的に決まっているが、動的に求められることもある
アイテム
概念モデル
概念モデル・構築側
概念モデル・
構築側の中核
怪物カタログに
収容される怪物種類
タイトルとコンテンツのレイアウト (リスト)
• 第 1 レベル
• 第 2 レベル
• 第 3 レベル
• 第 4 レベル
• 第 5 レベル
アイテムカタログに
収容されるアイテム種類
概念モデル・遊ぶ側
実装にあたって・・・
• 構築側の構成の、実現可能性を検証しながら進めないと
• 今の構造側の設計のままでは、遊び側が進めない、ことがあるかも
• なので、
• 構築側のプログラムを作る
• パラグラフを1/3ほど登録する
• 遊ぶ側のプログラムを作る
• まずは歩き回り
• アイテムを発見し、所持、装備、または放置できること
• モンスターと遭遇し、戦闘できること・・・これはプロトタイプ済み
をやってみて構築側を検証し、遊ぶ側のロジックを増やしていくことに
実装モデル
・構築側
実装モデル
・遊ぶ側
実装モデル
・遊ぶ側の中核
実装モデル
・遊ぶ側
処理ロジックは、コントローラに
デモ
• 構築側・・・・物語(ダンジョン)を選ぶ
• 遊ぶ側・・・・冒険を選ぶ
開発状況
• とりあえず、RubyOnRailsで
• Rails流儀が辛いところもあるが、コーディングはらくちん
• 1シーンは1リクエストが基本。次のシーンへの引継ぎはリクエストオブジェクトとパラ
メータで。パラグラフ間の引継ぎが要る場合は、セッションオブジェクトで
• 全400パラグラフ中、遊ぶ側のテストがあらかた通ったものは
• 約半分
• 1パラグラフ、平均1.8シーンに展開
• シーン種類は、現在84
• なるべくこれまでに作ったものを使いまわすように
• 使いまわせない時は、実装済みのものを分解組み立てなおして
• ドメイン駆動にしたいですね(^-^;・・・SpringBootかな
お付き合いいただき、ありがとうございました

More Related Content

Similar to 「火吹山の魔法使い」を astah*で

第7回SIA研究会(例会)プレゼン資料 油野様
第7回SIA研究会(例会)プレゼン資料 油野様第7回SIA研究会(例会)プレゼン資料 油野様
第7回SIA研究会(例会)プレゼン資料 油野様Tae Yoshida
 
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワーServcorp Japan
 
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也じょいとも
 
Jisaセミナー講演
Jisaセミナー講演Jisaセミナー講演
Jisaセミナー講演Hagimoto Junzo
 
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu #efsta36
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu  #efsta36 人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu  #efsta36
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu #efsta36 Mamiko Tsuda
 
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)Yuuki Namikawa
 
Digital Business and Agile
Digital Business and AgileDigital Business and Agile
Digital Business and AgileKenji Hiranabe
 
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)Web Accessibility Infrastructure Committee (WAIC)
 
会社を作って1年たっての考察
会社を作って1年たっての考察会社を作って1年たっての考察
会社を作って1年たっての考察Masanori Oobayashi
 
私の考える Startup Geeks
私の考える Startup Geeks私の考える Startup Geeks
私の考える Startup GeeksKiminari Homma
 
DDDのすすめ
DDDのすすめDDDのすすめ
DDDのすすめRyo Amano
 
社内SE始めました
社内SE始めました社内SE始めました
社内SE始めましたYuta Moriyama
 
悪質WEO業社にだまされない為に
悪質WEO業社にだまされない為に悪質WEO業社にだまされない為に
悪質WEO業社にだまされない為にYoshinori Kawasaki
 
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施london333
 
ギルドワークスの現場コーチ
ギルドワークスの現場コーチギルドワークスの現場コーチ
ギルドワークスの現場コーチGuildWorks
 

Similar to 「火吹山の魔法使い」を astah*で (20)

第7回SIA研究会(例会)プレゼン資料 油野様
第7回SIA研究会(例会)プレゼン資料 油野様第7回SIA研究会(例会)プレゼン資料 油野様
第7回SIA研究会(例会)プレゼン資料 油野様
 
価値のデザイン
価値のデザイン価値のデザイン
価値のデザイン
 
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー
「価値のデザイン」―2013年7月18日 サーブコープビジネス交流会@虎ノ門 城山トラストタワー
 
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
「なぜクリエイティブ制作は自動化できないのか?
 〜広告史を巡って〜」セプテーニ加来幸樹×フクロウラボ林田朋也
 
Jisaセミナー講演
Jisaセミナー講演Jisaセミナー講演
Jisaセミナー講演
 
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu #efsta36
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu  #efsta36 人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu  #efsta36
人事?それとも…?とあるITベンチャーの人事のお話 エフスタ!! In Aizu #efsta36
 
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
俺たちの自分戦略 - namikawa (DevLOVE Conference 2012)
 
Openthology256pub
Openthology256pubOpenthology256pub
Openthology256pub
 
Digital Business and Agile
Digital Business and AgileDigital Business and Agile
Digital Business and Agile
 
なれる!IL
なれる!ILなれる!IL
なれる!IL
 
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)
キヤノンのウェブサイトにおけるアクセシビリティへの取り組み(2013年12月10日版)
 
会社を作って1年たっての考察
会社を作って1年たっての考察会社を作って1年たっての考察
会社を作って1年たっての考察
 
私の考える Startup Geeks
私の考える Startup Geeks私の考える Startup Geeks
私の考える Startup Geeks
 
Mito seminar 01
Mito seminar 01Mito seminar 01
Mito seminar 01
 
DDDのすすめ
DDDのすすめDDDのすすめ
DDDのすすめ
 
A Lean UX Workshop
A Lean UX WorkshopA Lean UX Workshop
A Lean UX Workshop
 
社内SE始めました
社内SE始めました社内SE始めました
社内SE始めました
 
悪質WEO業社にだまされない為に
悪質WEO業社にだまされない為に悪質WEO業社にだまされない為に
悪質WEO業社にだまされない為に
 
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施
失敗しないネットショップのはじめ方(2/5)土浦商工会議所にて実施
 
ギルドワークスの現場コーチ
ギルドワークスの現場コーチギルドワークスの現場コーチ
ギルドワークスの現場コーチ
 

More from Keiichi SASAKI

見守リスクはどうやって動いているか?
見守リスクはどうやって動いているか?見守リスクはどうやって動いているか?
見守リスクはどうやって動いているか?Keiichi SASAKI
 
「見守リスク」を使ってみよう
「見守リスク」を使ってみよう「見守リスク」を使ってみよう
「見守リスク」を使ってみようKeiichi SASAKI
 
超高速アプリ開発法
超高速アプリ開発法超高速アプリ開発法
超高速アプリ開発法Keiichi SASAKI
 
コンピュータにできないこと
コンピュータにできないことコンピュータにできないこと
コンピュータにできないことKeiichi SASAKI
 
DDJJ 1996.9-1999休刊まで
DDJJ 1996.9-1999休刊までDDJJ 1996.9-1999休刊まで
DDJJ 1996.9-1999休刊までKeiichi SASAKI
 
どこでもボタン+利用ガイド
どこでもボタン+利用ガイドどこでもボタン+利用ガイド
どこでもボタン+利用ガイドKeiichi SASAKI
 
「どこでもボタン」を使ってみよう
「どこでもボタン」を使ってみよう「どこでもボタン」を使ってみよう
「どこでもボタン」を使ってみようKeiichi SASAKI
 
Anonymous Inner Programmer
Anonymous Inner ProgrammerAnonymous Inner Programmer
Anonymous Inner ProgrammerKeiichi SASAKI
 
Live in a_periferal_world
Live in a_periferal_worldLive in a_periferal_world
Live in a_periferal_worldKeiichi SASAKI
 

More from Keiichi SASAKI (12)

IFTTTで遊ぼう
IFTTTで遊ぼうIFTTTで遊ぼう
IFTTTで遊ぼう
 
見守リスクはどうやって動いているか?
見守リスクはどうやって動いているか?見守リスクはどうやって動いているか?
見守リスクはどうやって動いているか?
 
「見守リスク」を使ってみよう
「見守リスク」を使ってみよう「見守リスク」を使ってみよう
「見守リスク」を使ってみよう
 
超高速アプリ開発法
超高速アプリ開発法超高速アプリ開発法
超高速アプリ開発法
 
コンピュータにできないこと
コンピュータにできないことコンピュータにできないこと
コンピュータにできないこと
 
DDJJ 1996.9-1999休刊まで
DDJJ 1996.9-1999休刊までDDJJ 1996.9-1999休刊まで
DDJJ 1996.9-1999休刊まで
 
どこでもボタン+利用ガイド
どこでもボタン+利用ガイドどこでもボタン+利用ガイド
どこでもボタン+利用ガイド
 
「どこでもボタン」を使ってみよう
「どこでもボタン」を使ってみよう「どこでもボタン」を使ってみよう
「どこでもボタン」を使ってみよう
 
私のIT遍歴
私のIT遍歴私のIT遍歴
私のIT遍歴
 
Anonymous Inner Programmer
Anonymous Inner ProgrammerAnonymous Inner Programmer
Anonymous Inner Programmer
 
Live in a_periferal_world
Live in a_periferal_worldLive in a_periferal_world
Live in a_periferal_world
 
Hanawa256pub
Hanawa256pubHanawa256pub
Hanawa256pub
 

「火吹山の魔法使い」を astah*で