レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
改造・制作スレ part2
-
改造・オリシナ制作などはこちらで。
過去に似たような質問があるかもしれないので
極力調べてから質問しましょう
前スレ
http://jbbs.livedoor.jp/bbs/read.cgi/computer/42292/1250722590/
-
シナリオ制作講座を読んでも分からないなら教えても分からないと思うが
-
wikiはかなり優しく書かれてるしあれを見て無理なら改造は難しいと思う
一部分だけの改造ならその方法は教えるが
-
>>199
どこ読んでんだよといわれても仕方の無いレベル
画像データ(キャラチップを固めたimage.dat)と戦場マップファイルは シナリオ製作ツール で作成します。
これはヴァーレン中物入れにあるヴァーレントゥーガ本体(Vahren.zip)に同封されてます。
スクリプトは普通のテキストエディタで編集できます。
画像素材(顔グラ、スキルアイコン、旗、背景)と音楽素材(BGMと効果音)は作者様の方で御用意ください。
なお、オリジナルシナリオフォルダに存在しない絵や音楽などの素材ファイルは、
自動的に標準フォルダ a_default の方から読みに行きます。
シナリオ製作講座より
ちなみに、メモ帳ならおまいさんのにも絶対入ってる
-
>>201
そんなこともないと思う
開き方さえ分かれば後は何も知らなくても気合でわかるレベル
-
数値変数の値をmsgやtalk内に
表示することはできないんだっけ??
計算結果を文中に入れたいと思ったのだけど。
-
無理だったと思う
勢力名とかも変数でmsgやtalk内に入れられると
勢力共通イベントが作りやすそう
-
skill hoge
{
func = missile
d360 = on
attr = fire
offset = fire
offset_on = on
}
この飛び道具同士当を相殺させたいのですが、当たり判定が異常になっていて見た目通りの場所で相殺されません。
現状では無理なのでしょうか?
ちなみにd360をoffにした場合は見た目通りの場所で相殺しました。
-
>>192
attackとmagicの強化魔法ではスキル所持の違いで対象外にする仕様にしていましたので、
次回はそれを無くして全ユニットに強化がかかるようにしようと思います。
>>193
これは申し訳ありませんが人材ユニットの死亡率を下げる為に
このままにしようと思います・・・
>>206
現verでは処理の軽量化の為に飛び道具の相殺では大雑把な当たり判定チェックを行ってましたので
次回更新時はきちんとチェックするように致します。
-
>>192
attackとmagicの強化魔法ではスキル所持の違いで対象外にする仕様にしていましたので、
(接近攻撃を持たないユニットはattak強化対象外にし、魔法非所持はmagic対象外にするなど)
次回はそれを無くして全ユニットに強化がかかるようにしようと思います。
-
すいません、質問です
マップ上のルート(routeとかroute_escとか)はどこでimage名を設定しているんでしょうか?
contextでは無さそうだし…
-
今の仕様で特定のキャラが揃うと連携必殺技を打つことってできる?
そういうのができなかったら今後できると面白いと思う
-
>>208
なるほど、そのためにmp=-1を使ってわざわざ魔法にする必要があったんですね。
表記と沈黙の関係だけだと思ってました。
対応して頂きどうもありがとうございます。
-
>>209
world.datのspotをつないでるところ
-
>>210
確かヴァーランドで実装してたと思う
ペガサスナイト三姉妹が揃うと、その戦場限定で一時的に必殺技を覚える
-
連携とはちょっと違うけどね
トライアングルアタック懐かし過ぎて吹いたわ
-
CUTIN = 画像ファイル名.拡張子
にできたらいいんじゃないかとちょっと思った
現状だとちょっと見にくいかな
-
すいません、勘違いしていました
route専用絵があると思ってた…
Char200とかでも出来るのかorz
>>212さん、有難うございました
-
>>213
確認してみた。サンクス。これだと特定人材が揃ったとき、
そのうちの代表ひとりが必殺持つとかできそうだ
-
応用すれば対ラスボス専用スキルとかも可能だね
-
質問です
移動先を表す矢印(前衛が赤、後衛が青のアレ)のimage名は何にすればいいんでしょうか?
度々の質問、申し訳ございません
-
青矢印がo_dest1N.png
赤矢印がo_dest2N.png
攻撃指定の矢印はa_systemフォルダ内
退却経路用の真っ赤なアイコンはroute_esc.png
ペイントで開くと右下にあるユニット選択時の白い丸は自動生成
-
>>215
カットインですが、skill構造体に
picture@(ユニット名) = xxx.拡張子
とすれば人物ごとに任意のカットイン画像を設定できます・・・
>>219
青色は、o_dest1N
赤色は、o_dest2N となってます。
-
かっこいい必殺技を作ろうと思いnextを多用していたのですが、
orderやyorozuなど、色々な部分が正常に動作しません。
nextで繋いだスキルは一部の動作が使えないというような事はあるのでしょうか。
-
確かpair_nextは動かなかった。
-
>>220-221
有難うございます
助かりました
こういうのはスクリプトに書かれて無いのが辛い…
-
>>222
だいたい使えるようにしているつもりですが、
もしかしたらいくつか不具合があるかもしれません・・・
上の方が述べられた通り、pair_nextは使用できません。
-
ver4.10では幾つか動作面の変更を行いました・・・
1、ウィンドウのボタン用の背景画像としてimageフォルダに
wbtn0.pngとwbtn1.pngを追加しましたので、それをオリシナ側にコピーしてください。
(a_defaultがある場合はそこから読み取るので必要ありませんが)
2、ドットがにじまない描画方式に戻しましたのでlinear_drawデータは無効となりました。
-
>>206
申し訳ありませんが、処理の軽量化の面から修正はせずに
d360スキルの当たり判定は元の大雑把なままにしてますのでどうか御了承ください・・・
-
ver4.10では、msg関数とtalk関数のテキストに数値変数の値を表示できます。
(例) msg(城壁値が&var&上昇しました。)
&数値変数& とすると数値変数varの数値がテキストに表示されます。
msg関数、talk関数内で使用できる特殊記号は以下の通りです。
@ クリックによる部分表示の区切り。改行する
# クリックによる部分表示の区切り。改行しない
$ 改行マーク
&数値変数& 数値を表示する
-
>>225
なるほどそうですか。
確認した限りでは、homingやarcは敵の方に向かわず、
next2にorderを付けてもランダムになり、circleでyorozuを付けても無視されました。
それと、d360をオンにしてrotateを設定すれば、画像が回転するんですよね。
nextではない直接発動させたスキルでも効かない気がするのですが。
-
>>229
すみません。
next_orderとrotateの不具合は修正しました。
homingとcircleのyorozuの不具合については後日に検証いたします・・・
なおnextのスキルは、つなげかたによってはターゲッティングのデータがリセットされるケースもある為、
あらぬ方向に向かう事があります・・・
-
ver4.10では、msg関数とtalk関数のテキストに変数の値を表示できます。
(例) msg(プレイヤーの勢力は&var&です。)
&文字変数& とすると文字変数varの内容がテキストに表示されます。
(例) msg(城壁値が&var&上昇しました。)
&数値変数& とすると数値変数varの数値がテキストに表示されます。
msg関数、talk関数内で使用できる特殊記号は以下の通りです。
@ クリックによる部分表示の区切り。改行する
# クリックによる部分表示の区切り。改行しない
$ 改行マーク
&文字変数& 文字を表示する
&数値変数& 数値を表示する
-
>>230
おお、迅速な対応をどうもありがとうございます。
orderとrotateを使えるようにしていただいただけでも、
強引に発生させていた部分の不正確さと、エフェクトに彩が加えられそうです。
-
ver4.10にて
next2 = a, b, c
next_order = on
rush = 3
}
としていたスキルがaを3連射するばかりでbとcが発生しなくなりました。
対処法など分かる方いらっしゃいましたら教えて頂けませんか?
-
>>233
next_lastを加えたり、timeと合わせてnext_intervalを設定してみてはどうでしょう。
私は両方を併用する事で発生の時間差を調整したりしてスキルを作っていますが…。
-
射程のばらつきって表現できるの?
-
放物線ならrandom_spaceがあるが、直進ならnext2で射程の違うスキルを用意ぐらいか。
-
射程だけいくつも変えた、同じスキルを並べてランダム発射とか
-
>>234
色々いじってみたのですが、やはりnext2に書かれた一つ目の物しか発生してくれません。
私が持ってる前のバージョン(ver4.00)ではちゃんと動作してくれるのですが。
next_orderを外せば2つ目以降も発生するのですがランダムになるので美しさが・・・
-
うーむ、仕様変更に伴うバグなのかな?
-
質問失礼いたします。
ユニットが放浪しているかを確かめる為にisRoamer関数を使用したのですが、
放浪中のユニットの陪臣であった場合、放浪していないとみなされてしまいます。
認識させる方法はないでしょうか。
-
>>240
isRoamerは放浪リーダーしか判別できないようになってます・・・
純粋な放浪人材判定(リーダーと陪臣の双方)の代用としては以下のようにしてください。
storePowerOfUnit(人材, @var)
if (@var == 0) {
// 処理
}
放浪人材の勢力は中立勢力であると見なされており中立勢力の識別子は空文です。
それを@varに代入します。
そしてif内の文字列比較式では0が空文と見なされますので、
この比較式で空文同士がマッチすると放浪人材であるいう仕組みです。
-
>>240
すみません。isRoamerは放浪リーダーしか判別できないようになってました・・・
-
>>233
申し訳ありません。
next_orderの挙動については以前のバージョンの方が間違ったままになってまして
それを修正したら実質的に仕様変更となってしまいました。
next_orderが適用されるのは、next_intervalを設定してnextスキルが順次発動される
ケースのみになりましたので、お手数ではありますがskill構造体の仕組みを修正して対処してください・・・
-
特定のマスターの国の部隊長全員にマスターと同じリーダースキルを与えるマスタースキル的なものを作りたいのですが
以下のようなものだとターンの最初にaddSkillをするとリーダースキルが毎ターン増えて10ターンもすれば増幅率がひどいことになってしまいます。
重複するスキルだけ覚えさせないような方法ってありますか?
if(isMaster(potoniku) == 1){
storePowerOfUnit(potoniku_r, @kuni)
storeLeaderOfPower(@kuni, @taityou)
addSkill(@taityou, ls_air)
clearVar(@kuni)
clearVar(@taityou)}
-
>>243
以前のnext_orderの仕様をああいうものだと理解して各スキルで多用していて修正が難しいのですが、
何とか別の関数で以前のnext_orderのような挙動を再現出来るように出来ませんでしょうか?
-
>>244
マスタースキルを削除→直後に追加という形にすれば解決するかも
-
ユニットの勲功値をイベントに使いたいのですが、
数字変数に代入する方法を用意出来ないでしょうか?
-
next_orderの仕様の件ですが、これまでの使い方だと「どこからでも発動できる無制限の枝分かれ」として使用出来ていた為、
以前の仕様の方がスキルの多様性、創作性という面からは非常に有効かと思われます……
これが無いと実質、最初の段階にpair_nextを使用しての分岐しか出来なくなってしまうので、スキル創作の幅が一気に狭まってしまうかと……
-
>>246
ありがとうございます!
思った通りの動作をするようになりました。
-
>>240
isRoamer()を放浪陪臣でも判別できるようにしました。
>>247
pushMerits(ユニット, 数値変数) を追加しました。
>>248
ver4.11で修正いたしました。
next_orderが以前の挙動をするようになりました。
-
観戦モードで忠誠の低いキャラが独立しまくるカオスな状況が見たいんだけど
loyal_borderやraise_yabo_bdrで設定しても
プレイヤー勢力しか影響受けないみたいでうまくいかない
あと倒されたら数ターン出撃不可みたいな設定って可能?
-
著作権についての話なんだけど、
下のサイトのfree midiってどこまでフリーなのかな?自分で見てみてもよくわからなくて。
連絡して聞くしかないのかな?
Free MIDI File Database
-
>>250
更新お疲れ様です。当方の勝手を聞いて頂いて申し訳ありません。
有難うございます。
-
>>252
多分それ耳コピとかしてるだけなんじゃない?
ビートルズとかクイーンあるよ。使ったらアウト
-
<あぼーん>
-
>>254
了解です。教えてくれてありがとう。
-
指定した勢力の一定レベル以下のユニットだけを選ぶ方法ってありますか?
pushLevelの関数を使ってもいい方法が思いつきません
-
set(base, 10)
storeUnitOfPower(勢力, @allunit)
set(idx, 0)
while(idx < countVar(@allunit)) {
storeIndexVar(@allunit, idx, @unit)
pushLevel(@unit, lv)
if (lv <= base) {
addVar(@choice, @unit)
}
}
文字変数choiceにレベル10以下のユニットが入る
-
訂正
set(base, 10)
storeUnitOfPower(勢力, @allunit)
set(idx, 0)
while(idx < countVar(@allunit)) {
storeIndexVar(@allunit, idx, @unit)
pushLevel(@unit, lv)
if (lv <= base) {
addVar(@choice, @unit)
}
add(idx, 1)
}
文字変数choiceにレベル10以下のユニットが入る
-
>>259
有り難うございます
wikiと照らし合わせてなんとか理解できました。
-
>>251
申し訳ありませんが両方とも不可能となってます・・・
-
当ゲームの為にシナリオを製作して下さいましてありがとうございます。
シナリオ作者さまへver4.20に関する仕様上の連絡事項を箇条書き致します・・・
1、ウィンドウスキン画像のサイズは自由です。128×128に揃える必要はありません。
2、context構造体に、wnd_alpha = (1〜100) と記述する事でウィンドウの非透過率を変更できます(標準は100%)
画像背景が暗めのシナリオでは非透過率を下げると雰囲気が出ると思います・・・
3、linkSpot(領地1, 領地2, 画像, α値)、linkSpot(領地1, 領地2, α値)
上記のようにlinkSpot関数では経路を半透明にできますので
クラシック系の地図などで経路を背景に溶け込ませたい時にお使いください・・・
-
4、field構造体に、マップチップ画像をばらけさせる add2 を追加しました。
field grass
{
add2 = grass*48, red_grass, blue_grass
}
とすると緑の草原96%、赤みの草原2%、青い草原2%のようにチップ画像が
ばらけて配置されますのでマップチップ描画に変化を付けたい時にお使いください。
-
倒した人材を捕虜や仲間にできるスクリプトってできるだろうか
-
タイトルのmidiファイルが演奏されない。
誰か解決方法を知りません?
wikiで書いてある方法は試したんですが。
-
すいませんでした。解決しました。
-
image.datとか複数のファイルに分けて読み込めるようにはできないのかな
-
FTみたいに追加分のみ認識があれば楽なんだけど、どうも難しそう。
-
第三軍的な戦場固定の中立ユニットって無理でしょうかね。
そいつを倒さなくても戦闘終了みたいな。
いっそ攻撃対象にならず、常時戦場にいる無敵なユニットにしてしまえば、
戦場固有のトラップができると思いますが。
火山:ひたすらヴォルケーノ連発
毒沼:ひたすらポイズンクラッシュor毒攻撃
高山:ひたすら岩(石)投げ(落石な感じ)
灘 :ひたすらビッグウェーブ
ご一考ください。
-
同盟国への援軍や出兵要請ができるといいな
-
面白そうだけどプレイヤーチートになりがちだし、あまり複雑になってもなぁとも思う
-
援軍は永久同盟国が本拠地しか残っていない敵国を囲んでいながら落とせず
プレイヤーは見守るだけって状況の打開策として有効だと思うんだけどな
-
飛び地に追い込まれたときの人材の放浪も大国が一気に消失するさまはダイナミックで醍醐味ではあるけど
もう少し論理的というか合理的処理ができる余地が欲しい
退却成功で本国帰還、倒されたら確率で放浪死亡、あるいは捕虜として処遇を選択できるとか
-
contextに変数を使うのは無理?
途中でベースレベルを上げたいんだが
-
>>270-273
語るスレでやれ
-
>>273
捕虜に取るのはプログラム的に複雑すぎるだろうが、
確率でマスターのいるスポットに退却可能と言う、COM専用チートを難易度オプションにするのはアリかもな。
上級者モードになりそうだがw
個人的には撤退先が一般で満員の時に、マスターは強引な撤退が出来るのを、
人材全般もできるようにする難易度オプションがあれば使える気がする。
光の目DDとか、よく満員で無駄に人材が飛ぶからなぁ。
-
オリシナを作成していたところ、
一部のシナリオ選択時(難易度選択の後の方です)に必ずフリーズするようになりました。
また、とあるスキルにカーソルを合わせた時もなるのですが、
原因としてはどのような事が考えられるでしょうか。
-
スキルはnextで繋げたスキルが無限ループしてる
-
>>277
world構造体のpower一覧で勢力の構造体を書き間違えてる。
ランクアップする時のレベルとランクアップ後のクラスのレベルが同じ。
あたりも怪しいところ。
-
>>278
どうもありがとうございます。ウォールスマッシュがループしてました。
>>279
う、すみません、両方とも仰っている意味がよく・・・。
ですが、base_levelとmonster_levelを削除したら正常に開始できたので、
とりあえずクラスを一度確かめてみます。ありがとうございました。
-
class soldier : base
{
name = ソルジャー
change = soldier2 * 10
}
class soldier2 : soldier
{
name = ファイター
level = 10
change = soldier3 * 10 ←こうなっちゃってるとファイターからファイターにランクアップするのが無限ループしちゃって強制終了する。
}
base_level減らしたら解決したって事は何処かにこのミスがあるんじゃないかな。
あともう一つは、scenarioの中にあるpowerの一覧を書き間違えてると落ちる。
スキルループと併せて強制終了の原因はこれぐらいじゃないかな。
-
>>281
ちょっと間違えた……
class soldier2 : soldier
{
name = ファイター
level = 10
change = soldier2 * 20
}
こうだな、これだと無限ループしちゃう。
クラッシュしたらchangeの指定先クラスとレベルは要確認。
-
>>282
おい何間違えたんだ
class soldier2 : soldier
{
name = ファイター
level = 10
change = soldier3 * 20
}
こうだろ
-
すみませんトリップ外してなかったです忘れてください
-
>>283
ごめんややこしかった。
>>282の形だとフリーズするのでやっちゃいけない、って事です。一応この形に数値弄ってフリーズ確認しました。
-
すみません。こちらが間違えてました。
-
忠誠心が一定以下でイベントを発生させる方法ってありますか?
-
そのターンで倒された人材や退却した人材を指定する事はできないのかな?
そうすれば確率で放浪させたりマスターの元に帰還させたりもできると思うんだけど
デフォはこのままでいいとしても設定の余地はあってもいいんじゃないかと
-
>>281、>>283さん。詳しくありがとうございます。
class soldier : base
{
name = ソルジャー
change = soldier * 10
}
新設したクラスがこうなっていたのが原因だったみたいです。
いじってないシナリオまで止まったので、ちょっと焦りました・・・。
無限ループには気をつけます。
-
すいません、質問です。
プレイヤー勢力のユニット全員に特定のスキルを持たせるため
storePlayerPower(@aaa)
storeUnitOfPower(@aaa, @bbb)
eraseSkill(@bbb, NewskillA)
addSkill(@bbb, NewSkillA)
と、こういうイベントを準備したんですが、実際やってみると皆覚えたり覚えなかったり…
(覚えない人は決まっていない)
どこが変なのか、見ていただけないでしょうか?
-
>>290
上位スキルを覚えてるみたいな単純なミスはないとして、
ターン始めにイベント発動しているために、ターン中に雇用したユニットには付与されていないとかゲスパー。
-
原因特定できました
前のターンの防衛戦でクラスチェンジしたのが原因だったようです
(isPlayerEndで発動させていました)
fixってこういう意味があったのか…
>>291さん、ありがとうございました
-
ゲーム中に旗揚げされた勢力を指定したいんですけど
新規にできた勢力の識別子ってわかりますか?
-
>>287
次のバージョンで指定ユニットの忠誠度を数値変数に代入する
pushLoyal(ユニット, var) 関数を追加しようと思いますので
if (var < 80) {
イベント
}
のように実装してみてください。
-
>>293
人材の旗揚げユニットの識別子を代入する関数としては
storeTalentPower(ユニット, 文字変数) があります。
現存勢力の中で旗揚げ勢力だけを文字変数に代入したい時は面倒になりますが、
storeAllPower(@var)
subVar(@var, p1)
subVar(@var, p2)
subVar(@var, p3)
・
・
のように全勢力を代入した後に初期配置勢力を一つずつ消去して
旗揚げ勢力のみを残す形で実現してください。
-
>>288
申し訳ありませんが現在の仕様ではできません・・・
-
>>293
上記のスクリプトコードはサブルーチン化すれば便利です。
event choice_newpower
{
storeAllPower(@var)
subVar(@var, p1)
subVar(@var, p2)
subVar(@var, p3)
・
・
}
と定義して旗揚げ勢力が代入された文字変数newpowsを使用したい時は
event(choice_newpower)
と呼び出すようにする。
-
なるほど
ありがとうございます
-
報告です。
showSpotMarkの色番号が0(赤)と1(青)とで逆になっているようです。0で青い円が出ました。
本体はver4.25のものです。
|
|
掲示板管理者へ連絡
無料レンタル掲示板