トップページgamedev
1001コメント379KB

■吉里吉里/KAG/TJS雑談質問スレ■その18

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/06/06(土) 01:11:54ID:EztZkDNL
ノベルゲーム製作ツール吉里吉里/KAGのユーザーが雑談・質問をするスレです。
自作ゲームの進行状況や製作ツールについての話、TJS等の話題もどうぞ。
マルチポストはやめましょう。個人叩きも禁止です。

※スレで質問をするときは※
KAG/TJS/吉里吉里ドキュメント、スレの過去ログ、公式掲示板のログ、
FAQ、Google等で調べてからにしましょう。
努力の形跡が見られないとスルーされがちです。初心者?でも頑張れ!

前スレ:■吉里吉里/KAG/TJS雑談質問スレ■その17
http://pc11.2ch.net/test/read.cgi/gamedev/1234356309/


吉里吉里2/KAG3雑談質問スレ_過去ログ
ttp://www.geocities.jp/kirikiri_log/

吉里吉里ダウンロードページ
ttp://kikyou.info/tvp/

ダウンロードしたアーカイブに含まれる「KAG System リファレンス」は
初心者にとって最も頼もしい教科書です。何度も繰り返し読みましょう。
■タグリファレンス … KAGの機能が網羅的、辞書的に載っています。
大よその機能(KAGでどんなことが出来るか)は把握しておきましょう。
■Tips/その他 … 陥り易いミスやより高度な使い方への足掛かりになる
数々のTipsが記載されています。

必要に応じて>>3-5の公式掲示板や講座等を併用してください。
(併用に、紙媒体の参考本が欲しい人は、ダウンロードページにリストがあります)
0369名前は開発中のものです。2009/07/24(金) 17:29:44ID:/REV+Ewt
コーディング未経験のスクリプターと共同作業やるならいいかもな
03703592009/07/24(金) 18:40:47ID:qfGoZbC/
>>363 >>365
図星かも。10年以上前にプログラミングをかじる程度したことはあったんですが、
社会人になって止めちゃいました。そして何を思ったか、今になってゲームを
作りたいと思っちゃったんです。
Excelは今も良く使うので、 = 表記に完全に馴染んじゃってるんですよね。

>>368
おー、同じ悩みを抱えていた人がいたんですね。俺一人じゃないんだ...
何かホッとした。

皆さん、下らんボヤキに付き合ってくれて、ありがとう。
0371名前は開発中のものです。2009/07/24(金) 18:55:23ID:XRRN4HTj
>>368
cond属性とかもあるけど、おおまかなチェックはできそうすね

>>366
「大なりイコール」とかの順で書けばいい
0372名前は開発中のものです。2009/07/24(金) 21:03:05ID:jpbjLN0h
以前、比較のつもりで=>書いて例外(HardwareException)出して、
それが誤りであることに気が付くまでにとても悩んだなあ…orz

=> は、式中辞書配列内(外部でも使えそうだけど)で許容されている
演算子であることを思い出してからは、迷うこともなくなりましたとさ
0373名前は開発中のものです。2009/07/24(金) 22:08:42ID:5CQIBufA
初歩的な質問で申し訳ありませんが
皆さんのサイトはゲームの動作環境をどう表記してますか?
吉里吉里公式の動作環境をまるっとコピペしようとしたら
コピペしないで確認しろとありました

一応自分のPCのスペックを表記しておいたほうがいいでしょうかいらんでしょうか?
0374名前は開発中のものです。2009/07/24(金) 22:10:49ID:XZ+J/nbu
・公式のをコピペして吉里吉里の動作環境にする
・自分のPC(4台あるし)のスペックを確認済みとして書く

の2つでやってる
0375名前は開発中のものです。2009/07/24(金) 22:13:18ID:8on6TjX3
>>372
そういやそうだ。そうじゃん、普段使いまくってるじゃん。
ありがとう。
0376名前は開発中のものです。2009/07/25(土) 01:12:57ID:K2SYYOYb
=>はアロー演算子と見間違えてイミフな時がある。
=表記はHSPさわったとき発狂しかけた。
03773732009/07/25(土) 01:30:02ID:3DpvMHeU
>>374
回答ありがとうございます。
自分のPCスペックも表示しようと思います。
ヘボすぎて恥ずかしいが参考までにあったほうがいいかもしれませんね
0378名前は開発中のものです。2009/07/25(土) 01:35:05ID:K2SYYOYb
ふつうはプロファイルとって実行時のメモリ量調べたり、いろんな構成のPCでひたすらテストして決定するんだけどね。
プロファイラがないからなTJSは。
というか吉里吉里にデバッガとかツール用のAPIないよね。
0379名前は開発中のものです。2009/07/25(土) 01:40:25ID:vAwbl5XN
ビデオカード依存しないシステムだから、画面切り替えのトランジションとかをえんえんはしらせてみて
どのくらいの感触で動くか調べるくらいで必要十分だよ。
0380名前は開発中のものです。2009/07/25(土) 05:27:57ID:KmBjh/g8
=> は別にどこででも使える演算子で、カンマと同じ意味がある
%["a", 1 => "b" => 2 => "c", 3] とかいう書き方もできたはず

軽くRuby使ってるんだが、さほど頻繁に使わないってこともあって <=> と <-> でいつも迷う
エラー吐いてくれるタイプなんでまだましなんかもしれないけど
0381名前は開発中のものです。2009/07/25(土) 11:30:41ID:nKG6Q315
<->とか要らんよな
わざわざ演算子にするほどのものじゃない
0382名前は開発中のものです。2009/07/25(土) 12:28:39ID:e3P19x4Y
>>381
今んとこ2回評価だから微妙だよな
0383名前は開発中のものです。2009/07/25(土) 15:58:27ID:NihvXwLZ
D言語みたいに、return a=b; はよくても if (a=b){ } はエラーになる言語もあるな
0384名前は開発中のものです。2009/07/26(日) 01:16:41ID:v04aTSKb
>"a", 1 => "b" => 2 => "c", 3
どこかのクロージャにしか見えない
0385名前は開発中のものです。2009/07/27(月) 16:18:19ID:gb/6Ls5s
メッセージレイヤ横にセーブorロード画面へ切り替えるボタンをつけたのですが、
戻ってきたあとにメッセージレイヤ(message0)に書いたシナリオが進まなくなってしまいます。

具体的には、
・行末orページ末のクリック待ち記号が消え、
スキップボタンを押しても発動できず、先に進めない
・ボタンは押せる、メッセージ履歴も見れる。
という状態です。

ボタンからは「kag.process("save.ks")」のように各ページへ飛んでいます。

セーブ画面に入る時のソースはこんな感じです。
本編に戻る時はこれとそれぞれ対応したタグを使っています。

@tempsave place=0
;栞に保存
@exsysbtopt forevisible=false backvisible=false
;ボタンを非表示
@rclick call=true storage="save.ks" target="*close" enabled=true
;右クリックで戻る。(他に戻るボタンをクリッカブルマップで実装してあるが、同様の症状になる。)
@locksnapshot
;スナップショットをロック
@history output=false enabled=false
;メッセージ履歴の出力・表示を無効


基本的に↓のサイトを参照しましました。
ttp://www.geocities.co.jp/tjschallenger/TJS0607.html

解決方法がわかればぜひ教えてください。
まだまだ未熟ですので、記述不足で他に必要なソースがあればもちろん載せます。
よろしくお願いします。
0386名前は開発中のものです。2009/07/28(火) 00:39:15ID:m2IylvK1
>>385
conductorを止めっぱなしにしてるだけでは?
0387名前は開発中のものです。2009/07/28(火) 11:09:36ID:QiROzYvz
kag.process("save.ks");
と、
@rclick call=true storage="save.ks" target="*close" enabled=true
の、使い方がまずいな

本編のシナリオから、ジャンプで、save処理に飛んできて
コールで、saveのclose処理に進んでいる
のが誤り

本来なら、コールで、save処理に進んで
save処理内で、ジャンプでセーブ処理内のcloseに飛んで
close処理でreturnしないといけない
そうしないと
最初に本編の所でsaveをコールした個所に、処理の流れが戻らない
0388名前は開発中のものです。2009/07/28(火) 11:52:49ID:ijBRqVPC
すんません、ググってもわからなかったので

KagマニュアルにSWF再生の時に、ファイル名の後に?name=value〜で
変数を渡すことが出来ると書いてあるのですが
FLASH側では、どのように受け取ればいいのでしょうか?

もしくはどこかに解説してるサイトがあれば教えてください。
 
0389名前は開発中のものです。2009/07/28(火) 14:13:30ID:PPOjGwA2
吉里吉里でFlashは扱ったことないけど、
HTMLからそういう風に渡せば、Flash側で何もしなくてもその名前の変数に値が入るよ
0390名前は開発中のものです。2009/07/29(水) 00:20:46ID:WYn7jMgk
吉里吉里2docか掲示板かdeeたん日記に書いてあったきがす
0391名前は開発中のものです。2009/07/29(水) 00:27:43ID:7c7DIkfV
385です。
言う通りkag.proccesをコールに変え、@rclick callをjumpに変えたところ、正常に動作しました。
初歩的なミスでほんとにすいませんorz

お二方ほんとにありがとうございます。
0392名前は開発中のものです。2009/07/29(水) 12:08:01ID:WWTIopk1
TJSゴリゴリとかではなく、ほぼKAGの範囲内で作られたゲームで、
ゲーム製作初心者の参考になるようなゲームを紹介して頂けませんか?
プログラム・ソースが公開されていたりしたら最高です。
ゲームを楽しむことで学べたら効率的なのではないかと思いまして。
0393名前は開発中のものです。2009/07/29(水) 14:30:34ID:B4ng0Zvn
アドベンチャーゲームならいくらでもあるだろ
それ以外のジャンルは,あったとしても「間違った使い方」なので参考にするべきじゃない
0394名前は開発中のものです。2009/07/29(水) 14:36:28ID:lSC8ZyKL
なんか9月にDee氏も交えた吉里吉里の講習会兼オフ会みたいなのやるらしいね
0395名前は開発中のものです。2009/07/30(木) 19:22:29ID:wmLBtUZX
test
0396名前は開発中のものです。2009/07/30(木) 21:48:15ID:he23UFo9
おさかな定職、ちょっと変化してる…
これは期待していいのかな…
サポートとか贅沢言わないからせめて倉庫としてでも復活して欲しい
0397名前は開発中のものです。2009/07/30(木) 22:24:08ID:hh3V9W8K
TJSのスクリプトエンジン自体のテストスクリプトって公開されてないの?
0398名前は開発中のものです。2009/07/31(金) 03:09:51ID:LkFvtV7a
公式掲示板他ぐぐったのですが、どうしてもわからずこちらに参りました。

サウンドギャラリーを製作中なのですが
サウンドギャラリーの画面のみ右クリックで音楽停止させたいと考えています。

rclickのタグにexp="kag.bgm.stop()"を入れてみたのですが
BGMがストップされません。
BGM停止のターゲットをつくり、rclickのジャンプ先にして
stopbgmで止めるしかないのでしょうか。
0399名前は開発中のものです。2009/07/31(金) 03:13:04ID:bpa+dbpH
右クリックサブルーチンのksを作りメインのksから呼び出して使ってるんですが
ちゃんと動作はするもののreturnしてくるとBGMが最初から再生されてしまいます

*rclick_exit
@tempload place=0
@rclick call=true target="*rclick_menu" storage="r_click.ks" enabled=true
@delay speed=user cond="kag.chUserMode"
[return]

メモリ上の栞にBGMの再生状態も記録していなければならないのかと思って
マニュアルなどを読んでみたのですが分かりませんでした
初歩的すぎる問題かもしれませんがどうかご教授ください
0400名前は開発中のものです。2009/07/31(金) 03:26:53ID:bpa+dbpH
すいません
@tempload place=0 bgm=falseで自己解決しました・・・
0401名前は開発中のものです。2009/07/31(金) 10:47:24ID:rOMBbekB
>>398
rclickタグってexp属性あったかな。拡張したならともかく
言うとおり、サブルーチンを作ってそこにstopbgmを置けばよいのでは
0402名前は開発中のものです。2009/07/31(金) 14:02:11ID:xHa0woew
>>398
rightClickHook使うとか
ただしそのままだとサウンドギャラリーを抜けても有効なので、removeするか
フラグが立っている(ギャラリー中)なら有効なようにする
0403名前は開発中のものです。2009/07/31(金) 23:29:54ID:VlyFlnzf
完全な初心者です
自己解決したんですがトランシジョンは難しいですね
背景画像を使わずにメッセージレイヤに文字だけ表示している状態から
その文字を溶暗で消す方法がわからなくて悩みました
結局真っ黒な背景画像を用意してクロスフェードさせました
メッセージレイヤをどうやって操作すればいいのだろうと悩んでいました
チュートリアルを作られている方にこのとほほなつまずきをお知らせしたいです
0404名前は開発中のものです。2009/07/31(金) 23:50:59ID:DEiOJAlU
>背景画像を使わずにメッセージレイヤに文字だけ表示している状態から
>その文字を溶暗で消す方法がわからなくて悩みました
@backlay
@layopt layer="0" page=back visible=false
@trans method="crossfade" time="1000"
@wt
これでok
04054032009/08/01(土) 00:04:18ID:uNi03v+g
404さん、ありがとうございます
チュートリアルは背景画像を使う普通の場合を想定しているのでつまずいていました
0406名前は開発中のものです。2009/08/01(土) 00:28:43ID:GXDqmh6d
>>405
チュートリアルは、コピペして使うものじゃなくて、基本の仕組みを理解するためにあるものだから
チュートリアルだけじゃなくて、タグリファリンスにもちゃんと目を通した方がいいよ
あとはテンプレ見て講座サイトと併用するなり何なり
いきなり一から十まではできないだろうが、みんなつまづいて思考錯誤しながら覚えていくんだよ
0407名前は開発中のものです。2009/08/01(土) 00:37:45ID:KB27uNbz
[image storage="&kag.fore.layers[0].Anim_loadParams.storage" layer=1 pos=center]
これ、型がちがうみたいなことを言われるのはなぜ?
0408名前は開発中のものです。2009/08/01(土) 00:50:13ID:GXDqmh6d
>>407
voidになってるのかな
kag.fore.layers[0].Anim_loadParams.storage
これ監視式に入れてみたらいいんじゃね
0409名前は開発中のものです。2009/08/01(土) 01:10:02ID:IN4NoQ+t
>>401 402
レスありがとうございます。
サブルーチンの方が簡単に組めそうなので
サブルーチンでやってみる事にします。
ありがとうございました!
0410名前は開発中のものです。2009/08/01(土) 01:26:53ID:QpRSM0pZ
>>407
[image storage="&kag.fore.layers[0].Anim_loadParams.storage" layer=1 pos=center
cond="kag.fore.layers[0].Anim_loadParams !== void && kag.fore.layers[0].Anim_loadParams.storage !== void"]
または
[eval exp="kag.fore.layers[1].assignImages(kag.fore.layers[0]"]
0411名前は開発中のものです。2009/08/01(土) 02:00:28ID:ORmBfdl/
tjsの質問です。
var i="j";
var j= 0;
この場合に変数iを利用して変数jの値を変えられないでしょうか。
(i!)= 値、でできるかと思ったのですがこれは不正な代入か不正な式の操作だそうなので。
0412名前は開発中のものです。2009/08/01(土) 02:41:35ID:NlDhYl95
>>411
その式だと 0 = 値 ってことになるから当然エラー

目的を満たすには

global[j] = 値

でおk
0413名前は開発中のものです。2009/08/01(土) 10:24:11ID:KB27uNbz
407です。
408、410、レスサンクスです!!
condでvoidかどうかチェックするのか……。
assignImagesの使い方もわかりました。すてきー。
04144112009/08/01(土) 12:58:26ID:p7Ny6mdi
>>412
[]演算子を使えば良いのですね、回答いただきありがとうございます。
私の考えたものは言われると確かにエラーで当然ですね、何故これでできると思ったんだろう。
0415名前は開発中のものです。2009/08/01(土) 13:27:12ID:hsxXyy+h
そういうのはちゃんと理解して使わないと嵌まるよ
0416名前は開発中のものです。2009/08/01(土) 22:03:21ID:v2mQIBat
first.ksから次のシナリオのksに飛ばして
再びfirst.ksに戻って次のksに飛ばす方法したいんだけど
戻る時jumpで*〜指定するのとcallでreturnして戻るのと指定するのどっちが効率的?

他にそういう方法があるなら教えてほしいです。
0417名前は開発中のものです。2009/08/01(土) 23:07:33ID:fEDZV3Iq
>>416
そんな些細なことで効率性を求めてたらなかなか進まない
好きな方法をつかう

個人的にはマクロ読み込みみたいに必ず呼び出し元に返ってくる、ちょっと別のファイルを
読み込むような意図ならサブルーチン。同じファイルに戻るかもしれないけど条件次第では
戻らないかもしれない、シナリオ分岐など(ニュアンス的に)処理が別ファイルに移るようなときなら
jump使ってるかな
0418名前は開発中のものです。2009/08/01(土) 23:09:37ID:h4M1zPGr
何の効率?
0419名前は開発中のものです。2009/08/02(日) 10:44:29ID:C+Gw8PJZ
たぶん、脳みそ使わないで済む効率。
ケースバイケースなんだけど、通常のシナリオ部分なら
@jumpの方が扱いが楽だよ。必要なら、戻り先は、フラグに収納しとく。

>他にそういう方法があるなら教えてほしいです。
tjs含め、普通に「KAG System リファレンス」で言及されているのであらかただと思う。
ということで、リファ嫁。

個人的見解だけど。そこら辺は自分で試行錯誤して決めれば良いレベルと思ふ
0420名前は開発中のものです。2009/08/02(日) 10:54:19ID:Wp08KWhd
個人的な好みでは、jump使うのは3〜4回くらいかな
あとは全部callしてる
first.ks->macro.ks->title.ks->main.ks
とか
構造化プログラミングとかに慣れてるとこっちの方が違和感が少ない
0421名前は開発中のものです。2009/08/02(日) 11:32:42ID:fQoBB6mb
プログラマー上がりなら、違和感は少ないかもしれないけど、
栞やコンダクター周りとの相性の問題あるし、リンクが普通に使うと@jump同等だし、
@jump主体にしたほうが、素直でお得と思う。
0422名前は開発中のものです。2009/08/02(日) 12:34:40ID:Wp08KWhd
callで相性問題出るのか!?
今のところ、問題起きてないけど・・・。

jump主体はGotoのスパゲッティコードを連想してどうにも。
0423名前は開発中のものです。2009/08/02(日) 12:41:51ID:KHOYRoEP
結論:個人の好きで使え
0424名前は開発中のものです。2009/08/02(日) 13:05:59ID:3h/vRcOB
KAG SYSTEMの構造を理解してればcall主体で組むなんてことは普通しない
まあ何を作ってるのかにもよるけど、関数プログラミングがしたいなら、
TJSで自前のサブシステム作ってKAGに組み込んで・・・ってのが筋だと思うし、
後々トラブルが少なくてすむんじゃないだろうか
0425名前は開発中のものです。2009/08/02(日) 14:27:47ID:Wp08KWhd
>>424
tjsは機能拡張の為に多少弄る程度で、本体の方の構造はぜんぜん把握してないんだ
使ってるのはADVで

*start_main
[call storage="macro.ks"]
; シナリオ部
[call storage="prologue.ks"]
[call storage="scenario01.ks"]
[call storage="scenario02.ks"]
; タイトルへ
[jump storage="title.ks"]

みたいな使い方。
シーンごとの分岐とかが楽にできるから、こういう形にしたんだけど・・・
問題でそうだろうか?
0426名前は開発中のものです。2009/08/02(日) 16:00:05ID:P5IDIPeC
callは使いすぎるとreturnの誤爆が出てきてしっちゃかめっちゃかになる恐れがある
というか実際なって困ったので必要がない限りjump
0427名前は開発中のものです。2009/08/02(日) 17:38:21ID:eEt2K5t6
マクロ内でcall使うのって駄目?
とりあえず動くからいいのかと思ってたんだけど
04284212009/08/02(日) 18:36:48ID:HaievO31
えっと、自分が420に対して「相性の問題」と言ったのがあらぬ疑念を
呼んでなくもないようなので、補足します。
「相性の問題」と言ったのは、土を掘るならシャベル、
耕すなら鍬のほうが相性が良いといった用なことです。(例えがあれですが)
取り合えず、「構造化プログラミング」ってなにそれ、食べれるのって方は
「KAG System リファレンス」-「サブルーチンを使おう」等をしっかり読んで、
あとは、使って覚えればいいと思いますm(_ _)m
0429名前は開発中のものです。2009/08/02(日) 20:15:19ID:XqTlUFYH
メインフローを作ってcallでシナリオを呼んだ方が管理しやすくない?
0430名前は開発中のものです。2009/08/02(日) 20:21:19ID:BJC3kT9Q
call は呼び出しもとで行がずれたときにエラーで復帰できなくなる罠があったり
0431名前は開発中のものです。2009/08/02(日) 20:39:24ID:Wp08KWhd
呼び出し元で行がずれるってどういう場合に起こる?
0432名前は開発中のものです。2009/08/02(日) 20:47:44ID:KeHZ566g
バッチ当てるときとか?
0433名前は開発中のものです。2009/08/03(月) 10:32:56ID:V7PNVWXx
>>431
つまり最初からちゃんとしたモノを作れば問題は起きないってことです(´ー`)
0434名前は開発中のものです。2009/08/03(月) 21:06:43ID:KTOZHeSA
吉里吉里のレイヤーって横幅が1280pxとかになってもさほど問題ないのかな
昔のDirectXだと、幅が大きすぎるサーフェスを作ろうとすると問題が起きたり
してた気がするんだけど

もちろんどんな大きさのレイヤーでも作りすぎればおかしくなるのは大前提として
0435名前は開発中のものです。2009/08/04(火) 01:40:44ID:OALni9DT
そういや今の3Dエロゲはテクスチャが一枚1024*1024とかふざけたサイズらしいな。
0436名前は開発中のものです。2009/08/04(火) 21:36:25ID:gCd6e1Bq
吉里吉里は内部的には別にDirectX なわけじゃないので特に問題にはならないよ。
表示が DirectX の時は適当に切り分けて処理してくれるようになってたと思う。
0437名前は開発中のものです。2009/08/05(水) 01:44:17ID:J8WmaMAt
業務連絡〜

deeたんとこのサーバがクラッシュして現在 kikyou.info アクセス不能とのこと。
復旧時期は不明
0438名前は開発中のものです。2009/08/05(水) 01:56:18ID:IdRZHtde
それがW.Dee氏からの最後の連絡だった・・・。

ところでおさかな定食はどうなったんだ?
0439名前は開発中のものです。2009/08/05(水) 08:21:46ID:wetiCV7F
SVNとか全滅ってことか?
0440名前は開発中のものです。2009/08/05(水) 09:54:10ID:J8WmaMAt
復旧してる
0441名前は開発中のものです。2009/08/05(水) 22:30:13ID:vUt/Hk1T
誰からんか氏のどこでもセーブ持ってませんか?
工事中でDLできなくなっているので……
0442名前は開発中のものです。2009/08/05(水) 22:48:41ID:YtFZquA8
二次配布おkだったっけ
0443名前は開発中のものです。2009/08/06(木) 00:08:36ID:lHlM1VqA
流れ豚切ってすみません。
質問なのですが、
動的なカットインを取り入れたいのですが、
レイヤーそのものを動かすのではなく例えば四角いレイヤー画像内で
簡単な動きやスクロールなどをさせたいのですが
そういったことはKAGEXでやった方がいいのでしょうか・・・
pimageのみを動かせないかとリファレンスを見たところ、
そういった機能はなさそうです

何かいいアイディアはないでしょうか
0444名前は開発中のものです。2009/08/06(木) 00:39:06ID:PW1IyXjf
>>443
アニメーションファイルを使うとか。
座標ガリガリ書きまくるのがめんどくさいけど。
0445名前は開発中のものです。2009/08/06(木) 03:18:22ID:7IoCjv+k
俺はレイヤにスプライトの機能実装したけど重かった。
0446名前は開発中のものです。2009/08/06(木) 05:35:52ID:PZu2WCfx
俺はスプライト処理はDirectXに任せたけど結局memcpyで転送になるのでやはり重かった。
0447名前は開発中のものです。2009/08/06(木) 17:23:51ID:rqIQuvBC
よくプラグインのファイルとか、.ksで作ってるけど、
@iscriptで始まって、@endscriptで終わるだけなら、
.tjsで作ってもいいような気がするんですけど、
.ksの方がよくて.tjsで作ると不都合なことがあるんですか?
0448名前は開発中のものです。2009/08/06(木) 17:28:00ID:K9vVkzj4
別にない。単に KAG の処理系では読めないので、手動で execStorage する必要があるだけ
0449名前は開発中のものです。2009/08/06(木) 17:33:24ID:V0RouXx7
ksだとTJSの後KAGで何か書いておきたい時に書ける
0450名前は開発中のものです。2009/08/06(木) 18:09:33ID:PW1IyXjf
関連のマクロとかまとめとけるな
0451名前は開発中のものです。2009/08/06(木) 23:40:00ID:UZGii+8I
俺はスクリプタにそこら辺一切触らせたくなかったのでプラグインの実装、そのプラグインを使うタグの実装を全部tjsで書けるようにしてある。
シナリオ側からは
@mount name=pluginnameでプラグイン同士の依存関係から全て勝手に解決して使えるようになる。
まあ、実装の隠ぺいってやつだね。
プラグインの実体はpluginname.xp3とそれが依存するxp3にあるからスクリプタが実装の詳細を知ることはできない。

新タグの仕様はドキュメントに書いてある。
つまりプラグイン書くのはマの仕事。スクリプタの仕事ではないという事にしてある。
04524432009/08/06(木) 23:48:52ID:lHlM1VqA
>>443-446
ありがとうございます
スプライトで調べてみたものの????でしたので
アニメーションファイルかどうしても実装しかったらKAGEXを検討します
できそうで簡単にできない機能でもどかしいですね
0453名前は開発中のものです。2009/08/06(木) 23:50:32ID:ETeqkH0q
俺もスクリプタには演出のみお願いしてる。
KAGのタグだとstorageで素材を指定するとか面倒くさいので、ファイル名ベースのタグである程度システムが全自動で処理してくれるようにしてある。
スクリプタがbufの番号とかlayerの番号とか気にせず演出に専念できるように。
最近はライターさんでも扱えるぐらい簡単にしたから、スクリプタ不要になった。
このままだと俺も用済みになるかもなw
0454名前は開発中のものです。2009/08/07(金) 00:06:22ID:zu3InFxL
>453
いや、俺の場合ライタがスクリプタ兼任なんで「お前はプラグイン書く暇があったらシナリオ上げろ!」というためにだなw
0455名前は開発中のものです。2009/08/07(金) 14:29:08ID:LBL2K49z
>>454
> ライタがスクリプタ兼任

ですよねー
俺なんか正直シナリオ書くよりスクリプトいじってるほうが楽しいという
本末転倒状態になってるw
0456名前は開発中のものです。2009/08/07(金) 16:18:16ID:8xiRGJf0
一年以上前にスレで
マップチップからRPG用のマップ作ったり
キャラやモブが移動する2Dマップ処理のスクリプトをうpした人がいたけど、
だれか持っている人うpしてくれませんか

「おお、ベアトリーチェ」
みたいな台詞を町人がしゃべってたから
うみねこ1~2話が出た頃だったかな…?
0457名前は開発中のものです。2009/08/07(金) 16:28:50ID:JnppTWi1
>>456
ttp://uproda11.2ch-library.com/11192120.zip.shtml
PASS:krkr
0458名前は開発中のものです。2009/08/07(金) 16:59:26ID:8xiRGJf0
>>457
季節すら思い出せなかったので
流石に無理かと思ってましたがエスパーが居てくれて幸運でした。

本当にありがとうございます!
0459名前は開発中のものです。2009/08/08(土) 12:34:31ID:oOpy5+ek
ベアトリーチェ=うみねこて・・・うん、いや、いい
0460名前は開発中のものです。2009/08/08(土) 13:32:49ID:lY8WpKcm
しかたないさ
0461名前は開発中のものです。2009/08/08(土) 16:57:43ID:GjsPccWg
質問させてください
選択肢のランダム表示をマクロにしようと思っています
以下のようにマクロを作ってみたのですが、ふたつ問題が出ました
まず、選択肢の本文が長い場合、タグがひたすら横にのびることです
もうひとつは、選択のタイミングによって選択肢の総数が変わることです
(選択肢が4つの質問と3つの質問があったり、選択肢が増えたりします)
解決方法が思いつかないので、何かヒントをいただけたらと思います
宜しくお願いします。



*select
[macro name="select"]

@eval exp="f.data = [[ mp.text1 ,'first.ks', mp.select1], [ mp.text2, 'first.ks', mp.select2], [ mp.text3,'first.ks', mp.select3], [ mp.text4,'first.ks', mp.select4]]"
@eval exp="f.tmp = intrandom(0,3), f.data[0] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[1] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[2] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[3] <-> f.data[f.tmp]"

1.[link target="&f.data[0][2]" storage="&f.data[0][1]"][emb exp="f.data[0][0]"][endlink][r]
2.[link target="&f.data[1][2]" storage="&f.data[1][1]"][emb exp="f.data[1][0]"][endlink][r]
3.[link target="&f.data[2][2]" storage="&f.data[2][1]"][emb exp="f.data[2][0]"][endlink][r]
4.[link target="&f.data[3][2]" storage="&f.data[3][1]"][emb exp="f.data[3][0]"][endlink][r]
[endmacro]

[select text1="本文1" text2="本文2" text3="本文13" text4="本文14" select1=select1 select2=select2 select3=select3 select4=select4][s]
0462名前は開発中のものです。2009/08/08(土) 17:12:06ID:g/+i2DJo
こんな感じで、どうよ?

;選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.選択肢の数 = 4"]
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4'"]
;2択の時の専用マクロ
[if exp="f.選択肢の数 <= 2"][select2 text1="&f.t1" text2="&f.t2" select1="&f.s1" select2="&f.s2" ][endif]
;3択の時の専用マクロ
[if exp="f.選択肢の数 == 3"][select3 text1="&f.t1" text2="&f.t2" text3="&f.t2" select1="&f.s1" select2="&f.s2" select3="&f.s3" ][endif]
;4択の時の専用マクロ
[if exp="f.選択肢の数 >= 4"][select4 text1="&f.t1" text2="&f.t2" text3="&f.t2" text4="&f.t4" select1="&f.s1" select2="&f.s2" select3="&f.s3" select4="&f.s4"][endif]
[s]


[select2]と[select3]と[select4]をまとめて
[select]内で、f.選択肢の数 を調べて、処理を分岐のほうがスマート
0463名前は開発中のものです。2009/08/08(土) 17:35:42ID:g/+i2DJo
2〜4択に対応版作ってみた


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;↓今回の選択肢の数
[if exp="f.好感度フラグ < 5"][eval exp="f.選択肢の数 = 3"][endif]
[if exp="f.好感度フラグ >= 5"][eval exp="f.選択肢の数 = 4"][endif]
;↓選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1の文章をここに記述する'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2の文章をここに記述する'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3の文章をここに記述する'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4の文章をここに記述する'"]
;↓のマクロで選択肢配置
[select]
[s]
0464名前は開発中のものです。2009/08/08(土) 17:37:33ID:g/+i2DJo

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;選択肢マクロ
[macro name="select"]
;今回使用するデータを集計
@eval exp="f.data = [[ f.t1 ,'first.ks', f.s1], [ f.t2, 'first.ks', f.s2], [ f.t3,'first.ks', f.s3], [ f.t4,'first.ks', f.s4]]"
;ランダム入れ替え
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;↑今回の選択範囲の内容を入れ替え
;↓以下適当な回数シャッフルを繰り返し
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;選択肢を表示する
1.[link target="&f.data[0][2]" storage="&f.data[0][1]"][emb exp="f.data[0][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 2"]2.[link target="&f.data[1][2]" storage="&f.data[1][1]"][emb exp="f.data[1][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 3"]3.[link target="&f.data[2][2]" storage="&f.data[2][1]"][emb exp="f.data[2][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 4"]4.[link target="&f.data[3][2]" storage="&f.data[3][1]"][emb exp="f.data[3][0]"][endlink][r] [endif]
[endmacro]
0465名前は開発中のものです。2009/08/08(土) 17:38:43ID:irbfFcCJ
式中関数のコンテキストって何になるの?
いろいろ試してみたけど,それを含むクラスのインスタンスになるっぽい?
0466名前は開発中のものです。2009/08/08(土) 17:44:51ID:GjsPccWg
>>462-464
めちゃくちゃ早い回答ありがとう!
何かできそうな気がしてきた
じっくり考えてみるよ、本当にありがとう
0467名前は開発中のものです。2009/08/08(土) 19:51:17ID:urpQMU76
>>465
globalになるんじゃないっけ
0468名前は開発中のものです。2009/08/08(土) 20:27:58ID:x44gCfOd
ちょっと相談に乗ってほしい
セーブデータをマイドキュメント以下に保存させるようにしたんだけど、起動すると、なんかexe直下にもsavedataフォルダが作られて、krenvprf.kepってのが作られて困ってる。
デバッグ情報を記録してるってことはリファレンスに載ってたからわかったんだけど、デバッグはOFFにしている(・・・ハズ)なんだ。
Releaserでxp3とかにするときに取り除かれる、って聞いたんだけど、相変わらず生成されちゃう。
どうすればいいか、誰か知らないだろうか?
■ このスレッドは過去ログ倉庫に格納されています