~~ツクール編集に使える小技を紹介していきます~~

tkoolbridgeに関することはツクールブリッジの使い方へどうぞ



イベント中にshiftイベント(ダッシュ等)が割り込まないようにする方法


コモンイベントを二つ使う

コモン①
開始条件が並列処理のスイッチ[SHIFTイベント]がONの時で
◆キー入力の処理:[0001]
◆条件分岐:変数[0001]が7
 ◆スイッチの操作:[0001:イベントスタート]をON
:分岐終了

コモン②
開始条件:[0001:イベントスタート]がON 自動的に始まる
(ここにshiftイベント)
◆スイッチの操作:[0001:イベントスタート]をOFF

これでイベント中にSHIFT押してもイベントが終わるまでは割り込まれない。




変数の操作:その他,MIDIの演奏位置(Tick)の使い道


33 名前:カモシカ♂[] 投稿日:2007/01/11(木) 19:57:37.02 ID:nEBo5ebH0
あれはMIDIが開始したばかりか、それ以外っていう分岐に使えるから有効だぞ。
データをロードしたばかりに通る場所に処理を噛ませれば、今ロードしたばかりなのか
それともプレイ中に単にそこを通っただけかの区別が可能。

クリア後にセーブさせてエンディング→データロードしたらおまけ、なんて使い方だな。




戦闘の高速化


1、データベースの用語集で制御文字が使えるメッセージがあります。

制御文字が使えるメッセージ文は以下のメッセージです。

  • 勝利時メッセージ
  • 経験値&ゴールド獲得
  • アイテム獲得

制御文字の細則はツクールのヘルプを参照してください。

2、戦闘開始終了時を瞬間表示にする場合のテクニック

フェードアウト/インの代わりになるピクチャー表示を
定期コモンで割り込ませれば瞬間消去表示の違和感が減ります。
(例:戦闘開始直前にスイッチON→真っ黒な320x240絵を0.X秒で透明度100→0%)

・機能拡張


文章表示と選択肢の最大文字数を増やせたりするけど製品版と一緒に使ってね

VIPRPG専用機能拡張体験版
ttp://hokanko.run.buttobi.net/cgi-bin/src/up0111.zip




変数の番号の変数の使い道


使い方はわかっても使い道はわからない変数の番号の変数。


 1.順番を入れ替える

4つの値がそれぞれ変数0001~0004に格納されていて、
プレイヤーが4つの内1つを選んだあと、さらにもう1つを選ぶと
それら2つの順番が入れ替わる(変数0001~0004の内2つの値を交換)処理を例として考えてみる。
この処理は交換を行う部分が条件分岐だけでやろうとすればかなり面倒くさいが、変数の番号の変数を使えば大幅に簡略化できる。

①まず4つの内1つを選択するとき、
 1番を選んだ → 変数Aに1代入。
 2番を選んだ → 変数Aに2代入、とそれぞれ行う。
②もう1つを選択するとき、
 1番を選んだ → 変数Bに1代入。
 2番を選んだ → 変数Bに2代入、とそれぞれ行う。
③変数Cに変数Aの番号の変数を代入、変数Aの番号の変数に変数Bの番号の変数を代入、
 変数Bの番号の変数に変数Cを代入。

これでおしまい。パーティキャラの順番を入れ替えたいときとかに使える。
ちなみに4つの値が変数0053~0056とか中途半端なところに格納されていても、
1番を選んだ → 変数Aに53代入、2番を選んだ → 変数Aに54代入、という具合にすれば問題なし。


 2.5人の敏捷性の値を降順に並べる

①変数0001~0005にそれぞれの敏捷性を与えて、
 変数0006~0010にそれぞれ1,2,3,4,5を代入。
 変数Aに1代入、変数Bに2代入。
②変数Cに変数Aの番号の変数を代入、変数Dに変数Bの番号の変数を代入。
 条件分岐で「変数Cが変数Dより小さい」なら、AとBの値を入れ替える↓
 変数E(Cでもいい)に変数Aの番号の変数を代入、
 変数Aの番号の変数に変数B番号の変数を代入、変数Bの番号の変数に変数Eを代入。
 変数AとBを5加算して、再び入れ替え。↑のこぴぺでおk。その後変数AとBを5減算。
③分岐終了後、変数Bを1加算。
 条件分岐で「Bが6以上」なら、変数Aを1加算、変数Bに変数Aを代入、変数Bに1加算。
 条件分岐で「変数Aが5以上」なら、処理を終わらせる。それ以外なら②に戻ってループ。

処理が終わると、変数0001~0005に値が降順に並んでいる。
変数0006~0010にはそれぞれ誰が何番目だったかを示す値が格納されている。
(変数0003が一番大きい値だったら、変数0006に3が格納されている)


 3.自作戦闘などでの反復作業を減らす

例えば自作戦闘で、敵が最大10匹出てくるとして、能力値を代入する際にいちいち敵HP1にn代入、敵HP2にn代入、敵HP3にn代入、とか超面倒くさいって思ってる人へ。

①敵10匹のHPが変数0021~0030にそれぞれ格納されるとして、まず変数Aに1代入(カウント用)。変数Bに21代入。
②敵HPを代入する処理は変数Bの番号の変数にHPを代入でおk。
③変数AとBに1加算。変数Aが敵の数を上回るまでは②へ戻ってループ。

もし敵のHPが0009、0024、0221、などバラバラに格納されていた場合は、
②の最初で、条件分岐で「変数Aが1」なら変数Bに9を代入、「変数Aが2」なら変数Bに24を代入、としていけばいい。
少し面倒だが敵の種類毎に敵の数だけ能力値を代入していくよりは遥かにマシ。

攻撃力や防御力なども同じように。ただ、キャラクターの動作指定はイベントIDが、ピクチャー関係はピクチャー番号が変数で指定できないので諦めよう。




可変乱数


スレで話題になった乱数の範囲を変更する乱数とその偏り防止について

  • 0~Aの乱数の作り方

変数B=0~999999の乱数を用意
変数BをA+1で剰余

条件が変わるごとに範囲の違う乱数を使いたい時に使える。

例えば変数A=4とすると
B→0,1,2,3,4,5,6,7,8,9,10,11・・・
これをA+1=5で剰余すると
B→0,1,2,3,4,0,1,2,3,4,0,1・・・
となるので0~4の乱数が出来上がる。


766 名前:以下、名無しにかわりましてVIPがお送りします[] 投稿日:2011/09/07(水) 18:38:37.80 ID:OfY+EcRW0
Bに999999を代入
BをA+1で剰余(Bが誤差分になる)
ラベル1
0~999999の乱数Cを作る
Bを引く(誤差分がマイナスに行く)
条件分岐→もしCが-1以下だったらラベル1へ
A+1で剰余

変数とラベル一つずつ増えたけど偏り回避できたぞ


↑この方法で偏り回避ができる。
ツクールの乱数自体に偏りがないことがその後証明された




特殊な装備 あれこれ

データベースいじくっても設定が出来ない、でもあんな装備をツクりたい…
そんな望みを抱くとも、どうすればいいか分からない人、必見ですぞ。


1.グラフィックが変わる装備【EASY】

ファルコンが専用装備「ヒーロースーツ」「ヒーロースーツEX」を装備している間、
歩行グラと顔グラが、ヒーローっぽいものになる場合を例に説明。

コモンイベント
イベント開始条件:定期的に並列処理する
出現条件スイッチ:特になし
用意するもの  :素材
◆条件分岐:ファルコンがパーティーにいる
 ◆条件分岐:ファルコンがヒーロースーツを装備している
  ◆主人公の顔グラフィック変更:ファルコンをファルコンHERO1-1に変更
  ◆主人公の歩行グラフィック変更:ファルコンをfファルコンHERO-1に変更
 :それ以外の場合
  ◆条件分岐:ファルコンがヒーロースーツEXを装備している
   ◆主人公の顔グラフィック変更:ファルコンをファルコンHERO-EX1-1に変更
   ◆主人公の歩行グラフィック変更:ファルコンをfファルコンHERO-EX-1に変更
  :それ以外の場合
   ◆主人公の顔グラフィック変更:ファルコンをファルコン1-1に変更
   ◆主人公の歩行グラフィック変更:ファルコンをfファルコン-1に変更
  :分岐終了
 :分岐終了
:分岐終了
条件分岐の中に条件分岐を入れて…といった具合に処理を組みましょう。
条件分岐のこういった操作は、イベントを作る上で何よりも重要な操作になりますので、知らなかった人は覚えるように。


2.ステータスが変化する装備【NORMAL】

エンリュウ専用の装飾品「脳筋バッジ」を装備している間だけ、
「攻撃力2倍」「精神力半減」「状態:アホ」になる場合を例に説明。

コモンイベント
イベント開始条件:定期的に並列処理する
出現条件スイッチ:特になし
用意するもの  :変数2コ、スイッチ1コ
◆条件分岐:エンリュウがパーティーにいる
 ◆条件分岐:エンリュウが脳筋バッジを装備している
  ◆条件分岐:スイッチ[0001:処理済み]がOFF
   ◆変数の操作:[0001:汎用変数A]代入, エンリュウの攻撃力
   ◆能力値の増減:エンリュウの攻撃力をV[0001]下げる
   ◆変数の操作:[0001:汎用変数A]乗算, 2
   ◆能力値の増減:エンリュウの攻撃力をV[0001]上げる
    ◆変数の操作:[0001:汎用変数A]代入, エンリュウの精神力
    ◆変数の操作:[0002:汎用変数B]代入, エンリュウの精神力
   ◆能力値の増減:エンリュウの精神力をV[0001]下げる
   ◆変数の操作:[0001:汎用変数A]除算, 2
   ◆能力値の増減:エンリュウの精神力をV[0001]上げる
   ◆状態の変更:エンリュウをアホにする
   ◆スイッチの操作:[0001:処理済み]をONにする
  :分岐終了
 :それ以外の場合
  ◆条件分岐:スイッチ[0001:処理済み]がON
    ◆変数の操作:[0001:汎用変数A]代入, エンリュウの攻撃力
   ◆能力値の増減:エンリュウの攻撃力をV[0001]下げる
   ◆変数の操作:[0001:汎用変数A]除算, 2
   ◆能力値の増減:エンリュウの攻撃力をV[0001]上げる
    ◆変数の操作:[0001:汎用変数A]代入, エンリュウの精神力
   ◆能力値の増減:エンリュウの精神力をV[0001]下げる
   ◆能力値の増減:エンリュウの精神力をV[0002]上げる
   ◆状態の変更:エンリュウのアホを解除する
   ◆スイッチの操作:[0001:処理済み]をOFFにする
  :分岐終了
 :分岐終了
:分岐終了

※上記の2.のイベントは、途中でレベルアップしたりすると数値がおかしくなったりする、 不完全なイベント です。
こちらの脳筋バッジというksgを参考にしながら、自分で工夫してイベントを組んで見ましょう。(丸投げ



デフォ戦でのあれこれ

ふつーのデフォ戦に関するあれこれですね。あと特にない。

1.部位が存在するモンスターの表示

RTP2000の魔神(部位として本体、右腕上、左腕上、右手下、左手下)で
出現するときだけは「魔神」、後は「(各部位の表示)」を例に説明。

敵グループ(バトルイベント)
材料(敵)
  • RTP魔神(グラは全体が写ってるやつ)
  • RTP魔神の各部位(もちろんグラは各部位のやつ)
出現のやつ
RTP魔神(全体)⇒最初から出現
RTP魔神各部位 ⇒途中から出現(あとちゃんと元のやつにかさねておく)

バトルイベント
(ターン[0])
◆敵キャラの出現:2:右腕上
◆敵キャラの出現:3:右腕下
◆敵キャラの出現:4:左腕上
◆敵キャラの出現:5:左腕下
◆敵キャラの出現:6:RTP魔神本体
◆敵キャラの状態の変更:1:RTP魔神を戦闘不能にする

(敵キャラ[6:RTP魔神本体]のHP[0]%)←当然だけど本体が0の場合
◆敵キャラのHPの増減:2:右腕上のHPを99999減らす
◆敵キャラのHPの増減:3:右腕下のHPを99999減らす
◆敵キャラのHPの増減:4:左腕上のHPを99999減らす
◆敵キャラのHPの増減:5:左腕下のHPを99999減らす

ごめんエターなった


ブライアンでもわかるmp3、wavファイルの圧縮法


いるもの

午後のこ~だ
Rip!AudiCO(シェアだけど期限過ぎても使える)
圧縮したいmp3とかwavファイル



じゅんび

  • こ~だのほう
設定→詳細~→出力モードを適当な値に(軽くしたければ強制モノラル)
kbit/secを適当な値にする(軽くしたければ少なく)
  • Rip!AudiCOのほう
編集→出力先を選択→適当に出力先を選ぶ(デスクトップとか)
音質→wave変換→設定値を適当な値にし音量ノーマライズにチェック


やりかた

  • mp3の場合(こ~だ使用)
1.mp3デコードでwavに
2.mp3エンコードでmp3に
3.mp3のプロパティ開いてIDタグついてたら消す
4.デキタ\(^o^)/


  • wavの場合(audiCO使用)
1.ステータス部分の下のwave変換タブをクリック
2.空白部分に変換したいwavとかmp3をドラッグ&ドロップ
3.実行
4.デキタ\(^o^)/
AudioEncorderで量子化8bitで変換するともう少し圧縮できる



  • wavをADPCMにしたい人用(効果音みたいな短いのはツクールが読んでくれない可能性がある)
1.Yamaha ADPCM ACM ドライバ Ver.1.0.0を落とす
2.スタート→プログラム→アクセサリ→サウンドレコーダを開く
3.エンコしたいwavを開く
4.名前をつけて保存→変更→形式でYAMAHA ADPCMにし
属性を適当な値にして保存
4.デキタ\(^o^)/


レス

247 名前:以下、佐賀県庁にかわりまして佐賀県民がお送りします[] 投稿日:佐賀暦2006年,2006/11/03(佐賀県と汚職) 01:48:06.73 ID:KrSOwMnC0
MP3変換はRipAudioじゃなくてまともなMP3変換ソフト使えよ
しかも32KHzとか中途半端なんだよ
あとWAVEは折角ツクール側が対応してるんだからADPCM使えよ

でも音質気にするならADPCMに変換するのは元が16ビットのWAVEだけにしておいた方がいい
8ビット→4ビットADPCMの変換は劣化がひどい
らしい


VXace作品をちょっとだけ軽くする

VXAceのdllはRTP側にコピペすれば
VXace作品を投下時にdllを含めなくても動く

XPとVXはdllがRTPに含まれてたけど
そのおかげでdll修正時にRTP側をアップデートする必要があった
ところが、そのアナウンスが十分でなくて結構対応に追われた模様
VXAではdllをゲーム側に含めるようになったけど
アップデート時に古いdllがゲーム内に残ってしまうっぽい
ので古いdllは削除しましょう



ここに書いてほしいテクニックとかを書いておけばだれかが書いてくれるかも

  • 小型船に乗ったときグラ変更とか -- 名無しさん (2011-11-11 20:26:15)
  • 武具装備で状態異常になったり(外すと解除みたいな) -- 名無しさん (2011-11-16 16:56:13)
  • 武具装備でしたキャラのグラ変とか -- 名無しさん (2011-11-17 16:38:50)
  • 無理だと思うけど顔グラを一度に複数表示できる? -- 名無しさん (2011-11-17 16:41:48)
  • 条件分岐で「○○が○○を装備している」みたいなやつがないから、誰かこれと同じような効果を持ったやつ作って書いてくれ -- 名無しさん (2011-11-17 16:46:07)
  • 一度に複数のタイマー使用って可能? -- 名無しさん (2011-11-18 16:23:48)
  • 条件分岐「(アイテム)を持っている」についてだが、「(アイテム)を○○個持っている」にするというような効果のあるテク -- 名無しさん (2011-11-18 16:26:52)
  • 顔グラの複数表示はピクチャー使えば良くね? -- 名無しさん (2011-11-21 16:52:40)
  • 小型船に乗ったときのグラフィック変更は「条件分岐」の「○○に乗ったとき」を使えばできるだろ。 -- 名無しさん (2011-11-24 16:10:40)
  • 武器・防具の装備で○○は「条件分岐」の「○○が○○を装備している」で出来るから。つかさ、これあるからね。もう一度調べてみろよ。 -- 名無しさん (2011-11-24 16:13:09)
  • 武器の戦闘アニメについて、単体ではなく、複数一括ってできないのかね。 -- 名無しさん (2011-11-24 16:16:16)
  • ↑ 普通にできますから。 -- 名無しさん (2011-11-25 16:07:00)
  • 武具でグラ変書いといたよー。状態異常の方もコレ参考にすれば出来ると思うからガンバレ。 -- 名無しさん (2011-11-27 15:21:15)
  • 文章表示中に(キャラが喋ってるとき)、Shift押していつでもセーブできるような機能はできない? -- 名無しさん (2011-11-30 10:36:25)
  • 例えば装備すると攻撃力が2倍になるといったようなやり方を知っている方はいませんか? -- 名無しさん (2011-12-01 16:23:45)
  • ↑書いたよ -- 名無しさん (2011-12-06 21:23:29)
  • ↑ありがとうございます -- 名無しさん (2011-12-07 16:13:24)
  • すみませんが、使用するとMP50回復するがHP100減少するといったアイテムの作成方法を知っている方はいませんか? -- 名無しさん (2011-12-07 16:22:41)
  • 種(能力値を変化させるやつ)についてですが、一度に50以上(何%)増減するといったテクニック誰か知りませんか?(できれば一定時間のみ効果がある方も書いてください) -- 名無しさん (2011-12-07 16:57:12)
  • デフォ戦で敵に2回行動とらせるのってどうしたらいいん? -- 名無しさん (2011-12-08 20:48:22)
  • 上のやつ、できなかったので編集しました。 -- 名無しさん (2011-12-12 17:01:13)
  • ↑ありがとうございます。ちゃんとチェックしないで書いててホント申し訳ない。 -- 名無しさん (2011-12-12 23:29:44)
  • 本体以外の部位が存在するモンスターについてですが、デフォ戦闘のはじめの「○○が出現!」みたいなやつでそのモンスターの名前(一つだけ、「~の本体」などが入ってない)を表示させるいいテク -- 名無しさん (2011-12-14 16:09:18)
  • ドラホコでついてくる人に当たると何か起きるみたいなことってできますか? -- 名無しさん (2011-12-19 15:51:32)
  • ふぇ -- 名無しさん (2011-12-19 15:54:27)
  • イベントAがあったとして、BやCなどはAから逃げる。といったようなテクをお願いします。 -- 名無しさん (2011-12-19 16:03:34)
  • VXにランダムに敵2体以上選んで攻撃する特殊技能があったんだけど、それって2000で再現できる? -- 名無しさん (2012-01-10 16:47:37)
  • アイテムの売買についてですが、ポーションを40Gで買うことができるとして、あるところではそのポーションを20Gで買えるという風にすることはできますか? -- 名無しさん (2012-01-10 16:53:21)
  • ↑できればデフォ店システムでお願いします。 -- 名無しさん (2012-01-11 16:27:33)
  • 未だに『キー入力の処理』が理解できません、誰か詳しく教えてください!>< -- 名無しさん (2012-01-16 16:18:10)
  • データベース内にある状態異常についてですが、あの文字色などは何で決まりますか? -- 名無しさん (2012-01-16 16:19:40)
  • ↑↑YADOTってサイト見るといいよ。 ↑選択中のシステムグラフィックで決まる。色覚異常じゃないならそれくらいは自分で確認してね。 -- 名無しさん (2012-01-25 05:35:38)
  • ↑5同じ名前で値段が違うアイテムを2つ(A、B)用意しといて、Bを売ってる店では売買処理の後にBの所持数を変数に代入→B減らす→A増やすとやればいい。 -- 名無しさん (2012-02-03 07:03:58)
  • ↑すみません。ありがとうございます。よく考えてみたらその方がいいですね。 -- 名無しさん (2012-02-08 15:40:38)
  • ↑ごめんなさい。上のすてたす変更装備についてですが、装備する前の能力値が奇数の場合、装備(効果反映)⇒外す(効果反映)で数値が最初のと違うものになりました。時間があったら直しておきますので。 -- 名無しさん (2012-02-20 17:01:25)
  • とりあえず戦闘のやつは書いといたけど他思いつかないから誰かやっといてくれ -- 名無しさん (2012-02-28 16:14:16)
  • sa -- 名無しさん (2012-04-02 09:57:51)
  • tch -- 名無しさん (2012-04-02 10:02:03)
  • くそみそ -- 名無しさん (2012-06-18 18:16:18)
  • ウホッ -- 名無しさん (2012-07-25 16:06:22)
  • 変数の操作:その他,MIDIの演奏位置(Tick)の使い道についてだが、いまいち"セーブさせてエンディング→データロードしたらおまけ"という使い方が分からない。 -- 名無しさん (2012-09-03 16:05:31)
  • 能力に関しては通常レベルでなくアイテムやフラグでパラメータ管理したら可能だと思う筋力というアイテムや素早さなどアイテムかフラグで管理してやればできると思うよ -- DANTE98 (2012-12-09 18:27:32)
  • 誰でもいいからもうちょい分かりやすくMIDIのやつのクリア後セーブのエンディング⇒データロードでおまけを教えてくれ!!1 -- 名無しさん (2013-03-05 11:49:27)
  • 勝利メッセージだけでなく敗北メッセージのほうでも制御文字が使えるみょん。 -- みょん (2016-08-01 02:04:09)
名前:
コメント:

添付ファイル