忍者ブログ

でんきみちブロgu。(あ行。)

大変古い古すぎるレビューの置場。お絵かき掲示板消失により3年ぶりに雑記に転用(2017年)。現在はノベルゲーム制作とライブ2Dがマイブーム。

ティラノビルダー。システム変数。

ティラノビルダーでの変数管理窓は大変便利でフラグの管理に重宝しているのですが。
「システム変数」を使いたかったんですけど
いままでよくわからなかったんですよ…。

普通のフラグはゲームを終了して再起動したら初期値にもどりますが
システム変数はゲームを終了して再起動しても残っているフラグになるはず…

でクリア後のおまけをボタン、comdでフラグがあれば表示するようにしたくて
・変数管理で、endokのシステム変数にチェック入れて、
・クリア後部分に変数設定でendok 代入1 をして
・タイトル画面に
[glink target="omakegame" text="虫取りゲーム"
size=20 width="150" x=80 y=80 cond="f.endok ==true"]

を入れました。
表示されるけど再起動したらリセットされてるー。
cond=はglinkボタンをフラグのtrue、falseに応じて表示させるタグです

でもボタンのタグをsf.endokにするとフラグ効かなくて表示されないー

のでわからなくて2作目のゲーム作った時はシステム変数あきらめたんですが…

最近分かった
チェックボックスにチェック入れただけじゃだめだったんですね。


そして変数設定もティラノビルダーのを使うと「f.」しか設定できてないんですよ…
他にもやり方あるのかな?わかんない…


フラグには種類があって
f.フラグ名 ゲームフラグ セーブデータロードで上書き
sf.フラグ名 システムフラグ ゲーム再起動後も残るフラグ
tf.フラグ名 一時変数 ゲームを再開しても復元されない
ので、システム変数で条件出したいときは
[eval exp="sf.endok = 1"]
とティラノスクリプトでシステムフラグを記述(画像のティラノスクリプト部分)

としたうえで条件表示は
cond="sf.endok ==true"


としないとダメでしたね…
sf.を定義してsf.で条件を指示するということです。
あたりめーなことなんでしょうけど、
わかるのにたどり着くのに時間かかったよ…。_(:3」∠)_

ちなみに条件表示で画像ボタンをつかいたいときは
[if exp="sf.ep4 == true"]
[button name="button5" graphic="ep5.jpg"  enterimg="ep5on.jpg" target=*ep5 x=300 y=400]
[endif]
(enterimg="ep5on.jpgはカーソルのってる時の画像を指定)

グラフィカルボタンなら
[glink target="omakegame" text="虫取りゲーム" 
size=20 width="150" x=80 y=80 cond="sf.endok ==true"]

となります。_(:3」∠)_

あちなみに、cond="f.torinirei ==false"のとき表示させたい場合
フラグは1か0でtrue、falseの判定が可能ですが
システム変数だと初期値が無い状態になるのでfalseで出そうとすると存在ないので
でませんようです。要注意。


※追記
ブラウザゲームはデータがローカルストレージに保存されます。
フラグもここに保存されるのでシステムフラグを多用するとセーブデータと一緒で
保存領域を結構食うみたいです。

ブラウザのローカルストレージの容量制限は5MB程度らしく
セーブ5枠使うと1MBくらい行きます。

プレイヤーさんが他のゲームも遊んでらっしゃったりすると余裕ないですね。
削除してもらえればいいんですけど。

システム変数を使いすぎると負担になるみたいです。

*************
更に追記
セーブの用量はセーブのサムネの画質を下げると削減できます
デフォルトでは中になっているので
ゲームコンフィグのセーブのところで画質を低にしておくと
5枠使っても600~800KBくらいにはなるかな
システム変数の用量は検証してません。



****************************
更にさらに追記
このシステム変数の記事を書いた時はビルダー1.70でしたが
ビルダー1.80では、変数管理窓のシステム変数にチェックするだけで
変数タブを使ってもsf(システム変数)として処理されるようになっていました。
ジャンプの条件も同じです!
すごい手軽になってるヾヽ(´▽`)ノシ
ありがとうございますー









PR

ティラノビルダー。[wait]早くなる問題とスタッフロール。

現在、2名で共同制作している制作中のサウンドノベルで

エンドロールで名前をロールさせたくて

http://tyrano.wiki.fc2.com/wiki/魔法・エフェクトを表示する試み

こちらのティラノスクリプト製作テクニックwiki様のロールのタグの部分をお借りして
つくることができたのですが。


1度見た後に2回目としてもう一度再生すると
ロール中に次の処理に移ってしまうバグが発生しました。

どうも
[wait time=1]
がミソだったみたいで

waitタグを使ってミニゲーム作ろうとしたときも失敗したんですが

おなじwaitタグを繰り返し使うと
wait時間が短くなってしまうみたいなんですね…
waitがだんだん早くなる、早押し……(後述


そこで助かったのが

[wait_cancel]

公式タグリファレンス→http://tyrano.jp/tag/


タグ。スタッフロール以前にも他の部分でもwait使ってたので
このタグをつかってスタッフロールを挿んだら
何度再生してもwaitが縮まらず動作するようになりました。゚(゚´ω`゚)゚。


ゲームの組み込み作業って…詰まって調べてる時間のが長い気がする…_(:3」∠)_
(ビルダーバージョン1.7.0)



*追記****************
時限性のウェイト活用選択肢ミニゲームについてですが
こんな感じです。




画像ボタンが4つ出ているときに1秒立つと
次へ飛びます、もしくは1秒中に画像ボタンのどれかを押すと
ボタンのジャンプ先に飛びますが、
飛んだ先にもウェイト1秒が残っていて
ウェイトカウント0になると勝手に先に進んでしまいます。

のでジャンプ先すべてに[wait_cancel]
を入れておくと
ウェイトの残り時間をキャンセルすることができます!

ただしビルダーver1.70だと、
ウェイトはキャンセルされてもいウェイトが残ったままだと
メニューボタンが押せなくなります

ver1.80以降大丈夫になってました↑

あとウェイトキャンセル使わないで
同じウェイトをなんども通ると
使用済みウェイトとしてウェイト時間がどんどん短くなります。
ver1.70ではどんどん早くなる早押しになってしまい大変でした
1.80では検証してないです。


いろいろ試しながら落としどころの作り方を探していくしかないですね!!










Live2Dのアニメーション動作後の静止時間

ライブ2Dアニメーターで作ったモーションを
ビューアー等々で再生すると動作後に静止時間が発生する原因がわからなくて
困ってました…。


緑のバーとピンクのバーは合わせてたんですよ。
ピンクは表示時間で緑はモーションの時間なので
でも静止時間発生するしフェードいじっても改善しないしって思ってたら
ある日…


水色の濃い部分も動くことを発見!!
境目をスライドしたら緑のバーも動く…

水色の濃い部分が無くなるように緑とピンクのバーのところにぴったり
合せたら、静止時間の発生が無くなりました!!!(;▽;)


わかりにくい…。_(:3」∠)_

追記(11月24日)
・緑のバー 繰り返し再生する範囲
・ピンクのバー モデルを表示する範囲
・濃い水色の部分 書き出しで出力される範囲

のようです。_(:3」∠)_


ティラノビルダーにLive2Dを入れたら下半身消えた;▽;

ティラノビルダー1.7.0様(有料版)で
ありがたくゲーム制作をさせて頂いておりますこの頃。
Live2Dモデルを10体作って、いれたところ
なぜか3体、下半身が(下半分?3分の1くらい)消える、
(表示されない?)という現象が発生して積みそうになりました。



こんな感じに。ライブ2Dビューアー等では異常はなく全身うつってるし…
mocファイルとかjsonファイルを読み直しても改善しないし…
モデルから作り直すしかないかな…と思って数時間立ち止まった結果
やっと原因に気付けた!!_(:3」∠)_

 


正常なやつは横幅が太かった!!!(1500x1000)
下半身が消えた3体はPSDデータから幅が細かった(1500x720 or 680)
ライブ2Dモデラーのドキュメントサイズで横幅1000にしてmocファイルを
書き出しし直したらちゃんと全身出ました!!

ティラノビルダーに入れるときには縦横比率が関係あるのでしょうか…?



ティラノビルダー。CGモードを作る。

ティラノビルダーでCGモード作ろうとしたら
エラーでうまくいかなくてメモ帳と10時間ぐらいにらめっこすることになったので
書いておきます。
検索してでてくる内容も結構前のバージョンの用でそのまま使う事もできなかったので。
今使っているバージョンは1.7.0です。
(困ってる人に届け検索引っかかり用ワード→行目エラー、CGモード、作り方)

まずティラノでCGモードで検索すると
ティラノスクリプト公式のチュートリアルでcgタグの使い方が見れます

① bgimageフォルダに表示したい画像をいれる

画像が見れるようになるフラグを立てたいところに

② [cg storage="rouka.jpg"] とcgタグと画像名をいれて

③ cg.ksファイルの
[cg_image_button graphic="rouka.jpg" no_graphic="noise.jpg" x=60 y=100 width=160 height=140 folder="bgimage" ]

graphic="rouka.jpg" に表示したい画像名を入れるというもの。

folder=のところをいじったら他のフォルダからも参照できるようになるかもしれませんが
ほかにもbgimageから参照している部分がちょいちょいあるようで
私はわからなかったので、ゲーム中ではdefaultフォルダから画像表示で出してましたが
CGモード用の背景サイズの画像を用意してbgimageフォルダにいれました。


これでプレビューしたらフラグ回収したあとにCGモードが機能するよー
っていう説明でしたが
ビルダーだと、画像をクリックして表示されて CGモード閲覧状態に戻る時に
エラーがでました。
デバックモードではエラーのところで処理が止まっていて構文が表示されていないので
原因よくわからず…(表示されていても私の知識ではわからんかもだが…


わからなかったので、
ティラノスクリプトの準備で配布されてる
スタンダードパッケージの方のcg.ksファイルを開いて
コピペしたら、動きました。
(中身をコピーして、ビルダーの方のcg.ksファイルにコピペするのです
 プロジェクト名/データ/シナリオフォルダにあります。)

メモ帳であけると改行が無くて見にくいけど
いじるポイントは同じです。
背景とか変えたければ文の中から
[bg  storage="taitoruback.jpg"  time="100"  ](※2か所ある)を探して変えられます。
cgイメージボタンのいじるところも一緒
[cg_image_button graphic="end1.jpg" no_graphic="../../tyrano/images/system/noimage.png" x=60 y=295 width=160 height=140 folder="bgimage" ]
no_graphic=のほうは条件未解放状態時の画像、このリンク先にもnoimageの画像が入ってるのでそのままでます。


モドルボタンのジャンプ先がtitle.ksになっているので、ビルダーだとtitle_screen.ksになおす
[jump  target="*title"  storage="title_screen.ks"  ]
メモ帳編集のこれで問題なく動作するようになりました …わかるまでめっちゃ時間かかったシロート_( _´ω`)_

ただ…そのあとうっかり、ビルダーでcg.ksを開いてしまい
どうも上書き保存したら、また最初のところと同じ場所でエラーがでるようになりました…
ビルダーでは操作しない方がいいみたいです…(わからん~( ᐛ )


原因はわかんないんですが末の方の表示がかわってました
ティラノスクリプトのやつ↓
@jump storage=title.ks タイトルにもどるためのジャンプ
*nextpage
[emb exp="tf.page++;"]
@jump target="*cgpage"
*backpage
[emb exp="tf.page--;"]
@jump target="*cgpage"
*clickcg
[cm]
[layopt layer=1 visible=false]
[eval exp="tf.cg_index=0"]
*cg_next_image
[image storage=&tf.selected_cg_image[tf.cg_index] folder="bgimage"  ]
[l]
[bg storage="../../tyrano/images/system/bg_base.png" time=10]
[eval exp="tf.cg_index++"]
@jump target="cg_next_image" cond="tf.selected_cg_image.length > tf.cg_index"
@jump  target=*cgpage
[s]
*no_image
@jump  target=*cgpage
ビルダーで保存したやつ↓
[jump  storage="title.ks"  target=""  ]
*nextpage
[emb exp="tf.page++;"]
[jump  target="*cgpage"  storage=""  ]
*backpage
[emb exp="tf.page--;"]
[jump  target="*cgpage"  storage=""  ]
*clickcg
[cm  ]
[image storage=&tf.selected_cg_image folder="bgimage"  ]
[l]
[bg  storage="cgbg.png"  time="10"  ]
[jump  target="*cgpage"  storage=""  ]
[s  ]
*no_image
[jump  target="*cgpage"  storage=""  ]


末の方の表示、(関数かな?)が変わっていました。
@と[]はタグとしての機能は一緒なはずですが…
エラーが出るのはクリックして絵を表示したあとなので
まーこの辺のせいだと思うんだけど、ビルダーを使わないことで
エラーが回避できました。

原因に詳しい方でおしえてやるよーというひとは是非教えてください :(´◦ω◦`): 
サイトにメルフォとかあります :(;▽;):

ちなみにこの方法だとCGモードは機能しますが
CG閲覧中にでるサムネの比率がギュッてなってます。
比率をきれいにする方法までわかりません
あと背景画像扱いなので拡大表示されるときに比率が違うと画面サイズの比率にビョッーって
のばされます。(ので背景と同じサイズの画像を用意しよう。
私は妥協しました…いつか比率もいじれるようになりたいねー。

いまは比率いこだわるよりゲームの別の部分をつくります~~
背景画像が画面サイズにリサイズされない方法も知りたい…