したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |
レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。

改造・制作スレ part4

1名無しさん:2012/03/08(木) 22:51:43 ID:???
改造・オリシナ制作などはこちらで。
過去に似たような質問があるかもしれないので、極力調べてから質問しましょう。

改造・制作スレ part3
http://jbbs.livedoor.jp/bbs/read.cgi/computer/42292/1305281909/l50
改造・制作スレ part2
http://jbbs.livedoor.jp/bbs/read.cgi/computer/42292/1282244590/l50
改造・制作スレ
http://jbbs.livedoor.jp/bbs/read.cgi/computer/42292/1250722590/l50

262名無しさん:2012/05/28(月) 21:20:57 ID:???
信頼はどうやっても取り戻せないものだよ…
むしろ信頼度低下デメリット用の信頼度代入できるようにして欲しいです。

263名無しさん:2012/05/28(月) 21:25:17 ID:???
内政で金ばらまいて信用取り戻すとかやってみたい

264SS級:2012/05/29(火) 00:46:30 ID:???
ななあしさんへ

クウォードのスキルを改変・修正するファイルを再度うpしました。これで空振り不発スキルもなくなると思います。
skillkpに直接上書きして下さい。
ヴァーレン付属のskill全体的にかなり強化されるので本編のを上書きするかどうかはななあしさんにお任せします。

265SS級:2012/05/29(火) 00:48:38 ID:???
ミス ヴァーレン付属のskillkpに直接上書きして下さい。
   全体的に〜ます。      
でした。

266名無しさん:2012/05/29(火) 19:21:00 ID:???
すみません。setud()とstoreUD()を使用したいのですが
以下のソースで試しているのですがセーブ出来ていないのか
取りだした値がdialog上では0と表示されてしまいます。

storePlayerUnit(@Player)

setVar(@sss,@Player)
setud(saveud,@Player)
storeUD(saveud,@store)
setud(@saveud2,@Player)
storeUD(@saveud2,@store2)

dialog(@Player:&@Player&)
dialog(@sss:&@sss&)
//↑表示されます
//↓いずれも表示されてません
dialog(saveud:&saveud&)
dialog(@saveud:&@saveud&)
dialog(store:&store&)
dialog(@store:&@store&)
dialog(store2:&store2&)
dialog(@store2:&@store2&)

間違い等ありましたらご指摘お願い致します。

267名無しさん:2012/05/29(火) 21:02:57 ID:???
"文字列"が青文字でないからなんじゃ・・・

268266:2012/05/29(火) 21:40:20 ID:???
うーん・・・確かにwiki表記は青文字ではないですが。
黒文字だった場合は他言語で"hoge"や'hoge'に相当する文字列を直接表現する解釈があるのでしょうか?
やりたいことは本来再ロードのタイミングで消去される文字変数データを
setudを使用して文字列変数に格納、後の処理で再参照することです。
数値変数と長めのif文を噛ませれば実現の見込みがあるのですが、
setud()が使えるようならこちらの方がスムーズだと感じましたので。

凄い簡単な事を見逃しているような気がして申し訳ありません。

269名無しさん:2012/05/29(火) 22:16:05 ID:???
>>266
前バージョンでは、setud()の第二引数に文字変数が使えませんでした・・
今日アップしたバージョンでは使えるようになりましたので
これで正常動作すると思います。

>>203
scrollSpeed(数値)
を追加しました。

scroll(100, 100)
scrollSpeed(4)
とすると1フレームに4ドットずつスクロールします。

>>261
ユニット、又は勢力のマスターの信用度を取り出す
pushTrust(ユニット/勢力, 数値変数)
関数を追加しました。

270名無しさん:2012/05/29(火) 22:38:02 ID:???
おお!ありがとうございます

271名無しさん:2012/05/29(火) 23:10:54 ID:???
>>264
クウォードのスキルスクリプトの更新をどうもありがとうございました。m(_ _)m
当作の為にお手間を取らせてしまって申し訳ありません。
完全体ユニットの特徴付けに大変重宝しております。
今回もありがたく使わせて頂きます。

272266:2012/05/30(水) 18:53:51 ID:???
>>269
教えて下さりありがとうございます。早速使ってみます。

273名無しさん:2012/05/30(水) 19:51:40 ID:???
>>257
knockの不具合を修正しました。
しかし、100以上だと簡易戦闘では弾き飛ばし距離が切り詰められて
反映されませんので御了承ください。

>>259-260
申し訳ありませんが、レベルアップ関連の処理はいろいろ手を加えにくくなってるので
このまま仕様の範囲内という事にしようと思ってます・・・。

274名無しさん:2012/05/30(水) 21:52:03 ID:???
シナリオ作者様へ。ワールドマップの陰影について

※陰影スキンは3ステップで作られます。



1、ワールドマップ全体を覆うベーススキンを決める

  ※scenario構造体に記すとその色のスキンが全体を覆います。





ws_alpha = (0〜255) ベーススキンのα成分(透明度)

ws_red = (0〜255)  赤成分

ws_green = (0〜255)  緑成分

ws_blue = (0〜255)  青成分



2、領地周辺のスポット光を決める
  ※spot構造体に記します。
light_range = (数値)
  スポット光が届く半径ドットです
light = (数値)
  スポット光の強さです。具体的に言うとベーススキンの透明度の減算値です。

「light_range=64、light=128」とすると、
その領地の半径0位置ではベーススキンのα値が-128、半径32では-64、半径64では-0されます。
ベーススキンが取り除かれて明るくなってるように見える事になります。


3、領地周辺の環境光(色補正)を決める
  ※spot構造体に記します。
ambient_range = (数値)
  環境光が届く半径ドットです
color = α, R, G, B
  色の4成分を(0〜255)の範囲で列挙します。
  
「ambient_range=200、color=64, 255, 0, 0」とすると、
領地の半径200ドット以内が赤色で補正されます。遠くになるほど色が薄れます。
α成分を大きくすると濃くなります。

275上記の訂正です:2012/05/30(水) 21:57:33 ID:???
シナリオ作者様へ。ワールドマップの陰影について
※陰影スキンは3ステップで作られます。

1、ワールドマップ全体を覆うベーススキンを決める

※scenario構造体に記すとその色のスキンが全体を覆います。
ws_alpha = (0〜255) ベーススキンのα成分(透明度)
ws_red = (0〜255)  赤成分
ws_green = (0〜255)  緑成分
ws_blue = (0〜255)  青成分


2、領地周辺のスポット光を決める
※scenario構造体に記すと全領地に適用されます。
ws_light_range = (数値)
  スポット光が届く半径ドットです
ws_light = (数値)
  スポット光の強さです。具体的に言うとベーススキンの透明度の減算値です。

「ws_light_range=64、ws_light=128」とすると、
その領地の半径0位置ではベーススキンのα値が-128、半径32では-64、半径64では-0されます。
ベーススキンが取り除かれて明るくなってるように見える事になります。

※個別指定する時はspot構造体に記します。
light_range = (数値)
  スポット光が届く半径ドットです
light = (数値)
  スポット光の強さです。具体的に言うとベーススキンの透明度の減算値です。


3、領地周辺の環境光(色補正)を決める

※spot構造体に記します。
ambient_range = (数値)
  環境光が届く半径ドットです
color = α, R, G, B
  色の4成分を(0〜255)の範囲で列挙します。
  
「ambient_range=200、color=64, 255, 0, 0」とすると、
領地の半径200ドット以内が赤色で補正されます。遠くになるほど色が薄れます。
α成分を大きくすると濃くなります。

276名無しさん:2012/05/30(水) 22:05:31 ID:???
2年程前から思っていたことなのですが、要望があります。

現在、人材を雇用するには、
・カーソルを味方ユニットに合わせる→雇用可能な放浪ユニットが表示される
になっています。これとは別に
・カーソルを放浪ユニットに合わせる→雇用リンクの繋がる味方ユニットが表示され、雇用可能となる
・カーソルを放浪ユニットに合わせる→雇用できる味方ユニットがいれば雇用可能となる
と言うシステムを導入できないでしょうか?

このシステムがあれば、新たに放浪人材が現れた場合などに、
味方の全ユニット、例えば50ユニット分を選択してドラッグして確認した挙句、
雇用リンクがなくてがっかりした、と言った場面を大幅に減らせます。
また、雇用したくない人材や、宿将など雇用できない人材を無視しやすくなります。
どうかご一考下さい。

277名無しさん:2012/05/30(水) 22:35:55 ID:???
>>276
御提示された仕様なのですが、
人材の雇用範囲の特徴を強調させる為にあえて不便なままにしてました。
しかし、後のバージョンで追加を検討してみようと思います。

278名無しさん:2012/05/30(水) 22:42:04 ID:???
>>259
setLevel関数によるレベル下げでは単純にレベルと能力値を減らすだけになりますので
クラスの特徴は無くならない事になります。
クラスの必要レベルはあくまで初登場時ないし転職時の基準なので、
そのレベル以下でもクラスの特徴は所持したままになります。
故に御連絡された結果が発生する事になります。
仕様の範囲内という事で御了承ください・・・。

279名無しさん:2012/05/30(水) 22:45:16 ID:???
ななあし様、更新お疲れ様です!
新機能のワールドマップの陰影に関して、バグ報告です。

ベーススキンに色をつけることが出来ませんでした(ws_redなどの
色成分を変化させても、色の変化がありませんでした)。

spot構造体に記すambient_rangeとcolorの方では、
ちゃんと色がつきました。

よろしくお願いします。

280名無しさん:2012/05/30(水) 22:48:56 ID:???
>>255
返事が大変遅れてしまいまして申し訳ありません。
御連絡頂いた不具合はスクリプトの様々なケースが考えられるのですが、

>新しく人材を追加したら透明の人材が出現したり
image = (文字列)  が正確にimage.dat内のイメージ名を示してない。
spot構造体のmember、又はscenario構造体のroamへの人材名記述が正確でない。
の二つが考えられます。

>追加した人材が大量に出現したりしてしまいます
これは追加人材のunit構造体に、talent = on が記されてないと思われます。
非人材のままだと量産されてしまいます。

281名無しさん:2012/05/30(水) 23:12:49 ID:???
>>279
バグ連絡をありがとうございます。
修正いたしました。

282276:2012/05/30(水) 23:19:02 ID:???
>>277
お返事ありがとうございます。
ご検討を是非ともよろしくお願いします。
人材の数が増えるほどに確認の手間が増えてしまいますので、
いわゆる一般人材を導入しているシステムや、
雇用リンクが複雑なシステムなどでは、
この部分の手間がゲームの楽しさを減じてしまっていると思います。

283名無しさん:2012/05/31(木) 00:10:29 ID:???
ワールドマップ陰影のambientに関してですが、
表示されていないspotにも適用することは出来ないでしょうか。

284名無しさん:2012/05/31(木) 18:10:51 ID:???
変数に関して、初歩的な質問があります。
文字変数では、
setVar(@aaa,bbb)
levelup(@aaa,1)
とすると、bbbのレベルが1上がります。

数値変数でも同じようにするにはどうしたらよいのでしょうか。
set(bbb.1)
setVar(aaa,bbb)
add(aaa,1)
みたいな感じで、bbbが2になるようにしたいのですが、
どういう風に記述すればいいのかわかりません。
こういうのは無理なんでしょうか?

285名無しさん:2012/05/31(木) 19:56:05 ID:???
>>284
この場合は、
aaa(文字変数)とbbb(数値変数)の種類が違うので無効となります。

setVar(aaa, bbb)の文字変数aaaには文字列「bbb」が代入されます。

286名無しさん:2012/05/31(木) 19:58:07 ID:???
>>284
下のaaaは数値変数として宣言してるのでsetVar()が使えない。
setしたbbbを純粋にadd(bbb,1)すれば結果的に2になるのだけど、
そうしてはいけない理由があるのかな。
あるいは
set(bbb,1)
set(aaa,bbb)
add(aaa,1)
set(bbb,aaa)
でbbbは結果的に2になる。

ごめん、多分満足行く回答できてないと思う。

287286:2012/05/31(木) 19:59:16 ID:???
すいません被ってました><

288名無しさん:2012/05/31(木) 20:01:01 ID:???
>>284
この場合は、aaa(文字変数)とbbb(数値変数)の種類が異なるので無効となります。

setVar(aaa, bbb)では、文字変数aaaに文字列「bbb」が代入されます。
add(aaa,1)では、数値変数aaaが新規作成されて(文字変数aaaとは別)、+1されて数値変数aaaの中身は1となります。

289名無しさん:2012/05/31(木) 21:46:19 ID:???
>>235
>>236
debug_paper.txt に

active

と記すとデバッグモードのバックグラウンドでも動作し続けるようにしました。


>>283
現バージョンで表示されてないspotにも陰影処理が適用されるようにしました。

290名無しさん:2012/05/31(木) 22:14:48 ID:???
>>99
attack_us = 7

とすると、そのスキルが自分(発動者)にのみ当たるようにしました。

291名無しさん:2012/05/31(木) 23:07:39 ID:???
>>285
>>286
お答えしていただき、どうもありがとうございます!
理解が深まりました。

292名無しさん:2012/06/01(金) 03:41:25 ID:???
バグ報告かな?
if文の構成で
pushRand(aaa)
if((aaa) > 50)
else if(50 >= aaa > 25)
else if(25 >= aaa)
みたいな構成で、二番目のif文のような、数値変数が間の場合の内容を読み込んでくれないようです。
以上の場合と以下の場合のイベントは発動するのですが、数値が間になった時のイベントは飛ばされてしまいます。

あと、イベント戦闘のTroop関数で
moveTroopFix()等のFix付き関数がNPCユニットに適用出来ないみたいです。
それと、Troop関数で動いているユニットが、たぶん内部戦闘時間を超える? かどうかの状態になると
Troop関数が外れてしまうようです。(例)追跡させていたユニットが付いてこなくなる、移動ポイント指定場所に向かわなくなる等
長々となってしまいましたが、よろしければ確認をお願い致します。

293名無しさん:2012/06/01(金) 08:43:31 ID:FHBtmIDM
>>292
思ったんだけど、
if((aaa) > 50)の時点で、これに当てはまらなかったaaaは50 >= aaaを満たしているから、今のままでも
if((aaa) > 50)
else if(aaa > 25)
else
ってすれば問題ないのではないだろうか

294名無しさん:2012/06/01(金) 10:18:22 ID:???
レオナールが死んだ!
死んだ戦士が動き出した!

リチムク「え!?」

295名無しさん:2012/06/01(金) 10:19:33 ID:???
あれ?

296名無しさん:2012/06/01(金) 17:00:25 ID:???
>>293
答えていただいたのに申し訳ありません、自己解決しました。

if(aaa > 50) else if(50 > aaa && aaa > 25) ・・・
みたいに、『&&』を挟んだらイベントが発動できました。
判定の優先順位とかの問題でしょうか?
else if(25 < aaa < 50)だと、50以上の場合と25から50の場合、の二つともが判定されるようでした。

297名無しさん:2012/06/01(金) 18:25:23 ID:???
むー。気になったので実際に試してみたけど

set(aaa,49)
//set(aaa,50)
//set(aaa,51)
if(50 < aaa){
//50より大きい
dialog(処理1)

}
else if( 25 < aaa && aaa < 50 ){
dialog(処理2)
//25より大きいかつ50未満
}

どれsetしてもifルートとelseifルートを同時に通るようなことは無い。
判定の優先順位は最初のif、頭から見て行っている。
else if(25 < aaa < 50)は、よくわからない。

298名無しさん:2012/06/01(金) 18:47:44 ID:???
「25 < aaa < 50」は内部でこう解釈されます。

1、25 < aaa が判定されて真なら1、偽なら0となる。
2、(0 or 1) < 50 が判定される。

299297:2012/06/01(金) 20:08:31 ID:???
>>298
教えて下さりありがとうございます。
勉強になりました。

300名無しさん:2012/06/01(金) 20:10:01 ID:???
>>298
なるほど!こうなっていたんですね。
詳しい説明ありがとうございます。

>>297
すいません、今見てみたらelse if使っていない方でした。
戦闘中イベントで、援軍に来るキャラを上記if文でランダムにしていたのですが、
二人いっぺんに来たので、勘違いしていました。
それぞれをif文で判定していたので、
数値50以上の1人目→○判定。298さんの説明で、二人目も○判定になっていたのだと思います。
お騒がせして申し訳ありませんでした。

301名無しさん:2012/06/02(土) 23:47:44 ID:???
>>292
バグ連絡をありがとうございます。
moveTroopFixの不具合を修正いたしました。

302名無しさん:2012/06/03(日) 03:38:41 ID:???
ななあし様、更新お疲れ様です。
いつも楽しく遊ばせていただいています。

新しく追加されたfont関数ですが、これをcontextで一括して
全ての文字に適用する、というのは難しいのでしょうか。

現状では適用されるのはtalk関数のみですが、
dialogやchoice、title、欲を言えばシステム周りの文字等でも
適用することが出来れば、talk時の演出面のみならず、
シナリオ全体の雰囲気作りに大いに役立つのではないでしょうか。

実装に手間がかかるようでしたら、無視して頂いて構いません。

303名無しさん:2012/06/03(日) 23:32:34 ID:???
>>302
context構造体に以下を記すとフォントを指定できます。

font10 = (フォント名)  とても小さい文字
font12 = (フォント名)  小さい文字
font14 = (フォント名)  ちょっと中くらいの文字
font16 = (フォント名)  中くらいの文字
font20 = (フォント名)  大きな文字

font_text = (フォント名)  テキストウィンドウの文字
font_detail = (フォント名)  列伝の文字
font_prologue = (フォント名)  シナリオ選択の長文

304名無しさん:2012/06/03(日) 23:41:10 ID:???
>>238
debug_paper.txt に

fullzoom

と記すとデバッグモード時に限界までズームアウトするようにしました。

305261:2012/06/04(月) 17:02:46 ID:istB//yc
ななあし様、要望していた関数を早速実装いただき、ありがとうございます。

306名無しさん:2012/06/04(月) 23:57:58 ID:???
context構造体に以下を記すと文字色を変えられます。

書式: color_XXX = 赤成分(0〜255), 緑(0〜255), 青(0〜255)

color_text  テキストウィンドウの文字色
color_name  テキストウィンドウの上の人物名
color_namehelp  テキストウィンドウの上の人物名の肩書き
color_detail  列伝の文字色
color_prologue  シナリオ選択の長文の文字色

color_white  標準ウィンドウの白色文字
color_blue  標準ウィンドウの薄い青色文字
color_red  標準ウィンドウの薄い赤色文字
color_magenta  標準ウィンドウの紫色文字
color_green  標準ウィンドウの緑色文字
color_cyan  標準ウィンドウの水色文字
color_yellow  標準ウィンドウの黄色文字
color_orange  標準ウィンドウのオレンジ色文字

(例)
color_white = 0, 0, 0  ←とすると標準ウィンドウの白文字が黒になる

307名無しさん:2012/06/05(火) 23:12:43 ID:???
ななあし様。
フォントの変更について報告があります。

独自フォントを使用しようと本体最新版にてVahren.exeと同位置にフォントファイルを置き、context構造体にて書体名を指定したのですが反映されませんでした。
2種類ほど試したのですが、どちらも反映されず。PCにインストール済みの既存のフォントへの変更は反映されました。
他に何かすべきことがあるのでしょうか、確認頂ければと思います。

308名無しさん:2012/06/05(火) 23:20:04 ID:???
>>307
書体名があっていないのでは?
あるいは、ボールドやイタリックなどは使えないくらいですかね…。

私はきちんと表示されました。が…小さすぎて使えませんでしたw

309308:2012/06/05(火) 23:42:34 ID:???
すいません、ちゃっかりインストールしてありました…
誤情報を書いて申し訳ございません…。

310名無しさん:2012/06/06(水) 00:14:27 ID:???
>>290
どうもありがとうございます!

最近のヴァージョンで、str値が0だと10ダメが入らなくなって、しかしnextや
afterhit、knock、addなどはしっかり発動するという素晴らしい仕様変更と
併せて、上手く使いたいと思います。

311名無しさん:2012/06/06(水) 00:51:36 ID:???
>>307
すみません。修正版をアップしました。
なお、フォントファイルはimageフォルダに入れてください。

context構造体に

font_file = (フォントファイル名), (フォントファイル名), ‥

と列挙するとそのフォントファイルが使えるようになります。
ただしファイル名記述に -(マイナス記号)は使えないので
その場合はマイナス記号をアンダバーにリネームしてください。

312名無しさん:2012/06/06(水) 04:17:01 ID:???
>>310
なん・・・だと
ダメなしの状態異常もできるじゃないですかーやったー!

313名無しさん:2012/06/06(水) 13:26:25 ID:???
アタック×0とかで発動すれば10ダメも通らないんじゃ?

314名無しさん:2012/06/06(水) 19:14:54 ID:???
前は0にしても通ってたぽいよ。少なくとも自分にはできなかった。
今回の更新では問題なくできたよ。
ほんとに有難いです!
これでダメージ無しのノックバック技ができたー。

315名無しさん:2012/06/06(水) 20:42:38 ID:???
外部フォントの変更、確認しました。
ななあし様、ありがとうございます!

316名無しさん:2012/06/07(木) 10:23:09 ID:???
そんなのオリンピッカーだって無理だよ

317名無しさん:2012/06/07(木) 19:39:21 ID:???
ななあし様へ要望です。
ユニットが行動済みでないかを判別する関数isDoneみたいなものを
追加するのは難しいでしょうか。

内政で、行動済みでない人材がいる場合、その領地の経済値や城壁値を
変化させたりしたいのですが…。

318名無しさん:2012/06/08(金) 12:33:17 ID:???
↑グッドアイデア

319238:2012/06/10(日) 16:55:22 ID:???
》304
遅くなりましたがありがとうございます!

320名無しさん:2012/06/10(日) 17:46:22 ID:???
バグ報告です。
storeLeadeOf〜〜()関数でクラスチェンジした上位一般ユニットが
文字変数に含まれないみたいです。
初期クラスとその上位ユニットを配置し、配置移動をして試してみたところ、
上位ユニットのみその場に残り、初期クラスは指定された位置に移動することを
確認できました。
よろしければ、ご確認をお願い致します。

321名無しさん:2012/06/10(日) 18:41:25 ID:???
>>320
storeLeaderOfSpot(s64, bbb)
pushVar(bbb, ccc)
msg(人数は&ccc&)
while (idx < countVar(bbb)) {
storeIndex(bbb, idx, aaa)
msg(ユニットは&aaa&)
add(idx, 1)
}

このスクリプトでシナリオ6の開始時に試した所、
南ニーア沼の人数は8人でユニットもファイターとアーチャー(いずれも2番目の上位クラス)が
表示されましたので、文字変数には含まれてるはずだと思います。
移動の方で不具合があると思われますのでもう一度御確認ください。

322名無しさん:2012/06/10(日) 19:26:48 ID:???
>>317
isDone(ユニット)
を追加しました。
ユニットが行動済みなら1が、そうじゃないなら0が返ります。

>>222
storeSkillset(スキルセット名, 文字変数)
を追加しました。
指定セット内の全スキルが文字変数に入ります。
この文字変数を引数にしてaddSkillとeraseSkillを行ってください。

323名無しさん:2012/06/10(日) 19:31:40 ID:???
>>238
以前のフルズーム仕様はほとんど表示されなかったので修正しました。
debug_paper.txt に

zoom(数値)

と記すとデバッグモード時に限界までズームアウトするようにしました。

zoom100000

の様に記してください。zoomと数値はくっつけてください。
数値は画像表示のバッファ容量で標準は3万です。
10万ないし20万以上にすると大体表示されます。
ただしあまり大きいと環境によって不具合が発生する可能性があります。

324名無しさん:2012/06/10(日) 20:43:04 ID:???
>>321
素早いご回答ありがとうございます。
ご説明下さったスクリプトと下記のようなスクリプトを組み合わせて実行して再度確認してみたところ

storeLeaderOfSpot(spotA,@uuu)
pushVar(@uuu, ccc)
msg(人数は&ccc&)
while (idx < countVar(@uuu)) {
storeIndex(@uuu, idx, aaa)
msg(ユニットは&aaa&)
add(idx, 1)
}
storePowerOfSpot(spotA,@ppp)
removeSpot(spotA)
addUnit(@uuu,@ppp)
addPower(tes)

文字変数に上位ユニットが入っている事と移動している事が確認出来ました。

しかし、詳しくはわからないのですが、移動の際に上位ユニットが移動元と移動先の両方に在籍するみたいです。
デフォルトシナリオ2でレオーム家領の「ホアタ」にファイターとアーチャーを加えて上記のように移動させて試したところ、レオーム家と仮勢力の両方に
ファイターとアーチャーがいる状態になり、同スポットにいたソルジャーとボウマンはレオーム家のみに在していました。
私の作っている奴のほうでは、その時点の上位クラスが移動先へ追加され、部下は元部隊に関係なくLv1に(スクリプト内のmemberと同じに?)、
移動元にオリジナル部隊が残る(部下Lvがそのまま)状況になりました。
加えて、確認の為上位クラスを一部隊追加雇用してみたところ、その上位部隊のみ
他の上位部隊と違い、そのまま移動先に移動する、という形になりました。

状況の違いとしては、自分で雇用しそのまま移動できた上位クラスの一部隊以外は、
最初から領地に存在する上位クラス、またはCOMが雇った上位クラス、という事が考えられるので
この辺が原因になっているのではないかと思います。
お手数をお掛けしますが、よろしければ再度のご確認をお願い致します。

325名無しさん:2012/06/10(日) 21:33:01 ID:???
>>324
これはaddUnitに問題があるようです・・・。
非人材である一般ユニットは量産できるので、スクリプト上で
addUnit(soldier, XXX)とすると兵士の追加となり、soldierが新規作成されて追加されます。

で、システム内の一般ユニットはsoldier+1、soldier+2、soldier+3、‥という識別子になってるのですが、
ゲーム開始後第一番に作られた一般ユニットのみ「soldier」のプレーン識別子になってまして、
これが運悪く storeLeaderOf〜で代入されてしまうと
それのみaddUnit内で新規作成扱いになってしまうのです・・・。

この部分のコード修正は無理なので対策としては
spot dummy {
member = soldier, bowman
}
としたspotを、scenario構造体で、spots = dummy として一番最初に登録する方法があります。
こうするとプレーン識別子ユニットが本編に登場しなくなります。
これを試してみてください。

326名無しさん:2012/06/10(日) 22:20:59 ID:???
>>325
ななあし様、詳細なご説明と対応策のご教授、ありがとうございます。
移動をする勢力の一般上位ユニットを仮領地に配置して対応させていただきます。
ご回答、ありがとうございました。

327名無しさん:2012/06/11(月) 01:23:34 ID:???
報告です。
スキルの仕様変更により、最新版だとmp回復スキルが上手く機能していません。
射程0のmp回復である銃の装填スキルが、指定しても発動しない状態です。
どこを直せばいいのか分からないのでとりあえず報告までに。

328名無しさん:2012/06/11(月) 07:29:48 ID:???
自己解決しました。random_space_min = 0を設定すると機能したようです。
記述を省略すると最低32以上がデフォルトで設定されてるのかもしれません。

329名無しさん:2012/06/11(月) 15:48:40 ID:???
すいません、質問です。
戦闘中で攻撃を受けた方向によってダメージを任意に可変させたいのですが、
(たとえば正面からなら防御力は100%機能するが側面なら50%、背後なら0%で大ダメージを負う。みたいな)
ユニットの向きや攻撃(スキル)の移動方向(向き)を取得する関数などはあるのでしょうか?
一応過去スレを 向き で検索してみたのですがそれらしい記述は見つからず・・・
ど素人なので的外れな質問をしていたらごめんなさい。

330名無しさん:2012/06/11(月) 17:26:30 ID:???
>>329
ない。出来ない。

331名無しさん:2012/06/11(月) 19:10:41 ID:???
どなたか知恵をお貸しください。
ある(中立の)spotに攻め込んだ時に戦闘中イベントが
発生するようにしたいのです。
現戦闘spotを直接判定する関数はないと思うのですが、
何か方法はありますでしょうか。

332名無しさん:2012/06/11(月) 19:17:09 ID:???
その中立スポットにいるユニットを調べればいいんでないか?

333331:2012/06/11(月) 21:00:14 ID:???
>>332
ご助言ありがとうございます。

うーん、その中立領地には一般ユニットしか配置していないんですよね・・・
やはり(識別子だけ)ユニークなユニットを作って配置して判定するしかなさそうですね。
ありがとうございました。

334名無しさん:2012/06/11(月) 21:20:26 ID:???
>>331
fightで指定したevent構造体で、storeSpotOfBattleを
使って取得すればいいのでは?

335名無しさん:2012/06/11(月) 21:55:25 ID:???
>>331
中立勢力は以下で判定できます。

storePowerOfDefense(@pow)
if (@pow == @) {     空文字列なら中立(@は空文字列を指す)
msg(攻め込まれたのは中立領地です)
}

336名無しさん:2012/06/11(月) 21:55:48 ID:???
>>334
おおぅ、そのとおりですね。
event構造体を毎回読みこませなければならないですが、
その戦闘のevent構造体の中で判定させればいいですね。
それで行けそうです。
本当にありがとうございました。

337名無しさん:2012/06/11(月) 21:58:16 ID:???
>>335
ありがとうございます!
お陰様で>>334と組み合わせて何とか実現できそうです!

338名無しさん:2012/06/11(月) 22:15:53 ID:???
debug_paper.txt を a_systemフォルダに移すとデバッグモードにならず、
リリース版の起動設定として適用されます。
最大ズームアウトの設定を出来ます。

debug_paper.txt内の構文

zoom数値
  画像表示用バッファ量。デフォルトは3万。これを指定すると限界までズームアウトする。
zoommax数値
  最大ズームアウト距離。デフォルトは100
zoomtick数値
  マウスホイールのズーム幅。デフォルトは50

zoomと数値はくっつけてください。10万以上にすると大体のズームアウトに対応できます。
ズームアウト距離を制限したい時は次行でzoommaxを記してください。
これらは任意で調整してください。zoomが大きいと古いPCで問題が出る可能性があります。


あと、ワールドシーンの非アクティブの進行設定はcontext構造体の
world_active = (on/off)
になりました。デフォルトはonです。offにすると静止します。

339名無しさん:2012/06/11(月) 22:18:32 ID:???
>>329
申し訳ありませんが、現在の仕様ではユニットの向きを知る関数はありません・・・。

340名無しさん:2012/06/11(月) 22:36:02 ID:???
文字変数に複数の文字列を一括して代入することってできませんか?
具体的には
addVar(@var, unit1)
addVar(@var, unit2)

addVar(@var,unit1,unit2)
こういうことはできないのでしょうか?

341名無しさん:2012/06/11(月) 22:37:37 ID:???
>>340
それはできません・・・。

342329:2012/06/12(火) 00:58:19 ID:???
>>330 >>339
了解しました。ありがとうございます。

343名無しさん:2012/06/12(火) 02:56:33 ID:???
最近
部隊人数を8→15人
最大部隊数を12→24
マップも最大24部隊にして広さを100×100にして
全陣営が弓兵ソルジャー騎兵を雇えるようにしてるんだけど結構楽しい

人材の個人の強さ<兵力って感じ
ラファエル使えばキングダムばりの騎兵突撃が再現できる

完全な紀元前を再現すべく魔法を全排除したろうかと思ったけどそこまでの気力は沸かなかった

344名無しさん:2012/06/12(火) 21:20:22 ID:???
最新版のバグ報告です。
駐留可能数<戦闘参加可能数の時、複数拠点から攻め込んでその拠点を占領すると、ユニットが駐留可能数を越えて駐留出来てしまいます。
これまでは複数拠点から攻め込んで駐留可能数を越えてしまった分は元の位置に戻されていたので、最新版のバグと思われます。

345名無しさん:2012/06/12(火) 23:09:57 ID:???
>>344の件ですが、setCapaを巡る勘違いのようでした。お騒がせして申し訳ありません。

346名無しさん:2012/06/12(火) 23:32:41 ID:???
ゲルドでルンリザ雇えるように改造したいいんだがmerce = lizard5
staff = lizard5にして雇う画面まではいいんだがいざ雇おうとするとこの勢力では
リーダーになれませんとなってしまうなんでだ?

347名無しさん:2012/06/13(水) 00:20:09 ID:???
そのまんまの意味だ
staffに書くクラスは基底クラスを書かなきゃいけない
それだとlizard5って基底クラスのユニットって判断されるからダメ

348名無しさん:2012/06/13(水) 00:34:45 ID:???
なのでルーンリザード雇いたければ
class ○○ : lizard5 みたいにルーンリザードのステータスを引き継いだ別のクラスを作ってそれを雇用する設定にする

349名無しさん:2012/06/13(水) 01:12:49 ID:???
347≠348な
で俺は347なわけだがただ雇いたいだけなら348みたいな面倒なことしなくてもmerce=lizard5とstaff=リザードマンの基底クラスで雇えるはず
別クラス作るのはCOMのルーンリザードに影響出したくないけど設定いじりたい時だな

350名無しさん:2012/06/13(水) 12:36:04 ID:GWO1b1EQ
すいません。wikiの関数名の省略についてお聞きしたいんですが
この別名は以前のバージョンでは認識しないのですよね?
その状態でwikiから旧バージョンの関数名を一律削除するというのは
旧バージョンでの保守性を著しく損なうものなのではないでしょうか?
また一部という記述では何が変わったのか確認すらできません。
開発の根底に関わる事ではないでしょうか・・・

351名無しさん:2012/06/13(水) 19:58:40 ID:???
何故CPUリーダールンリザで隊員弱いただのリザードにするん

352名無しさん:2012/06/13(水) 20:40:33 ID:???
>>350
深く考えずに編集して申し訳ありません。
後でwikiの記述を修正いたします。

353名無しさん:2012/06/13(水) 21:17:37 ID:???
>>352
よろしくお願い致します。

354名無しさん:2012/06/13(水) 21:48:21 ID:???
要望です。
普通の戦場マップをイベントで城塞マップにしたいのですが、
ウィキのイベント関数を見る限りではvalue、castle_battle、limitの追加・設定はイベント関数に無く、
spotにあらかじめ記入しておかなければならない仕様だと思われます。
これでは常時戦力値が水増しされたり、時間制限が通常より長いということになってしまうため、
これらの数値をadd〜またはset〜でイベントによる追加可能にできませんでしょうか。
ご一考のほどよろしくお願いします。

355351:2012/06/13(水) 21:50:51 ID:???
すまん自己解決した

356名無しさん:2012/06/14(木) 02:20:49 ID:???
staffに関して質問です。
unit A(class uniquesoldier)のstaffに、human,archerと記述して、
uniquesoldierの方にfriendとmerceでarcherを雇えるようにしました。

しかし、プレイヤー操作ではちゃんと勢力ユニットとしてarcherが雇えるのに
対し、CPUだと勢力ユニットとして雇用してもらえませんでした。

staffを記述する際は、unit構造体の方にもfriend、merceを記入しないと
ダメなのでしょうか。

357名無しさん:2012/06/14(木) 02:41:04 ID:???
クラス構造体にstaffって効果あるんだろうかと思った
なんとなく効かなそうな気がする

358名無しさん:2012/06/14(木) 22:36:07 ID:???
よくわからんが自分で雇えるなら race = archerにすればいいんじゃね

359名無しさん:2012/06/14(木) 23:13:07 ID:???
援軍は隣接領地のみに絞って飛び地からの援軍は無しにしたほうがいいのでは
現状巨大国家より複数の援軍を使う国家のほうが強くなってしまって違和感があると思います

360名無しさん:2012/06/14(木) 23:32:55 ID:???
勢力毎にベースレベルの設定が出来るようにはなりませんでしょうか。
現状CPUの高レベル雇用の為には、勢力の雇用クラスをレベルごとに全て編集しないといけなく、設定が大変のように思います。

361名無しさん:2012/06/15(金) 18:06:06 ID:???
S1からラストニパクハイトを登場させるにはどうするんだ?




掲示板管理者へ連絡 無料レンタル掲示板