NScripter Ver.16.00
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2009/06/01(月) 18:58:55ID:6K91CqQ2ゲームエンジンNScripterについて語るスレです。
・本家
ttp://www.nscripter.com/
0683名前は開発中のものです。
2010/01/24(日) 05:19:25ID:wHBbRN9+その辺の話は前スレにあったはず。
0684名前は開発中のものです。
2010/01/24(日) 06:22:19ID:pInyo6dB「本に出てたからとりあえず入れた」ってのはまずいと思うぞ
自分で何してるのか分かった上で書かないと
>>682の見たけど>>683の言う通りsaveonの位置がおかしい
*text_cw_nextのtexecの後に入れるとうまく動くんじゃないかと
あとNScripterのバージョン切り替えるときにはenvdataとかのセーブデータは全部破棄してるよね?
してないと誤動作起こすことがあるぞ
あきらめずにがんばれ
0685名前は開発中のものです。
2010/01/24(日) 19:36:06ID:JiTZ7geE>>684
レスありがとうございます
ご指摘のとおりtexecの後にsaveonを移動したら正常動作するようになりました
ただ現verではそうしないといけないのか? 何故前のverまではそうしなくてよかったのか
等々理解できていないのでその辺含めて前スレなど見て勉強したいと思います
色々とありがとうございました
0686名前は開発中のものです。
2010/01/25(月) 18:56:00ID:41SRWnzl量が多いからボイスをwavにするのはちょっときびしくてdwaveloopだと効果音扱いになるのがもどかしい…
0687名前は開発中のものです。
2010/01/25(月) 20:42:19ID:NXsLYazO基本通りdwaveの0番でogg鳴らしとけ
0688名前は開発中のものです。
2010/01/25(月) 21:59:17ID:41SRWnzl0689名前は開発中のものです。
2010/01/25(月) 22:39:04ID:t2tIMf4Tプログラム言語は分からない
Nスクのシスカマは出来る
書店でLuaの本とか見ても、既に他の言語を
学習してる事を前提に書いてあるんだよね
Luaを覚えるために、まずPerlやRubyを学習
というのもアレだし
このままじゃSGEには移行できない
0690名前は開発中のものです。
2010/01/25(月) 22:45:05ID:NXsLYazO普通にいきなりLua行っていいと思うぞ。入門には楽な言語だし。
むしろ現NScripterでのシスカマをLuaに置き換える作業色々やってみるだけで一通り学べるとオモ。
括弧とかdoとかendあたりの独特な挙動が肌で分かればどうとでもなるさ。
0691名前は開発中のものです。
2010/01/26(火) 05:04:55ID:dOF25Eax【NScripter−Tips】の「スキップについて2」を見てもよく分からず、解決策が見出せません。
0692名前は開発中のものです。
2010/01/26(火) 10:04:31ID:Ibw+Athq0693名前は開発中のものです。
2010/01/26(火) 10:05:45ID:IS6WOpqL0694名前は開発中のものです。
2010/01/26(火) 13:50:53ID:dOF25Eaxよくあることみたいだったので、定型文があればと思ったのですが……
>>693
その方法が分からず、途方に暮れてます
0695名前は開発中のものです。
2010/01/26(火) 14:59:09ID:qfqQ+LAH「よくあることみたい」と判断した理由は?
0696名前は開発中のものです。
2010/01/26(火) 16:09:03ID:qUhK70FBif %0==3 systemcall skip
と同じ行で
goto *text_end(texec、saveon、returnさせるラベル)
って飛ばしたら解決したけど。
0697名前は開発中のものです。
2010/01/26(火) 16:44:55ID:Y5T0TwE1FAQサイトの質問に並んでるくらい何だから
わりとあるんだろ
それすら知らんのならお前が不勉強なだけだな
0698名前は開発中のものです。
2010/01/26(火) 16:47:26ID:UEhBTOzcwavだといけたんですが…これはどうしてでしょうか
0699名前は開発中のものです。
2010/01/26(火) 16:56:30ID:g7BN1c9/0700名前は開発中のものです。
2010/01/26(火) 17:10:27ID:UEhBTOzc0701名前は開発中のものです。
2010/01/26(火) 17:13:25ID:IS6WOpqLあそこの質問された項目って(リクエスト)って書いてるのだけだぞ。
0702名前は開発中のものです。
2010/01/26(火) 17:15:26ID:dOF25Eax【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:N0FKhMBW0705名前は開発中のものです。
2010/01/26(火) 19:12:23ID:dOF25Eaxver2.82とver2.92で動かしてみたところ、どちらも一度でスキップしました。
ありがとうございました!
0706名前は開発中のものです。
2010/01/27(水) 00:29:36ID:yoYEwqZMありがとう。
0707名前は開発中のものです。
2010/01/28(木) 22:24:35ID:Rl2a2ZSw0708名前は開発中のものです。
2010/01/28(木) 23:11:22ID:Fra6+EIy片っ端からスクリプトを短縮して調べたらいい。これ基本。
0709名前は開発中のものです。
2010/01/29(金) 00:19:03ID:+X6R7ocx0710名前は開発中のものです。
2010/01/29(金) 00:50:28ID:+X6R7ocx0711名前は開発中のものです。
2010/02/03(水) 04:03:14ID:7tLfo8uo0712名前は開発中のものです。
2010/02/04(木) 01:31:41ID:/Lq16VbU今は速度クリティカルならLua使えばいい話だし
0713名前は開発中のものです。
2010/02/04(木) 02:53:15ID:/c5Dl7Yb0714名前は開発中のものです。
2010/02/04(木) 13:59:09ID:9/wENjsJ0715名前は開発中のものです。
2010/02/04(木) 22:59:06ID:gdgYe5zcまさかね
0716名前は開発中のものです。
2010/02/04(木) 23:25:04ID:8g+KvFjJ(Flash, JavaAppletなど)
いっそスクリプト書式はNスク互換じゃなくてもよっぽど独自じゃなければいいです。
0717名前は開発中のものです。
2010/02/05(金) 00:46:21ID:9tSatLy4norn とか lemonnovel がアプローチは近しいか
ノベラルとかマウス主体で作成するケースも
あるが・・・エンジン部分は作成者の好みが一番
顕れる部分だから、どれを選ぶかはひとによるとしか・・・
0718名前は開発中のものです。
2010/02/05(金) 03:43:19ID:MG7ouNAlラベル数上限があるという事実がなんとなく俺の精神衛生上よろしくなくてラベル数百個使うよりskipを選んでた
いくら俺が頑張ったところで合わせて千個も使わないだろうと頭では分かってるんだが
0719名前は開発中のものです。
2010/02/05(金) 13:33:30ID:teZa+I+40720名前は開発中のものです。
2010/02/05(金) 19:56:16ID:ApjHX7yS一番ラベル使う自作関数は全部Luaに回せば滅茶苦茶余裕だよ
>>719
普通にif文でいいと思うんだが
0721名前は開発中のものです。
2010/02/06(土) 01:14:26ID:urTA2aLaシスカマ始めた時は、牛の人のサイトのおかげで、
なんとか自力で出来たけど、
そういう移行の為の取っ掛かりがまるで無い
0722名前は開発中のものです。
2010/02/06(土) 01:24:14ID:IpSIH8IgNS2が正式公開されたら本気出す
0723名前は開発中のものです。
2010/02/06(土) 09:37:23ID:8e05DCLkただし、テキスト送りのループまでLuaにやらせると行頭セーブの位置がおかしくなる。
bdownを使った際の押し上げを取得するときなどは、repaetのボタンループの中にもうひとつrepeatのボタンループを書いて、
btime 1 のタイムアウトを押し上げの代わりにしてる。
これ、Nスクだけでやったらラベルを大量に消費しそうだが、Luaならまったく消費しない。
0724haskell はすけるよ?(勘違いしてたらスマソ)
2010/02/06(土) 10:39:53ID:rHCpphEo>bdownを使った際の押し上げを取得するときなどは、repaetのボタンループの中にもうひとつrepeatのボタンループを書いて、
>btime 1 のタイムアウトを押し上げの代わりにしてる。
二重ループ、そんな使い方するの初めてみたし。
小人Aにイベント投げたら、友達の小人Bに渡されて
しばらくするとオワタよflagが立って、やったflagが立ったflagが立ったと小人Aが喜ぶ
flagが立った、じゃなくて btime 1 のタイムアウト で
処理の分岐を掛ける・・・
いうのが俺の頭では理解を超えた何か黒魔術感を覚えざるを得ず
ゴゴゴゴ…つまりこれは関数型言語の出会い!!!
0725名前は開発中のものです。
2010/02/06(土) 11:14:56ID:rHCpphEo処理を続行します・・・
と、ことば、もしくは例え話で、仕組みを説明しようとすると
理解をしにくい面もあるように思われ、かといっていきなり
コードを出すとたぶん拒絶反応が帰ってくるような・・・でもコードで示すのが一番わかりは良いとは思う・・・
0726名前は開発中のものです。
2010/02/06(土) 17:39:27ID:8e05DCLkrepeat
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:dDILdsXz0728名前は開発中のものです。
2010/02/07(日) 01:30:25ID:V55jSnFh0729名前は開発中のものです。
2010/02/07(日) 02:50:13ID:PNX5SfSMNSExec('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と思うんだが・・・
Nスクだとitoaを多用しなければならない場面とか
複雑な条件分岐がある場面ならLuaを使う意味はわかるけど
そもそも前提になってるラベルの大量消費の問題って何のこと?
0731名前は開発中のものです。
2010/02/07(日) 03:44:25ID:PNX5SfSM定義部や文章送り、最低限のメイン処理だけNスクにやらせて、それ以外は全部Lua側に丸投げする方針で勉強してる。
だけど、NSExec連発は自分でも気になってる。
Nスクの機能を使わない関数はluacallしなくて良いし。
0732675
2010/02/07(日) 03:48:16ID:ykswmlEsなにか参考にしたりしてるものはあるの?
とっかかり的な
それか他のプログラミング言語とかスクリプトがバリバリだったりする?
0733名前は開発中のものです。
2010/02/07(日) 03:51:44ID:ykswmlEs0734名前は開発中のものです。
2010/02/07(日) 04:04:49ID:PNX5SfSMNスクのファイルに入ってるサンプルをLuaに置き換えたり、うpろだのリンクからLuaのことを調べたりしてる。
一番役に立ってるのはNScripter Scripting Factoryのリファレンス(Nスク、Lua両方)かな。
XHTML/CSS、JavaScript、PHP、VB.NETくらい。
こうして見るとまともなのが一つも無いorz
0735名前は開発中のものです。
2010/02/07(日) 12:14:43ID:80IoMjTJ確かラベルは最大5000個までしか使えないはず。
誰かが検証してた。
まぁ普通はそんなにラベル使わないがなw
0736名前は開発中のものです。
2010/02/07(日) 12:44:58ID:wknDwMfxNSExec連発を避けるなら
頻繁に使う命令をLua関数でラップするか
複数行に対応したNSExecのラッパを書くか
先祖川氏のENL使うか
かな・・・
>>735
そうじゃなく>>723 の
>これ、Nスクだけでやったらラベルを大量に消費しそう
と、そのソリューションとやらの>>726 の関係が分からん
そのスクリプトならNスクだけでやっても大差ないだろと
0737名前は開発中のものです。
2010/02/07(日) 12:56:48ID:wknDwMfxLuaのメリットとして>>726みたいなコード出されても
マイナスイメージ与えるだけだから噛みついたまで
0738名前は開発中のものです。
2010/02/07(日) 14:51:00ID:cYkxk0lQ0739名前は開発中のものです。
2010/02/07(日) 20:43:53ID:ak6SqiIl0740名前は開発中のものです。
2010/02/07(日) 21:03:09ID:V55jSnFhどこかのタイミングで使える数が増えたのかな
0741名前は開発中のものです。
2010/02/07(日) 21:45:31ID:7gqN3+Oc3Dのモデルが動かせるようになるくらい?
0742名前は開発中のものです。
2010/02/07(日) 22:08:07ID:cYkxk0lQ0743名前は開発中のものです。
2010/02/08(月) 13:02:04ID:F0ErRlNuそれが分からないお前は、わざわざ移行しなくていい
ずっとNスクのままで充分
0744名前は開発中のものです。
2010/02/08(月) 20:28:06ID:W/chJLef0745名前は開発中のものです。
2010/02/09(火) 04:55:21ID:uimm7f0c前に移行はしやすくするとか書いてたような気がするから期待
0746名前は開発中のものです。
2010/02/09(火) 16:22:22ID:nUihE5Fs0747名前は開発中のものです。
2010/02/09(火) 17:21:28ID:ITyr58F8ここまで公開してあるのに、まだ試さない奴は、
これから先も試さない、口先厨で終わるな
0748名前は開発中のものです。
2010/02/09(火) 17:38:51ID:gjB/V1jFねらーでもなくプログもチェックしてない奴は存在すら知らんってのが多そう
0749名前は開発中のものです。
2010/02/09(火) 17:51:29ID:nUihE5Fsなにカリカリしてんの
0750名前は開発中のものです。
2010/02/09(火) 19:45:57ID:RSTkGYxQSGEを終了する時にウィンドウ画面が
一瞬全画面になってから閉じるのが気になる
0751名前は開発中のものです。
2010/02/13(土) 04:21:20ID:64Ft4uwX0752名前は開発中のものです。
2010/02/13(土) 13:49:39ID:dzJAoZrJ移りづらい、というのはあるかもしれん…
平行させてNスクも使える方針は悪くないとは思う…
0753名前は開発中のものです。
2010/02/13(土) 14:43:36ID:v6uCnLIz誰かがトランスレータか互換レイヤ書いてくれるだろ
レガシーでカオスな部分はこれを機に切り捨てた方が
みんな幸せになれると思うがな
Nスク2もモダンとは言いがたいけど無難な落とし所かと
0754名前は開発中のものです。
2010/02/13(土) 16:28:48ID:Phfv7+Re0755名前は開発中のものです。
2010/02/13(土) 17:17:05ID:v6uCnLIzSGEで動くNスクを誰か作るかもね
という話のつもりだったのだが
逆にSGE以外で動くNスク2は
出てくる可能性がもっと高いだろうね
ONScripterと同様にここではタブー扱いかもしらんけど
0756名前は開発中のものです。
2010/02/14(日) 13:22:07ID:RHiTcbg9NSc好きだからフォントがギザギザしてちょっと…みたいに言われると悲しい
0757名前は開発中のものです。
2010/02/14(日) 16:59:49ID:DywI+xpyあとはやる気のある奴がやってくれ
ってことなんじゃないの
0758名前は開発中のものです。
2010/02/14(日) 17:21:57ID:RHiTcbg9昔きれいなフォントのスクショ載ってたから
デフォ機能になると思ってた
0759名前は開発中のものです。
2010/02/15(月) 15:39:25ID:evYUvmXX0760名前は開発中のものです。
2010/02/15(月) 15:49:22ID:K58uOKXK0761名前は開発中のものです。
2010/02/15(月) 17:49:08ID:5+KGsywT0762名前は開発中のものです。
2010/02/16(火) 04:44:38ID:XIeSIpf/同じくらいの労力で移行出来るならそうする
0763名前は開発中のものです。
2010/02/16(火) 09:53:37ID:NzRq2GFE必ず本体と一緒に配布しなければいけないというような規定さえなければ
非常に互換エンジンが作りやすい仕組みなわけだけど
0764名前は開発中のものです。
2010/02/16(火) 12:35:50ID:trS8RICVこれだったら、文字通り本家本体と配布すればいいわけで
回避できるよね
開発環境一式を提供して囲い込みでもしない限り
スクリプト実行環境を制限するライセンスって難しいと思う
最終的には「お察し下さい」になるんじゃね
0765名前は開発中のものです。
2010/02/16(火) 12:52:46ID:trS8RICV高橋氏の飯のタネを奪う気で互換エンジン作る人はないだろう
たぶん
0766名前は開発中のものです。
2010/02/20(土) 15:01:22ID:nvCvqWv1senzogawa氏がLua講座やってるけど
Lua勉強したいって言ってた人はついて行ってる?
0767名前は開発中のものです。
2010/02/20(土) 18:08:30ID:mIO+dD9hうん。まあ、普通に。
0768名前は開発中のものです。
2010/02/20(土) 18:50:34ID:To7g6wRG0769名前は開発中のものです。
2010/02/20(土) 19:31:44ID:mIO+dD9h素のNスクのbgとかlspも関数だぞ
0770名前は開発中のものです。
2010/02/20(土) 21:17:16ID:60dDT331Luaの関数はもっと強力な概念だよ
複数の戻り値を返せるし
ファーストクラスオブジェクトだし
0771名前は開発中のものです。
2010/02/20(土) 23:44:26ID:To7g6wRGブロックは始点と終わり付きのラベルもどきな目印
elseはifが成立してない場合の実行命令、elseifは親になってるifが成立してない場合の条件判定。条件文を複数行に分けられて超便利、|駆使して頑張った俺涙目
whileは条件を満たすまで繰り返し、untilは条件を満たすまでrepeatに戻る。for nextとの違いがいまいち分からない
ローカル変数は特定の限定した範囲内のみで通用する変数。関数内とかfor next内みたいなその場しのぎに使う関数(NScrなら汎用変数を使う場面)はローカル変数扱い
根本的な勘違いがあったら指摘してもらえると助かる
0772名前は開発中のものです。
2010/02/21(日) 00:01:15ID:60dDT331非公式マニュアルにも似たような間違いがあった気がする
あとはとりあえずそんな認識で問題ないんじゃない?
0773名前は開発中のものです。
2010/02/21(日) 00:16:03ID:0xyTDDn6間違えてた、教えてくれてありがとう。なるほど、だからwhileなんだな
今のところはNスクの延長上でなんとかぼんやり理解できるけどここから先はどうなるやら
0774名前は開発中のものです。
2010/02/21(日) 03:28:46ID:OoSmN5/lとっても分かりやすいですね。
0775名前は開発中のものです。
2010/02/21(日) 19:11:14ID:OoSmN5/l0776名前は開発中のものです。
2010/02/21(日) 20:00:30ID:0xyTDDn6とか言ってるとこの先で詰まるかもしれないけど
0777名前は開発中のものです。
2010/02/23(火) 21:41:21ID:KrJaWsM5エンコード環境が違うファイルにしてもストリーミング設定を切り替えても、
wait入れてみても瞬時になっちゃう……。
(nscr.exeもプラグインも最新版です)
*define
exec_dll "NScripterDS.dll"
game
*start
exec_dll "NScripterDS.dll/Load|bgm|test.ogg|1"
exec_dll "NScripterDS.dll/PlayLoop|bgm"
click
exec_dll "NScripterDS.dll/Volume|bgm|5000|3000"
click
end
0778名前は開発中のものです。
2010/02/24(水) 02:29:42ID:jKivsSv/試してないけど、08年の俺のゲームだとふつーに動いてたYO
いざってときは、自分で関数作ってfor nextループで直接数値与えてみればいいさ
0779名前は開発中のものです。
2010/02/25(木) 02:41:31ID:89CC+J4A0780名前は開発中のものです。
2010/02/25(木) 13:44:43ID:IEC1spPRbreakup.dllがメニューバーのスキップに限りエラー落ちするっぽいんだけど…
みんなは大丈夫?
0781名前は開発中のものです。
2010/02/25(木) 15:11:04ID:bTPKZ9vZ(本体09/11/17、XP SP3、Q35 Expressオンボ)
breakup.dllはうみねこでも使われているから
それなりに枯れてるはず
何か落ちる条件があるんだと思う
0782名前は開発中のものです。
2010/02/25(木) 16:10:02ID:/IJ6SlAqすみません、フェード時間ですね。
その音量に切り替わるまでの時間。
>>778
>いざってときは、自分で関数作ってfor nextループで直接数値与えてみればいいさ
できた。でも標準の命令でやりたい。
■ このスレッドは過去ログ倉庫に格納されています