新規記事の投稿を行うことで、非表示にすることが可能です。
2018年12月23日
歩行グラフィック/ピクチャの表示のX,Y座標の覚え方
スキルにコモンイベントを割り当てた場合
2018年12月16日
プレイヤーの向きで取得できる変数の値について
週1更新の記事は別途書きます。
変数の操作-オペランド:ゲームデータ-キャラクター:向きから、値を取得できます。
プレイヤーの向きで取得できる変数の値は次の通り
↑:8
→:6
↓:2
←:4
・正面:向かい合った状態の変数の和は10
・バックアタック:自分とイベントの変数は同じ(向きを固定する必要がある)
問題点:移動時に向き固定をしなければならず、実装が大変
→PC版の場合、YEP_EventEncounterAidの機能「Encounter Lock」タグを付けることで解決可能
以前シンボルエンカウントを自作しようとしたときに調べた情報が見つかりましたので、記事化しました。
私自身は別の手段で実装済みですが、お役に立てば幸いです。
プレイヤーの向きで取得できる変数の値について
変数の操作-オペランド:ゲームデータ-キャラクター:向きから、値を取得できます。
プレイヤーの向きで取得できる変数の値は次の通り
↑:8
→:6
↓:2
←:4
・正面:向かい合った状態の変数の和は10
・バックアタック:自分とイベントの変数は同じ(向きを固定する必要がある)
問題点:移動時に向き固定をしなければならず、実装が大変
→PC版の場合、YEP_EventEncounterAidの機能「Encounter Lock」タグを付けることで解決可能
以前シンボルエンカウントを自作しようとしたときに調べた情報が見つかりましたので、記事化しました。
私自身は別の手段で実装済みですが、お役に立てば幸いです。
2018年12月09日
キャラクター設定からゲーム実装に落とし込む
キャラクター設定からゲーム実装に落とし込む
現在キャラクター設定を深堀しており、@→A→Bの順で進行中。
その過程で気付いたポイントを書き出します。
@思いつくままに書き出す
私は入れ替えが容易なExcelを利用しています。
・スキル名の由来から派生スキル、仲間に与える影響など
・アイディアが派生アイディアを生む
傾向:自分の好きなもの、直近に受けた影響が出やすい
A設定シートの書式にしたがって書き出す
こちらのサービスを利用しています。
world-type.com/
※利用者が多い、将来的に継続されるサービスを選ぶのがポイント
・自分では思い浮かばなかった設問に答えることでキャラクターの密度が増す
・キャラ同士を比較することで、関係を描けるようになる
傾向:一般的に使われているお約束事
※頭一つ抜くにはアイディアを磨くか、アイディアの出発点を変える必要がある
@Aで気を付けたのは「才能」という言葉を使わないこと。
設定が浅くなってしまう。
(複数分野の「適正」に「工夫」と「継続」をかけあわせた結果が「才能」のように見えるというのが持論)
Bゲーム実装のアイディアに変換する
・シナリオで説明する方が楽な部分を、できる限りシステムで再現させる
システムで表現できない残りをシナリオにするくらいのつもりの方が、ゲーム体験として面白くなる。
ゲーム体験を優先する理由は次の違いから。
・シナリオの表現は映画や小説の方が向いている(受動的なメディア)
・ゲームは自分主体で体験を得ることができる(能動的なメディア)
システムで表現する例:
・短絡的な戦士と世話焼きな騎士のコンビという設定
・戦士に「速攻物理攻撃+防御ダウンステート」の攻撃スキルを持たせる
・騎士に「即時挑発効果+防御アップ」の盾スキルを持たせる
・攻撃スキルを利用しないと有効打が与えられないボスを設定する
・戦士は攻撃スキルを使用すると速攻攻撃のリスクとして、被ダメージが増加する
・騎士は盾スキルを使い、戦士の隙を補う
・戦士と騎士は互いのHPとスキル使用コストに気を払う
普段は攻撃コマンドを連打する状況でも、格上のボス戦では連携を図るという構図がおそらく生まれる。
これが設定をゲームで再現するというものです。
プレイヤー視点では「シナリオや設定をゲームプレイで自ら再現する」がおそらく醍醐味。
意図した設計を偶然と思わせられたなら、心の振れ幅は大きいのです。
今回の経験を経て生まれた@+Aのフォーマットは今後も生きる創作の資産。
引き続き研磨して、面白いモノ作りに励んでいきます。
ではでは。
2018年10月31日
サクラエディタのGrep検索機能を活用したイベントコマンドの修正テクニック
サクラエディタのGrep検索機能を活用したイベントコマンドの修正テクニック
ここではコモンイベント、変数、スイッチの一括削除、変更、置換の方法をご紹介します。
導入方法、Grep検索の方法については以下の記事を参照ください。
サクラエディタのGrep検索機能を活用したテキストの修正テクニック
https://fanblogs.jp/tabirpglab/archive/1213/0
検索キー
以下、どのMapに設定されているのかをGrep検索で調べるために使用します。
削除、置換作業はGrep検索ではなく、Grep置換で実行します。
コモンイベントの検索キー
"code":117,"indent":0,"parameters":[コモンイベントID]
変数の検索キー
"code":122,"indent":0,"parameters":[変数ID,
※前方一致で検索するので、[]閉じなくて良い
※「,」で閉じないと、7の場合70、71……も拾ってしまうので注意
スイッチの検索キー
"code":121,"indent":0,"parameters":[スイッチID,
※前方一致で検索するので、[]閉じなくて良い
※「,」で閉じないと、7の場合70、71……も拾ってしまうので注意
『出現条件:スイッチN番がON』になっているイベント
検索ワード1:switch1Id":スイッチ番号,"switch1Valid":true,
検索ワード2:switch2Id":スイッチ番号,"switch2Valid":true,
・『出現条件:スイッチ400番がON』になっているイベント
検索ワード1:switch1Id":400,"switch1Valid":true,
検索ワード2:switch2Id":400,"switch2Valid":true,
※出現条件に設定可能なスイッチのスロットは2つあるので、「switch1Id」「switch2Id」両方で検索する必要がある
『出現条件:変数N番がON』になっているイベント
検索ワード:variableId":変数番号,"variableValid":true,
・『出現条件:変数300番がON』になっているイベント
検索ワード:variableId":300,"variableValid":true,
Grep置換による削除/置換
ここからが本題。
Grep置換機能でイベントコマンドを入れ替えたり、一括削除することができます。
また置換ワードを応用すれば、注釈「test」と入力したイベントコマンドを、コモンイベント10に置き換えるといったことも可能です。
【注意点】
・バックアップは忘れずに行ってください
・成功したと思っても、動作確認をするまではバックアップの保存を推奨です
・置換後はプロジェクトを「保存せず」開きなおしてください(プロジェクトをエディタで開かずに作業すればよい)
・語句の置換に失敗した場合、エディタで該当のMapIDが開けなくなります
コモンイベント
{"code":117,"indent":0,"parameters":[コモンイベントID]},
・「コモンイベント15」を削除する(実行内容から取り除く)
置換前:
{"code":117,"indent":0,"parameters":[15]},
置換後:空白(スペースなし)
※ポイント:「,」含めて指定すること
・「コモンイベント15」を「コモンイベント20」に置き換える
置換前:
{"code":117,"indent":0,"parameters":[15]},
置換後:
{"code":117,"indent":0,"parameters":[20]},
変数の操作
{"code":122,"indent":0,"parameters":[変数ID,変数ID,操作(0:代入,1:加算,2:減算,3:乗算,4:除算,5:剰余),オペランド(0:定数,1:変数,2:乱数,3:ゲームデータ,4:スクリプト,値]},
・「変数14に加算1」を取り除く
置換前:
{"code":122,"indent":0,"parameters":[14,14,1,0,1]},
置換後:空白(スペースなし)
※ポイント:「,」含めて指定すること
・「変数14に加算1」を「変数15に加算1」に置き換える
置換前:
{"code":122,"indent":0,"parameters":[14,14,1,0,1]},
置換後:
{"code":122,"indent":0,"parameters":[15,15,1,0,1]},
・「変数14に代入1」を、「変数14に乱数「0」〜「5」を代入」に置き換える
置換前:
{"code":122,"indent":0,"parameters":[14,14,0,0,1]},
置換後
{"code":122,"indent":0,"parameters":[14,14,0,2,0,5]},
・『出現条件:変数』を取り除く
『出現条件:変数300≧999』を消す
置換前:
variableId":300,"variableValid":true,"variableValue":999
置換後:
variableId":1,"variableValid":false,"variableValue":0
スイッチの操作
{"code":121,"indent":0,"parameters":[スイッチID(単体指定の場合は同じID、範囲指定の場合は始点),スイッチID(単体指定の場合は同じID、範囲指定の場合は終点),値(0:ON,1:OFF)]},
・「スイッチ5のON」を削除する
置換前:
{"code":121,"indent":0,"parameters":[5,5,0]},
置換後:
空白
イベントに設定された出現条件も同様に置き換える
置換前:
switch1Id":5,"switch1Valid":true,
置換後:
switch1Id":1,"switch1Valid":false,
置換前:
switch2Id":5,"switch2Valid":true,
置換後:
switch2Id":1,"switch2Valid":false,
※データ上の初期値はSW1のfalse
・「スイッチ5のON」を「スイッチ6のON]に置き換える
置換前:
{"code":121,"indent":0,"parameters":[5,5,0]},
置換後:
{"code":121,"indent":0,"parameters":[6,6,0]},
イベントに設定された出現条件も同様に置き換える
置換前:
switch1Id":5,"switch1Valid":true,
置換後:
switch1Id":6,"switch1Valid":true,
置換前:
switch2Id":5,"switch2Valid":true,
置換後:
switch2Id":6,"switch2Valid":true,
・「スイッチ5〜6をON」を「スイッチ5〜6をOFF」に置き換える
置換前:
{"code":121,"indent":0,"parameters":[5,6,0]},
置換後:
{"code":121,"indent":0,"parameters":[5,6,1]},
・スイッチ5をON
{"code":121,"indent":0,"parameters":[5,5,0]},
・スイッチ6をOFF
{"code":121,"indent":0,"parameters":[6,6,1]},
・スイッチ5〜6をON
{"code":121,"indent":0,"parameters":[5,6,0]},
・スイッチ5〜6をOFF
{"code":121,"indent":0,"parameters":[5,6,1]},
アイテムの増減
{"code":126,"indent":0,"parameters":[アイテムID,操作(0:増加,1:減少),0,(個数)]},
・アイテムID『N』を『M個』増加
{"code":126,"indent":0,"parameters":[N,0,0,M]},
・アイテムID『N』を『M個』減少
{"code":126,"indent":0,"parameters":[N,1,0,M]},
『アイテムID200を99個入手』を削除
置換前:
{"code":126,"indent":0,"parameters":[200,0,0,99]},
置換後:
空白
『アイテムID200を99個入手』を『アイテムID150を50個入手』に置き換え
置換前:
{"code":126,"indent":0,"parameters":[200,0,0,99]},
置換後:
{"code":126,"indent":0,"parameters":[150,0,0,50]},
プラグインコマンド
{"code":356,"indent":0,"parameters":["プラグインコマンドの実行内容"]},
・プラグインコマンド「aaa」
{"code":356,"indent":0,"parameters":["aaa"]},
注釈
{"code":108,"indent":0,"parameters":["注釈に書き込んだ文字列"]},
・初期値の場合(何も書き込まれていない状態)
{"code":108,"indent":0,"parameters":[""]},
・「test」と入力した場合
{"code":108,"indent":0,"parameters":["test"]},
オススメ:カスタマイズ設定
初期値ではGrep置換に対応したショートカットキーがないため、設定をお勧めします。
私はALt+Gに割り当てました。
以下そのときの設定手順。
設定→共通設定→キー割り当てタブ
・種別「検索系」
・ALtにチェックを入れる
今後確認したいこと
・データベース内のアイテム、スキルIDの置換時の影響