ゲ製同時進行33週目
AMD's公開まで残り1週間。
私はまったく関係ないですけどアマデウス界隈で6周年記念に合作同人出すらしいです。
初版発行日は12/19です。いやまあ初版には25ってあるんだけど、実際発売されたのは19です。
わっと界隈盛り上がると嬉しいですね。
AMD'sδ
キャラデータロード/セーブにtxtで出力する方法を探る。
CSSの導入方法を探すCSVデータ作成New!JSちゃんとオトモダチになるキャラ作成ページ制作
シナリオパート
機能増設/減量
判定マクロ
選択肢ボタン←次ココ
まとめ
結論:心臓部、仕上がりませんでした。
案外時間かかるんだなあって印象ですね。
心臓部部分で言えば7割ぐらいのところまで行きました。
心臓部MAP(フローチャート)
未 キャラ能力値に合わせたダイス数で出目を出す
未 出目を小さい順に左から並べる
済 並べた数字からCSVを引用して配列を作成する。
済 配列から色ごとにオブジェクトを取り出す ←ここやった
今 色ごとのオブジェクトを下記変換機の型に合わせる ←ここやった
済 オブジェクトから出現する選択肢を限定する
未 選択肢の条件分岐の配置デザイン
済 配置デザインの表示
言うほど7割か??
何やってるかって言うと、キャラごとにランダムに出現する選択肢が変化して、2段階の選択をさせるっていうことをやってます。
以下制作過程
先週の続き。
1,6を取り除いて、T,Fの判定の条件式を加えた。
そこそこ苦労した。
;czに16があるときだけマッチした16を配列で入れる。
;その後joinをメゾッドチェーンして配列を解除。
@eval exp="f.cz=f.tf.match(/1+|6+/g).join('')" cond="/1+|6+/g.test(f.tf)"
;tfから16を削除する。
@eval exp="f.tf=f.tf.replace(/1+|6+/g,'')"
日本語訳:
f.czという新しい変数で、f.tfの中に1か6が含まれている場合、match(配列で返す)させて、その配列をjoinで解除。
ただしこれは、f.tfに1か6が入ってる場合のみ発動する。(cond)
てことで、f.tfの中身が111266だった場合、f.cz==[111,66]になって、f.cz==11166になる。
日本語訳:
また、f.tfから1と6を空白に変更する。この時のgは正規表現のフラグといって、複数条件の全ての条件を発動して返すっていう効果を持つ。
これで、f.tfの中身が111266だった場合、
f.cz==11166, f.tf==2
に分けられた。
続いて、CTFZをf.actionに入れる条件式を更新。
結果から出すとこうなった。
@eval exp="f.action=[]"
@eval exp="f.action.push('C')" cond="/^(?=.*6).*$/.test(f.cz)"
@eval exp="f.action.push('T')" cond="/[4-9]|[1-9][0-9]/m.test(f.tf)"
@eval exp="f.action.push('F')" cond="f.tf[0]<=3||f.tf[1]<=3||f.tf[2]<=3||f.tf[3]<=3||f.tf[4]<=3||f.tf[5]<=3"
@eval exp="f.action.push('Z')" cond="/^(?=.*1).*$/.test(f.cz)"
それぞれの参照変数がf.kekka[0]からf.czとf.tfになった。
TとFはそれぞれ、参照変数の配列の数字が4以上の時、3以下の時に発生させる。
Tは正規表現でなんとかした。この正規表現の意味は
4から9、または(1から9の数字)+(0から9の数字)=(10~99)を全ての配列要素の中から検索(m)して一致した時。つまり4~99の時発動。
問題はF。^[0-3]$でやると何故か出ない。んでもって$がないと、10~から一致したことになってしまう。
散々試してダメだったので、比較演算子にした。
(なおこれをfor文で繰り返しはできなかった。)
しかし、配列の中身が空白の場合、 空白(‘‘)<=3 ===Trueになってしまうことがわかった。
そこで
https://gray-code.com/javascript/remove-empty-element-for-array/
[iscript]
~~~(略)
f.tf=n1+','+n2+','+n3+','+n4+','+n5+','+n6+','
f.tf=f.tf.split(',').filter(Boolean);
[endscript]
filter(Boolean)で空白の配列を削除。
これで解決した。
まあ、-4以下の結果になるとTが入ってしまうのだが。上昇はあってもマイナスは発生しないので、マイナスの時は0に変更しとこ。
ボタンのところまで開通。
ムードが6の場合のボタン配置がないので追加予定。
選択肢の出現の仕込みが異なってるような気がするのでみてこ。
次の日
記憶喪失になってたのかなんか知らんが、これで開通ではなく、マクロの型を作っただけだった。
最終的に赤=CTFZ みたいなのを変数ではじき出す必要がある。
そこで、f.tf、f.czの大元のf.kekka[0]をそれぞれ抜き取った別の変数を使うことでこれが解決される。
f.kekka[0]の代わりにf.kekkaから色との組み合わせの奴を抜き出した奴を使う。
ちな、f.kekkaの中身は
こんな感じ。
[0]が振られたダイスの目、[1]以降がそれで発生するムードとアクションの組み合わせ全て。
これの中から、「赤〇」というものだけ抜き取った変数を作成する。
@eval exp="f.hoge=f.kekka.join('').match(/赤./gm)" cond="/^(?=.*赤).*$/.test(f.kekka)"
日本語訳:
hogeという変数に
kekkaの配列を1つにした(join)ものの中から「赤〇」(/赤./)からmatchしたものを配列で入れる。
ただし、1つ見つけて終わるのでなく、配列全てを検索(m)し全ての結果を入れる。(g)
なお、上はkekkaの配列の中に「赤」という単語が含まれている時だけ発生する。(cond)
次にこれが黒、青、緑、白、虹の場合でも扱えるように赤の部分を変数に変える。
なお、「赤」をそのまま「ティラノ変数」(f.とかsf.とかtf.)に置き換えるとエラーを吐く。
RegExp オブジェクトを宣言したものを代入する必要がある。
ちなこれをevalタグでやろうとすると「んなものは存在しませ~~~ん」ってスクリプトちゃんに吐かれるので、同じ効果のiscriptタグでJS空間を作成してそれで作る。
@eval exp="tf.mdc='赤'"
[iscript]
var pattern= new RegExp( '^(?=.*'+tf.mdc+').*$' );
var pattern2= new RegExp( tf.mdc+'.','gm' );
if(pattern.test(f.kekka)){
f.hoge=f.kekka.join('').match(pattern2);
};
[endscript]
iscriptではcondが使えないので、ifで囲ってあげる。
なお、new RegExp(‘tf.mdc.’ , フラグ)とすると間違い。
ティラノ変数はティラノ変数のみで入れる。
つまりパターンには tf.mdc+’ . ‘
と入れる。
んで、今回のifはfalseの事を考えなくていいので
if(pattern.test(f.kekka))f.hoge=f.kekka.join('').match(pattern2);
と1行でOK。
これでtf.mdcの文字列が切り替わるだけで処理が切り替わるようになった。
次はこれを使って昨日の分をマクロにして赤=CTFZをはじき出せるようにする。
修正。CSVの中身は 文字数字 の順だと思っていたが数字文字だったため、
var patterm2 = new RegExp( tf.mdc+'.','gm' );
↓
var patterm2 = new RegExp( '.'+tf.mdc,'gm' );
に変更。
f.hogeから数字だけを抜き取り適用
@eval exp="f.hoge=f.hoge.join('').match(/\d/g).join('')"
ちなみにmatchはobject(配列)だとメゾットとして対応していないので、joinで文字列に変更して行わせた後、配列にされるからjoinでobjectから数字にしている。
この数字だけのhogeをf.tfの代わりとして代入。
計算機は正常に動いたので、次は色ごとにZTFZを配列させていく予定。
最終的に
f.変数={}
f.変数[’黒’]=[1,2,3,4,5,6]
f.変数[’赤’]=[1,2,3,4,5,6]
f.変数[’青’]=[1,2,3,4,5,6]
f.変数[’緑’]=[1,2,3,4,5,6]
f.変数[’白’]=[1,2,3,4,5,6]
f.変数[’虹’]=[1,2,3,4,5,6]
という形に落とし込む。
幸子のデートプラン(仮)
ゲームデータ初期段階作成完了設定、仕組み、シナリオの案だし画面構成
キャラデザ
衣装デザイン
データ系
衣装データその他
素材導入シーン完成
お着換えシーン ←今ココ
デートシーン
リザルト画面
EDまで作る
まとめ
今週休み
じゃんけんロワイヤルZ(仮)
ゲームデータ初期段階作成設定、仕組み、シナリオの案だしIPカードの効果のバランス調整。
全種類の能力確定。
テストバトル用の素材作成開始。テスト環境の充実化スキルの適用
1-3人目4人目
チートの適用
01-03「シロ」「ミント」「タクト」04「レオ」 ←今ココ
-13
14
スペシャルの適用New!コマンド入力による選択
EDまで作る
仮立ち絵作成
まとめ
今週休み
スタラノ~スタイリッシュカードバトル「ラノベ」~
■アップデートver3予定表■
新ルール
ない正解
エース(ドロー撤廃)
フリーモード
ルール変更モード ←いまここ
キャスト変更モード
タッチ操作の不具合修正
その他
スマホで画面落とした時にゲームがストップするようにする
まとめ
今週休み
33週目まとめ
AMD'sに全集中した週でした。しすぎて体調崩しました。
やりすぎもよくないね。
1日目を300%やって2日目が5%になって3日目が50%だと長期的にみて不利なので、やっぱり毎日少しずつ同じペースでやってこう。
でもなんやかんや、今週の予定を全てこなした手腕は褒めてほしいの。
来週はナナ色ソウサクというイベントです。
専用ページも作り始めました。
パーティ会場B(全年齢スペース(2)) い-3です。
このページを贔屓にしてもらってる人は見新しい情報はありませんが、新規ファン獲得のためと飲んでください。
あと、当日お越しいただけた人にエアスケブやるような気がします。
サークル内左上の掲示板に【エアスケブ】から文章を始めてもらってリクエストしてください。
なお内容次第でお断りの可能性があるのと、描いた奴はツイッターに晒します。
同日AMD'sの1年前から告知してる公開日であります。
大丈夫か?
バッジ獲得RTAを配信の中で触れられました。
同時並行イベント
今日のさっちゃん(返信部位で過去絵追えるよ)
第二回フリコン端からやってく奴
今週は新規0件です(7周目)
プリンセスウイングやりました
プリンセスウイングのリプレイ書き始めました。
ティラノ技術部
今週はティラノ製ゲームを遊んでないです。(休み)
今週のぼやき(と解決)
プリンセスウイングの公式NPC美空会長、お疲れさまでしたセッション
気分が乗ったらGMがリプレイ書くかもしれないってので期待。
いい意味でも悪い意味でも。貧乏くじしか引かないっていう人は自分自身が貧乏くじの可能性はありますね。
正規表現。ありませんでした。
余り知られてないけど、1<=2, a<=b, あ<=い は全てTRUEです。
フリゲ2021にバッジ獲得RTA、スタラノがそれぞれ参加してます。
新しくアカウント作らないといけなかったのは盲点でしたね。
普通に面倒でやめた例いっぱいありそう。
これを小学生の時に毎年あがる議題にすれば世界平和になると思う。
時々忘れるやつ。
ふつう、みんな、だいたい、いつも、だと思う。
これら全部、人によって度合いが変わる言葉。
だいたいこれ。
何故かバズった。
奏音のPCデータを引用RTでまとめてるので微妙に困るバグ。
欲しい本がなかったり店がつぶれてたり。マイナー本の新発売に本屋走るっていう人が絶滅危惧種なので絶滅します。
私のGMプロフィールです。レベル99です、対戦よろしくお願いします。
元ツイ 元ツイ2 DLsiteがフリゲの取り扱い始めたそうな。同日にVtuberがコラボするからVtuberのエロ同人削除したって騒がれたのでせめて別日にやってほしかったぜ。
リスク回避の意味でも50円でも有料にした方がいいような気がする。
スタラノver3から登場予定の新キャラでした。オリキャラ。
ナナ色ソウサクで初お披露目すると思います。
では応援よろしく~('ω')ノ
この記事が気に入ったらサポートをしてみませんか?