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

NScripter Ver.16.00

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/06/01(月) 18:58:55ID:6K91CqQ2
商業流通でなければフリーで利用可能な
ゲームエンジンNScripterについて語るスレです。

・本家
ttp://www.nscripter.com/
0640名前は開発中のものです。2010/01/05(火) 16:34:33ID:XvL6Xci6
でもmidiは鳴り始めるの遅くないか?
0641名前は開発中のものです。2010/01/05(火) 16:48:35ID:KHVtCUUN
BGMがCD再生だった頃のゲームを経験したことが無ければ
尚更そう感じるかも……。
0642名前は開発中のものです。2010/01/05(火) 17:01:11ID:Cc4rlrkp
midiは音源によってかなり音違うのがな・・・
ほとんどのプレイヤーはOSに入ってるクソ音源使ってるだろうし
機種依存以前に聞く環境がまともじゃない
0643名前は開発中のものです。2010/01/05(火) 17:45:34ID:VolT6IoS
別の制作ツールも使ってるがmidiは数秒遅く再生されてしまう
パソコンの環境だっけ?に影響されるからだったような気が
0644名前は開発中のものです。2010/01/05(火) 18:53:32ID:XvL6Xci6
やっぱりそういう物だったのか>遅く再生
ずっと自分のPCが古い所為だと思ってた
0645名前は開発中のものです。2010/01/05(火) 20:44:30ID:5XPUwt7g
midiちょっと調べてみた
軽いけどそれぞれのパソの再生環境に依存するから
再生にタイムラグが出たり異なった音になったりするらしい
自分の所でうまく再生されても別のパソも同じと限らないから
なるべくなら使用しない方がいい拡張子だろうな
使いたいなら別の拡張子に変換した方がいい
0646名前は開発中のものです。2010/01/05(火) 21:00:09ID:zLuAcOtl
つーか意図した音に鳴る保障すらないだろMIDIは
>>639は最悪のフォーマットの譬えに出しただけだと思うが
0647名前は開発中のものです。2010/01/06(水) 17:09:27ID:NiCVPMOK
ogg
・midよりは重いが、気になるほどの重さではない
・音質は安定、影響するのはスピーカー(イヤホン)くらい
・dllのおかげで環境依存はほぼなし
・ライセンス問題などはなし、dllさえ同梱すればおk

mp3
・wavよりは軽いがoggと気になるほどの差はない
・midよりは音質いいがwavには負ける、oggと(ry
・環境によっては上手く鳴らない場合も
・ライセンス問題が面倒

mid
・ダントツの軽さ。他の拡張子じゃ勝負にすらならない
・音質が完全に環境依存。音屋でない限り期待できない
・環境によってはタイムラグとかが発生
・配布元の規約さえ守れば安心、自作なら完全フリーダム

wav
・数秒程度ならともかく、一曲分となるとくそみそに重い
・音質は最も安定、高品質での提供も可能
・あんまり重いと読み込みに時間がかかるが、それはwavに限った話じゃない
・そもそもBGM素材としての配布はまずない。ほぼSE・ボイス用拡張子。

ま、後の選択は自分でやれってことだな。
midやmp3使ってたってプレイできないわけじゃなし。
0648名前は開発中のものです。2010/01/06(水) 20:29:36ID:+lFrW6Lf
では次に「拡張子」について調べてみましょう。
0649名前は開発中のものです。2010/01/09(土) 01:21:44ID:EbmA0fGk
現状のnsluaも生Luaになったりしないのかなぁ・・・
0650名前は開発中のものです。2010/01/10(日) 15:44:24ID:X2iFrnwh
多重起動マダー?
0651名前は開発中のものです。2010/01/10(日) 19:46:55ID:BgGNLmJA
NSc2ならroot.lua弄れば多重起動出来るよ
0652名前は開発中のものです。2010/01/11(月) 00:19:16ID:ujIjN74a
>>631
画面サイズ変更ってNScripter2の方?
今までの画面サイズ変更は3パターンだけだよね
0653名前は開発中のものです。2010/01/12(火) 22:39:02ID:u6qLuP86
SGE本体とNSc2の区別をきっちり付けていきたいですね。
0654名前は開発中のものです。2010/01/14(木) 13:49:01ID:JomY+NY3
Nスクハンズオンに参加したいけど、北海道は遠すぎる。。。
0655名前は開発中のものです。2010/01/15(金) 00:17:25ID:eaNaPVwS
札幌在住だけどその日は室蘭で仕事の俺がきましたよ(´;ω;`)ブワッ
0656名前は開発中のものです。2010/01/15(金) 00:51:55ID:zxbk6taU
えろーいループアニメを作ってもらったが
メッセージウィンドウの下でMPEG動画を回すのは無理なのか……

糞でかいスプライトのアニメで実現しようと思ったけど無茶だったw
0657名前は開発中のものです。2010/01/15(金) 01:32:27ID:+17tnhbM
>>656
なんか既視感・・・
>>280
0658名前は開発中のものです。2010/01/15(金) 23:50:27ID:oWMuNCfp
T2先生研究室で何やってんすか
0659名前は開発中のものです。2010/01/16(土) 01:42:27ID:/WitSH3n
NScripter2は、switch case 文欲しい
あとスプライトの重ね合わせは、Z値を指定する方法にして欲しい
マイナスは、ちょっと使いにくそう
0660名前は開発中のものです。2010/01/20(水) 23:47:38ID:LTPn2tHN
質問です。
あどばんすどNScripterオフィシャルガイドを参考に、システムカスタマイズのセーブ部分を製作しています。
一通りスクリプトは終わったのですが、以下の問題がありました。
@セーブ画面を表示し、戻ろうとしてもセーブ画面から抜けることができない。
A複合ボタンに登録したマウスオーバー用スプライトが、セーブ前には反応がなく表示されないが、セーブ後あるいは何回かクリックするとに反応するようになる。
BAのようにスプライトが表示できるようになるとセーブ画面から抜けることができる。

以上の原因はどのようなことが考えられるでしょうか?
@はサブルーチンの設定がおかしいとも考えられますが、Bのような状況のためサブルーチンともいえないかもしれません。
アドバイスお願いします。

また、スクリプトは少々長いのですが晒していいでしょうか?
0661名前は開発中のものです。2010/01/21(木) 00:45:41ID:3qHQS2Nb
>>660
組み方ミスってる。
Aの後半の反応する箇所でやっと正常化してるから。
まずセーブに入った初回のループまたはボタン待ちを調べてみれ。

2〜30行程度なら問題無いと思うけど、それより長い場合は
zipに固めてうpろだ↓に投下してくるのがいいと思う。
http://nscruploader.hp.infoseek.co.jp/
0662名前は開発中のものです。2010/01/21(木) 20:43:58ID:vrtA3VKS
>>661
ありがとうございます。
セーブボタンのボタン登録とボタン待ちのスクリプトは以下です。
以下がセーブに入ったときのボタン待ちです。*savemode_btlp内では特に問題なさそうですが、ボタン登録後、または登録前のルーチンに問題があるのでしょうか?
;--------セーブ画面のボタン登録-----------
*savemode_btdef
btndef clear

exbtn_d "C91" ;exボタンの初期化

exbtn 31,11,"M91,76,45"     ;セーブ枠
exbtn 32,12,"M91,76,153"
exbtn 33,13,"M91,76,266"
exbtn 34,14,"M91,286,45"
exbtn 35,15,"M91,286,153"
exbtn 36,16,"M91,286,266"

;-----------ボタンループ--------------
*savemode_btlp
btnwait2 %BtnRes
if %BtnRes=0 goto *savemode_btlp
if %BtnRes<=-2 goto *savemode_btlp

btndef clear

if %BtnRes=-1 goto *savemode_end ;セーブ画面を終了するためのラベルへ行く
if %BtnRes>=11 & %BtnRes<=16 vsp 91,0:mov %save_data_dummy_num,%BtnRes-10;gosub *savemode_save;goto *savemode_spdef2

スクリプトを投下してきました。
http://nscruploader.hp.infoseek.co.jp/
n_0215.zipです。
0663名前は開発中のものです。2010/01/21(木) 23:01:28ID:eFueZJMM
いろんなところに全角スペースががが
0664名前は開発中のものです。2010/01/22(金) 02:06:37ID:+UsBz/On
>>663
スクリプト以前の問題でした…お恥ずかしい限りです。
しかし、おかげで問題は解決しました。
アドバイスありがとうございます。
0665名前は開発中のものです。2010/01/22(金) 15:50:55ID:zAKtuLub
ワロタwwww
解決して良かったな
0666名前は開発中のものです。2010/01/22(金) 20:59:37ID:WOrC/Fz+
今南極堂さんのサンプル見ながらセーブ作ってるんだけどさ
セーブの画像の切り替え部分が上手くいかなくってさ。

助けてください

ttp://uproda11.2ch-library.com/11221615.zip.shtml
0667名前は開発中のものです。2010/01/22(金) 21:42:50ID:62Rkso/x
>>666

%saveloadに1加算して分岐してるだろ。
戻るときに%saveloadを初期化してないから、ロードを押す度に加算される。

ついでにグローバル変数としてセーブされてるっぽいな。
0668名前は開発中のものです。2010/01/22(金) 22:15:50ID:WOrC/Fz+

addじゃなくてmovですね。
ありがとうございます。

それと
ゲーム始って右クリしてセーブ画面行くと

ページ1は普通に表示されるのに
2とか3とか表示するときもい文字列がつらつらと;
0669名前は開発中のものです。2010/01/22(金) 22:51:33ID:HQglkda1
スプライトで
http://koideai.com/up/src/up35896.jpg
の画像を表示しようとしたのですが
http://koideai.com/up/src/up35897.jpg
のようにかすれてしまいます。

bg white,1
lsph 10,"system\menu.jpg",700,0
vsp 10,1
print 1
で表示させているのですがこれは何がいけないのでしょうか・・・?
0670名前は開発中のものです。2010/01/22(金) 22:57:04ID:62Rkso/x
>>669

:c;とか:a;とか必要
0671名前は開発中のものです。2010/01/22(金) 23:11:39ID:vcieN9ZJ
質問レベルが低すぎるな
相手するほうも程ほどに
0672名前は開発中のものです。2010/01/22(金) 23:32:12ID:PYlbuBSv
まあまあ。どうせ暇なんだから。

何で荒れてるか。
それは、透過処理がデフォルト「左上の色を透明にする」だから。
jpgって画像が荒れるから、ところどころ違う色と判定されて
そのままの色がのこってまだらになっている、というわけ。
つまり、画像を指定する時に透過処理も指定すればおkというわけだな。
さあ、原因は分かったろ。後はマニュアルを読むんだ。

おせっかいだが、透過処理はjpgより透過pngの方がきれいだぞ。
あと、ボタンくらいの小さい画像ならbmpでもそんなに重くならない。
0673名前は開発中のものです。2010/01/23(土) 00:24:35ID:S0cHgUDs
>>670-672
ありがとうございます!初心者丸出しな質問でお恥ずかしい限りです。
丁寧な回答ありがとうございました!
0674名前は開発中のものです。2010/01/23(土) 05:57:05ID:yflK/7d7
>>668
見させてもらった

まず、;mode800,value1000は2行目じゃなくて1行目に書いてくれ
俺の環境じゃ認識されずに640*480で起動した

ふたつ目にキモい文字列が出る原因はよく見れば怪しいところが分かると思う
変なのが出るのは確かに2ページ目以降だけど、2ページ目でもNo,9はキモくないことに注目して欲しい
No,10以降がおかしくなっているのだと分かるとすぐに原因は掴める

*save_noの↓これ
strsp %mod_file+100,"No,"+$now_file,500+%savelr,%four_file*100-90,10,1,15,15,1,0,0,0
↑の、 "No,"+$now_file ←これを半角で作ってるのがまずい

1〜9の時は合計4バイトになるから正しく表示されるが、10〜99は5バイトになってしまい正しく解釈されない
全角にするか、適宜半角スペースを入れるかすると直ると思う
(100〜999は同様の理由で正しく表示されると思う)

あと*yomikomiの中でnextふたつ書くのは感心しない
if %1=1 gosub *save_exist
if %1=0 gosub *save_no
next
↑みたいにまとめた方が読みやすいと感じる

ついでに*save_existと*save_noの最後でprintしてるのも無駄だと思う
上で書いたnextの次にprintすれば同じことじゃないかな
(確認してないので憶測だけど)

がんばってくれ
0675名前は開発中のものです。2010/01/23(土) 19:31:32ID:5AkoG7mP
Nスク2008年度の秋頃に配布されていたverから最新のverにUPしたら
以下のスクリプトで
if %BtnRes=1 loadgame 101 :goto *c_qload_end
の処理が終わったら何故かクイックセーブのラベルに飛んでしまうのですが
原因ってわかりますでしょうか?

*c_qload
savefileexist %0,101
if %0=0 goto *c_qload_end

lsp 799,"top\qload.bmp",177,140
lsp 791,":a/2,0,3;top\qsy.bmp",230,250
lsp 792,":a/2,0,3;top\qsn.bmp",400,250
print 4,100
btndef clear
spbtn 791,1
spbtn 792,2
*c_load_btlp
btnwait %BtnRes
if %BtnRes=-1 goto *c_qload_end
if %BtnRes=-10 goto *c_qload_end
if %BtnRes=-11 goto *c_qload_end
if %BtnRes=2 goto *c_qload_end

if %BtnRes=1 loadgame 101 :goto *c_qload_end

goto *c_load_btlp
*c_qload_end
csp 799:csp 791:csp 792
btndef clear
print 4,10
return
0676名前は開発中のものです。2010/01/23(土) 19:57:59ID:50vS1EJw
>>675
それバージョンが原因じゃないと思う
loadgameはデータがなかった場合処理を続行するぞ
データがなかった場合の例外処理をちゃんと書いた方が良い
0677名前は開発中のものです。2010/01/23(土) 20:55:46ID:5AkoG7mP
>>676
レスありがとうございます
一応
savefileexist %0,101
if %0=0 goto *c_qload_end
この部分でセーブデータがない場合はサブルーチンから抜ける処理をしているのですが
それとはまた別と言うことでしょうか?

一応自分で確認した限りでは、セーブデータがない場合の動作は正常です
何故かセーブデータがある状態でクイックロードするとloadgameを実行した後savegameを実行して
以後そのままクイックセーブの処理が続いてしまいます

関係しているのかはわかりませんが、フラグ判定に使っているローカル変数もクイックセーブ含む
セーブ全体で保存されず
フラグを立てた状態で選択肢が出てくる場所でセーブして、その後再ロードすると何故かフラグが立ってないことに
なってしまいます・・・

デバックモードのブロック処理で確認してもいきなりわけのわからないラインへ飛ぶので最悪は元のverに戻します・・・
0678名前は開発中のものです。2010/01/23(土) 21:11:24ID:Lr6Yy+Ti
>>675
つーか loadgame * の後にgoto文置く意味はなんぞや? 削れば?
それで違うならloadgosubで変なことやってんでねーの?
0679名前は開発中のものです。2010/01/23(土) 22:41:22ID:5AkoG7mP
>>678
レスありがとうございます

秀和システムからでている、あどばんすどnscripterを見てカスタマイズしていたため
自分も意味は無いとは思いましたが一応サンプルに記載されていたので、そのまま記載していました

あともともとloadgosubは使用していませんでしたのでreturn先はtext_cwになるのですが
今まではそれで正常に動いておりました。

なんど色々変えてステップ実行で確認しても突然savegame行にジャンプするのでもう諦めて以前のverに戻します
ありがとうございました
0680名前は開発中のものです。2010/01/23(土) 23:53:35ID:Lr6Yy+Ti
相当変な事やってる俺のスクリプトですらver2.82→2.94にしても全く問題なかったんだけどな。
スクリプト見ないとどうとも言えんわ。戻して動くならそれが一番楽な解決だし、いんでね。
0681名前は開発中のものです。2010/01/24(日) 00:05:43ID:wHBbRN9+
>>658
いまさらだけど見てきたw
ぎりぎり30fpsだったけど問題なく揺れたw
キーボードじゃなくマウスでグリグリしたいなあ。
高橋さん最近演出についてつぶやいてるけど
これについてはどーなんだろ?
06826752010/01/24(日) 03:42:39ID:JiTZ7geE
>>680

ttp://www.dotup.org/uploda/www.dotup.org588437.txt

一応コレがシステムカスタマイズしたスクリプトです
色々と意味不明なところもあるかと思いますが
現状のverでは正常にこちらの意図どおりに作動しておりました

ただ最新版に変えたらクイックロードを実行すると
238行目のloadgameが実行され
次の瞬間208行目のsavegameに飛び
そのままtext_cwに戻り表示がぐちゃぐちゃになります

今までだったらちゃんとpretextラベルに飛んでいたのですが・・・

お暇でしたら一度見てみてください
0683名前は開発中のものです。2010/01/24(日) 05:19:25ID:wHBbRN9+
ちゃんと確認してないけどsaveonの位置が悪いんじゃないの?
その辺の話は前スレにあったはず。
0684名前は開発中のものです。2010/01/24(日) 06:22:19ID:pInyo6dB
>>682
「本に出てたからとりあえず入れた」ってのはまずいと思うぞ
自分で何してるのか分かった上で書かないと
>>682の見たけど>>683の言う通りsaveonの位置がおかしい
*text_cw_nextのtexecの後に入れるとうまく動くんじゃないかと
あとNScripterのバージョン切り替えるときにはenvdataとかのセーブデータは全部破棄してるよね?
してないと誤動作起こすことがあるぞ
あきらめずにがんばれ
0685名前は開発中のものです。2010/01/24(日) 19:36:06ID:JiTZ7geE
>>683
>>684
レスありがとうございます
ご指摘のとおりtexecの後にsaveonを移動したら正常動作するようになりました

ただ現verではそうしないといけないのか? 何故前のverまではそうしなくてよかったのか
等々理解できていないのでその辺含めて前スレなど見て勉強したいと思います
色々とありがとうございました
0686名前は開発中のものです。2010/01/25(月) 18:56:00ID:41SRWnzl
mvでボイス再生したらbgm命令のBGM止まっちゃうんですがなんとかならないですかね?
量が多いからボイスをwavにするのはちょっときびしくてdwaveloopだと効果音扱いになるのがもどかしい…
0687名前は開発中のものです。2010/01/25(月) 20:42:19ID:NXsLYazO
mvって懐かしい命令まだあったのかw
基本通りdwaveの0番でogg鳴らしとけ
0688名前は開発中のものです。2010/01/25(月) 21:59:17ID:41SRWnzl
なるほど!ありがとうございます。
0689名前は開発中のものです。2010/01/25(月) 22:39:04ID:t2tIMf4T
Luaを覚えるには、どうすればいいんだ
プログラム言語は分からない
Nスクのシスカマは出来る
書店でLuaの本とか見ても、既に他の言語を
学習してる事を前提に書いてあるんだよね
Luaを覚えるために、まずPerlやRubyを学習
というのもアレだし
このままじゃSGEには移行できない
0690名前は開発中のものです。2010/01/25(月) 22:45:05ID:NXsLYazO
>>689
普通にいきなりLua行っていいと思うぞ。入門には楽な言語だし。
むしろ現NScripterでのシスカマをLuaに置き換える作業色々やってみるだけで一通り学べるとオモ。
括弧とかdoとかendあたりの独特な挙動が肌で分かればどうとでもなるさ。
0691名前は開発中のものです。2010/01/26(火) 05:04:55ID:dOF25Eax
自作の既読スキップボタンを一度目のクリックで反応させるにはどうすればいいのでしょうか?
【NScripter−Tips】の「スキップについて2」を見てもよく分からず、解決策が見出せません。
0692名前は開発中のものです。2010/01/26(火) 10:04:31ID:Ibw+Athq
「自作」なんだったら君しかわからんだろう。
0693名前は開発中のものです。2010/01/26(火) 10:05:45ID:IS6WOpqL
強制的に既読にすれ
0694名前は開発中のものです。2010/01/26(火) 13:50:53ID:dOF25Eax
>>692
よくあることみたいだったので、定型文があればと思ったのですが……

>>693
その方法が分からず、途方に暮れてます
0695名前は開発中のものです。2010/01/26(火) 14:59:09ID:qfqQ+LAH
>よくあることみたいだったので、定型文があればと思ったのですが……

「よくあることみたい」と判断した理由は?
0696名前は開発中のものです。2010/01/26(火) 16:09:03ID:qUhK70FB
昔俺がスキップボタンで同じエラー出した時は
if %0==3 systemcall skip
と同じ行で
goto *text_end(texec、saveon、returnさせるラベル)
って飛ばしたら解決したけど。
0697名前は開発中のものです。2010/01/26(火) 16:44:55ID:Y5T0TwE1
>>695
FAQサイトの質問に並んでるくらい何だから
わりとあるんだろ
それすら知らんのならお前が不勉強なだけだな
0698名前は開発中のものです。2010/01/26(火) 16:47:26ID:UEhBTOzc
bgm "〜〜.mp3"でループ再生してくれません。mp3loopもだめでした。
wavだといけたんですが…これはどうしてでしょうか
0699名前は開発中のものです。2010/01/26(火) 16:56:30ID:g7BN1c9/
mp3は非推奨だからoggに変換するといいよ
0700名前は開発中のものです。2010/01/26(火) 17:10:27ID:UEhBTOzc
oggにしたら無事再生できたよ、ありがとう!
0701名前は開発中のものです。2010/01/26(火) 17:13:25ID:IS6WOpqL
>>697
あそこの質問された項目って(リクエスト)って書いてるのだけだぞ。
0702名前は開発中のものです。2010/01/26(火) 17:15:26ID:dOF25Eax
>>695
【NScripter−Tips】に

自作のスキップボタンを作っておき、既読行のところでスキップさせてみても、
1度目は動かずに、2度目に押して初めて既読スキップが動作するような事がよくあります。
ttp://sorejyadamedarou.hp.infoseek.co.jp/tip04.htm#TIP13

と書いてあったからです。

>>696
そこに飛ばしてるはずなんですけどできなくて…スクリプトが間違っているのでしょうか?

btndef clear
spbtn q_skip,1
textbtnwait %0

if %0==-1 gosub *rmenu
if %0==0 goto *text_end

if %0==1 systemcall skip : goto *text_end

*text_end
texec
vsp cur,0
vsp cur2,0
print 1
saveon
return
0703名前は開発中のものです。2010/01/26(火) 17:56:33ID:N0FKhMBW
あれ? 最新版だと問答無用でスキップが止まるんだが。
>>702は暇があったらver2.82で試して欲しい。多分解決する。
0704名前は開発中のものです。2010/01/26(火) 18:36:06ID:N0FKhMBW
正確にはver2.92とver2.93の間で、既読スキップの挙動が違うみたい。
0705名前は開発中のものです。2010/01/26(火) 19:12:23ID:dOF25Eax
>>704
ver2.82とver2.92で動かしてみたところ、どちらも一度でスキップしました。
ありがとうございました!
0706名前は開発中のものです。2010/01/27(水) 00:29:36ID:yoYEwqZM
>>696の方法で解決しました。
ありがとう。
0707名前は開発中のものです。2010/01/28(木) 22:24:35ID:Rl2a2ZSw
textoffが機能しないんですがこの設定や命令使ってるとtextoff使えなくなるよ、ってのとかあります?
0708名前は開発中のものです。2010/01/28(木) 23:11:22ID:Fra6+EIy
私は聞いたこと無い。
片っ端からスクリプトを短縮して調べたらいい。これ基本。
0709名前は開発中のものです。2010/01/29(金) 00:19:03ID:+X6R7ocx
ですか。ありがとうございます。
0710名前は開発中のものです。2010/01/29(金) 00:50:28ID:+X6R7ocx
あー…  !wで待ってる間はtextoffしてくれないのかな。clickだと消えてくれた。
0711名前は開発中のものです。2010/02/03(水) 04:03:14ID:7tLfo8uo
skip使いまくる人ってどれくらいいるんだろう。jumpfとかjumpbより微妙に処理速いよね
0712名前は開発中のものです。2010/02/04(木) 01:31:41ID:/Lq16VbU
1行とばす以外は保守性が悪いから使わない
今は速度クリティカルならLua使えばいい話だし
0713名前は開発中のものです。2010/02/04(木) 02:53:15ID:/c5Dl7Yb
skip -120とか使いまくってる俺はよくスクリプトいじった後にエラーの原因に気付かず苦しむからせいぜい一画面に収まる飛ばし方にした方がいい
0714名前は開発中のものです。2010/02/04(木) 13:59:09ID:9/wENjsJ
なぜラベル使わないのか理解に苦しむ
0715名前は開発中のものです。2010/02/04(木) 22:59:06ID:gdgYe5zc
ラベル数オーバーとか?
まさかね
0716名前は開発中のものです。2010/02/04(木) 23:25:04ID:8g+KvFjJ
Webブラウザで動作するNScripter互換エンジンって無いんですか?
(Flash, JavaAppletなど)
いっそスクリプト書式はNスク互換じゃなくてもよっぽど独自じゃなければいいです。
0717名前は開発中のものです。2010/02/05(金) 00:46:21ID:9tSatLy4
http://www1.atwiki.jp/orz/pages/16.html

norn とか lemonnovel がアプローチは近しいか

ノベラルとかマウス主体で作成するケースも
あるが・・・エンジン部分は作成者の好みが一番
顕れる部分だから、どれを選ぶかはひとによるとしか・・・
0718名前は開発中のものです。2010/02/05(金) 03:43:19ID:MG7ouNAl
>>714-715
ラベル数上限があるという事実がなんとなく俺の精神衛生上よろしくなくてラベル数百個使うよりskipを選んでた
いくら俺が頑張ったところで合わせて千個も使わないだろうと頭では分かってるんだが
0719名前は開発中のものです。2010/02/05(金) 13:33:30ID:teZa+I+4
多数分岐(周回ごとに次のフェーズなど)で途中に追加したい場合とかskipじゃないと面倒
0720名前は開発中のものです。2010/02/05(金) 19:56:16ID:ApjHX7yS
>>718
一番ラベル使う自作関数は全部Luaに回せば滅茶苦茶余裕だよ

>>719
普通にif文でいいと思うんだが
0721名前は開発中のものです。2010/02/06(土) 01:14:26ID:urTA2aLa
そうは言われても、そのLuaが全然分からんのよね
シスカマ始めた時は、牛の人のサイトのおかげで、
なんとか自力で出来たけど、
そういう移行の為の取っ掛かりがまるで無い
0722名前は開発中のものです。2010/02/06(土) 01:24:14ID:IpSIH8Ig
俺もいまだLuaには手を出せず
NS2が正式公開されたら本気出す
0723名前は開発中のものです。2010/02/06(土) 09:37:23ID:8e05DCLk
Luaでwhileやrepeatを使ってボタンループを実装すればラベル数を抑えられる。
ただし、テキスト送りのループまでLuaにやらせると行頭セーブの位置がおかしくなる。

bdownを使った際の押し上げを取得するときなどは、repaetのボタンループの中にもうひとつrepeatのボタンループを書いて、
btime 1 のタイムアウトを押し上げの代わりにしてる。
これ、Nスクだけでやったらラベルを大量に消費しそうだが、Luaならまったく消費しない。
0724haskell はすけるよ?(勘違いしてたらスマソ)2010/02/06(土) 10:39:53ID:rHCpphEo
>>723
>bdownを使った際の押し上げを取得するときなどは、repaetのボタンループの中にもうひとつrepeatのボタンループを書いて、
>btime 1 のタイムアウトを押し上げの代わりにしてる。

二重ループ、そんな使い方するの初めてみたし。
小人Aにイベント投げたら、友達の小人Bに渡されて
しばらくするとオワタよflagが立って、やったflagが立ったflagが立ったと小人Aが喜ぶ

flagが立った、じゃなくて btime 1 のタイムアウト で
処理の分岐を掛ける・・・

いうのが俺の頭では理解を超えた何か黒魔術感を覚えざるを得ず
ゴゴゴゴ…つまりこれは関数型言語の出会い!!!
0725名前は開発中のものです。2010/02/06(土) 11:14:56ID:rHCpphEo
・・・threadig の timeout を通知を受け。引き続き本流に返して
処理を続行します・・・

と、ことば、もしくは例え話で、仕組みを説明しようとすると
理解をしにくい面もあるように思われ、かといっていきなり
コードを出すとたぶん拒絶反応が帰ってくるような・・・でもコードで示すのが一番わかりは良いとは思う・・・
0726名前は開発中のものです。2010/02/06(土) 17:39:27ID:8e05DCLk
ほい。

repeat
NSExec("bclear")
NSExec('strsp 1,ボタン,20,20,10,1,16,16,0,12,1,1,#ffffff,#ffff00,#ff0000')
NSExec('bsp 1,"1,0","1,1","1,2"')
NSUpdate()
NSExec("bdown")
NSExec("bexec $0")
btnstr = NSGetStrValue(0)
if(btnstr == "S1") then
repeat
NSExec("bclear")
NSExec("bdown")
NSExec("btime 1")
NSExec("bexec $0")
btnstr = NSGetStrValue(0)
until(btnstr == "TIMEOUT")
end
until(end1 == true)
0727名前は開発中のものです。2010/02/06(土) 18:17:38ID:dDILdsXz
なんだこの呪文は・・・
0728名前は開発中のものです。2010/02/07(日) 01:30:25ID:V55jSnFh
最初にNスクのスクリプトやhtmlファイルのソースを見たときの感覚を思い出す
0729名前は開発中のものです。2010/02/07(日) 02:50:13ID:PNX5SfSM
ボタンのところダブルクォーテーション忘れた。
NSExec('strsp 1,"ボタン",20,20,10,1,16,16,0,12,1,1,#ffffff,#ffff00,#ff0000')
かな? まあ動作確認はしてない。

いや、NスクもLuaも年末から始めたばかりのヒヨッコも良いところなんだけどさ。
そういえばサンプルが少なくて独自実装の部分が多いような気が……。
自サイトでコード公開したほうが良いのだろうか。
0730名前は開発中のものです。2010/02/07(日) 03:12:48ID:wknDwMfx
NSExec連発するくらいなら素直にNスクのスクリプト書けば?
と思うんだが・・・
Nスクだとitoaを多用しなければならない場面とか
複雑な条件分岐がある場面ならLuaを使う意味はわかるけど

そもそも前提になってるラベルの大量消費の問題って何のこと?
0731名前は開発中のものです。2010/02/07(日) 03:44:25ID:PNX5SfSM
>>730
定義部や文章送り、最低限のメイン処理だけNスクにやらせて、それ以外は全部Lua側に丸投げする方針で勉強してる。
だけど、NSExec連発は自分でも気になってる。
Nスクの機能を使わない関数はluacallしなくて良いし。
07326752010/02/07(日) 03:48:16ID:ykswmlEs
>>731
なにか参考にしたりしてるものはあるの?
とっかかり的な

それか他のプログラミング言語とかスクリプトがバリバリだったりする?
0733名前は開発中のものです。2010/02/07(日) 03:51:44ID:ykswmlEs
あっvipの名前つけちゃったけど気にしないで
0734名前は開発中のものです。2010/02/07(日) 04:04:49ID:PNX5SfSM
>>732
Nスクのファイルに入ってるサンプルをLuaに置き換えたり、うpろだのリンクからLuaのことを調べたりしてる。
一番役に立ってるのはNScripter Scripting Factoryのリファレンス(Nスク、Lua両方)かな。

XHTML/CSS、JavaScript、PHP、VB.NETくらい。
こうして見るとまともなのが一つも無いorz
0735名前は開発中のものです。2010/02/07(日) 12:14:43ID:80IoMjTJ
>>730
確かラベルは最大5000個までしか使えないはず。
誰かが検証してた。
まぁ普通はそんなにラベル使わないがなw
0736名前は開発中のものです。2010/02/07(日) 12:44:58ID:wknDwMfx
>>731
NSExec連発を避けるなら
頻繁に使う命令をLua関数でラップするか
複数行に対応したNSExecのラッパを書くか
先祖川氏のENL使うか
かな・・・

>>735
そうじゃなく>>723
>これ、Nスクだけでやったらラベルを大量に消費しそう
と、そのソリューションとやらの>>726 の関係が分からん
そのスクリプトならNスクだけでやっても大差ないだろと
0737名前は開発中のものです。2010/02/07(日) 12:56:48ID:wknDwMfx
別に「Nスクだけでやれ」って言うつもりはないからな
Luaのメリットとして>>726みたいなコード出されても
マイナスイメージ与えるだけだから噛みついたまで
0738名前は開発中のものです。2010/02/07(日) 14:51:00ID:cYkxk0lQ
ラベル数の上限は9998個じゃなかったっけ?
0739名前は開発中のものです。2010/02/07(日) 20:43:53ID:ak6SqiIl
理論値よりも検証値を信じる俺
■ このスレッドは過去ログ倉庫に格納されています