あるTCGの構築済みデッキだけを使って対戦するソフトを作りたいんだけど、カードの効果をどうやって解釈させるのか、いいアイデアが無いでち。
手札のカードを一枚選んで、とかだったらカードを選ぶっていうクラスを作ってそれを継承して拡張していく、とかでいいんかな。
当方Java暦1年のはなくそです。いいアイデアあったら教えてくれると嬉しいです。
既存のTCGの対戦ソフトを作りたい [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
2016/10/21(金) 13:47:24.53ID:1n8vZ3VT2016/10/23(日) 09:40:04.89ID:sqZKb0kb
>テキストを解釈するインタプリタ?を作る
自然言語で書かれたルールをそのまま取り込むと言ってる?
正気か? Java歴1年とやらが10年になっても無理そうだな
自然言語で書かれたルールをそのまま取り込むと言ってる?
正気か? Java歴1年とやらが10年になっても無理そうだな
2016/10/23(日) 10:36:37.95ID:5FrN0FNC
2016/10/23(日) 18:32:00.95ID:Q+CeDl8Z
そんなことができたらどんな企業にも入り放題、下手したら歴史に名前が残るぞ
カードの効果はプログラムではなく人間が解釈するんだよ
カードの効果はプログラムではなく人間が解釈するんだよ
2016/10/23(日) 21:30:08.34ID:Bi6deQJA
2016/10/27(木) 12:52:52.32ID:LcY1KpMD
確かに考えが愚かでしたね…
カードの枚数が多いのでインタプリタ通すのかと思い込んでました
カード一枚一枚効果を設定してみます
なんとなく方針が立ってきました。
ありがとうございます
カードの枚数が多いのでインタプリタ通すのかと思い込んでました
カード一枚一枚効果を設定してみます
なんとなく方針が立ってきました。
ありがとうございます
2016/10/28(金) 16:23:12.78ID:1ax0AC0U
具体的にどのTCGの対戦ソフトか知らんけど
だいたい年間400〜500種類ぐらいカード出るんだし
一枚一枚やってたらきりがないんじゃないの
それに今時のゲームではそれぞれ
機能するタイミングの違う能力が2つ3つついてるのもおかしくないけど
それを1枚のカードでまとめるって難だし
能力別にまとめとくほうが後々の労力削れそう
だいたい年間400〜500種類ぐらいカード出るんだし
一枚一枚やってたらきりがないんじゃないの
それに今時のゲームではそれぞれ
機能するタイミングの違う能力が2つ3つついてるのもおかしくないけど
それを1枚のカードでまとめるって難だし
能力別にまとめとくほうが後々の労力削れそう
2016/10/31(月) 22:17:00.79ID:dR177teP
カード増えるごとに追加実装とかアホくさくてやってられないよなぁ
機能は小さな単位に分割し、汎化して実装することでできるだけ使い回す方向で組むわ
例えば「墓地ある2体の〇〇をゲームから取り除く事で、相手のフィールドにある攻撃表示のモンスター1体を墓地に送る」というカードがあるならば
a.墓地にある2体の〇〇を選び出す機能
b.対象のカードをゲームから取り除く機能
c.相手フィールドから攻撃表示のモンスターを選び出す機能
d.対象のカードを墓地に送る機能
というように機能を分解して作っておいてそれをカードのデータを元にコンポジットする
カードは基本データに加えてこうした能力のリストを保持する形にするかな
ちなみに前述のaとcは<場所>にある<条件>を満たすカードを選ぶ機能として同一の実装でいいし、bとdは指定したカードを<場所>に送る機能として同一であると言える
このように細分化した機能を扱える簡単なインタプリタを作っておけばカードが増えてもルールが増えない限りはだいたいデータの追加だけで済む
ついでにカードのルールテキストが定まった文法に従っているなら、ルールテキストからこれらの処理を自動的に構築するパーサーとビルダークラスを作っておけばさらに手間いらずになる
機能は小さな単位に分割し、汎化して実装することでできるだけ使い回す方向で組むわ
例えば「墓地ある2体の〇〇をゲームから取り除く事で、相手のフィールドにある攻撃表示のモンスター1体を墓地に送る」というカードがあるならば
a.墓地にある2体の〇〇を選び出す機能
b.対象のカードをゲームから取り除く機能
c.相手フィールドから攻撃表示のモンスターを選び出す機能
d.対象のカードを墓地に送る機能
というように機能を分解して作っておいてそれをカードのデータを元にコンポジットする
カードは基本データに加えてこうした能力のリストを保持する形にするかな
ちなみに前述のaとcは<場所>にある<条件>を満たすカードを選ぶ機能として同一の実装でいいし、bとdは指定したカードを<場所>に送る機能として同一であると言える
このように細分化した機能を扱える簡単なインタプリタを作っておけばカードが増えてもルールが増えない限りはだいたいデータの追加だけで済む
ついでにカードのルールテキストが定まった文法に従っているなら、ルールテキストからこれらの処理を自動的に構築するパーサーとビルダークラスを作っておけばさらに手間いらずになる
2016/11/03(木) 01:53:34.21ID:EOsylP7k
>>12
効果の設定に際して挙げられたような細かい効果はやはり作成に迫られたので作りました。
テキストのパーサーとビルダーが出来れば凄く楽になりそうですね…。
テキストの書式はある程度定まっていますが、それでも安定して解釈出来なかったので、とりあえずは手動で細分化した効果を組み合わせて設定してます。
それより何よりGUIを作るのが面倒で凄く時間が掛かってしまいますな(;´Д`)
効果の設定に際して挙げられたような細かい効果はやはり作成に迫られたので作りました。
テキストのパーサーとビルダーが出来れば凄く楽になりそうですね…。
テキストの書式はある程度定まっていますが、それでも安定して解釈出来なかったので、とりあえずは手動で細分化した効果を組み合わせて設定してます。
それより何よりGUIを作るのが面倒で凄く時間が掛かってしまいますな(;´Д`)
14名前は開発中のものです。
2017/12/31(日) 21:51:08.10ID:/rN76OKL 簡単にお金が稼げる方法興味ある人だけ見てください。
グーグル検索⇒『来島のモノノリウエ』
B0GJMFZ6TE
グーグル検索⇒『来島のモノノリウエ』
B0GJMFZ6TE
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【LIVE】国分太一 騒動後初の公の場 司法記者クラブで会見 ★2 [ひかり★]
- 中国と対話で良い関係つくるのが責任と首相 [少考さん★]
- 「ウソだったのか」ネット大混乱 議員の歳費5万円アップ「凍結→成立」報道に…「えっ?」「どうなってんだ」「ビックリ」 [バイト歴50年★]
- 性売買「買う側」処罰化と同時に「売る側は処罰せず、支援の対象に」Colabo主催の集会にて★3 [パンナ・コッタ★]
- 【文春】元TOKIO・国分太一(51)「女性スタッフ2名への“わいせつ事案”」日テレ事情聴取の全貌が分かった! ★3 [Ailuropoda melanoleuca★]
- 生クリームだけの真っ白なクリスマスケーキ 大手メーカーが販売、その理由は…フルーツなしで価格は半額以下に ★2 [おっさん友の会★]
- 【悲報】高市首相「予算委員会で同じ答弁を繰り返すと国会が止まる、具体的なことに言及したくはないが答えた」 [733893279]
- 【速報】高市早苗、党首討 [115996789]
- 【速報】国分太一会見 [115996789]
- 【朗報】いよいよ日本人初のNFLプレイヤーが誕生する模様 NCAAディビジョン1の最優秀キッカー賞最終候補に松沢寛政が残る [731544683]
- 🏡今は、もう、動かないとうふさんにトドメ👊😅👊💥📛
- 高市首相、日中関係は「対話で良い関係作るのが責任」初の党首討論 [834922174]
