fc2ブログ

CardWirth Tool - 『カード式マップ共通パッケージ』Ver.1.00 公開

CardWirth Tool - 『カード式マップ共通パッケージ』Ver.1.00 を公開しました。

これは「結氷術師フリーレン」で登場したカードスタイルのダンジョンを生成する共通パッケージになります。
今作成しているシナリオにダンジョンを追加したい場面で、
このパッケージをシナリオ内にコピーし、そのエリアを呼び出せば動作します。

注意:
これは、「シナリオ内にカード式マップダンジョンを用意する」サポートツールになります。
サンプルとなるダンジョン画像は用意されていますが、構造の違うダンジョンを作りたい場合は
自分で画像を用意する必要があります。
また、イベント等の記述する口はありますが、イベントそのものは用意しておりません。



以下にその内容の詳細を記載しますのでご参照頂ければと思います。

1.準備編
■CardWirthのシナリオエディタを2つ立ち上げる(本Pkg(コピー元)と作成中シナリオ(コピー先)
■CommonCave配下の全てのフォルダをコピーする。
スクリーンショット 2022-08-01 221959

 ※素材も一緒にコピーする。
スクリーンショット 2022-08-01 221808

 ※IDの振り直しをしておくと後で自シナリオ作成において管理がしやすくなります。
スクリーンショット 2022-08-01 221921

■状態変数のCommonCave配下の全てのフラグおよびステップをコピーする。
スクリーンショット 2022-08-01 221944

■「MAP」エリアを呼ぶ。
スクリーンショット 2022-08-01 222106

とりあえず上記の手順で動きます。

2.使用方法(詳細版)
・デフォルトのマップから自由にダンジョンを作りたい!
・クリック時のイベントを追加したいなど…

■各エリアへの移動可不可についてはフラグにて管理しています。
スクリーンショット 2022-08-02 002944
  ⇒ このフラグを可/不可切替によって、移動できるカードを制御しています。
 現状では「A-1」エリア(一番左上)はフラグが「不可」に設定されているため
 カードをクリックしても移動することができません。
 このフラグを「可」に変えることによって移動することができます。

 ただし、「A-1」にカード画像が設定されていないため、
 「A-1」をクリックしてもカードが切り替わることはありません。

 各エリアには「Normal」「Now」「Exclude」の3種類あります。
  ・Now ⇒ 冒険者が現在いる位置(カード画像で言うと青枠で囲ってあるもの)
  ・Normal ⇒ 「Now」のエリアから移動可能なエリア。青枠で囲っていないもの。
  ・Exclude ⇒ 「Now」のエリアから移動不可能なエリア。真黒のカード。
   Excludeは共通ですので新たに用意する必要はありません。
 スクリーンショット 2022-08-02 003344

 ①マップ全体の画像を用意する。
 ②マップ全体の画像を74*94サイズに分割し、Normalのカード画像を用意する。
  E-Cutterなどのツールを使うと便利です。
  https://www.vector.co.jp/soft/winnt/art/se508154.html
 ③今いる位置を強調するため、枠で囲ったカード画像を用意する。
  ⇒ Normalで作ったカードに枠を付けていく感じになります。

 ①~③の作業が面倒かもしれませんが、種々のツールを使って作ってください。

■各エリアクリック時のイベント作成について
 パッケージ「エリアクリック/選択/攻撃共通処理」(以下:共通クリックPkg)で記述します。
 各エリアをクリックした時の動作は現状では
 「01-01_各エリアイベント状況」ステップの「イベントなし」が設定されています。
スクリーンショット 2022-08-02 003649

 「イベントなし」の場合、共通クリックPkgの「イベント状況⇒その他」の分岐に到達し、
 クリック時の共通処理が実行されます(現状では特にイベントの発生は記述されていません)
 スクリーンショット 2022-08-02 003712

 任意のエリアに特定のイベントを追加する場合
 例)A-1をクリックすることによって特定イベントが発生する場合
  「A-1_イベント状況」ステップの「特定イベント」を初期値に設定する。
  または「MAP」エリアの「到着」イベントの「A-1初期化」にて
  「A-1_イベント状況」ステップを「特定イベント」に設定する。
  ⇒これで「A-1」エリアに特定イベントを記述する準備ができました。
 
  「特定イベント」分岐のクリック時処理に、イベントを記述することによって
  そのエリアをクリックした時のイベントが走ります。
  ⇒2回目クリックした時にほかのイベントを動かしたい場合は「Step7、Step8」を使用します。
  ⇒もう新たなイベントを動かす必要がなければ「Step9」の「イベント済」を設定します。
スクリーンショット 2022-08-02 003841

こんな感じで記載します。

ただし、特定イベントに設定しなくても分岐の組み方によってはイベントが発生します。
例えばイベントなし⇒クリック時の分岐に処理を記載すればそのイベントが動作し、
同イベント終了後に「イベント済」にすれば以降同じイベントは発生しないことになります。
そこはエディタで色々いじってみてください。
スクリーンショット 2022-08-02 004333

■エリアに対して「偵察」を行いたい場合
スクリーンショット 2022-08-02 005125
 ①エリア「MAP」の「Normal」カードに対して「偵察」イベントを追加する。
 ②選択箇所の縦軸、横軸を設定する(選択したカードの位置を指定)
 ③「エリア選択時判定」ステップに「偵察時」を設定する。
 ④共通クリックPkgをコールする。

 ⇒クリック時と同様に、選択した位置情報を共通クリックPkgに渡し、
  そのパッケージの中でイベントが動く仕組みとなっております。
  選択したエリアの「イベント状況」が「罠」の場合、その罠を感知するイベントの記述ができるという感じです。

--------------------------------------
ここまで読んでいただいてありがとうございます。
また何かあれば追記していきます。

※このツールは自分用という感じで用意したので
 そもそもこんなツールに需要があるとは思えませんが…!

--------------------
追記
「MAP切替_現在位置表示」パッケージ
行20に不具合がありました。


「フラグCommonCave\Map_A\Normal\A-2を非表示」

「フラグCommonCave\Map_A\Normal\A-3を非表示」

使用する方は注意してください。
近いうちにVer.1.01としてアップします

------------------------
2022/08/15追記
以下仕様になります。
https://twitter.com/yamashina_01/status/1559135213996740608

C-4からC-5に移動できるけど、C-6からC-5への移動はできないという制御は現Versionでは組み込んでいません。
隣り合うマスは必ず移動可能なことが条件になります。

これはバグではなく仕様です。
実現するには個別制御が必要になるんでなかろうか。
スポンサーサイト



CardWirthシナリオ「Die Sterne strahlen RE Ver.1.10」公開

CardWirthシナリオ「Die Sterne strahlen RE Ver.1.10」を公開しました。

著作権表記の修正を行うと思ったんですが、よくよく見てみたら、別に直す必要なかった。
まあせっかくなんで本文の修正を行いました。

再プレイして、なんか引っかかるな、とか、
文章から感情というか、表情が浮かばない、そんな印象を受けたので、セリフ修正を施しています。

本当に、細かい修正です。
まあ、久々にプレイしてみるか、という人はぜひ。

あ、更新履歴に書きそびれましたけど、しれッとクリアクーポンの名前が変わっています。
これは、このシナリオの続き用です。


■地理の話。
今回、エメルフェード海という名前を出しました。多分初出。
他にも、いろいろとシナリオを更新するたびに地理関係の修正を施しております。

このツイートが詳しいかな?
https://twitter.com/yamashina_01/status/1550140296528158722

上のツイートの画像の左下部分がエメルフェード海で、Evendimの南側にあるのが
ローデシア大陸の北東端に当たります。

ここら辺の情報は一度まとめたいなーとも。
ただ、Die Sterne strahlenの続編作っているので、その時にでも一緒に出そうと思います。

今後ともよろしく!

CardWirthシナリオ「犯人は冒険者 Ver.2.00」公開

犯人は冒険者 Ver.2.00を公開しました。

シナリオ後半に私立探偵アードモア氏を呼び、酒宴を催し、事件の展開を聞きます。
また、公開していませんでしたが、Ver.1.30で修正した各所でのミニマップも実装しています。

また、全体的に文章を見直したり調整したりと細かな部分を修正しました。

何度か通してプレイしておりますが、
文章展開やセリフ、挙動についておかしな点や気づいたところがあればご連絡お願いいたします。

CardWirthシナリオ「犯人は冒険者 Ver.1.20」公開

CardWirthシナリオ「犯人は冒険者」のVer.1.20に更新しました。

犯人は冒険者 Ver.1.20

変更点は以下の通りです。

 戦闘で逃亡をすると動かなくなる部分の修正
 BGMの変更、および背景画像圧縮による容量削減(17MB->6.8MB)
 MapOfWirthを専用の物に置き換え
 位置関係を表すテキスト、および一部のテキストの変更、

うぷろだも用意しました。下記よりどうぞ。
https://ux.getuploader.com/solvakken/download/4

結氷術師フリーレンの自動戦闘の解説 Part.2

結氷術師フリーレンの自動戦闘の解説 Part.2

Part.1からの続きです。

6.doProcessPlayer
11.png
現在選択中のPCに対しての処理です。
(敵の数×PT人数分)×敵またはPCが全員意識不明になるまで」この処理が繰り返されます。
選択中のPCが意識不明状態になると、Step.215の処理に分岐し、選択中のPCの生存フラグをFalseにします。

7.敵の攻撃種類による選択PCステータス判定
12.png
今気が付きましたが、この処理は不要ですね。
罠イベントが当初ありましたが、それの回避判定用に使用していた処理です。

8.選択中PCの回避/反撃の判定処理
13.png
この自動戦闘の回避と反撃を行う処理です。

8.1 現体力値判定
21.png
選択されたPCが健康、負傷、重傷によって、「回避成功値」と「反撃成功値」を加算(および減算)します。

8.2 レベル判定
23.png
選択されたPCのレベルに応じて、「回避成功値」と「反撃成功値」を加算します。

8.3 疲労度判定
22.png
全体の「疲労度」の値によって、「回避成功値」と「反撃成功値」を減算します。

8.4 回避能力値判定
24.png
選択されたPCの能力値(敏捷等のパラメータ)によって、「回避成功値」を加算します。

8.5 反撃能力値判定
25.png
選択されたPCの能力値(筋力、勇猛性等のパラメータ)によって、「反撃成功値」を加算します。

8.6 回避成功フラグ設定処理
26.png
「回避成功値」の値によって、敵からの攻撃に対して回避成功したかをフラグ設定します。

8.7 反撃成功フラグ設定処理
27.png
「反撃成功値」の値によって、敵への反撃を行うかの成功/失敗をフラグ設定します。

「回避成功値」と「反撃成功値」に対して、加減算を行い成功値によって%分岐を行う仕組みになります。
選択されたPCのレベルが高ければ高いほど「回避」「反撃」の成功値が加算されるため、攻略が楽になります。
最終的にそれら能力値等の判定後に疲労度の数値で成功値を減算し、結果を求める流れになります。

9.反撃成功フラグによる現在行動中の敵に対しての攻撃処理
31.png
PCが生存しており、反撃が行える、かつ、現在行動中の敵が意識不明ではない場合
対象の敵に対しての反撃処理を行います。
反撃成功値が50以上の場合は敵に対して2のダメージを与え、それ以外の場合は1のダメージを与えます。
30を下回る場合は反撃が成功しているのにも関わらず攻撃は与えられません。
また、「選択中」にダメージを与えるため、「現在行動中の敵」が「敵1~敵6」のどれかを判断するために
Step49の「敵1行動可否判定」にて「現在行動中の敵」をステップに設定しています。

34.png
成功した場合、「敵へのダメージ処理」を行います。
攻撃した後に「現在行動中の敵」が意識不明である場合、「敵撃退数」を加算し、現在行動中の敵生存フラグをFalseにします。これによって、敵側のメインループ処理を抜ける条件となります。もし意識不明でない場合は敵の体力(現体力)を減らします。

10.回避成功フラグによる選択中PCに対してのダメージ処理
32.png
回避できなかった場合、現在選択中のPCに対してダメージ処理を行います。
ダメージ処理を与える前に現在選択中のPCに意識不明判定を行っているのは、「フキダシ処理」をCallしないためです。
回避成功した場合は、PCをカード反転させるため、呪縛→呪縛回復絶対成功の効果コンテントを使用します。

11.反撃回避処理後_変数初期化処理
33.png
プログラムとか組む時に物凄い重要な変数初期化処理。バグの温床。
選択されたPCに対しての1ループごとに「回避成功値」などを計算しているので、毎回初期化する必要があります。初期化処理の中で敵が全滅したかどうかの判定をCallするのはなんか違う気がしますが、入れています。
1ループ後のすべての処理が終わった後に、敵が全員意識不明の場合、次の新しいループに突入するのを防ぐ役割があります。


自動戦闘は大体こんな感じで動いています。
フキダシの部分はまあ、そんなに難しくないので割愛。
Part3で統括というか、後書きみたいの書きます。いつか。
プロフィール

山科

Author:山科
小説書いてます。
浅上女学院の二次創作ですが。
Twitterはこちら
https://twitter.com/yamashina_01

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
カウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる