2012年09月ゲ製作技術129: NScripter Ver.18.00 (797) TOP カテ一覧 スレ一覧 2ch元 削除依頼
RPGツクール2000のための… (688)
かまいたちの夜のパクリ作れる人。 (237)
【UDK】Unreal Development kit ver.3【無料】 (759)
flashゲームでロックマンの同人ゲーム作ろうぜ (204)
【初心者】ステフと一緒にゲーム製作part10【歓迎】 (821)
CEDECどうだった? (514)

NScripter Ver.18.00


1 :2011/07/29 〜 最終レス :2012/10/23
商業流通でなければフリーで利用可能な
ゲームエンジンNScripterについて語るスレです。
・本家
ttp://www.nscripter.com/
・うpろだ
ttp://nscuploader.pa.land.to/

2 :
・前スレ (うpろだでも見れます)
Ver.17.00
http://hibari.2ch.net/test/read.cgi/gamedev/1275595048/
Ver.16.00
http://pc11.2ch.net/test/read.cgi/gamedev/1243850335/
Ver.15.00
http://pc11.2ch.net/test/read.cgi/gamedev/1234874759/
Ver.14.00
http://pc11.2ch.net/test/read.cgi/gamedev/1219749034/
Ver.13.00
http://pc11.2ch.net/test/read.cgi/gamedev/1211072803/
Ver.12.00
http://pc11.2ch.net/test/read.cgi/gamedev/1200964126/
Ver.11.00
http://pc11.2ch.net/test/read.cgi/gamedev/1185125168/

3 :
・前スレ その2
Ver.10.00
http://pc11.2ch.net/test/read.cgi/gamedev/1176450917/
Ver9.00
http://pc11.2ch.net/test/read.cgi/gamedev/1167444413/
Ver8.00
http://pc8.2ch.net/test/read.cgi/gamedev/1157719180/
Ver7.00
http://pc8.2ch.net/test/read.cgi/gamedev/1149639307/
Ver6.00
http://pc8.2ch.net/test/read.cgi/gamedev/1142593513/
Ver5.00
http://pc8.2ch.net/test/read.cgi/gamedev/1126791382/
Ver4.00
http://pc8.2ch.net/test/read.cgi/gamedev/1112550571/
Ver3.00
http://pc8.2ch.net/test/read.cgi/gamedev/1100029774/
Ver2.00
http://pc5.2ch.net/test/read.cgi/gamedev/1082131647/
初代
http://pc5.2ch.net/test/read.cgi/gamedev/1005121290/

4 :
・関連書籍
・Nscripterオフィシャルガイド 改訂版 だれでもかんたん!ノベルゲームのつくりかた
ttp://www.shuwasystem.co.jp/products/7980html/1852.html
ttp://www.7netshopping.jp/books/detail/?accd=32002490
ttp://www.amazon.co.jp/exec/obidos/ASIN/479801852X/
・あどばんすどNScripterオフィシャルガイド(※絶版)
ttp://www.shuwasystem.co.jp/products/7980html/1104.html
ttp://www.7netshopping.jp/books/detail/-/isbn/4798011045
ttp://www.amazon.co.jp/exec/obidos/ASIN/4798011045/
※サポート情報あり。(サンプルダウンロード・正誤表)
ttp://www.shuwasystem.co.jp/books/7980/1104-5/1104-5.html
・Nscripterではじめる ノベルゲーム制作
ttp://w3.shinkigensha.co.jp/books/4-7753-0496-8.html
ttp://www.amazon.co.jp/exec/obidos/ASIN/4775304968/

5 :
・Tips、解説、サンプル掲載サイト(1/2)
NScripter Scripting Factory
ttp://senzogawa.s90.xrea.com/
(リファレンス,FAQ,サンプル,ツール)
【NScripter−Tips】
ttp://sorejyadamedarou.sakura.ne.jp/nscripter/
(リンク集,Tips)
SGP -Sphere Game Production-
ttp://sgp.ivory.ne.jp/game/
(FAQ,Tips)
Free Adventure Game World
ttp://ryuji.s1.xrea.com/
(解説 − 初心者向け)
花鳥風月
ttp://autumoon.s35.xrea.com/
(解説 − 初心者向け)

6 :
・Tips、解説、サンプル掲載サイト(2/2)
Binary Heaven ミラーサイト
ttp://sorejyadamedarou.sakura.ne.jp/o_show/
(解説 − 初心者から中級者向け)
nscr
ttp://f39.aaa.livedoor.jp/~nscr/
(解説 − カスタマイズ − システム化)
國杜舗
ttp://www.interq.or.jp/earth/msym/
(サンプル − カスタマイズ − 演出追加,機能実装)
〜貴史たま+MEのHP〜
ttp://takasi.mydns.jp/takasi/
(サンプル − カスタマイズ − システム化 − wiki)
without limit
ttp://floralia.sakura.ne.jp/
(サンプル − カスタマイズ − システム化)

7 :
・スレタイ名称で過去ログ検索を行う場合のキーワード群
NScripter NScritper
・このスレで復号の話題を禁止している理由について
個々で作成した作品の著作権を侵害させない為の配慮として
解析ツールへの直リンクは行っておりません。
・Nscripter以外のノベルツールに関する話題は、ここでは歓迎されません。
・作成中のスクリプトを晒さなくて済むような技術的な話題については
このスレでは無く、本家のNScripterサポートBBSを推奨します。
・また、ノベルツールの比較検討や論議については、下記のスレで行って下さい。
(但し、特定のノベルツールを叩く為のスレではありません)
ノベルツール選考スレ 3rd STRIKE
http://hibari.2ch.net/test/read.cgi/gamedev/1145204843/
ノベルツール選考スレXP (3rd STRIKEの前スレ)
http://pc8.2ch.net/test/read.cgi/gamedev/1083482407/

8 :
・ゲーム製作板のローカルルール(一部抜粋)
  扱う話題
  ・プログラム、グラフィックス、サウンド、デザイン論などをゲーム製作の視点から
  ・ツール(HSP、ツクール等)についての話題
  ・ゲームの共同製作やプロジェクト活動
  禁止事項
  単発質問スレ、単発依頼(「〜作って」)スレ、
  個人叩き(個人に対する誹謗中傷)、ツール叩き(具体性のない批判)
・ローカルルールで板違いの話題に指定されている項目の内
このスレで抵触する可能性の高い項目について。
 ・市販ゲームの質問や感想
  このスレの場合、単なる板違いのみでは無く、複号ネタに繋がり易いです。
 ・違法性を含む話題
  ONScripterによる多種ハードウェア対応化の話題はお控え下さい。
  このスレでの今までの判定結果は、限りなく黒に近い灰色です。

9 :
・その他
 ・ここは同人ゲーム板ではありません。(ローカルルールそのものが異なります)
 ・同人サークル活動に関する話題は、同人ゲーム板等でお願いします。
 ・名無しでない同人サークルメンバーとしての書き込みはお控え下さい。
 ・このスレでゲームの共同製作やプロジェクト活動の宣伝はお控え下さい。
 ・不快な発言を見掛けても落ち着いてスルーして下さい。
<荒らし、煽り、晒しはマターリ放置で>
・彼らは放置が一番キライ
・彼らは常に誰かの反応を待っています
・彼らは煽りや自作自演であなたの反応を誘います
・彼らは華麗にスルーして自然消滅させましょう

10 :
>>1
乙です。

11 :
>>1
おつです

12 :
>>1
スレ立てお疲れsummer-

13 :
>>1
乙カレー

14 :
空気を読まずガチ質問させてくだちい。
NS栗のスプライト移動表示用dll(MSpDraw.dll)を使っています。
スプライトで表示させたキャラ画像を、一時的にズームさせます。
ズームした状態ままの話を進めたいのですが、立ち絵や背景のように文字表示中に暗くなってくれません。
スプライトの51〜 は立ち絵より後ろになるというのですが、効果なしです。
ズームしたスプライト画像を、立ち絵や背景と同じように、暗くする(薄幕をかけた状態)のようにする方法があれば教えてください。
ググッてもなかなか分からなくて、よろしくお願いします。

15 :
>>14
humanz 命令で指定してる値は?

16 :
>>15
humanz 100
で指定しています。

17 :
サブスクリプトについて質問なんですが、gosub 命令から、他のtxtファイルに飛ばすにはどうしたらいいですか?
ググってもなかなか出てこないのでよろしくお願いします

18 :
あと、もうひとつお願いします。
画像ファイルに変数を使うことってできますか?
たとえば、
変数を以下として、
mov %0,1
bg "bg\”%0”.jpg" ,1
inc %0
のループ文とかうまくいかないのですが、原因教えてもらえないでしょうか。
お願いします

19 :
>>16
なら、立ち絵より後ろになるスプライト番号は101〜999ですよ

20 :
>>17
サブスクリプトなんてものはありません。
txtファイルは実行時に全部内部で結合したものとして扱われます。ファイル分けは全く関係ありません。
>>18
%0を文字列化しないと駄目です。具体的には↓。色々と基礎の基礎が分かってないと思うのでどっかで学んでくだしあ
mov %0,1
itoa $0,%0
bg "bg\"+$0+".jpg",1
inc %0

21 :
>>20
できました!
ありがとうございます!!!

22 :
for %10=1 to 7 step 1
itoa $10,%10
変数は「$10」
変数は「%10」@
next

これで実行すると、
変数は「$10」
部分が文字化けするんですが、理由わかる方いらっしゃいますか?
よろしくお願いします

23 :
>>22
理由は半角だから。itoa2 $10,%10 にしる
色々と基礎の基礎が分かってないと思うのでどっかで学んでくだしあ

24 :
>>23
助かります!!
本と参考サイト見ながらなってるのですが、基本仕様が覚え切れてないみたいです・・・。

25 :
失礼
ageちゃいました。

26 :
これからしばらくは、毎日、基礎のキみたいな質問を繰り返すID:F2cegUUmの相手をしなくてはならんようだな

27 :
・Ver.18.00での変更点
・「うpろだ」の移動に伴うURL変更。
・「Nscripterオフィシャルガイド 改訂版 だれでもかんたん!ノベルゲームのつくりかた」の
一部URLの変更。(7andy→7netshopping)
・「あどばんすどNScripterオフィシャルガイド」の新規URLの追加。(7netshopping)
・【NScripter−Tips】の移動に伴うURL変更。
・Binary Heavenの消滅に伴う【NScripter−Tips】内ミラーサイトへのURL変更。
・〜貴史たま+MEのHP〜のwiki表記の追加
・without limitの移動に伴うURL変更。
・ノベルツール選考スレ 3rd STRIKEの移動に伴うURL変更。

28 :
>>ID:mfw9cmYd,ID:C1i0Mska,ID:F2cegUUm
質問は一向に構わないと思ってるけど、夏真っ盛りなので質問と回答の手順の案を一つ。
質問者 → 下記のwikiへ投稿。
回答者 → wikiへ回答して、このスレへは報告のみ。報告は任意。
wikiのFAQ
ttp://takasi.mydns.jp/takasi/pukiwiki/index.php?NScripter%2FFAQ

29 :
>>24
ドンマイ。ガンガレ
>>26
昨日も今日も俺が回答したし、明日以降も暇なら答えるから、
おまいさんは別に相手をしなくていいよ。心配しなさんな

30 :
>>26
つ洋梨

31 :
>>26
さっさと巣へ帰れ

32 :
スレが止まっている苦情は>>26へどうぞ

33 :
>>26
Rよビチ糞!スレを汚すな!

34 :
「lua使う場合は非推奨」の命令群でも作ろうかと思ったけど、lua使う人ならその辺自力で分かるかと思い直した

35 :
26ってウザいなココから追い出す署名やんない?

36 :
それ賛成です
35さんリーダーでお願いします。みんなも協力しよう

37 :
ナニコレ……
きめえわお前ら

38 :
37=26の自演
都合悪くなってきたからって話逸らそうとすんな見え見えなんだよ

39 :
37、こいつ雑魚っぽい

40 :
単発IDばっかでワロタ

41 :
レス数が進んでもスレが止まっている点は変わらないままだなんて。orz


42 :
26を追い出す署名どうなったんですか?

43 :
夏休みが終わるまで止まってていいよ

44 :
今のNScripterは新規に始めるには
正直オススメできないと思ってるんだけど
こうしてみると若い世代も参入しているんだなあと妙な安堵感はある

45 :
えー、新規が参入してくるメリットってなんかあんの?

46 :
単に作ってる本人が形になるものが作れそうとかじゃね

47 :
Nスクの発展に寄与してきた諸氏がNスクから離れつつある現状では
若い原動力を歓迎してもいいんじゃなかろうか
Nスク2をただ口を開けて待っているだけじゃ駄目だと思う

48 :
>>26
さっさと巣へ帰れ

49 :
このスレ全部単発IDでクソワロタ

50 :
>>44は何がおすすめ?

51 :
自演臭い

52 :
じぇんじぇんそんなことないお

53 :
みんなとってもやさいいにゃん

54 :
・現在、吉里吉里に関連したスレは粘着されていない
・同じく、他のゲームエンジンスレは粘着されていない

55 :
     ,ィ, (fー--─‐- 、、
.    ,イ/〃        ヾ= 、
   N {                \
  ト.l ヽ               l
 、ゝ丶         ,..ィ从    |
  \`.、_  __ ,. _彡'ノリ _,.ゝ、  |         ∧
   `ゝf‐ゞ゙ujヾ二r^ァuj< y=レヽ.     l\ /
.    |fjl、  ̄.リj^ヾ.)  ̄  ノ レ リ   __|  `
    ヾl.`ー- べ!゙‐ ` ー-‐'  ,ン   \   
      l    f,.ニニニヽ u /:|   _∠, Nスクスレが悪の組織に狙われているんだよ!
       ト、  ヽ.__.丿  ,イ |     /  
     _亅::ヽ、 ー   / i :ト、    ´ ̄|
  -‐''「 F′::  `:ー '´  ,.'  フ >ー、   l/、  ,ヘ
    ト、ヾ;、..__     , '_,./ /l       ∨
   ヽl \\‐二ニ二三/ / /

56 :
現在でも、NScripterの知名度は、他のゲームエンジンに比べて高い。
過去に商用で採用された作品は少なくなく、使用料の体系まで明確になっているというアドバンテージがある。
この点から見ても、NScripterの欠点を洗い浚いにすることで、リプレースを狙っている商用ゲームエンジンが存在していると見て、おかしくは無い。
同人作品を叩く場合でも、NScrpterのスレを利用してまで叩く必要は全く無かったのに、過去の食い付き方は異常な位だった。
今後も、同人作品にNScrpterが採用され続けることは、他のゲームエンジンにとって、商用としての位置付けが不利なまま居続ける一因にもなる。

57 :
NScrpterの採用者にとって、作りたい物を作っているだけのことで、他のゲームエンジンなんか知ったことではない。
そして、多種ハードウェア対応化やオリスク化の賛否は、また別の話。

58 :
ぶっちゃけた話「匿名のままNScripterの評判を落とせる格好の場所は、ほぼ此処(2ch)だけ」ってこと。

59 :
     ,ィ, (fー--─‐- 、、
.    ,イ/〃        ヾ= 、
   N {                \
  ト.l ヽ               l
 、ゝ丶         ,..ィ从    |
  \`.、_  __ ,. _彡'ノリ _,.ゝ、  |         ∧
   `ゝf‐ゞ゙ujヾ二r^ァuj< y=レヽ.     l\ /
.    |fjl、  ̄.リj^ヾ.)  ̄  ノ レ リ   __|  `
    ヾl.`ー- べ!゙‐ ` ー-‐'  ,ン   \   
      l    f,.ニニニヽ u /:|   _∠, なるほど!Nスクが目障りな他のエンジンの開発者がスレを攻撃してるんだよ!
       ト、  ヽ.__.丿  ,イ |     /  
     _亅::ヽ、 ー   / i :ト、    ´ ̄|
  -‐''「 F′::  `:ー '´  ,.'  フ >ー、   l/、  ,ヘ
    ト、ヾ;、..__     , '_,./ /l       ∨
   ヽl \\‐二ニ二三/ / /

60 :
ΩΩΩ<ナダッンテー

61 :
ライセンスという点で言うなら
ソースが公開されててソース改変もできて無償な吉里吉里が一番商用でも使いやすいんじゃね

62 :
>>61
>ソースが公開されててソース改変もできて無償な吉里吉里が一番商用でも使いやすい
社内にプログラマがいなくてもスクリプトが分かれば商用を出せる、
それも作者サポートがあるからこそのNスクの強みだと思ってる
その点を吉里吉里がクリア出来るのかどうかが不安でな……
一度試しに組んでみようかとは思ってるが

63 :
>>61
ライセンスに関しては吉里吉里にとってNScripterが不都合になる点は無いと思う
>>62
他のゲームエンジンへの移行が自由な点を考慮すると他のゲームエンジンスレを叩く
信者と呼ばれるような人達が実際にいるかは怪しいと思ってる

64 :
ここはーNscスレなんだー他のエンジンの話はわからんちんよー

65 :
最初の手間対できることで言えばかなりNスク優秀だと思う。Lua使い出すとNスク側にも関数ほしくて仕方なくなるけど

66 :
単発IDで急に不自然なライセンス話の連発とか
荒らしが、作戦変えてきたみたいだな
いい加減、元のスレに戻って欲しいんだが、こいつら総スルー出来んのか?

67 :
>>7
>・Nscripter以外のノベルツールに関する話題は、ここでは歓迎されません。
>・また、ノベルツールの比較検討や論議については、下記のスレで行って下さい。
(但し、特定のノベルツールを叩く為のスレではありません)
いいかげんにしろ

68 :
ほんと最悪の連中

69 :
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\
| いい加減、元のスレに戻って欲しいんだが、こいつら総スルー出来んのか?|
\__    __________________________/
     ∨
    ∧_∧
    ( ´Д`)     ∧_∧    / ̄ ̄ ̄ ̄ ̄ ̄ ̄\
   /    \    (´Д` ) < いいかげんにしろ |
__| | >66 | |_   /    ヽ、 \_______/
||\  ̄ ̄ ̄ ̄   / .|>>67| | 
||\..∧_∧    (⌒\|__./ ./
||. . (    )     ~\_____ノ|  ∧_∧.
.  _/   ヽ          \|   (´Д` )
.  |     ヽ          \ /    ヽ. 
.  |    |ヽ、二⌒)       / .|   | |  
.  .|    ヽ \∧_∧   (⌒\|__./ ./ . 
   ヽ、___(    )      ~\_____ノ|  ∧_∧
.         _/   ヽ          \| (´Д` ).
.         |     ヽ          \ /    ヽ、
.         |    |ヽ、二⌒)       / .|   | | .
.         .|    ヽ \\       (⌒\|__./ ./ .
.         ヽ、____ \\       ~\_____ノ| .

NScripterが叩かれていないのに他のレスを叩くテンプレ誤用の例?

70 :
普段であれば自然に話題が変わるまで待つか
頃合を見て新しい話題を振れば済むだけの話なのに
どうして躍起になってるの?

71 :
>>69
叩く叩かないじゃなくスレ違いなんだよ他でやれ
>>70
1人じゃないみたいから

72 :
全力で自演扱いして否定しようとしているのであれば
逆に話題の信憑性が増してスレ妨害の実態の暴露になるかもね。

73 :
ID:GxTMfa67
昨日から変なAA貼ってスレ荒らしてるのコイツか
NG推奨

74 :
いい加減にしないとまとめてsplitするぞ

75 :
単独自演扱いと否定の躍起っぷりから、よっぽど気に食わない流れなんだな

76 :
キチガイみたいに自演認定繰り返して何がしたいのかねー

77 :
skip 0で脳みそ焼き切るぞ

78 :
なんとなくNスク使ってるなら皆ADV作ってると思ってたんだけど
Lua使ってRPGとか全然違うジャンルのゲーム作ってる人いる?



79 :
>>78
シェアゲーの名を挙げるのは気が引けるからフリーで。「戦えメイドさん」でググれ

80 :
てか、別にLua使わなくても色々出来るぞ。使った方が楽だけど。

81 :
>>79
d
こういうのもできるんだね
うろ覚えだけど前に制作者さんのサイトにあったRPG風のサンプルがLua使ってた記憶があったんだ

つーか>>78改行多くてスマソ

82 :
カスタマイズに凝る場合はテストプレイを重ねて快適な最低動作環境を設定して欲しいかも?

83 :
3Dダンジョンをヌルヌル動かすならLua使わないと無理じゃね? 中割り用意して……とかは作る側が面倒くさすぎるし

84 :
止め絵の3DダンジョンRPGならいくつかみたことあるな。
どうでもいいけどreturn *〜〜 でreturn後にラベル飛ばすのって本来スタックエラーなバグスクリプトでも中途半端に機能するのってNスク側のバグなんじゃないかなあ。
デバッグで気づけないから不具合の温床になる

85 :
作る側からすれば、スクリプトの自由度がすごく上がるから
いい仕様だと思うけど。
return *〜は、cselを完全に自作しようとすると絶対に必要になるし。
これが不具合の温床になるのは、スクリプトの組み方が甘いせい。
それをNスグ側のバグとかw
自分で書いたスクリプトも満足にメンテできないやつは、
危ないから使うなってことでしょ。

86 :
ここで突っ込み入れとくけど、どうでもいいことの話題でNScripterを貶めようとするのは不自然だよねー?
あと、一方的にスクリプト作成者を否定するんだったら組み方の甘さで誤動作するというスクリプトの
具体例を挙げたほうがいいよ。

87 :
作品作っている側としては、実際のバグがあったとしたら本家で報告してると思うんだわ。

88 :
>>84
>中途半端に機能する
いや、対になってるコード書けてないんだから普通に機能してないだろ。
仕様の穴でもないし。バグというならスクリプト打ち手の脳みそ側のバグ。

89 :
書き方が悪いせいで上手く理解してもらえなかったかな。詳しく言うと
gosubと対になっていない状態でreturn *〜を使うとgosubとreturnが一致していませんって出て落ちるはずなんだけど、なぜかエラーで落ちずにそのままラベルの飛び先に飛んだ事があって、その本来落ちるはずの処理を何回か繰り返したら通常通りエラ−表示が出て落ちた。
という事があったわけ。
多分自分のスクリプトがおかしいんだろうと思うけど、今のところgosubで飛ばしたままreturnせずにその処理をやっていたっていうミスが見つからないからちょっと言ってみただけだよ
別にNスクを貶めようとか否定のために言ってるわけじゃないからいつまでもピリピリしてなさんな。

90 :
>>89
スタック理解してなくね?
あと、>86-87の被害妄想っぽいのは無視していいと思う。
彼はいつものageてるアホでしょ。

91 :
なんでここは、いつもこんなギスギスしてるんだ?

92 :
>>89
サブルーチンってgosub命令のときにスタックに飛ぶ前の位置を記憶して、return命令でスタックを読み込んで記憶された位置に戻るんじゃなかったっけ
gosubが多くてもスタックがどんどん消費されてくだけで(いつかはスタックに空きがなくなって落ちるけど)
returnが多くても記憶されてる位置に戻るだけだから
すぐ落ちないでしばらく動くことはあるんじゃない
>gosubとreturnが一致していません
このメッセージがどういうときに出るのかはちょっとわからないが

93 :
>>89
returnとreturn *labelに本質的な違いはないよ
return = スタックからPOPして、POPした内容先(戻り先に)にジャンプ
return *label = スタックからPOPして(空POPして)、ラベル先にジャンプ
スタックがアンダーフロー以外でエラーを出さないのは当たり前だし
スタックいじると分かりにくい不具合の温床になりやすのも、ありがちなことだよ
Nスク側の問題とは言わないほうがいいと思うよ

94 :
>>89
gosubで飛ばして、returnで(スタックを)消化していないだけだと思うけど
returnを一個追加すると件のgosubを特定しやすいよ
return ;<-ここにreturnを追加して、どこに戻るのか確認してみる
return *label

95 :
もう飽きた

96 :
>>91
ここのスレ、怖いよー

97 :
>>91
動作をよく調べないで軽はずみなこと書いたり
ID:kb2dVGCgみたいに名指し叩きしてればギスギスした空気が漂うよ
ここ数レスでも実際の作者でなければ正しく説明出来ない要素が混ざっていて
凄く不思議な印象が強いよ

98 :
唐突に現れて不自然な長文レス繰り返すって流れ自体が変だしね

99 :
はっ!
とか書くとまた他のエンジンの連中にスレが攻撃されてるんだ!
とか言い出すんだろうか

100 :
>>54>>56-58に対して、ID:4o8MDkOWが断言的にMMRのAAで対応してるのは
前者がビンゴだったから?

101 :
>>97
上2行は同意だけど
>実際の作者でなければ正しく説明出来ない要素
ってのがよくわからん

102 :
>>97はプログラムのことをよく知らんやつなんだろ。
スタックなんて、gosubのたびに戻り先ラベルを配列に格納してって、
returnされるごとに逆順で取り出すだけ。
それを理解できずに、エンジン内部で魔法みたいなことが
行われてると勘違いしてるんじゃない。
そして、その魔法の使い方がわかるのは、Nスク作者の高橋氏(神)のみだって
思っちゃってるんだよ。

103 :
そういうことか。痛いな。

104 :
どんなに理屈を言ったところで、実際がそうなってるとは限らない。
同じ意味で、NScripterの動作をアセンブラとかC言語を想定した理屈で説明したところで
実際のNScripterのスクリプトの仕様では、アセンブラとかC言語で記述するようにはなっていない。
上記の理由で、アセンブラとかC言語を想定した理屈では説明の意味を成さない。
>>102みたいに想定する動作の理屈を得意ぶって説明しても、NScripterはクローズドソースだから
実際に組んだスクリプトの実例で説明しないと理解のしようが無い。
魔法とか神とか言葉を使って>>97を痛くするように揶揄している本人も充分に痛いと思う。

105 :
また単発IDが続いてるぞーーー

106 :
一部の書き込みで、単発ID扱いするのが套手段ではないか?と思えて来て仕方が無い。
それに、>>105の書き込みは、投稿時刻が微妙過ぎて全く笑えない。

107 :
gosub return ラベルを使う前に、
そこはgotoではいけないかどうかまずじっくり考えるんだ。
gotoで表現できるのであれば、それでやっとけ。
どうしてもできないときに初めてラベルreturnの使用を考えるんだ。

108 :
なんでなんで?

109 :
>>26以降、他者に噛み付いたり、一蹴する書き込みが続いてるけど、夏休みが終わった途端に消えたら
季節の風物詩として認定出来そう。
>>106
自分宛てのレスだけど、常套手段の常が欠けて套手段になってた。

110 :
>>104
(・∀・)ニヤニヤ

111 :
ID:9jTQeQqR

112 :
gosub/returnの原理なんて今更語らってる暇があるならgosubとセーブについて語ろうぜ

113 :
>>104
言いたいことはわかるけど解説サイトでも>>92->>94と同じ説明してるし
実際そういう挙動なんだからカリカリすんなよ

114 :
ID:9jTQeQqR

115 :
彼は一体、何と戦ってるんだ…

116 :
スタックとかPOPって記述のある解説サイトってドコー?

117 :
単発ID認定されそうだけど聞いてみた

118 :
スタック理解してない人間とわかった上でPOPだなんだと専門用語で説明するのはいかがなものかと。

119 :
>>94
ありがとー。returnに変えて飛び先調べるのは盲点だったわ。ついでにデバッグログで調べたらようやくgosubでスタック無駄に消費してたところ見つかった。
セーブの際にdefsubで組んだルーチンの中でsaveした後returnしてたんだけど、ロードするとreturnする前のデータで再開するのが原因だった。
セーブロードを繰り返すほど戻り値記憶追加してたという。

そんなわけでお騒がせしてすまない。gosub/returnとスタックの概念は理解していたんだけど、原因見つけるのに難儀してたから似たような症状の人いるかと思って適当に呟いたんだがあれは書き方が悪かったね。
まあ結局は自分のミスだったから自業自得なんだが馬鹿を見つけたから鬼の首を取ったように叩くのもほどほどにしてくれとも思った

120 :
>>118
単に知識を見せびらかしたい人間ほど、意味もなくそういう言葉を使いたがる

121 :
ま、自分のスクリプトミスをエンジンのバグと言えば叩かれるだけだ

122 :
>>118
POPで説明してるのは>>93だが、>>93がレスした相手は、大本の>>84
「本来スタックエラーな」なんて書き込みをしてるから最低限の素養ありとみていいだろ。

123 :
>>118
今回の場合は、スタックって言うより入れ子の構造とかネストのほうがしっくり来るけど
回答は専門用語を使わなくても説明可能な範囲に止まってる。
具体例として「NScripterの実行中にスクリプトの何処の部分を実行しているのか?を
把握できれば原因は掴めるはず」の一言で済みそうな気がした。

124 :
つうかデバッグログ取ってgosubとreturnの数数えれば済む話じゃないの

125 :
で他エンジンの関係者がこのスレ攻撃してるどうの言ってた妄想君はどうなったんだ

126 :
いや、変なひと召喚しなくていいから。

127 :
これだけは言える。MMRのAA貼付で断言したのは別の人。

128 :
>>127
じゃあ、最初に変な陰謀論主張したのは、あんただったのか
全部、馬鹿が自演してるのかと思ったら、まさか普通に天然物が大量湧きだったとは・・・もっと終わってる

129 :
天然物天然物って、ID:6vIct9Okが水の出端の如くスレ住人を揶揄し続ける限り、このスレは停滞したままになるよ。
攻撃対象を求める書き込みをしていれば、他のゲームエンジンスレみたいに安泰はしないでしょ?

130 :
更に、不都合なレスを全て単発ID扱いにしていれば世話がないよ。

131 :
どうでもいいけど2レス続けて1〜2行書き込みする奴は1レスにまとめろよ

132 :
矛盾した内容で減らず口を叩くと、余計にみっともなく見えるよ。

133 :
いい加減有意義な話題出さないとお前らまとめてbtn定義消し忘れでオーバーフローさせるぞ

134 :
なして俺を叩く流れになってるんだ_?
明らかにテンプレ違反のレスを問題視しただけなのに、ソレ突っ込まれると都合の悪い人達がいるみたいですねー

135 :
ここが荒れてんのはいつものことだし、どーでもいいよ
自意識過剰やめれって。いい加減次いけ

136 :
夏休みが終わってスレから>>26が居なくなるまで閑古鳥でいいよ。

137 :
え?なんでいまさら>>26

138 :
こら、突っ込みを入れちゃいけません!

139 :
>>137
26の名前を出せばスレが荒らせると思ってる荒らしの手口でしょ
というか>>136が26本人っぽいな

140 :
いい加減にしないとお前らまとめて0で割るぞ

141 :
変な質問だったらすみません
dwave命令って、チャンネル番号は0〜49と聞いたのですが、
これを0〜99と勘違いして うっかりdwave 99 としたら、普通に音が鳴ってしまいました
おや?と思って dwave 100 や dwave200 など試してみて、dwave203 まで音が鳴りました
204以降は、音は鳴るもののNスクが落ちました(dwave 300では音も鳴らず落ちました)
これって、何か仕様の変更が有って、チャンネル番号が増えたという事なのでしょうか?
ちなみにver.95(一応最新版のはず)です
チャンネル番号は0〜49で充分なのですが、つい気になってしまって…
詳細ご存知の方、良ければお教え頂ければ幸いです

142 :
>>141
今過去バージョン落としてきて調べてみた
どうやらv291から、すなわちnsogg2.dllが使える状態になってから、そんな仕様になってるみたいだね
でも公式でアナウンスされるまで使うのは控えたほうがいいかも
まあぶっちゃけ高橋さんてその辺不精というか適当なので、直接問い合わせたほうがいいかもしれない

143 :
>>142
わざわざ調べて下さったんですね、有難うございます!
講座サイト等ググってみてもよく判らなくて、
自分のスクリプトが変で起きている珍現象なのかと少々不安だったもので…
>でも公式でアナウンスされるまで使うのは控えたほうがいいかも
その通りですね。チャンネル番号は0〜49だけでも充分豊富ですし
これで安心して枕を高くして寝れます。有難うございました!m(*´∀`*)m

144 :
SGEってLuaで組むアクションゲームの描画エンジンみたいな使い方は想定されてますか

145 :
>>144
できるんじゃね? 向いてるか向いてないかはわからんけど。
やってみりゃいいじゃん。

146 :
transbtn一部のスプライトにだけ適用したい! したいんだよぉぉぉぉ! うわぁぁあぁぁあぁぁぁぁっ!

147 :
>>146
あるあるw

148 :
不透明な画像のスプライトを透明表示すればよかったような

149 :
mousecursor命令でカーソル変えた後にデフォルトのマウスポインタに戻したい場合ってどうやればいいだろうか?
mousecursor "" と mousecursor "clear" はもう試してみたけどダメだった……。

150 :
mousecursorってだいぶ前からバグ抱えてる非水晶命令だったのに、これまただいぶ前からバグ取れてたよね

151 :
>>149
mousecorsorがどこで使える命令なのか調べたかい?
多分間違いはそこだと思うよ

152 :
>>151
もういちど調べてやっぱり定義節・実行節両用命令なんだけど、
その口調としては解決方法あるのか。頼みます。もう一つヒントくれ。

153 :
このスレに居るのは、
思わせぶりな上から目線で、偉そうに説教して気持ち良くなりたい奴ばっかで
本当に手助けしてくれる人なんていないよ

154 :
その発言は助けてもらった俺が許さない

155 :
別に、このスレに限らず2ちゃんの質問スレは、だいたいそんなもんだろ

156 :
本人の発言じゃねの
言うだけいって>>153自体が手助けしてないし

157 :
>>153はこんなスレ覗かなくても書き込まなくてもいいですよ
有意義なスレを探してどこかに行ってくださいね

158 :
前スレでも、質問しに来てた奴を馬鹿にして叩いてたなあ
ほんとタチ悪いスレだわ

159 :
偉そうな口調で
・調べろ
・書いてある
・読め
しか言わないんだよな、このスレ

160 :
>>159
優しいじゃないか

161 :
ちょっと調べてみたけど、確かに戻す手段はなさそう。
NScripter mousecursor でググったらどうなった?

162 :
結局151がアホだっただけか。

163 :
なんでここのスレは厳しいのだろうか。なぞだ。

164 :
プラグイン作ってみたのでよければ試してみて。
うpろだのn_0235.zipです。

165 :
>>164
ありがとう! 助かりました。

166 :
ここのスレ住人は口悪いけどヒントもくれるし質問は基本スルーしない本質的には優しいと思う
いわば汚いけどきちんと動くスクリプトみたいなもん

167 :
>>166
ワロタw 言えてるな。

168 :
選択肢カスタマイズを覚えようと
ttp://qwertion.so.land.to/nsc/nscsel4.htmlのcselを試していたのですが
行間がみちみちです。
行間を空ける命令というのもあるんでしょうか?

169 :
できました。すみません

170 :
自家発電の効果で閑古鳥が無くスレだったら技術的なやりとりだけに使うよ

171 :
閑古鳥さえ来ないスレ?

172 :
カーカー

173 :
お邪魔します。
現在サウンドノベルを作っているのですが、
文章と同時にぺぺぺぺぺという小さな音を
流したいのですがどう書けばいいのでしょうか?
ちなみに音源は自作なので、長さは調節できます。
ついでですが画面を揺らすquake命令関係です。
quake命令はxもyも単体も、一度テキストを停止して実行されますよね。
あれって、文章と同時に揺らすことは不可能なんですか?
ちなみにメニュー周り、選択肢、名前ウィンドウのシステムカスタマイズをしています。
長文になってしまい申し訳ありません。
どうかご教授願います。

174 :
>>173
昔やってみたが、うざいからおすすめしない。けどやり方二通り提示。
今ならLuaで表示文分解して一語ずつputtextしつつdwave連発が楽。クリック感知でテキスト全出しすること。
または字数カウントして、字数分に対応したwaveを選んでpretextでdwave。クリック感知で止めること。
quakeを自作すれば可能。luacall animationでやるべし。ただ、これもあまり見返りはない。

175 :
>>173
>文章と同時にぺぺぺぺぺという小さな音
逆転裁判やレイトン教授はそうだよね
あれらは音の選択が非常に良いらしく邪魔じゃない
(逆転−の方は正直ほんの少し耳に障るけどレイトン教授のほうは心地よいくらい)
自分で聞きまくってかつゲームが好きな知り合いに試し聞きしてもらって
良い音を見つけて使わないとマジうざい結果にはなると思う

176 :
サウンドのベルで瞬間表示できない&音が鳴るって、自分で試してみると分かるけど相当イラつく
quakeも多用するとイライラ仕様になりやすいから気を付けて

177 :
ぺぺぺはドラクエだろ

178 :
>>174
ありがとうございます!
Luaは初めてなので講座とかマニュアルのそれっぽいところに目を通したんですが、
文字数を出してくれるのが見つからないんですよ。
Luaにもシステムカスタマイズ的なものがあるのでしょうか?
>>175
そうなんです、その二作品に憧れてやってみようと思ったんですよw
音鳴らすゲームはほかにもありますけど、すんなり耳に入るのは少ないですよね。

179 :
>>178
えー……、と、完全にLua分からないみたいだから、後者の↓でやるといいんじゃないか?
>または字数カウントして、字数分に対応したwaveを選んでpretextでdwave。クリック感知で止めること
こっちならNScripter側だけで出来るから。
字数のカウントはgettextしてlenして2で割ると表示文の全角文字数が出せる。
あとは対応したwavを鳴らすだけ。これでも分からない状態ならやめといたほうがいいわ。

180 :
>>179
ありがとうございます!
仰るとおりLuaとは何ぞやという状態でした……
まだ試していませんが、Nscripterだけの方なら何とか私にもできそうです。
いただいた説明も頭にしっくりきたので。

掲示板というものに慣れていないので内心ハラハラしていたのですが、
いい意味で想像を裏切られて感激です。
皆様ありがとうございました。
いつかLuaも理解できるようになりたいなぁ……(・ω・`)

181 :
>>180
書き込む前に半年掲示板を眺めてローカルルールを覚えてな

182 :
答えない奴がドヤ顔。それがこのスレのローカルルールだ!!

183 :
シスカマやっと覚えたら次はlua
講座見ても理解できねーんだが本は高くて買おうか迷う
ウインドウモードの×いじりは達成したから満足してたんだが欲がでるな…

184 :
プログラミング本は基本高いし、Luaはマイナーだから安いのねーしな

185 :
吉里吉里に移ろうとしたが戻ってきた
新しいことを覚えるのはもう無理だ・・・
サウンドのループ周り改善されねーかな
不満はそれだけなんだよ俺みたいなショボゲー製作者にとって

186 :
>>185
シスカマすりゃ一発だろが

187 :
sliファイルでループ範囲決めるみたいにできんの?
できるなら鼻血出る

188 :
ああそっちか。ロードでループ効果音復帰しない件かと思ったわ。
一応、bgm "(2.000)test.ogg" 的な記述は可能。

189 :
NScripterDSなら吉里吉里のsli使えたはず

190 :
Luaは関数とコルーチン理解したあたりで色々諦めて便利な追加命令群だと思うことにした

191 :
あれ?
NScripterってwin7動作保証外じゃないよな
動作チェックしてた日記あったし
書かれてたの旧日記っぽいので確認取れないけどね

192 :
保証内か外か知らないけど
俺とこでWin7で特におかしなことはないよ
今のところ

193 :
とりあえず、うちは動作OS表記でXP/Vista/7としてる。ぶっちゃけVistaが一番怖いw

194 :
7て公式に保証ないの? 保証内かと思ってた。
メニューが二行になるあれだけ気をつけてる

195 :
NScripterの添付ファイルはVistaまで明記されてるけど
win7は日記で動作確認済ませてただけで放置されてる
そのログが見当たらないから、曖昧でよく分からない状況みたいね

196 :
姦獄島の体験版がNスク製でした

197 :
そりゃそうだろう

198 :
姦獄島サクサク動いていい感じだった
だけど、シナリオが中の人の思想が体験版だけでもうわぁ…ってなったので買わないと思う

199 :
蠅の王モチーフだろうから初買いする。今までの触手ものは触手が伸びなかった

200 :
シナリオってNスクの作者だっけか

201 :
yes

202 :
姦獄島体験版、出だしがすでに冗長で投げた…
三人称の文体はノベルゲには合わないなぁ、と実感。
スクリプト的にも、大したことはやってないっぽいね。
名前ウィンドウすら無いし。

203 :
Binary Heavenの掲示板も業者に犯され始めたか…

204 :
NScripterをCDに焼いて配布しようと思うんだけど、ハード上に解凍してくれるexe作る方法しってますか?

205 :
ははは

206 :
NScripterに関係ないこも効くなよ。
多分そういうのはたるよ。
ペクターとかに行って探したら?

207 :
>>202
見た目で分かれてないだけで、実装としては名前ウィンドウだな。
タグをpretextgosubで処理して、文字列スプライト作ってる。

208 :
>>202
三人称なのは全然いいんだけど、モノローグにも名前が欲しいよね。

スクリプトの話だと、バックログはページ単位で表示するしかないのかね。
ピクセル単位でヌルヌルスクロールさせたいぜ。

209 :
ページ単位じゃない場合
行数が一定じゃないのでテキスト切り出しが面倒じゃね?
その辺を端折るなら
永字八法のカメラDLL使ってそれっぽいのは出来そうだけど

210 :
行単位で管理して外見上ヌルヌル移動とか? 重くなるだけな気が

211 :
パッチ対応キタワー.*:.。.:*・゚(n'∀')η゚・*:.。.:*

212 :
各種バグ修正・・・って具体的に頼むよ

213 :
ワイド対応とか胸熱

214 :
バージョンナンバー295のままか
XP以降にするなら1個上げて296とかにすれば良いのに
ワイド実際にエラー落ちしないで動いてる?

215 :
ワイドエラー落ちTIPSの日記に書いてあったか・・・

216 :
XP以降版バグ修正されたようだけど
何のバグだったんだろ
ワイド対応のことなら直ってない気が

217 :
Nスクの作者さんがブログで公開してるぬるぬる動く3Dダンジョンみたいなのを作ってみたいんだけど、Nスク単体じゃ無理だよね。
SGEは開発途中みたいだしNスク+luaでできないかな

218 :
掲示板にあった最新エンジンの描画の重さだけど、確かに間違いないな。
現状、演出で色々凝ってる奴は移行待ちした方がいい。

219 :
1024*768のワイド画面で落ちるから全くダメなのかとおもったら
一応ワイド画面出来るのか
うちだと横1004越えると落ちちゃうな

220 :
フルスクリーンへの抑制ってワイド液晶だけなんかな?
うちみたいに未だ4:3使ってるの居なさそうだけど
4:3モニタでフルスクリーンにしたの場合は縦方向に画像が伸びちゃう

221 :
うーん、掲示板の返答見たらver2.96の描画スピード上げる気なさそうだなあ……
去年買ったうちの安物環境で1.35倍程速度差あるし、初期XPマシンだと結構厳しい速度差になりそうだ

222 :
スプライトの処理速度が低下してる件、
あれは仕様であって対処される予定はないのか?
これから先、スプライトを使う処理は
重さに悩まされる事になりそうだし
ユーザーのマシンスペックも考えなきゃいけなくなるし
結構、普通に困りそうなんだが

223 :
落として試してみたが、wait命令挟んでさえ無いじゃん
これじゃ、バージョンの違い以外に元からCPUに依存する組み方なんだから
resettimer waittimerで同期を取ればOKって言われて当然じゃねの
せめてwaitで移動時間抑制したの組んで上げりゃ回答もちょっと違ったかもしれんけどな

224 :
描画の重さ、これ致命的だな
resettimerとか用いてもどうにもならん
スプライト使った演出が壊滅状態だ……

225 :
>>223
waittimer挟んだらバージョンでの速度差わかんねーだろこの天才野郎が

226 :
えー?
普通はどんな環境やバージョンでも、
同じように動くスクリプト組むだろう?
だったら描画速度とか関係なくね?
それともシューティングでも作ってんの?

227 :
>>226
1000ms内で30回描画出来てたver2.95と23回しか描画出来ないver2.96の画面を見比べて関係ないとでも思う?
同一距離動かす時の見た目の差はまじでキッツイぞ。

228 :
>>227
226みたいな奴は、ネットに良く居る天の邪鬼だから放置しとけって
他人が困ってるのを見たら、ドヤ顔で説教垂れて
自分が偉くなったように勘違いして悦に入ってるだけの馬鹿だから

229 :
天邪鬼なのは自覚はあるが、説教垂れて悦に入るつもりはなかった。
そんな風に取られたのであれば悪かった謝るよ。
ただ、for〜nextで移動量ずつ動かすようなプログラミングは、いい加減やめようぜ。
「このスプライトを何ミリ秒でこっからここまで動かす」
基準時間からの経過時間で位置を決めるようにすれば、
そりゃあ低スペックだとコマ落ちするかも知れないが、音楽との同期とかも考えたら、そういう風に行くしかないんじゃないか?

230 :
ボタン挟んでるから1ドット単位なんだろうが、
MSpDraw.dll使えば済む話だろうからな
プラグインはヤダとかいうことなら
あとは知らん

231 :
>>229
だから、そのコマ落ちが問題だって言ってるんだが・・・

232 :
むしろfor〜nextで移動量ずつ動かすようなコードの方が新バージョンの重さは気にならんだろw

233 :
君ら描画命令が重いとか言ってるが
saveoff
ちゃんと使ってるか

234 :
>>231
描画スピードの話だろ
なんでいつの間にかコマ落ちに話が摩り替わってんだ?
>>233
それ前程で
差が出るくらいにCPUパワーの違いがあるスペックでの話してるんじゃないの?

235 :
>>234
saveoffを使わずに(知らずに)描画が遅い遅い言うやつは多いので

236 :
てめーらそれぞれ定義違うコマって単語使わないでFPSで話せ

237 :
化石PCでまともに動かなくなる分には構わんけど、PCの性能があっても純粋に鈍くなるのであればちょっと躊躇する。試してないから分からんが

238 :
TIPSのでやってみたけど、速度差確かにあるわ
かなり重くなってる

239 :
誰か作者さんが「直してやってもいいか」と思えるような文章考えて
もう一回掲示板でお願いしてください(´・ω・`)

240 :
修正してって頼むのはいいけどさあ。
ソースコード変えずにコンパイル環境変えただけでああなったんだろう?
まず、正確な原因もわかってないんだと思う。
歯医者行って、もう一つのシナリオ仕事のタイトルが発表されるまでは、
本格的に動けないんじゃね?

241 :
とりあえず速度気になるなら旧いバージョン使ってればいいんじゃね。

242 :
まさかとは思うけど、コンパイルする時にデバッグモードでやってたりしないよな。
デバックモードだと、デバッグ用の余分なプログラムが挿入されて、サイズが大きくなっちゃうんだけど。

243 :
今動画をいれるとすると
一番いいコーデックはなんになるのだろう
wmv9でなんかうまく再生できないみたいだ
別の問題があるのかもしれんけど

244 :
別途コーデックを用意させるってこと自体が頂けない
OSに予め載ってるaviかmpg使うのが一番安定してる

245 :
>OSに予め載ってるavi
これは無圧縮でなければどれになりますか?
調べると最新ではDivxとかXvidが標準みたいでびっくりしました。
もともとコーデックが必要だった記憶が
そして逆に標準だったWMV9がサポート外に…
正直ここ数日かなり頭こんがらがってます…

246 :
MPEG-1 か MPEG-2 つかっとけ

247 :
1だと容量がでかかったり
2だとライセンスがどうとかってあるんですが…
DivXはどうでしょうか?個人的にはよく使うんですが、、、
とりあえずMPEG1の線も頭に入れときます、ありがとうです

248 :
MPEG2はmp3同様にコーデックの差が大きいので止めた方が
音声はVorbisがデファクトスタンダードになったのに
Theoraはどうにも流行らんね
画質はいいと思うんだが

249 :
重いからじゃね?
NScripter用のOggTheora再生プラグインが既にあるのが地味に面白いよな

250 :
oggもゲームに関してはってだけでOSに標準で積まれてないのからすると
利権絡まないとなかなか普及しないのでは

251 :
おいてめーら本体更新きたぜ!!いやっほう!!!!

252 :
nscmake2.exeの使い方がわかんねー

253 :
何気にファイルサイズが更にデカくなっているな

254 :
普及率で言うならflvが一番いい

255 :
flvはプラグインが必要なんだっけ
でもいいよね

256 :
3年前に作ったブツを再発するんで、初めてns2を使ってみたんだが
αブレンド化したbmpを表示してくれないw
君影草工房製プラグインを使った箇所で必ず落ちるww
nsaを使ったら全く問題無く表示し、動作してワロタ
原因が分からずスクリプトに問題があるのかと思って彼是いじって半日潰れたけどなアッー
描画スピードの件といい旧式から移行するのは躊躇するなー
新作は全て現行ver.の物で作りたかったんだが

257 :
>>256
描画スピードはとっくに戻ったぞ

258 :
>>256
ns2で落ちるのは前からだろう
関係なくね?

259 :
ns2は無圧縮だからなあ。pngじゃないと容量が膨れ上がる。
多分bmpは想定してないんじゃないかな。

260 :
>>256
アホ丸出し

261 :
bmp使うメリットが段々薄くなってる気がするっつうか加工もpngの方が楽じゃね

262 :
pngのが一般的なのか
JPGと違ってきれいだろし
めんどうでなければ考えても良いな

263 :
昔はパッケージ化するときに圧縮するからBMPを使ってたけど
今は無圧縮だからPNGを使ったほうがいいってこと?
進化を追ってないからさっぱりかわらんw

264 :
>>263
nsaの場合、圧縮かけるぶん取り出した後にデコードが必要だから重い。
だからnsa当時は分かってる奴はプラグイン噛ませてPNG利用してた。
BMPなら無圧縮のns2が最も早い。
しかし、古い特定のプラグインの場合は規格が変わったns2からデータを読めないこともある。
今なら間違いなくns2+PNG利用が良い。古めの特定のプラグイン使いたい場合のみnsaが選択肢に入る。

265 :
csvopenは、ns2の中覗けないから、
その場合もnsaを選択肢に入れんとな。

266 :
>>265
アーカイブに格納するなら読み取りだろ。
なら素直にコード打てばいいんじゃね?って気が前からしてるんだが、
アーカイブ内のcsvをどういう使い方してるのか教えて欲しいんだぜ。

267 :
そりゃシナリオを書くんだよ。
シナリオの特定の部分が、どのテキストに書いてあるか探すよりも、
chapter01.txt開いた方が早いだろ?

268 :
それだと演出はどうすんだ?evalすんの?
既読データもなくね?

269 :
既読データは自前管理。
これならシスカマの既読スキップが止まる現象も無視できるぜ。

270 :
たまにoggにプチっていうノイズ入るんですが、どういう原因があるんでしょうか?
oggファイル自体には異常ないので、Nスク由来だと思うのですが。
ver2.95です、よろしくお願いします

271 :
nsogg2.dllは使ってる?
以前にプチノイズのバグ修正されてたはず

272 :
>>271
ありがとうございます。
使っていて、バージョン1, 0, 0, 1です。NScripter Windows98/me/2000対応最終版(09/09/06)に入っているのとバージョン一緒なので、
おそらく新しいものだと思います…
発生条件がよくわからなくて、スクリプトの組み方で変な負荷でもかかってるんですかね…。

273 :
負荷が掛かりすぎたらってのはあるかもな
うちの老骨マシンでも極稀にノイズ発生することあるし

274 :
2種類以上のEDやイベントを見ないと
(例えばAルートED片方2回見ただけじゃダメで
AルートEDとBルートED両方を見ないと)
出現されないおまけCGとかを表示させるときって
どんなスクリプトを仕込めばいいんですか?

275 :
>>274
一度テンプレ読み直したほうがいい
そこで躓くようじゃ後々辛いから

276 :
>>274
まずdefine→globalon
AルートED→mov %501,1
BルートED→mov %502,1
おまけCG表示判定→if %501 == 1 && %502 == 1 表示経路へ
正直言って、この程度が浮かばないのはかなり向いてない。

277 :
if %501*%502=1 表示経路へ
これでもいいよね。

278 :
Binary Heavenの掲示板、業者に犯されまくってるなー・・・

279 :
唯一機能してた掲示板なんだが、残念だな

280 :
>>274
一段階単純な、GUI付いてるようなツールとか使って基本概念学ぶ方がいいと思う

281 :
>>277
>if %501*%502=1 表示経路へ
全然関係ないけど、if文の条件判定に使う「=」は、
「==」と二つ重ねるクセを付けておいたほうがいいかも…。
C言語とかだと、「=」は代入、「==」が条件判定だから。
Nスクからプログラムに入った自分は、
Cでif文絡みのエラーを連発したんだぜ…。

282 :
Luaでもそうだし、癖つけとくべきだな

283 :
>や<と併用かつコードの字数揃えたい場面であえて=はアリだと思う

284 :
deffont.dll改造版の作者さんに要望です。
禁則処理機能をつけていただくことは可能でしょうか。
strspやテキスト表示を完全にこのプラグインに依存したいのです。

285 :
作者じゃないけど、禁則処理って面倒なんだよね。
deffontに与える前に、luaとか使ってテキストをぶつ切りにしとくってのはダメなのか。

286 :
>>285
%#000000とかの情報をどこかに記録してからベタのテキストにして、
決まった横文字数ごとにstring.subしてテーブルに入れといて、
それで頭に、やら。が来たら文字を前後にずらして、
てとこまで考えたけど行が後ろにずれたときどうしたらいいかわからなくなって終了した
ちなみに今使ってるのはこんなの(禁則処理はしてない)
%nでstrspの\と同じ働き
local fontproc = NSDDLL('dll\\deffontd.dll','Font');
local deffont, fontsize, textcol, textrow = 'MS ゴシック', 18, 16, 7;
local COLORS = {text = '#ffffff', kwd = '#ff0000', param = '#0000ff'};
function strsp2(spnum,text,x_pos,y_pos)
if (#text < 1) then return false; end;
local col = textcol*2;
local bold = ''; if (text:match('^%%b')) then bold = 'b'; text = text:gsub('^%%b',''); end;
for i,v in pairs(COLORS) do text = text:gsub('%%#'..i,'%%'..v); end;
local params =
{
'*'..(textcol*fontsize+fontsize*2+1)..','..(textrow*fontsize)
,math.ceil(fontsize/2)..','..fontsize..','..deffont..','..bold..','..'%'..COLORS.text..text:gsub('%%n','\n');
};
NSDCopyToBg();
NSDCall(1,params[1],fontproc,params[2]:gsub('%%#%x+(%%#%x+)','%1'));
NSDSetSprite(spnum,1); NSDDelete(1);
NSSpMove(spnum,x_pos,y_pos,255);
end;

287 :
禁則処理するなら句読点だけじゃなくてカッコの開きとか約物全般もあるからややこしいだろうな
それに幼促音(ぁぃぅぇぉゃゅょ)とかも必要だと思うし

288 :
てか実行時に禁則処理する必要って本当にあるの?

289 :
何とも思わない奴にとっては必要ないが、
物書きなら必要に感じるじゃね

290 :
禁則処理が不要って言うんじゃなくて
主人公の名前が変更できて文字数が不定だとか
フォントサイズを調整できるとか
そういうんでなければ
シナリオからスクリプトに変換する段階で
もっと文字列処理が楽な言語で処理すればいいんじゃねと

291 :
禁則処理は行で分けるんじゃなくて、最初は文字で分けるべきな。
local text = "なんか適当な、サンプル文章。" -- 表示したい文章
表示文に2バイト文字しか入らないことが保証されているなら、分割部分は簡単にできるな。
local letters = {} -- 分割した文字を入れるテーブル
-- 2バイト文字専用分割
for i=1, text:len()-1, 2 do
letters[#letters+1] = text:gsub(i, i+1)
end
半角文字も混じるようなら、文字コード調べるところからになるなあ。
function letter_length(letter) -- 文字を与えたら、その文字の長さを0か1で返す関数。半角なら0、全角なら1を返す。
local num = letter:byte() -- 先頭の文字の文字コードを取得。
if num < 127 then return 0 end
if num < 161 then return 1 end
if num < 224 then return 0 end
return 1
end
-- この関数はShift-JIS専用
local letters = {}
local cursor = 1
while cursor < text:len()+1 do
letters[#letters+1] = text:gsub(cursor, cursor+letter_length(text:gsub(cursor, cursor))
cursor = cursor + letters[#letters]:len()
end
どっちか使えば、文字列の分割は完了。
次は肝の禁則処理。

292 :
禁則処理は、
1.行頭禁則(行頭に来てはならない)と、
2.行末禁則(行末に来てはならない)と、
3.分離禁則(途中で改行してはならない)
の三種類がある。
句読点「。」とか「、」は1に相当する。
「ゃゅょ」とかの拗音促音も1になる。
カッコ類「(」「)」は、前が2になり、後が1になる。
英単語などの半角文字は、半角スペースを除いて全て3になる。
ちなみに一種類の文字が複数の属性を持つことはない。だいたい。
まあ、そういうのは思いついたのをどんどん追加していけばいい。
local no_head = {} -- 行頭禁則文字を定義するテーブル。
no_head["。"] = true
no_head["、"] = true
-- こんな感じでどんどん増やす。
local no_tail = {} -- 行末禁則文字を定義するテーブル。
no_tail["("] = true
no_head[")"] = true
-- 同じく増やす。
で、さっき分割した一文字ずつを今度は結合していく。
結合チェックは、3を最初に、それから1と2(こっちは順番はどうでもいい)の順でチェックする。
おっと、書きこむスペースがなくなった。

293 :
-- 3.の分離禁則を実現するルーチン
-- チェック1:頭から舐めていって、分離禁則文字が見つかったら、チェック2を開始する。
-- チェック2:次の文字からチェックしていく。分離禁則文字が連続する限り、それをチェック1の文字の末尾につけていく。
local cursor = 1 -- さっきも作ったから、localは要らないかも。
local letter1
local letter2
function is_no_purge(letter) -- 文字を与えると、それが分離禁則文字かどうかを返す関数
if letter:len()>1 then return false end -- 半角文字でなければ分離禁則文字ではない。
if letter == " " then return false end -- 半角スペースは分離禁則文字ではない。
return true
end
while cursor < #letters do
letter1 = letters[cursor]
-- チェック1
if is_no_purge(letter1) then -- 分離禁則文字であればチェック2開始
while true do
letter2 = letters[cursor+1]
if type(letter2)=="nil" then break end -- 終了条件
if is_no_purge(letter2) then
letter1 = letter1 .. letter2 -- 結合
table.remove(letters, cursor+1) -- 結合した文字を削除
else
break -- 終了
end
end
end
lettes[cursor] = letter1 -- 再登録。
cursor = cursor + 1
end

294 :
-- 行頭禁則処理
-- 行頭禁則文字は、前の文字にくっつく性質を持つ。
cursor = 1
while cursor < #letters do
letter1 = letters[cursor+1] -- 文字を一つ取得。
if no_head[letter1] then -- それが行頭禁則文字だったら
letters[cursor] = letters[cursor]..letter1
table.remove(letters, cursor+1)
else
cursor = cursor + 1
end
end
-- 行末禁則処理
-- 行末禁則文字は、後の文字にくっつく性質を持つ。
cursor = 1
while cursor < #letters do
letter1 = letters[cursor] -- 文字を一つ取得。
if no_tail(letter1) then -- それが行末禁則文字だったら
letter1 = letter1..table.remove(letters, cursor+1)
letters[cursor] = letter1
end
cursor = cursor + 1
end
これでやっと禁則処理ができた。
次は、表示する際の処理。

295 :
local width_max = 40 -- テキストウィンドウの幅(単位:文字数)ただし、半角で。
function next_line(letters) -- 次の一行を返す。引数にはlettersを与える。
if #letters<1 then return nil end -- 表示する内容がない場合はnilを返す。
local text = ""
if letters[1]==" " then
table.remove(letters, 1) -- 先頭が半角スペースなら表示しない。
else
if width_max < text:len()+letters[1]:len() then
-- 現在の内容と次に来る文字の長さの合計が、最大幅を超える場合、終了。
return text
else
text = text .. table.remove(letters, 1)
end
end
end
local all_text = "" -- 現在のテキストウィンドウの内容
while true do
local line = next_line() -- 次の一行を取得。
if line then
if all_text:len()>0 then -- 既に何か表示していれば
NSExec("_br") -- 改行
all_text = all_text.."\\"
end
NSExec("_puttext \""..line.."/\"")
all_text = all_text..line
else
-- 表示内容がないなら、終了
break
end
end

296 :
色々書いてきたけど、まとめないと全然ダメだわ。
色変更とか全然考えてないから、ほんと参考までにって感じでお願いします。

297 :
いや
なかなか
ありがとう

298 :
>>281-282
マ板やム板と同じくトラブルの元になるので自分のやり方や失敗例を押し付けないように。
誰もがコケる前提で説明するのは自分以外の扱き下ろしと同じ。
将来的にC言語を使うとは限らないし、Luaが必要になるとも限らない。
むしろ、必須になった状況下で初めて身に付けるのが普通。

299 :
>>291-295
すげえ
へなちょこの俺にはさっぱり理解できねえw

300 :
ああ、うん。ノリで書きすぎた。ごめん。
要は、さ。
1.一文字ずつに分解する。
2.禁則処理文字をくっつけて間に改行が入らないようにして、小さな文字列をいっぱい作る。
3.その小さな文字列をテキストウィンドウの幅を超えないように集めて表示していく。
これだけのことなんだけどね。
プログラムにするとありとあらゆる状況を想定しないといけないから、長くなっちゃうんだよね。
わからない人は誰かに作ってもらいなよ。

301 :
名前入力ないなら手動で直しちゃえばいいと思う、割と真面目に
名前出る場面が少ないなら個別処理っぽくしてもいいと思う

302 :
>>301
短編・中編とは限らんぞ

303 :
禁則処理に対応したエディタを使えば済むような

304 :
エディタの話じゃないだろう?
テキストをプレイヤーに見せる時にどう禁則処理するかって話で、
開発者が見やすいかどうかは別問題だろ?

305 :
横の文字数が決まれば
エディタで表示したとおりにゲームで表示できるだろう
この天才が!

306 :
>>305
コードと表示テキスト混合だってことわかってねーだろお前・・・

307 :
コードと表示テキストを混合できるのが
Nスクの利点でもあり欠点でもある
シナリオと演出とロジックは分離すべきだと思うね

308 :
エディタとNScripterの禁則処理が同じものかどうかもわからんしな。
スプライトがっぽり使っていいんなら、
途中文字サイズ変更とか、縦書きルビありとか無茶もできるんだが。

309 :
現状、シナリオと演出分離出来てるノベルエンジンねーだろ・・・

310 :
文字の色変えも演出のうちとするなら、
テキストと演出の分離なんか寝言にしか聞こえなくなるけどな。

311 :
>>305 307
釣り乙

312 :
文字の追い込み追い出しも
出来るようになって欲しいが
未だ実現してないな

313 :
追い出しはともかく、追い込みはいるかな?
文字間が狭くなって見づらくなるだけじゃないかと。

314 :
追い出しと句読点のぶら下げはほしいな

315 :
>>313
そこは字詰めも利いて
文字を長体に出来れば…とか贅沢な思いがある

316 :
表のように幅の制約が厳しいならともかく
文章の調整で長体はいかがなものかと
実行時オプティカルカーニングとか
できたら面白いだろうけどね

317 :
如何なものかととか言われても
小説とか読み物の文章で普通に使われてるから
文字別れとか気にするのとか約物が2つ以上ある文を追い出さないようにするためとかでね

318 :
無いとは言わないけど普通とまで言われると抵抗があるな
ゲーム画面だと1行の文字数が少なくて
約物での字間調整が期待できない以上
技術的な有効性は期待できるけど

319 :
個人的に抵抗感あっても
仕事の事例だから事実だから
文字のあふれで長1とか長2あたりは普通に使う
英文が絡むと長4とかありうるけど

320 :
今日のNG登録はID:PHN7MF4rか

321 :
正直プロポーショナルなフォントだと文字数で禁則はできねえよな。
フォントからその文字の幅を取得して合計XDot以上ならば禁則をおこなうとかね。
ああめんどうだなあ。

322 :
ノベルでPなんて使わないでくれよ読みにくいから

323 :
Pゴシは読みにくいよねw
だからみんな影付けてんだろうけど。

324 :
新エンジンの開発も進んでるようだし公開が楽しみだ

325 :
nscr.exeは以前告知されてた別フォルダなら同時起動可能はまだ対応されてないんだね

326 :
Nスクでは良くあること
実装されるまでは本気にしない方が良い

327 :
昔のゲームで、それはNScripterじゃなかったんだけど、
テキストウィンドウを別窓開いてそっちに文字表示ってのがあった。
NScripterでやろうと思ったら、
プラグイン作るか、SGE使うかの二択だろうなと。
ただ、SGEだと文字コードがNScripterとは違うんだよね。プラグインしかないのかね。

328 :
文字スプライト併用して
上手い事すれば良いんじゃないの

329 :
>>328
> 文字スプライト併用して
> 上手い事すれば良いんじゃないの
本当に、ただ禁則処理をするだけならそれで終了なんだけどね。
プロポーショナルフォントを使うとか、
英語も混ぜて表示するとか、
縦書きとか、
英語なら例)AとVを並べた時に文字の両端をわざと重ねて表示させるとか、
袋文字・下線・打ち消し・斜体とかを考えたら、そう簡単な話でもないな、と。
禁則処理をするだけ、とか、袋文字をするだけ、とか、そういう単機能なのが乱立しても、
あんまりいいことないんじゃね?

330 :
で、 ID:YIh58pTk は結局なんの相談なんだ?
自分語りをしたいだけか?

331 :
>>329
高望みしすぎじゃねの
出来る出来ないが明確になっていれば
それに合わせて文章の書き方変えるとかやりようはあるだろう
使う気無いけど機能性は盛りだくさんとか
酔っ払った考えにしか思えない

332 :
そこまで要求するなら自分で作れよって感じだしな
スキルの無い奴ほど要求だけはデカくなるという良くある光景
で、こういう奴に限って、俺は作れるんだけど敢えて作らないだけだ(キリッ
みたいな言い訳始めるんだよ

333 :
もっとshellとか使おうぜ

334 :
shellはウェブ以外使い道わからん

335 :
文字のアンチエイリアスオフをできるようにしてほしい……>deffont

336 :
NScrInstaller更新されたのか
win7の無反応バグ直ったのかな?

337 :
>>336
報告期待!

338 :
osがwin7じゃねーんだよ…確かめようが無い
win7だったら聞く以前に直ってるって書くわ

339 :
>>336
7だから確かめようか?
と書こうとしたけど無反応バグが何か知らなかった

340 :
多分うみねこで起こってるコレのことだと思う
>ξ(`・3・)ウィンドウズ7に買い替えたんだけどプレイできる?
>A.インストール中に他の操作をするとほぼ確実に応答なしになって終わるが、ゲーム自体は普通にプレイ出来る。

341 :
Nスクを30ポージングみたいに使いたいんだけど
フォルダ内からランダムに画像を表示って無理だよね?
全画像名打ち込んで飛ばしてくしかないのかな?

342 :
>>341
できるよ。画像名を番号にして、それをタイムアウトつきのボタン待ちごとにrndで拾ってけばいい
試してないけどこんな感じかな。画像は0.jpg,1.jpg〜のようにして
*btnset
bclear
btime 30000
rnd2 %100,0,99: itoa $100,%100
lsp 0,$100+".jpg",0,0
*btnloop
bexec $0
if $0=="TIMEOUT": goto *btnset
goto *btnloop

343 :
>>342
ありがとう
やってみます

344 :
>>342
全然関係ない人間だけどありがとう助かった

345 :
新エンジンのデモ来てるぞーーー

346 :
>>345
これいいね
ボーーッと見続けてしまうw

347 :
ダウンロードしてみた。
「D3DX9_40.dllがない」と怒られた。
ぐぐってファイルをみつけて、それを「exeと同じフォルダ」においたら動いた。
スクリプトもns2ファイルの中なのな。
スクリプトサイズは157kbほど、結構あるな。

348 :
つかDirectX 最新にしなよ
何でそんな事してるんだ

349 :
よくわからんが、最新にしても動かなかったんだ。
再起動しなかったのがまずかったのかな。

350 :
>>347
ns2はアーカイブファイルなんだからテクスチャ用の画像素材も同梱されてるだけだと思う

351 :
とりあえず古いPCでも何の問題も無く動いてるし
現状でも既にかなり安定してるみたいだね

352 :
deffontの人乙です
しかしアンチエイリアスオフは文字スプタグの':s/22,22,0,1;〜みたいのんで表示される字の感じがいいと思うんだ

353 :
俺はdeffontのが好きだけどなー。
deffontで不満があるとしたら、全角の横幅は必ず偶数になることかな?
基本、半角文字のサイズ指定だから、13x13の「あ」とか出せないのが若干の不満。

354 :
lsp 1,":maaa.bmp;bbb.bmp",0,0
のように:m;使うと強制終了になってしまうんですがなぜでしょう。
ちなみにonscripter for winで試したところ問題なしでした。

355 :
バージョンは2.96かい? なんかbmpまわり微妙だから2.95に戻すか、png切替をオススメしたい。

356 :
>onscripter
本人が作ってるんじゃないから
非公式のツールと比べても意味無いだろ

357 :
>>355
2.96でした
pngでもやっぱり:m;使うと落ちてしまいますね
自分の使っているソフトは透過pngにすると減色されてしまうからマスクを使いたかったんだけど
ありがとう

358 :
>>357
てことは単純にmタグのバグっぽいな。となるとどうしょうもないから、透過PNG利用に変更だな。
つまりCGソフトの切替をオススメしたい。AzPainterあたりならフリーでもなかなか勝手がいいよ。

359 :
これは高橋氏に報告した方がよろしい予感

360 :
>>357は自分で絵を書く人なのかな?
専業のスクリプターだと、Photoshop Elementsくらい持ってないと、
絵師やグラフィッカーとのファイルのやり取りでキツそうな気が…。


361 :
357氏以外で現象再現した人いる?
うちの環境だと何をどうやっても普通に動いて再現できないです。
n_0238.zipにテスト用の画像とスクリプトをあげておいたので
これで問題起きるか、お時間あれば試してみてください。

362 :
XPだけど普通に見れた
354の画像の保存形式が変なんじゃね
32bitのビットマップだったりして

363 :
>>361
乙。win7 64bit 普通に通る。>>357

364 :
http://nscuploader.pa.land.to/cgi-bin/ からチェックしてみて欲しいな

365 :
三連投スマソ。ns2アーカイブ化した結果。

366 :
ver 2.95は通る。ver 2.96は落ちる。

367 :
>>364
落ちるよ
つか、ns2にしとかないと意味無いじゃん
メンドクサイ

368 :
OS:XP sp3です。
ns2化すると、ver2.96では落ちないけどBMPの方は表示されませんね。
ver2.95は普通に表示されました。
>>メンドクサイ
すんません。
問題の切り分けをしたいというのもありまして。
お手数おかけしました。

369 :
ん? 素で落ちてるの?
うちは素だと落ちないけど
ns2で落ちるよ

370 :
deffontd.dll
色指定や改行指定可の禁則処理できた(と思う)
ろだにあげたのでよかったらみてください。
仕様
#??????を複数重ねちゃ駄目
分離禁則はしない

371 :
あああ
そうだNSFontの外字機能は使えないのかorz
なんてこったい

372 :
>>371
だからおれはstrspでログ作ってる。外字使わないならdeffontd.dll 一択なんだけどな。
そもそも画像化してるんだから、まあやりようはあるんじゃね?って気もするけどね。

373 :

こんな↓文字スプライトって透明度下げて見えなくするように出来なかったっけ?
lsp 0, ":s/25,25,0;#CCCCCC#FFFFFF",0,0
mspで透明度をいじっても文字の形そのままに黒い物が残る

374 :
deffontd.dllの作者さんありがとう!!!
これで完全に乗り換えられるよ
>>373
確かにのこるね

375 :
透明度0の場合は
cspとかvspで最後処理してるから気付かんかったけど
2.93でも残ってるな

376 :
新バージョン、ウィンドウサイズの設定自由度が大幅にアップしてるね
これが本来の意図通りの動作だったのかも

377 :
TIPSのブルーインパルスに入れてもスピード遅くなってないな。安心した

378 :
TIPSの報告で
1280x960pixと1280x720pixの表示確認。ワイド時フルスクリーン抑制らしいから
うちの環境下でスケーリングの設定をアスペクト比固定なしで画像が伸びたりしないか
確認のために試したけどフルスクリーンに出来ないな
ただ、geforce6800とかロートルだからかもしれんけど

379 :
うちの環境だとなぜか起動してすぐ固まる
横1024と1280で4:3と16:9試してみたけどだめだった
Win7のせいかな?

380 :
>>379
最新バージョン使ってる? こないだまでだと同じ動作だったけど、
今回のは大丈夫だったぞ@64bit win7

381 :
>>380
さんくす
公式から最新の落としたら無事できました
間違えて古い方ので試してた・・・

382 :
おk 安心したわ

383 :
if %1 == 100 mod %1,20
if %1 == 100 mod %5,100
みたいに、if文の後ろに mod を入れると
条件成立の可否に関わらず、Nスクがエラーで落ちるけど
これはバグ?それとも、そういう物?

384 :
>>383
それ、%1==100の成否で、modを実行してるつもりかも知れんけど、
modが演算子として解釈されてるんじゃないかな。
if %1==(100 mod %1) puttext ",20"
こんな感じで実行しようとしてると思う。
で、%1が0だったりしたら、NScripterが死ぬとか。
昔のバージョンのNScripterが、ゼロ除算エラーでエラーも吐かずに落ちるのと同じような現象とか。
試してないからわからんけど。

385 :
>>384
ああ、なるほど!
わかりやすい説明ありがとうございました。
道理でね!なるほど!

386 :
modは命令文より式としての扱いのが優先なんだな。俺も気をつけよ

387 :
>>384
自己レス
あるスクリプトで見たんだけど、
if %1==100:mod %1,20
こんな風に、他の言語のthenと同じようなつもりで命令区切りの:を使っている例もあった。
これなら、最初に意図したとおりに動くかな?
ま、一例として。

388 :
>>387
試しに手元でテストしてみたら、: 区切りで問題なく動作しました
助かりました。ありがとうー
この辺りの事、Tipsさんか、覚え書きさんに載せておいてー
と無理矢理リクエストしておくよ!

389 :
解釈間違ってるかもしれんけど
変数書いてある下の方に一応メモっといたよ>by覚え書き


390 :
乙彼

391 :
XP暫定版、ボタン待ちするとCPUが100%になる
2.95はそんなことないのに
環境:XPSP3 DirextX9.0c(いまさっき最新版なのを確認)
試したスクリプトはこれです
*define
game
*start
あいうえおかきくけこさしすせそ。
bexec %0
end

392 :
>>391
うちじゃ、それなんないわ@win7 64bit
OS依存かね

393 :
俺も最新の暫定版だと100%になった
旧バージョンだと100%にならない
OSはXPでシングルコア

394 :
すまん。392だけどコア数2だったから言われてる通りだわ。
295に戻したら全然違った。ノートPCのバッテリー考えて一度295に戻すわ。

395 :
画面サイズに拘らない場合は旧版使ったほうがいいのかな(´・ω・`)

396 :
>>395
今のところ295(2000対応最終版)を使うのが1番良いと思う
btnwaitでコア1つ100%使い切っちゃう件はムッシュ高橋に報告しておいた方が良い予感

397 :
 

398 :
バグ治ったー(゚∀゚)

399 :
素人質問ですみません。
現在、制作中のゲームの機能で
[フローチャート画像からボタンクリックでそのシーンに移動する]
という機能を制作中なのですが、どう作っていいものかまったくわかりません。
イメージとしては、かまいたちの夜にあったような機能です。
どうかご教授いただきたいのですが……。
現状
縦長のフローチャート画像表示 OK
縦長のフローチャート画像を、マウスホイール上下でスクロールさせる OK
ここまでは出来ているのですが、ここから先、lsp命令でボタンを表示したり、
フローチャート画像の上下スクロールに合わせて、ボタンが上下に連動して動くようにしたいのですが……。

400 :
それは、単に画像のスクロールと同時にボタンも同じx,y量動かすだけだよ
本気のアドバイスだけど、399がシナリオライター兼スクリプターじゃないなら後々死ぬからやめとけ

401 :
>>399
>[フローチャート画像からボタンクリックでそのシーンに移動する]
そのシーンが終わった後、フローチャートに戻ってくるの?
飛ばすだけなら簡単だけど、戻ってくるのは意外と難しいんだぜ。
(最初から戻ってくる前提でスプライト番号なんかを管理しないとダメ)
ボタンのスクロールは、>>400の言ってる通り。
lspでボタン画像を読み込んで、spbtnとかでボタン化。
あとはホイールからの入力があるたびにボタン画像の位置を移動して再度spbtnでボタン化。
この繰り返し。

402 :
更新来てたんだな
前回うちでダメだったフルスクリーンも出来るようになって良い感じ
これで4:3液晶の場合フルスクリーンワイドサイズでのツールバーの位置が
黒帯びを越えて画面上部に表示されれば不満ないんだけど
今時4:3も無いし贅沢だな

403 :
1コア占有のバグ、もう対応されたのか!
さすがムッシュ高橋!

404 :
>>399
>>401
フローチャートに戻るだけなら、
フローチャート画面をセーブしといて
ロードで戻ってくるという荒技もある

405 :
>>404
天才!
と思ったけど、セーブデータが残るのはちょっとカコワルイ

406 :
それやってたゲーム知ってる。動けばいいんだから間違ってないよな

407 :
普段はシステムファイルっぽくしておいて読み込む瞬間だけluaでリネームって手がある

408 :
文字列の比較で困っていまして、どなたかお力添え願えないでしょうか。
NScripterに文字配列は無いみたいですが
そこで例えば
cmp %0,$1,$100〜$200
と比較して行きたいのですが、forで回す手段はありますでしょうか?
数が多いのでifで記述していくと見辛いなぁと思いまして。

409 :
mov %1,100
$%1
で$100と同じ意味になるよ

410 :
高橋氏がツイッターでやってるSGEの仕様話が興味深い

411 :
>>409
助言頂いた物を使って無事回す事が出来ました。
同時に、他の無理矢理回していた所もスッキリ改善でき非常に助かりました。
本当に有難うございます。

412 :
Nスクは配列が使えない代わりに
こういう変な変数の重ねがけで配列の代用は出来ますよ
詳しく解説してるサイトもあったと思うから読んでおくのおすすめです

413 :
本当に高橋氏はバージョン管理システム使ってないんだな
せめて開発版と安定版の2つだけでも
システマチックに管理してほしいんだが

414 :
Twitterのか? 10年前の思い出話だろ。

415 :
そういうこと出来るなら
とっくにマニュアル整備されてると思うw

416 :
別に開発者が、どういう方法でバックアップをとってようが
外野が口出しする事じゃないと思うが?
Nスクのマニュアル不備とは、全く関係ない話題だし
どや顔でプロに環境指南したがる素人の気持ちは理解できんな

417 :
んだな

418 :
Nスクは$%と%%のおかげでかなり救われてる部分があるね。あとLua

419 :
>>416
バックアップじゃなくてバージョン管理の話でしょ

420 :
>>416
ドヤ顔でバッサリ切る素人の気持ちも理解できないな

421 :
大きな功績を残した人間のアラを探して「ここに関しては俺の方が立派だな」と
悦に浸る小物の気持ちはとてもよく理解できる。

422 :
マターリしようよ(古

423 :
袋文字来ないかなあ

424 :
そういう事に口出ししたがる奴ほど本人はノースキルで顔だけ開発者気取りしたがるもんだ

425 :
せやな

426 :
NスクはVistaや7のUACで止まったはりしない?

427 :
しないな俺んとこは

428 :
Luaに取りかかってるが全く分からん
システムカスタマイズは、一通りマスターしてるレベルだけど
Luaは、やろうとしても、最初の取っ掛かりから分からん
Nスクを初めて触った時は、
最初に、0.txt を作って、ってレベルで解説があって、
そのレベルから始めてシスカマまで出来るようになったけど、
Lua は、フォルダの中に、最初にどんなファイルを置いて、
中に何を書けばいいのかも分からんとか、
そういうレベルで教えてくれるサイトが皆無で辛い。
Nスクは、最初に、このファイルをつくって、
次に、*define を置いて、game を書けば、
とりあえず、こう動く、動いたのを見て、後は身体で覚えろ
って感じで、一通り動かしていくうちに、いろんな記述の意味を把握していった
という感じで学習したけど、
Luaだと、そういうゼロから、動かしていく、基礎のキみたいな部分が分からなくて、
学習のとっかかりがつかめん。
どの講座も、いきなりLuaのサンプルが置いてあって、
え?このサンプル、スクリプトのどのファイルに記述すればいいんだ……
という状態。

429 :
Nスクの講座サイトで、よく「ラベル*defineは存在しません」を出して馬鹿にされてる事があるけど、
Luaに苦戦してる今の俺が、正にその状態なんだろうな

430 :
>そういうレベルで教えてくれるサイトが皆無で辛い
そこで躓いてるレベルだとまだ覚えるの難しいと思うが
まず、講座じゃなくてNスク付属のサンプル動かせれば
何がどう必要か分かるんじゃないだろうか
ちなみにサンプルはXP暫定版には付いてないよ

431 :
サンプルわかるようになったら
>>1のろださんの非公式マニュアルもオススメ
シスカマからluaはここでお世話になったYO!

432 :
>>428
defsubの拡張版だと思うといいよ
function〜endっていうのがひとつのかたまり
*label〜returnみたいなもん
たとえばcspの連番処理
これをdefsubでかくとこうなり、
*cspr
getparam %101,%102
for %100=%101 to %102: csp %100: next
return
luasubでかくとこうなる。
function NSCOM_cspr()
local n,n2;
n = NSPopInt();
NSPopComma();
n2 = NSPopInt();
for i=n,n2 do NSExec('csp '..i); end
end
で、luasubは可変引数が使えるから、従来のcsp+連番機能なんていう命令が作れたりする
function NSCOM_csp()
local n,n2;
n = NSPopInt();
if (NSCheckComma()) then NSPopComma(); n2 = NSPopInt(); else n2 = n; end
for i=n,n2 do NSExec('csp '..i); end
end
csp 1 ;ふつうのcsp
csp 1,10 ;1から10番までを消す

433 :
長々とやったけど、まあ単純にNスクでこう書くものは、luaではこう書けるなって遊びながら覚えてくのがいいと思う
ローカル変数だのブロックがどうのとかはあとからでいい
あと雰囲気としてはjavascriptがかなり近いと思う
こっちのほうが解説してるサイト多いので、のぞいてみてもいいかもね
要するに>>428は雛形みたいなのがないからわけわかんねって言ってるんだと思うけど
luaはたぶんそういう感じで使ったりするものじゃない気がするよ

434 :
まさにその状態……てことは
つまりマニュアル読んでないのか

435 :
NSLuaなら公式のマニュアルと、
TIPSと永字八法とNScripter Scripting Factoryのブログ記事で充分じゃね?
あとは普通のLua系記事をググって探せばOK。

436 :
スクリプトも動かせるようになって、luasubとかluacallとかの概念は理解出来てきた、と思う。
とりあえず、分からないなりに進めてるけど、最初の例題
********************************************************************************
-- 例題
-- 以下でOKが表示されるよう、関数funcを定義してみること。
str, num = func("", 1)
if str == "関数" and num == 3 then NSOkBox("OK!", "") end
str, num = func("変数と", 123)
if str == "変数と関数" and num == 369 then NSOkBox("OK!", "") end
********************************************************************************
これが、超難問
おそらく、func という関数を自作して、引数として "" と 1 を受け取り、
それをfunc内で処理して、結果を戻り値として、変数str, numに代入する、
という、引数・戻り値・代入の3つの作業を同時に行わなくてはならない、
超エキスパート向けの難問なのだろうと、理解してとりかかる。
考えた回答を書いてみる
********************************************************************************
str, num = func("", 1)
if str == "関数" and num == 3 then NSOkBox("OK!", "") end
str, num = func("変数と", 123)
if str == "変数と関数" and num == 369 then NSOkBox("OK!", "") end
function func(str_tmp,num_tmp) --""と1 をfuncに受け取る方法が分からない
if str_tmp == nil then return str_tmp = "関数",num_tmp + 2 end
if str_tmp == "変数と" then return str_tmp = "変数と関数",num_tmp + 246 end
end
********************************************************************************
動かしてみるとエラーメッセージ
---------------------------
[string "str, num = func("", 1)..."]:1: attempt to call global 'func' (a nil value)
---------------------------
ってなんだorz 多分、文法が間違ってるんだろうけどわからんorz

437 :
>>436
二つミスがある。
一つはfuncそのもの。
このfuncは、引数として与えられた文字列と数値を加工して返すものだと想像できる。
a.文字列については、"関数"と言う文字列を末尾に加えて返し、
b.数値については3倍して返す
そういう動作をするものだと考えられる。
function func(str, num)
return str.."関数", num*3
end
これが一番簡単な実装。欲を言えば引数チェックも欲しい。
function func(str, num)
if type(str)~="string" then NSOkBox("第一引数には文字列を指定してください。", "func"); NSEnd() end
if type(num)~="number" then NSOkBox("第二引数には数値を指定してください。", "func"); NSEnd() end
return str.."関数", num*3
end
二つ目のミスは、記述の順番。
Luaに限った話ではないが、プログラムは上から下に向かって実行される。
>>436 では、下の方でfuncを定義しているので、上の方ではまだfuncが未定義である。
なのにfuncを実行しようとしているので、「funcはnil(未定義)なのに、関数として実行しようとした」と言うエラーメッセージが出る。
順番を入れ替えるとこれは解消される。
NScripterでは、実行の前にラベルを解析してしまうので、これでも動くのだが、Luaではそうはいかない。

438 :
>>436
しかしまあ、どこの例題か知らんけど、例題のための例題って感じがして、糧になりにくいと思わせるなあ。
前提として、以下のURLの記述を仕様とせよ。
http://wikiwiki.jp/imagine/?%B0%AD%CB%E2%B9%E7%C2%CE%2F2%BF%C8%B9%E7%C2%CE
一体の悪魔は、一つのテーブルで表現されるとする。
例)妖精ピクシーの場合
pixie = {}
pixie.level = 4 -- レベルは4
pixie.race = "ピクシー" -- 種族はピクシー
pixie.category = "妖精" -- 分類は妖精
悪魔表は一つのテーブルで表現されるとする。
例)
daemons = {}
daemons[1] = pixie
daemons[2] = garm
以下、たくさん。
参考)http://kimamaneko.fc2web.com/megami/devil/devil-kyu2.htm
例題1)引数に悪魔を一体受け、その合体コストを返す関数how_much_for_uniteを作成せよ。
例題2)引数に悪魔を二体受け、それらが合体した場合の新しい分類名を返す関数new_categoryを作成せよ。
※合体できない組みわせの場合は、nilを返すものとする。
例題3)引数に悪魔を二体受け、それらが合体した場合の新しいレベルを返す関数new_levelを作成せよ。
※合体できない組み合わせの場合は、nilを返すものとする。
例題4)引数にレベルと分類を受け取り、それに最も近い悪魔を返す関数select_daemonを作成せよ。
※レベルと分類が完全に一致する悪魔を返すのがよいが、それがなければ、レベルを一つ落として再検索せよ。これを見つかるまで繰り返す。
※レベルが0が検索されるようであれば、nilを返せ。

439 :
>>438
それはそれで抽象的すぎてだめじゃね?
合体コストって概念何よ?って話にもなるし。答え幅広すぎ。
なら単体テストみたいなさっきの例のが確実だと思うけどなあ。

440 :
例題5)悪魔合体の成功率を返す関数success_rate_for_uniteを作成せよ。
※仕様は適当。自分がルールデザイナーになった気分で考えること。
※なお、悪魔とプレイヤーとの親密度が高いほど、成功率も高くなるものとする。
こういうゲームのルールを自分で設定して、そのルールを実装するのが、一番訓練になると思う。
その時に心掛けるのは、最初から全部作ろうとしないで、バラバラの部品にしてしまうこと。
難度100の問題を1個解くよりも、難度1の問題を100個解く方が簡単で早いからね。
例題6)例題1〜5までの成果物を組み合わせて、悪魔合体の関数daemon_uniteが作れ。
※実際にはまだ足りないものがあるはずなので、足りない部分を指摘せよ。
※足りない部分は作成せよ。

441 :
>>439
うん、抽象的すぎると思う。俺も思う。
言われたこと、仕様書をただ実装するだけのコーダーならその反論もありだと思う。
けど、このスレにいるのはプログラマーだけじゃないだろうし、
少人数での同人ゲーム開発なんかの場合、ルールデザイナーとプログラマーが兼任することも多いんじゃないか。
なので、ルールデザイナーとしての練習もやって損はないと思う。
ちなみに例題のように分割してやると、後でルールが変わった時にも変更箇所が少なくなって楽になる。

442 :
例題1)の回答例












悪魔合体のコストは、悪魔のレベルの二乗の半分切り捨て。
function how_much_for_unite(daemon)
local level = daemon.level
return math.floor(level * level / 2)
end

443 :
例題2)の回答例











予め、可能な組み合わせ表を作っておく。
local unite_matrix = {}
unite_matrix["鬼神+女神"] = "地母" -- こういうのがずらっと続く
function new_category(daemon1, daemon2)
local key = daemon1.category.."+"..daemon2.category
return unite_matrix[key]
end

444 :
例題3)の回答例













合体後の悪魔のレベルの最低値は、合体前悪魔のレベルの平均(切り捨て)+1
function new_level(daemon1, daemon2)
return math.floor((daemon1.level + daemon2.level)/2)+1
end

445 :
例題4)の回答例
お詫び。ルールの読解に間違いがあった模様。合体後のレベルは、例題3の関数で計算した後、そのレベルより上でもっとも近いものだった。
よって、例題4は変更する。
例題4)引数にレベルと分類を受け取り、それに最も近い悪魔を返す関数select_daemonを作成せよ。
※レベルと分類が完全に一致する悪魔を返すのがよいが、それがなければ、レベルを一つ増やして再検索せよ。これを見つかるまで繰り返す。
※レベルが100以上で検索されるようであれば、nilを返せ。








悪魔表を使う。
function select_daemon(category, level)
if level>99 then return nil end -- デフォルトでレベルが100以上の悪魔は存在しないので、自動的に失敗。
for i, daemon in ipairs(daemons) do -- daemonsは悪魔表テーブル
if daemon.category==category and daemon.level == level then -- カテゴリーとレベルが一致したならば、
return daemon -- その悪魔を返す。
end
end
return select_daemon(category, level+1) -- 一致する悪魔がいなければ、レベルを一つ増やして再検索。
end

446 :
>>441
うーん。考え方の相違だな。
Lua手を出している時点で、シスカマ範囲ではできないやりたいことを実装する目的があるはずだから、
考えるクセをつけよう!練習だ。というより、いきなりガチでLua実装入った方が早いと思う。
他人の出す目的より、自分の目的のがモチベが高いわけで。
ただ、ルールデザイン練習はやっといた方がいいのは同意。
だけど、シスカマ時点でクセついてる筈ってのが俺の持論。これは互いに持論の違いだな。

447 :
>シスカマ時点でクセついてる筈
これは俺も同意だな
出来てないのにLuaやろうって無茶にも程があると思う

448 :
シスカマ覚えられるんならLuaだって大丈夫じゃないの
俺はLua覚えたけど未だにシスカマする気にならんぞ

449 :
立ち絵の着せ替え(オプションで設定した通りに全立ち絵が変わる)ってどうやるんですか?初心者レベルじゃ無理でしょうか

450 :
余裕で出来るけど、説明がやたらめんどくさいから自分で考えろw
とりあえず、今出てる立ち絵データは配列にとっとけ。
オプション画面出るときにそっから判断して画面変わる前に差し替えろ。

451 :
懐かしいな。ひぐらしのなく頃にのスクリプトが、
それやろうとしてたんだよな。
魅音がずっとスク水で過ごすモード。
切り替える部分作ってなかだったんだよね。

452 :
>解像度を変えないフルスクリーン化に対応
これで横にビヨーンと伸びなくなるのかな?

453 :
知らんが、何処からの引用だ

454 :
>>453
高橋氏のツイッターだよ

455 :
そうなのか
ちなみに最新のは画像伸びないの知ってるよな?

456 :
そうなんだ!教えてくれてありがとう

457 :
>>455
ver2.95だとどうなん?

458 :
>>457
グラボのドライバ設定でどうにでもなると思うよ?

459 :
バックログでのボイス再生機能作ってるけど難しい。

460 :
凝ったことしないなら簡単だぞ。素直に文字変数ログ分用意しる

461 :
$に文字代入してのエンディングリスト作ったんだけど
表示されるのにすごいもっさーとしてしまう
どうすれば軽く表示できるかな?

462 :
バックログでのボイス再生機能の何が難しいって、
テキスト表示単位をページごとにするとタグの読込や改行の動作がおかしくなることなんです。

463 :
menu_click_pageを使うと改行時にタグを上書きしてしまうようなので、
自作フラグで表示単位が1ページごとの場合はクリック待ち部分を回避する仕組みにしたのですが、
そうすると今度は@のあとに改行があっても無視して次の文章が表示されるようになってしまいました。

464 :
>>461
質問の意味がちょい分からんのでやや詳しく

465 :
>>464
エンディングを見るたび表示が変わるエンディングリストを作りたい
最初に$200から$210まで"まだ見ていません"を代入
エンディングごとに$200(〜210) "○○ルートクリア"と代入されるようにして
$200から$210を一括表示すれば、見たエンディングは"○○ルートクリア"
見てないのは"まだ見ていません"と表示される
↑この方法でやってみたけど、パッと表示されず、すごく遅い
もっと軽く出来る方法ってあるの? 初歩的な質問で申し訳ない

466 :
200から210って事はたかだが11個?
Nscが遅いといってもそこまでかかるもんかな?
何か他に余計な事やってたりしない?

467 :
自己解決しました。
menu_click_pageを使うとバグる。
そこで自作する。
まず、pretextgosubラベルへ飛ぶ。
そこで、改ページ待ちではなくクリック待ちの時に、
タグの読込を行わずにreturn。
これで改行時にタグが上書きされることを防ぐ。
さらに、textgosubラベルで、
自作の文章表示単位変数で1ページごとの表示かをチェックし、
改ページ待ちではなクリック待ちの時に、
texecの後にreturnでボタンウエイトをすっ飛ばす。
という方法でした。
ポイントはtexecを挟むこと。これ重要。
これでmenu_click_pageで生じるバグを回避しつつ、
その挙動を再現できる。

468 :
と思ったら駄目だあああああああああああ
今度は普通のモードでタグの上書きが発生する。
どうやらnscの仕様では、
改行時はクリック待ちと同じフラグが立っているらしい。

469 :
と思ったら治った。バグが治った原因がわからないのが怖い・・。

470 :
よし、ここはお前の日記帳だ

471 :
だって誰も反応してくれないんだもん。
苦労したけど自力で完成させたよ。
バックログボイスと1ページごとの表示の両立は、
やってるサークルも少ないと思われる。

472 :
片っ端からLuaの配列にでも放り込んで、改行ごとに適当な印付けりゃいいんじゃないの

473 :
そりゃスルーされるさ
一喜一憂して楽しむのは良いけど
目新しい試みでもないし
どんだけ苦労しようと無関係だからな

474 :
>>471
少なくねえよゴロゴロしてんじゃんw 分かんないならここで愚痴っぽく遊んでないで
コード切り出してうpろだに上げて質問するとか真面目に助け求めれよw

475 :
Lua連携のおかげで複雑な処理も大半は機械的に解決できるようになったからな。
いや喜ばしいことなんだが

476 :
NScripterが標準でgosub備えてるのって結構大きいことだよねと今さら思った

477 :
吉里吉里にはないの?

478 :
制御系は普通にマクロがあるぞ

479 :
お年玉でフォントきれいに+袋文字くれないかなあ

480 :
今度のコミケで出た全年齢向けのやつで、
Nスクなのに袋文字使ってるのあるね。
dllフォルダ開けたら、NSFukuro.dllってのが入ってた。

481 :
DLLとか難しいのじゃなくてデフォで出来るようにして欲しい;;

482 :
作るならともかくDLL利用のどこが難しいのか。フォルダにぶち込んで参照させるだけじゃない
俺はgosubそのものよりgosub (文字変数)がありがたいかな

483 :
今敢えてNスクでゲーム作るメリットってなに
動作も軽くて吉里吉里ほど複雑&特殊じゃないって感じかな
あんまり凝らないならLMもいい感じだけど

484 :
俺が使いやすいから。以上。

485 :
>>483
過去に自分が作ったシステムのソースを流用できることくらいじゃない?
これから作り始める人には、Nスクを選ぶメリットは無いんじゃないかな。
パッと見で文法が好みだった、とかそういう人以外は。

486 :
そーいや好きなサークルがNスク使ってたからというのが最初の理由だな

487 :
>そーいや好きなサークルがNスク使ってた
こういう選び方がいいと思う

488 :
吉里吉里は自由度が高いのはいいが記述が独特かつ面倒臭すぎる
普通のADV作るだけならNスクで十分
単に吉里吉里で開発したってだけでNスクのデフォ設定より劣化した
システムの同人ゲーも多い

489 :
>>7
まあこのスレにいる人はだいたい利点分かってるよ

490 :
そのまま使えるサンプルがない

491 :
作ってサンプル配布する活動すれば
君が思うような環境が整備されるよ

492 :
サンプルサンプルって、何のサンプルなんだよ。

493 :
800*600で機能全部入りのサンプルスクリプト。

494 :
>>493
金払って作ってもらえ。

495 :
その手があったか!

496 :
>>492
派生なんて幾らでもあるじゃん
何いってんの?

497 :
Nスクって半角英字って打てないの?

498 :
その程度もググれない人にはね

499 :
動画再生しながらテキスト進めることってできるの?

500 :
movie命令の説明読めよ。
また、非同期はできるけど、動画のサイズとか調整しないと、テキストウィンドウが隠れるけどな。

501 :
http://www.dotup.org/uploda/www.dotup.org2526075.jpg
すみませんメニューバーからフォントを消したら
こんな風になっちゃったんですけど何でしょう?

502 :
>>501
NScripterのバージョンはどれ?
再現する最小のスクリプトは?

503 :
>>502
バージョン2.96
*define
killmenu 1
game
*start
click
end
最初は隠れてるんですけど、メニューバーの下をマウスカーソルでなぞると出てくるんです

504 :
なぞらなくても終了の横に「MS ゴシック」って既に出とるな
デフォのシステムはautosaveoff付いてsaveがまともに働いてないとか放置気味な傾向にあるけど
どっちもシスカマやってるのには無関係だしな

505 :
c_lookbackは存在しないって何がアレなんだすか?

506 :
>>505
何の話?
書きこむならしっかり書きこめよ。
それともスレ違いか?

507 :
どうせ誰かのコードをパクろうとしたら、自作関数でつまずいたんだろ。ほっとけ

508 :
ツイ見たら来月以降にNスク2来るみたいだ
楽しみ

509 :
ささっと移植できるなら速攻乗り換えるけど、互換性低めなら使うのしばらく後かな。Luaなら劇的に早いだろうしさっさと乗り換えたくはあるが

510 :
twitterやってんの?
今のサイト持ちはtwitterだのSNSだの情報発信があちこち分散してて追うのがだるい

511 :
パッチ当ててもセーブデータ保持
テキスト表示の非同期化
2D描画の軽量化
ズーム処理を綺麗に
アニメにレイヤー効果
袋文字利用
テキストレイヤの複数化
埋め込みフォント利用
現状の不満はこのあたり。ここが改善されたら移る。

512 :
画像に関してなら
ぼかしフィルタが欲しいかな

513 :
袋文字があればそれだけで・・・!

514 :
NSFont.dll+本体太字で現れる極太文字に憑かれちまった俺としては袋文字そんなに人気なのが不思議でならない

515 :
袋文字だとメッセージ窓をおされにできるから

516 :
オサレとか知らんけど
使えないとツールとして古くさく感じはするかな

517 :
NScripter2に期待

518 :
nscripterでげーむつくったら「ださい」って……ひっく……
いまは「きりきり」だろって、だれもやってくれないの……
もういじめられなくて、すむの…?

519 :
きりきりももうふるいやろ
これからはスマホたいおうせなあかんで

520 :
iOSで動かすにはスタティックリンクでアプリ一つにまとめられるようにしないとな

521 :
旧ボタン命令で複合ボタンがっつり定義してるスクリプト(読み込み0.5秒くらい)って新ボタンに置き換えたら体感速度変わる?

522 :
自分でやりなよ…

523 :
>>521
マジレスすると、ボタンに使う画像の読み込み+描画が一番時間かかる。ボトルネックはそこ。
ボタン命令の列挙〜ボタン待ち実行の部分の新旧の違いを体感するのはポンコツPCでも難しい。
ただ、ボタンを押したと判定する時の感度は圧倒的に新ボタンの方がいい。

524 :
古い講座見て作ってたら透過png使える事この前知ったわ('A`)
これまでの苦労が…

525 :
なんでわざわざ古いの見るんだよw

526 :
軒並みPNG前にあった講座ばっかだから
分からんでもないけど調査不足としか言いようが無いなw

527 :
ですよねー('A`)
Oggや新ボタンは使ってんのになんでpngは気づかなかったんだろう

528 :
NScripter2の発表が目前の今、
死化粧にしかならんかも知れないけど、
マニュアル類をもう一度編纂したいなあ。

529 :
今月“以降”でしょ?
またいつもの自分を追い込むために
言うだけいって出ないって流れかもしれんから
やりたければやれば良いと思う

530 :
そういやそうだ。まだ出るとは限ってない。
皮算用はするべきじゃなかったな。
なんか作るわ。

531 :
基本的なワイドスクリーン用のテンプレってないかしらん?
いくつか種類あってもいいかなって思うんだ

532 :
特にNScで持ちかけるような話じゃないな
16:9 ワイド液晶 解像度
あたりでググればいくらでも画面サイズのサンプルなぞ分かるじゃん

533 :
ウインドウ前提なら変則的なサイズの方が好きだ

534 :
XP以降版、ワイド画面でAlt+Enter全画面にしたらすごいことなる

535 :
特に不都合無いけど何がすごいの
それと最新版なのか?
あとと画面サイズは?

536 :
>>535
自分のモニターが古いのが駄目なんかな?
なんか高速でウィンドウサイズ→全画面を繰り返して
パカパカした感じになって操作不能になる
バージョンは最新版
画面サイズの横幅が800、640以外にするとなるみたいだ
=======================================
;$V2000G1000S700,600L10000
*define
game
*start
あああああああああ@
いいいいいいいいい。\
かきくけこ。\

537 :
>>536
試したらこの指定サイズだと同じ症状になったけど
モニタが対応してない解像度を指定してるか
ドライバの問題じゃないの
つかこれって、何を想定してこのサイズなの?
あまり見かけないサイズだと思うけど
それと、うちで使ってるモニタって未だに4:3だけど
ワイドサイズも問題なくフルスクリーンになるよ

538 :
なんかいつもアーカイブ化してもうまく読み込めないんだけどoggやbmp入れてるから?ns2でやってる

539 :
>>538
ns2だと、oggが鳴ってる時にbmpが読み込めないバグ(ていうか仕様?)が
あるっぽい。
bmpをpngに差し替えるか、nsaを使えばOK。

540 :
ns2をどうしても使いたいなら、
アーカイブを複数に分割するのもあり。
画像と音と、複数のシステムが同じアーカイブを開こうとするのがエラーの元みたいなんで、分けてやればいけるっぽい。

541 :
nscrplgのサイトがなくなってたのでアップローダにNScripterDSの最新版だけあげといた
ttp://nscuploader.pa.land.to/cgi-bin/src/n_0243.zip

542 :
ん?strspって文字変数反映されないの?

543 :
>>541
readme.txtに二次配布おkって書いてないようだけど
大丈夫なん?

544 :
>>543
NScripterといっしょに配布ならいいってことなのでサンプルつけて上げ直した
同梱のアーカイブからプラグインを取り出して実行してね
あと取り急ぎだからバグあったらごめんね
ttp://nscuploader.pa.land.to/cgi-bin/src/n_0244.zip

545 :
>>544
乙であります

546 :
どうやらサーバ料金未払いだったっぽいね
nscrplgのサイト復活したよ

547 :
稀によくある事態だな

548 :
鯖代払って続けてくれるのはありがたいね

549 :
今や有料鯖じゃないと消える時代になったからなあ。

550 :
国内geicitiesが単独で続いてるのだってほとんど奇跡だし、infoseekすら消えたからなあ……

551 :
汚いYahooだなぁ

552 :
作者さんはまだここ見てるかわからないけど、anm.dllというプラグインで、再生終了を待つ命令が欲しいです。spwait的な。

553 :
NScripter2作るの飽きてるっぽいな

554 :
商業で初採用されるって書いてたからこれからっしょ

555 :
というかマニュアル作るのがとにかくめんどくさいっぽいし

556 :
現行NScripterのマニュアルも有志募集しちまえばいいのに……。
公式でリンクすれば、あの作りかけ感や放置っぷりが多少マシになりそうな。

557 :
募集すると命令追加するたびに
やらさせる「義務」が発生するだろう……
そんなになったら誰もやりたがらないよ
それでもやるってんなら
非公式のやつ使うほうが便利ですよって
認定する程度で留めて距離置かれた方が作るほうも気軽でやりやすいと思うんだけど

558 :
何気なく巡回してたら
今この3つのサイト死んでるな
貴史たま+ME
nscr
君影草工房

559 :
キー情報取得するのにウェイトしない方法はないもんだろうか……ウェイトが発生しなければわざわざLuaに手を出さないで済む場面は結構あるのに。

560 :
checkkeyは?

561 :
checkkey で充分とはいかないからなあ。
マウスのホイール取得は、bexecかluaに頼るしかない。よね?

562 :
isclickのついでに右クリック中判定も作ってくれたら……

563 :
luaでできることはluaでやった方が
開発も保守も楽だと思うけどな
>>558
君影草工房は5年くらい?前からgimite氏のサーバから移転してるよ
自鯖だからか時々つながらないこともあるけど
貴史たま+MEも自鯖だけど一時的なものかはわからない
何にせよNScripter関連の更新は久しく無い

564 :
君影草工房が見れるようになってる
よかった

565 :
暗号化とアーカイブ化してファイルを開くと、立ち絵が表示される場面で強制終了してしまうのですが原因は何か分かりますか?

566 :
>>565
エラーメッセージはある?
ないなら、音声ファイルと画像ファイルでアーカイブを分ければOK。

567 :
そろそろns2ファイルのFAQ入りだな

568 :
nsaとns2ってどこが違うの?

569 :
>>568
ns2はbmpのデコード速度が改善されたがしょうもないバグ持ち
つかもうみんなpngに移行すりゃいいじゃんって思う

570 :
>>569
ありがd
マスク画像作る苦行考えるとpngは便利だよね

571 :
一度透過png使うと割と真面目に戻れなくなる

572 :
というかpng以外を使うメリットがまじでない

573 :
layermessageの引数に変数は使えないの?
良いDLLあるのにこれじゃ何も出来ないよ・・・

574 :
一度文字列に直してから+でくっつければいいんだよ

575 :
>>573
ちなみにどこのdll?

576 :
>>574
さんくす。
文字列で無理矢理くっつけてなんとか実装できたけど
あんまり綺麗じゃないスクリプトだなw
>>575
anm.dllってやつ。
覚え書きにも載ってなかったっけ

577 :
Nスクでdll使うときの基本です。
どうせdefsubでラップするから、同じdllにつき一度しか書かんし気にするな。

578 :
>>540
>複数のシステムが同じアーカイブを開こうとするのがエラーの元みたいなんで
ns2もnsaプラグイン複数使うのはどっちも同じだし
nsaの場合だけ起こらないってのは理屈が通らないんじゃね

579 :
>>578
nsaは内部のファイルをメモリー上に展開してるんじゃね?
ns2は直接読み込んでるから、読み込みカーソルで混乱するんだろ、きっと。

580 :
>>576
質問とは関係ないですが、anm.dll はちょっとした問題があったので修正しときました。
お手数ですがダウンロードしなおしてください
修正個所は 説明.txt の変更履歴を参照してください

581 :
>>552
ごめん。それは単純には実装できそうにないです。
anm.dll への命令として「play_onceが終了したかどうかをNScripterに返す」という動作のものを
追加することはできます。この命令を仮にget_play_statusと呼ぶことにします。
NScripter側で(たとえば0.1秒ごとに)get_play_statusを実行して、再生が終わっているかどうかを判断する
みたいなのならできそうだけど、やっぱりスマートじゃないな。

582 :
>>581
作者さんだ!書いてよかった…
バグ修正お疲れ様です
>play_onceが終了したかどうかをNScripterに返す
こっちのほうが逆にいい気がする…用途が広いから
再生が終わったことを検知できれば、似非spwaitだけでなく、
再生終了後自動でfree、のようなこともできるようになる

583 :
ちゃんと検証してないけど
再生終了時に
キーダウン/アップメッセージを本体ウィンドウに投げるとかすれば
既存のwait系命令で似たようなことができるんじゃね?

584 :
>>580-581
更新おつです
差し出がましいですが、get_debug_initはget系命令にも欲しいかも
セット番号を投げたら0か1で状況を返す的に
それとバグかわからないけど報告
最新版はLuaで使うとdisp後画面がちらつくようです
この現象は1.3以前では起きません
私のスクリプトがアレなのかもしれないですが、一応検証スクリプトあげました(画像を使わせていただいてます)
環境:WindowsXPsp3、DirectX最新版、シングルコア
ttp://nscuploader.pa.land.to/cgi-bin/src/n_0245.zip

585 :
>>584
あるセット番号がすでにinitされてるかどうか返す命令は、そのうち追加します。
ついでに、すでに存在しているセットに初めから画像を登録しなおすreregist(リレジスト)も。
ちらつく件は仕様です。luaやOSやNScripterのバージョンは関係ありません。
1.3、1.4とも、initした直後とfreeした直後は非表示というのが正しい動作です。
ただ、1.3では、freeしないと再度initできないようになってるんです。
アップしていただいたスクリプトのうち2回目のinitには実は失敗してて、
1回目のものがそのまま表示され続けているだけです。
1.4ではfreeしなくても再度initできるようにしときました。
このため2回目にinitした瞬間に一瞬だけ消えてます。
あと、anm.dll関連の話題は別の掲示板とかでやったほうがいいのかな。

586 :
他に話題があるのなら気使うべきと思うが
今は過疎ってるから良いんじゃね

587 :
Nスク用プラグインなんだから、どう考えてもここでいい

588 :
>>585
なるほど、私の認識不足でした
おかしなこといって申し訳ないです
init取得、reregist期待してます

589 :
ついったで知ったけど、
SGEで既に一本ゲームを作っていたとは知らなかった。
どのゲームのことかわかる人います?

590 :
これだからツイッター民は

591 :
皆はXP以降版と2000対応最終版のどっち使ってる?

592 :
とりあえず最新版。特に問題はない

593 :
XP以降版には、wait命令で止まってる間にCPU使用率が急激に上がるという問題がある。
なので2000対応最終版を使ってる。

594 :
ワイドサイズのゲームを作るか作らないかは別にしても
今じゃワイド液晶使ってるの当たり前かだから
フルスクリーン時のクレームがウザいと思うならXP以降版使った方が良いんじゃね

595 :
>wait命令で止まってる間にCPU使用率が急激に上がる
ごめん、これって本当なの?

596 :
>>595
本当。ただしOSによるかもしれない。俺のはWindows7の64bit。
*define、game、*start の下にwait 99999とか書いて試せばわかる。
似たような事例として、ボタン待ちするとCPUが100%になる話が >>391あたりでも出てる。

597 :
>>596
TIPSのログ見てきたが、2011/12/15の更新でCPU使用率のバグ修正っぽいこと書いてあるけど、
それ、今のバージョンでもそうなのか?

598 :
今チェックしてみたら、遅くなった事で話題になった10/15版以外の3つとも
片方のCPU食いつぶすな。win7-64bit使用率52%(2コア)だった。
早さを取るかCPUを取るかってことか。

599 :
おっと、ID変わったが598=597な。

600 :
もひとつチェックしてみた。12/06版から12/15版への更新内容は、
btnwait系は食い潰さなくなったが、waitは食い潰しのまま、という内容だったようだ。

601 :
そうなんだ
waitよく使うから修正して欲しいなぁ…

602 :
wait多用ってクソゲーもいいとこじゃないですかやだー

603 :
ちょっと質問です
bdown(btndown)が有効になるのは、もしかして左クリックだけですか?
下のようなスクリプトなんですが、
左クリックを押しっぱなしにすると$10の値がどんどん増えていきます
でも右クリックだとどうやらbexecで止まってるみたいです
XP暫定版とその前のバージョン、bexecとbtnwaitで試しましたが、結果は同じでした
mov %10,0
*loop
bclear
bdown
bexec $0
inc %10:itoa $10,%10:caption $10
goto *loop
あと、XP暫定版でボタン待ちをしているとPCから高周波?っぽい音がする

604 :
マニュアルの通り、
>左クリックを押し下げたときに処理が戻るように
です。
ぶっちゃけ、bdownは基本的にドラッグアンドドロップを自作する用途用。
右クリックでやる場合は、btimeでループ回しながらcheckkeyを使います。

605 :
>>604
ありがとう
うーんマウスジェスチャー作ろうと思ってたんだけどなー
でもまあトリガーを左クリックにすればいけるかな
それとcheckkeyってキーボードのキーしか拾えないんじゃなかったっけ?

606 :
>マウスジェスチャー
プラグインでなかったけか?

607 :
>>606
知ってるけど、既存の命令だけで自作できるなって思ったから
まあお遊びかな

608 :
>>603
>クリック
クリックは正確には、ボタンを押す動作ではなく
ボタンを押し下げた後、「ボタンを離す」動作を指します。
これはウィンドウズの仕様です。
>高周波音
コイル鳴きではないかと思います。
負荷がかかる処理の時に出る場合があるみたいです。
自分の環境では、吉里吉里でマスクパターンを使ったクロスフェード時に
みょーん♪と音が出ます。

609 :
isrclick需要はいつも心の中に

610 :
まーLua使えってことだろ

611 :
>>608
ボタンを離す動作なのはその方が理にかなってるから慣習的に使われてるってだけで、実際APIには押す離す押し続けると検出方法は一通り揃ってる。
推奨されてはいるがwindowsの仕様ってわけではないよ。

612 :
>>611
ずっと仕様だと勘違いしてました。
試してみたら、
クリックは「離す」のがトリガーになってるけど
ダブルクリックは2回「押す」のがトリガーになってるのね。
ビックリしました。

613 :
isrdownぽいプラグイン作って、うpろだに上げてみたので
よければ試してみてください。

614 :
マウスジェスチャ常用組歓喜来た?

615 :
NScripterオフィシャルガイド 改訂版って新品はどこにも売ってないのね

616 :
つか絶版になってんじゃん
ttp://www.shuwasystem.co.jp/products/7980html/1852.html

617 :
改訂版が絶版……だと……
基本さえ覚えればあとはネット上の講座とかリファレンスでどうとでもなるとはいえ
初心者のころは世話になりっぱなしだったなあ

618 :
anm.dllが進化してるー
・・・アニメの上下左右反転ができるともっといいな(チラッ

619 :
一週間前ぐらいからnスクを学び始めた初心者です。あちこちのnスクサイトからリンク張られてた
貴史たま+MEさんのサイトが消えてて困ってます。旧サイトの方はwebアーカイブで少し見られたのですが
肝心の雛形サンプル(システムカスタマイズサンプル+オプション)が手に入りませんでした。
もしも持っている方がいらっしゃいましたら、ロダにあげて一つ譲って頂けないでしょうか・・。
失礼だとは思いますが、どうしても欲しいので、何卒お願い致します

620 :
Twitterで鯖落ち報告してたな
リプライ飛ばして直接コンタクト取ってみたら?

621 :
オフィシャルガイドはさすがに内容が古くなっちゃったから仕方ないよ

622 :
NScripter2の形が見え始めたし、
もういい加減バージョンアップもないだろうから、
最終バージョンの入門テキストが欲しいよね。

623 :
最終バージョンの変形ウィンドウ時最大化バグと、waitのcpu食いつぶしだけは改善して欲しい

624 :
>>620
わかりましたありがとうございます。連絡がつくかわかりませんがやってみます。

625 :
NSc2楽しみだなぁ

626 :
>>625
それに伴ってマニュアルも売られるといいね
つか売ってくれ

627 :
最近Ns以外のエンジンもさわり始めたけども、
Nsの書きやすさに再度気付かされた……

628 :
命令文並べるタイプならNScr最強に分かりやすいと思う。
Luaが関数型だからよけい連携やりやすい。

629 :
実際に書く段の省エネっぷりはNscがダントツだよな。

630 :
ずっと吉里に劣ると言われ続けてるけど
2になったら勝てるんだろうか

631 :
劣るとか考えたことないけどな
ルビ機能は使わないからNscが組みやすくていい
つーてもLuaとかさっぱりなんだが

632 :
更新された時
Nスクは起動ファイル変えるだけで済むけど
吉里吉里の環境移行がメンドくて使ってられん

633 :
>>630
そもそもNScrと吉里吉里はエンジンの設計思想違うし、劣るもなにも違う道具だろと。
演出やシステム弱いと思ってたら、大手サークルだとなにげに頑張ってるし。
NScr2は吉里吉里と同タイプの設計思想みたいだけどオープンソースにはしないだろうな。
でも別にしなくていいし、tjsよりLuaが好きだから楽しみにしてる。

634 :
NScripterでExcelデータ使えるみたいなの読んだ記憶があるけど
会社の仕事でNScr使おうかと思ってみたりする
Excelの関数にしてもVBAにしてもなんかやりたいことを実現する手順が
なかなか見えてこないんだけどNScrならすぐスクリプト思いつく
数値を複数条件抽出して変数に代入して計算して
さらに条件で分けた場所や色大きさで表示するだけなんだけど
Excelのみだとそんな簡単な仕組み作るのもめんどくさいのよね
ただ他の人にはNScrのスクリプト分からんだろうから
Excelのように使わせられないし
自分の業務用かな

635 :
CSVなら使えるけど、あれもダブルクォートに対応してないなんちゃってだからなあ。
最近のExcelの使う、xlsxなら、中身はxmlだから、どんなツールでも扱えるだろうけど。

636 :
あそうだCSVだったっけ
試してみようかな
それとPOWER POINTの代わりにスライドショーツールとしても
使えるかもしれないと思ったりする
POWER POINTでできないエフェクトやアニメーションいくらでも作れるし
素材の解像度でバレるかもしれんけど
パワポパワポいう人も最近減った気もするけど

637 :
画面の大きさも変えられるようにようになったんだから、
素材に気を遣えばばれることはないんじゃない?

638 :
Nスクだと、スライドショーを進め過ぎちゃった時に、
巻き戻しができないんじゃないかな…。
相当シスカマ詳しければ、箇条書き項目一つずつの
巻き戻しもできるだろうけど…。
あと、発表しながら、重要な項目にマウスで線を引いて強調する、
みたいなことがリアルタイムでできないと思う。
プロジェクターがない場所でプレゼンする時に、
作ったスライドショーをすぐプリントして配れる、
ってのもパワポの利点だし、
普通に考えればパワポの代替品にはならないと思う…。
無理してでも使いたいなら止めないけど…。
やろうと思えばできるのがNスクだし。
Excelの替わりに使うのも、プライベートでやるなら
いいと思うけど、その仕事をのちのち誰かに引き継ぐ必要が
出てきた時がやばいよね。
大人しく業界標準のアプリ使えるようになっといた方が無難だと思うけど。

639 :
csv使うと色々出来るのは確かだがプレゼンに用いるのはさすがにやめといた方がいいぞ……

640 :
選択肢で質問です。
2つの異なる場面で、ある選択をすると同じラベル(結果)になるのですが、
多重定義になります。
違うラベルで同じ結果を書けば済むのですが、回避する方法はあるのでしょうか?
場面1、
select
">>森へ行く",*s_01,
">>海へ行く",*s_02
場面2、
select
">>日本へ行く",*s_03,
">>アメリカへ行く",*s_02
海へ行く、アメリカへ行く、の選択肢先(内容)は一緒、の場合などです。
お願いします。

641 :
*s_02を二回作ってたりしない?

642 :
アメリカへ行くを
*s_04にすればいいのでは

643 :
多重定義ってエラーなら*s_02が二つあるか、
(スクリプトファイルを複数に分けてる場合、全部みてみないと))
あるいはselect文の記述自体間違ってて、飛び先の*s_02がラベルと判断されてるとか……。

644 :
*s_02 っていう同名ラベル二つ作ってる以外原因はないからエディタで検索しる。

645 :
>>640
>2つの異なる場面で、ある選択をすると同じラベル(結果)になる

アメリカへ行くを*s_04にして、飛び先に
「*s_02」「*s_04」を連続で書けばいいんじゃない?

*s_02
*s_04
(*s_02、*s_04に共通のテキスト)
goto *次の飛び先ラベル

こんな感じで。
これなら、*s_02に飛んでも、*s_04に飛んでも表示される内容は同じ。

多重定義(同じ名前のラベルが二つある場合)は、
たしかNスクをダブルクリックして起動した時点で
エラーが出た気がする。
そうなるなら、スクリプト内のどこかに同じラベル名があるはずなので、
マルチファイル検索ができるエディタで調べるべし。


646 :
色々助言、サンクスす。
645さんの方法で行けそうです。あざーっした。

647 :
それで通ったってことは、多重定義エラー落ちで起動出来ないって話じゃねえのかよ(´゚д゚`)
多重定義とか言うなw

648 :
もしかしてこんな風に書いてない?
*s_02 ;海へ行くの分
*s_02 ;アメリカへ行くの分
 (海、またはアメリカへ行った)
1個で充分だよ。
*s_02
 (海、またはアメリカへ行った)

649 :
誤解されるのは嫌なので言っておくと、多重定義エラー出たから、質問させにもらいに来たんだ。
起動出来なかっつうの。
それを回避しようとすると、同じ文章をラベル毎に2度書くの?と思ってたから助かりました。

650 :
名前欄でsageた。すみません。

651 :
いや、その、まぁ…なんだ
もやっとさせるのが上手だね君

652 :
相談文面が酷いっつうの。
理解出来てない部分を思いこみで省略されるくらいなら、
スクリプトそのまま上げてくれた方が助かるんだわ。

653 :
文字スプライトが改善されると良いなあ

654 :
意味不

655 :
>理解出来てない部分を思いこみで省略
これ初心者の人に多いよね

656 :
そして上級者は何も語らない

657 :
上級者は技術開示してほしいな
何サークルか独特のカスタマイズしまくってるのみかけるけど
何やってんだか全然わかんねえ

658 :
手っ取り早く一通りの知識欲しいなら
絶版のあどばんすどNScripterでも買っとけ

659 :
あの程度は誰でも出来るだろ

660 :
必要だからカスタマイズするんであって
カスタマイズしたいっていうだけじゃあやふやのふやふやふよふよで話にならん

661 :
>>659
その辺の情報を理解してるなら関連付けて
あちこちにあるソース読めるだろ
読めないなら
焼きまわしてるってだけで
実際には出来てない

662 :
焼きまわし?

663 :
>>654
某ツールと比較したくは無いんだが、文字スプライトの機能がアレでなあ・・・
2ではせめて境界線機能はつけて欲しいんだよ

664 :
プラグイン使えばいい

665 :
2で文字周りのプラグイン使えるの?

666 :
2の話なんてしてネーよ

667 :
うるせーばか

668 :
ツイート見てるとノベルゲーよりFPS?みたいの作るのがメインになるのかな
難しそうでついていけるか心配

669 :
最近じゃ、ただの立ち絵ゲーの需要が少ないんだろ。

670 :
3Dと2Dは別なんでしょ?
もうすぐ2Dのが出るらしいからまぁ期待しようや

671 :
文字きれいになって欲しいな

672 :
立ち絵PMD使えたら、捗るよねえ、きっと。

673 :
NSc2がそろそろ来るっぽいね

674 :
動かしてる2つのスプライトがあるとして
スプライト同士が、重なっている状態と、そうでない状態が分かる方法ってありませんか?

675 :
>>674
Lua使わないと無理かな(確かNすくの方にはスプライトの位置を取得する命令なかったはずなので)。
でも簡単だよ。NSSpGetPosで位置を、NSSpGetInfoでサイズを取得して、そこから割り出せばいい。

676 :
674です。すいません、補足します
>>675
そのNSSpGetPos、NSSpGetInfoで調べていたら
下のサイトの「スプライトの位置取得・重なり判定」で
それっぽい事が、Luaで出来るのは分かりました
http://www.tktkgame.com/nsc/index.html
しかしながらbtransのように、透過部分が重なった時は、反応して欲しくないのです。

677 :
そういう機能は用意されていないと思う
スプライトの種類(組み合わせ)と大きさとリアルタイム性の要求によって
やり方は変わってくる
プラグインを作るのが一番頭を使わないと思う

678 :
luaレベルでできそうな方法なら
複数の円や長方形で輪郭を近似して当たり判定
あたりが妥当じゃなかろうか
STG関係で解説があると思う

679 :
>>677
>そういう機能は用意されていないと思う
なるほど……分かりました。ありがとうございます。
プラグインは考えてみます。
>>678
>複数の円や長方形で輪郭を近似して当たり判定
確かに多少手間かもですが、限りなく近い衝突判定は得られそうですね。
ありがとうございます。 試してみます。

680 :
まあ実際のSTGがそういう方法(当たり判定)取ってる以上一番現実的な解決策は長方形&円の判定なんだろう

681 :
円と円の判定が一番楽やね。計算少ないし

682 :
一番簡単なのは菱形(というか45度傾けた正方形)判定だと思うけどな。

683 :
新しいブログが出来たぞ
ttp://naokitakahashi-dev.blogspot.jp/
こまめに発信し続けてくれるだろうか

684 :
ドキュメントは今まで通り書き殴りで済ますっぽいな

685 :
setwindowを上書きしたいんだが、色コードってどうやって取得もしくは無視すればいいんだ?
defsubでもluasubでも#CCCCCCの取得で詰む。

686 :
ウィンドウの色コードって今は変数指定できるの?
昔はウィンドウは変数指定できなくて
分岐の力技で乗り切るしかなかったような

687 :
色コードを完全に文字列で扱うってのはダメ?
書式は若干変わっちゃうけど汎用性はあがると思う。
*define
defsub setwindow
game
*start
bg #00FFFF,1
\
mov $10,"#FFFFFF"
setwindow 8,16,20,23,26,26,0,2,20,1,1,$10,0,0,639,479
\
setwindow 8,16,20,23,26,26,0,2,20,1,1,"#00FF00",0,0,639,479
\
end
*setwindow
getparam %10,%11,%12,%13,%14,%15,%16,%17,%18,%19,%20,$100,%21,%22,%23,%24
_setwindow %10,%11,%12,%13,%14,%15,%16,%17,%18,%19,%20,$100,%21,%22,%23,%24
return

688 :
めんどくさけりゃベタ塗りの画像使ってもいいんだぜ

689 :
通常の合成(スプライト)と乗算合成(テキストウィンドウ)だと雰囲気違うけどね

690 :
大きな画像を表示させると処理に負担がかかると思いますが、
PNGの透明部分も描画処理の対象になるんでしょうか?
つまり、大きな透明画像を表示した場合も、同じように処理に負担がかかるんでしょうか?

691 :
実測してみりゃいいんじゃね。
まぁ負担かかると思うけど。

692 :
>>691
どうもです、ちょっと組んでみます。
透明部分もやっぱり再描画扱いになるんですかね

693 :
透明画像も同じように負担かかると思います
大雑把に言って、
ファイルサイズを小さくすると、読み込む速度を稼げます(lsp命令とか)
使用するスプライトの枚数を減らすと、処理の速度を稼げます(vsp命令とか)
画像の大きさ自体は、それほど負荷に影響ないと思います
例外的に、テキストウィンドウは小さいほうがメリットあると思います

694 :
>>692
なるよー。draw系で何か直接描画した後に、透明pngをlspしてで試してみ。
範囲分かるから

695 :
>>693
>>694
なるほどーありがとうございます!
勉強になります!

696 :
NSc2は袋文字とグラデーションがあるので嬉しい
楽しみ

697 :
あれ、vspって画像サイズが速度に影響しないの?勘違いしてたわ俺
まあ読み込み速度と比べたら表示の切り替えにかかる時間なんて微々たるもんだが

698 :
速度という点ではスクリプトの解析も
用途によっては馬鹿にならないくらい遅い
調べてはいないが
C++のNスクよりLuaのNスク2の方が速くても不思議じゃない

699 :
厳密にいえば差があるかもですが
下のスクリプトでテストした感じでは、有意な差はないみたいでした
*define
defsub count
game
*start
saveoff:erasetextwindow 0:mov %20,32000;ループ回数
画像その1
count "image1.png";比較画像その1
br
画像その2
count "image2.png";比較画像その2
br
比較用ループ
resettimer
for %10=0 to %20
next
gettimer %10:%10\
end
*count
getparam $10:lsp 10,$10,0,0
resettimer
for %10=0 to %20
vsp 10,1:vsp 10,0
next
gettimer %10:%10
return

700 :
printしなきゃ当然な気もするが

701 :
ありゃ、ほんとだ…
計測してるのがスクリプト解析時間っぽい
vsp等でトリプルバッファに描画して
printでオフスクリーンに転送してるのかと勘違いしてました

702 :
vspなどは表示フラグの操作だけで、printでオフスクリーンに描き込んでいるっぽい
テキストウィンドウ更新のタイミングで、テキストウィンドウの範囲または全画面の
オフスクリーンを更新して、その上にテキストを描画していってるっぽい

703 :
画面を描き込んで(フェーズ1)、表示する(フェーズ2)という2つを分離して扱えない
文章は、windowbackの設定に関わらず常に一番上にくる
文章の上に半透明のスプライトをかけることはできない
といった特徴があるみたいです
また勘違いしてたらすみません
長々と失礼しました

704 :
面白かった。乙。

705 :
これ吉里吉里あたりに住んでた人?

706 :
で、NScr2は今日中に公開されるのかね

707 :
俺もそれは思うが
無理しなくていいのでとも思う
31日までにと書いちゃったものは仕方ないけど

708 :
Twitter見てる限りできそうではある

709 :
はよ新しいので組んでみたいな
すっごいわくわくする

710 :
無印→2のコンバートツールが欲しい

711 :
多分ツールもNScr2で書けると思う

712 :
NScr2、一般変数は記号無しか…。なにか記号があったほうがわかりやすい気も…。
あと、文字列変数には$使えた方が中に何が入ってるか一発でわかっていいのに…。
行頭からルビの場合は、{は半角文字なので>で始める必要があることに注意、
ってのも面倒くさそう…。
あとでまとめて変換する形になるのかな。
return ラベル名が残ってたのは良かった。
今まで通り、ラベル名に文字列変数も使えるみたいだね。
do loopは便利そう。
代入が「=」、条件比較が「==」になったから、
NSスクしか使ったことない人はこのへん注意しないと
エラーになりそうだね。
色指定はRGBAじゃなくてARGBか…。
音声ファイルはOGGのみ、っていうのは面倒くさいな…。
SE素材ってMP3とかWAVになってるの多いし…。
あと、でかいムービーはやっぱり生で置くしかないのか…。
スプライトは番号でなく文字列指定…。
まぁnumaliasでスプライト管理してた人には関係ないね。
しかし、描画系命令はたくさん追加されたなぁ。
リアルタイム系のゲームは前より作りやすくなったのかも。

713 :
とはいえ変数にスコープ出来たのは大きいよね。
これで安心して関数のやりとり出来るわ。
今までスクリプト配布しようにもバッティング怖かったし。

714 :
公開されたか
さっそくいじってみよう
てかチェックの早い>712ありがとう

715 :
新しいエンジン、CPU使用率がえらく上がった(当方シングルコア環境)
これはしょうがないのかな……

716 :
ちょっとすみません、2についての質問なんですが・・・
ループのcontinueって、nextかloopの直前まで飛ばすって命令でいいんですよね?
でもなんか下のスクリプトだとexitと同じにしかならなくて???になってます
なんか間違ってますか?
for %i = 1 to 10
if ((%i mod 2) == 0) then continue endif
cprint %i
next
;結果→1になる。13579でなく。どうやら2の時点でループを抜けてるらしい。

717 :
コルーチンでねーの?と思ったら、NScr2BASICの方か……

718 :
ふつーにこれでね?
http://ja.wikipedia.org/wiki/Continue%E6%96%87

719 :
>>716
試してみたけどexitの動作みたいね
do whileで使うとcontinueとexitがちゃんと機能するみたい

720 :
クリック町が%pって書いてあったけど、普通に表示文として解釈される
いままでの@や\と違う使い方なんだろうか?スクリプトをざっと%pで検索したけどわからなかった

721 :
>>716
ここあんまり見てないから報告してねってブログに書いてあったよ

722 :
>>721
教えてくれてありがとう、今見てきました
自分の組み方のせいかと思ってたから躊躇しちゃったよ
いろいろ答えてくれた人もありがとうございました
あと>>720の%pはほんとになんなんだろ

723 :
つい最近nscripterに触れ始めた者なのですが、
解像度を1024*576にしてフルスクリーンにすると吉里吉里では綺麗に全画面になったのですが、
こちらではびろーんと横長に画面が変形してしまいます
ver.2.96でまだ以下のような簡単な構文しか書いていません
;$V2000G1000S1024,576L10000
*define
game
*start
bg "bg.jpg",0,0
以下単純な文章
これは簡単に直せる問題なのでしょうか?
今回はこちらで制作を頑張ってみたいのですが、調べてみてもこの問題の解決策が見つけられませんでした・・・
どなたかご教授お願いします・・・

724 :
>>720
ブログで回答出てた
>>723
うち 4:3の環境だけど問題ないなあ
グラフィックボードの設定によってそういう現象が起きるって過去ログにあった気がする
でももうほんとにわからないなら高橋さんに詳しい環境と状況を連絡してみて
あそうだ
bg.jpgのサイズはどうなってますか? bgファイルは指定したサイズに合わせて作らないとだめだよ
あとセオリーとして「画面サイズ指定を先にする」てのがあるから一応やってみるといいかも

725 :
ごめん連レス
指定したサイズっていうのは、Sx,yで指定したサイズのことです

726 :
>>723
うちの環境(1024x600)で試したけど問題ないです
同じver2.96でも微妙にリビジョンの違うのがあるみたいなので
一番新しいver2.96をダウンロードしてみるといいかも
あとはグラフィックボードの設定くらいしか思い浮かばないです

727 :
ver2.95だけど俺も横長になる。win7、NVIDIA GeForce GT 335M
一昔前のサブのXPだと普通に表示された。

728 :
NScr用のプラグインってNScr2にも使えたりすんの?

729 :
普通に考えたら無理だろうな

730 :
スーパーファミコン用の周辺機器を
プレステに繋ごうとするようなものだからねぇ…

731 :
もうみんな新エンジンで作ってんの?

732 :
仕様変更やバグ取りがある程度進んでからでないと、
せっかく組んだスクリプトの修正を余儀なくされたりしそうだしなぁ…。
あと、新エンジンに標準で用意されるUIがどんなものかを見てみないことには…。
標準システムがかなり使いやすければ、わざわざイチからシステム組むのも無駄だし…。

733 :
売り物にβ版を使うのはないな

734 :
NS2のボタン仕様で、
ツクール系ゲームの基本仕様みたいに、
F4=全画面切り替え
F5=ウィンドウサイズ切り替え
F12=ゲームリセット
みたいのがあると嬉しいなぁ・・・

735 :
>>734
ウィンドウサイズの変更以外は自分で作ればできる
1でも2でも

736 :
確かに自作でもできますが、高橋さんの日記で、
>ボタン機能時、特にそれらに機能を割り当てていないときに、カーソルとリターンとスペースをボタン移動と左クリックと右クリックに割り当てる→デザイン時の手間が増えないやり方を思いついた。
とあったので、その「機能を割り当てていない」時の機能作るのなら、ついでにと思ってしまいました。
全画面でエロゲ中、強制終了したくなる時あるなーなんて……いや、失礼しました。

737 :
既存の割り当て方に当てはまらないボタン機能の固定化は
ウザがられるだけ

738 :
高橋直樹開発日誌: 更新予定メモ
http://naokitakahashi-dev.blogspot.jp/2012/09/blog-post.html
他のサイトや掲示板は見てませんので、よろしければバグ報告はこちらにももらえると、対応が早くできて助かります
だってさ

739 :
Nスク2は既読判定どうなってるのかな
Nスク1では一度読んだ文章なのにスキップとまったりしてたけど

740 :
>>739
それは未読のコード行にひっかかって止まっただけだろ……

741 :
牛小屋消滅?

742 :
Nスクの拡張スプライトを使いたいのだけど
senzogawa先生のブログだと
拡張スプライトは必ず通常スプライトの上に来ると書いてあるけど
どうも、いろいろ触ってると必ず通常スプライトの下に来てるっぽいんだけど
これは、途中で仕様が変更されたという事ですか?
ちなみにググっても、それらしい記述が無くて困ってる
自分が使ってる本体は2000対応最終版です

743 :
拡張スプライトの件ね。
あれは、テキストウィンドウの前に全部来るのが正しい理解。
だから、windowbackとかでテキストウィンドウの表示順をいじってると、
拡張スプライトもそれに従ってついてくる。
スプライト(若)-拡張スプライト-テキストウィンドウ-立ち絵-スプライト(老)-背景の順番ね。

744 :
テキストウィンドウの前じゃなくて真後ろでしょ
humanzやwindowbackを指定しない場合、
立ち絵はlsp 20 辺りの階層に指定されてるはず
テキストウィンドウ-拡張スプライト(0-255)-スプライト(0-19)-立ち絵-スプライト(20-999)-背景


745 :
拡張スプライトの件ありがとうございます
senzogawa先生の所にもTipsにも他の講座にも
この仕様が、ちゃんと書いてある所見つからなかったから
とても助かりました!

746 :
で、拡張スプライトが最前面に来る事前提で
スプライト拡縮しながら画面上移動する演出作ってたから
今完全に詰んでる
これ拡張スプライトの表示階層を変更する命令とか無いのかな
オワタ…オワタ…

747 :
それで昔、公式掲示板で要望だしてみたが、今はスパムで埋まってるYO

748 :
良く分らんけど
要望出さなくても
humanzとwindowbackで対応出来んじゃねのか?

749 :
調べてみたらlsp2zという命令を実装すると予告があって
そのまま例によって忘れ去られて今に至るようだ

750 :
実装見送っただけじゃね
そもそもNSc2開発中なのに命令追加するとも思えん

751 :
当時は2なんて影も形もなかったんだから
いつものように、そのまま忘れてしまったまま数年経ってLua導入と2の開発始めたんだろう
他にも別ディレクトリにあれば複数同時起動とか予告されたまま消えた機能いっぱいあるしな

752 :
制作中スクリプトを全くいじらずNスク走らせて
毎回、違う症状が出るのは、どういうミスしてる時なんだぜ?
症状1
・何の問題も無く予定通り動く
症状2
・特定のスプライトが表示されない
 スプライトが消える以外は一応予定通り動く
症状3
・Microsoft Visual C++ Runtime Library
 のダイアログがアプリが出て落ちる
スクリプト一切触らず、nscr.exe を起動して実行してるだけで
上3パターンの症状がランダムで出る(envdata関連は毎回消してる)
タイマー系の命令は一切使っていない、プラグインも使っていない
bgmはogg 効果音はdwave鳴らしてる

753 :
まず落ちる箇所特定して、素材の作り直しとか試してみれ

754 :
>>752
> 制作中スクリプトを全くいじらずNスク走らせて
エンジン走らせてからのデバッグ作業も、同じことしてるのに、ランダムにその症状が出るんだよね?
だったらスクリプト晒したほうが早いよ
とりあえず2は単純な番号指定ミス、3はスタックオーバーフロー(gosubとreturnが対応してないミス)だと思う

755 :
配列って線もあるな
使ってるか?

756 :
もしかしてスプライト番号999番より後の、たとえば1000番とか使おうとしてねーか?
それやると症状1 症状2 症状3 全部起きるぞ。
もしそうならマニュアル読めよとしか言えんがw

757 :
ありがとう。
あれから、頭捻ったんだけど、結局原因わからなくて
仕方ないから該当部分をゼロから作り直したら
症状2は発生しなくなって基本的に想定通り動くようになった。
多分、どこか間違ってたと思うんだけどどこが間違ってたか結局分からず。
ただ頻度は低下した物のやっぱりまれに
3の「Microsoft Visual C++ Runtime Library」が出て本体が落ちて困ってる。
出るのは同じ場所なんだけど発生がランダム
同じ操作3回くらいで落ちる事もあれば20回以上やって安定してる事も。
とりあえずデバッグウィンドウ開いて該当操作繰り返して落ちてくれるの待ってるけど
全然落ちてくれない手が疲れて死にそう
>>754
>スタックオーバーフロー
そうかなと思ってgosubとreturnがわざと一致しない状態を作ったら
エラーが「gosub文のせいでスタックが溢れました。」というエラーが出て
「Microsoft Visual C++ Runtime Library」みたいなダイアログが出る
という事は無くて症状違いで悩んでるYO
>>755
配列は使ってます
ただ該当部分で配列データの参照と書き換えは行っていません
>>756
スプライトは使ってたから症状2が出てたのは、そのせいかも。

758 :
>>757
は? ほんとに1000番以降使ってるのか? なら原因は完全にそれ。0〜999番に置きかえれ

759 :
>>758
えーと、そもそも最初からスプライトは当然999以下しか使っていません
まだ1000以降を指定したりもしていません
ただ原因不明の症状が出た時について
>もしかしてスプライト番号999番より後の、たとえば1000番とか使おうとしてねーか?
>それやると症状1 症状2 症状3 全部起きるぞ。
とレスをもらったので、症状2は既に解決していましたが全くスルーするのもアレなので
じゃあ、そういう事だったのかもしれませんね。
という挨拶程度のニュアンスでレスした物なので。

760 :
そういう中途半端なレスってさあ原因特定に困るからやめれ

761 :
何かの間違いで1000移行使ってるって可能性は?
変数値の計算を間違ったとかで。

762 :
おおかたそんなところだろ。
スクリプト打ち直してなおったんなら、
気付いてない潜在バグがそれで取れたんだろ。

763 :
Nスクの配列がメモリぶっ壊した時以外ではもう不安定な挙動残ってないと思うんだ

764 :
NSc1ノータッチで2から触り始めたんだけど情報集まってる所に誘導して欲しい

765 :
>>764
1を先にやるのが一番の近道

766 :
>>764
正式公開してる訳でもないのに
公式以外にあるわけ無いだろ

767 :
≫765
そう思って1のマニュアル見てるけどコマンド違った所がちょくちょくあって
演出が出来ない……とりあえず引き続き試作してみます。

768 :
≫じゃなくて>>だ
>を二個
そんなんじゃまともなスクリプトすら打てないぞ

769 :
コマンド違った所がちょくちょくある、というか、
文法自体が変わっちゃってるところもあるからなぁ…
2は、NScripterに似た文法の別エンジン、
って考えた方がいいと思う。
ただ、今のところ、文法の違いを乗り越えてでも
移行するメリットというのが見えてきてない感じ。
NSc1のスクリプトがそのまま走る、
ちょっと修正するだけで2の新機能が簡単に享受できる、
みたいな感じだったら、かなりの速度で普及したと思うけど、
ほぼ全面的にスクリプトの書き換えが必要で、
サンプル配ってるのは公式だけ、講座サイトもまだ様子見、
さらに同人ゲーとかフリゲでの採用実績がなくて、
動作状況にも不安がある、ってんじゃ、
吉里吉里やYU-RISに移行するほうがましかも…
なんて思う人がいてもおかしくはないな。
最新のノベルエンジンなのに、
スクリプト修正無しでスマホでも動きます、
みたいなメリットも無さそうだし…。
2の新機能を使いまくったヒット作が出てくるまで
マイナーエンジンのまま、なんてこともありうるかも…。

770 :
スマホもNSc1で既にONScripter使えば起動出来るしな。
しばらく様子見。

771 :
正式公開前のもので手を出そうなんてのは
物好きだけだろう

772 :
その物好き連中の犠牲があるからこそ正式公開後に使用する人間が助かるわけで。
ありがたやありがたや。頑張って犠牲になってくれ。

773 :
ごめん、ちょっと質問させてください。
最近Nスクでゲーム作ったんだけど、オートセーブしながら分岐探してたら
どのセーブデータも特定の場所の位置にセーブされてたって報告が来て
これってどういうことだろう? オートモードはともかくオートセーブなんて
機能つけてないんだけど…俺の知らない所でそういうコマンドがあるのかな

774 :
報告してきた本人に「オートセーブ機能なんてつけてませんけど、何の事ですか?」と訊けよ。
相手が何か勘違いしてるのかもしれないし。
言葉の解釈に齟齬が生じてるのかもしれない。

775 :
>>774
冷静に考えたらそうだね
ごめんありがと

776 :
仮にオートモードでセーブなら
セーブが機能してないとかないか?
saveoffで一時的に機能切ってる場所があるとかね

777 :
>>776
saveoff命令は1回も使ってないな…
自分でテストプレイした時も他の人も問題なくプレイできてるから
余計不思議だ バグってこわい

778 :
別のゲームのバグ報告だったりしてw
俺ガチで一回それくらったぞw

779 :
電話やメールでトラブル対応をする時に一番大事なのは、
相手の認識と自分の認識に差がないか確認する事だなw

780 :
NSDoEventsってどういう意味があるの?

781 :
公式の「NSLua解説1〜2.txt」を読んでいるという前提で説明してみます
function NSCOM_loop()
while true do
if NSDoEvents() == true then return end
end
end
のような無限ループ(または重い処理)を実行させても、
ウィンドウの閉じるボタンでいつでもNスクを終了できます
if文の一行をコメントアウトしてみると、違いがよく分かると思います

782 :
>>781
やっと理解できた!ありがとう!

783 :
過去ログ読んでたら、ボタン待ちをluaでするもんじゃないってあったんだけど
なんで?

784 :
>>783
若輩者ゆえ間違った情報を晒してたら、御免
Luaを使う場合、内部的にはLua実行環境とNsc実行環境を切り替えながら動作しています
Luaの関数を実行している間は、Nsc実行環境は止まっています
NSGoto()の動作は典型的な例になると思います
ですので、ボタン待ち命令(クリック待ち命令)をLuaで作る場合
以下のような感じになるかと思います

785 :
function NSCOM_foo()
NSGetClick()--クリック情報クリア
while true do
if NSGetClick() then break end
if NSDoEvents() then return end
NSExecAnimation()
NSSleep(1)
end
return--戻り値
end
NSDoEvents():これがないとウィンドウのメニューバー、閉じるボタン、
 クライアント領域の再描画などの処理が上手くいかなくなります
NSExecAnimation():CELLアニメを使う場合、必要になります
NSSleep(1):CPU使用時間を下げます

786 :
で、例えば
function NSCOM_foo()
NSExec("bexec %10")
end
のような場合、制御はLua側にあることになっていても、問題なく動いてしまいます
メニューバー、閉じるボタン、スプライトアニメ、CPU使用時間のいずれも問題ないようです
これは、NSClick()なども同様です
ボタン待ちをLua側で実装するかNsc側で実装するかは、好みの問題だと思います
Nscで実装したほうが留意点が少なくて済みますし、Luaには変数の自由度などのメリットがあります
ご参考までに。
なにか間違っている点があれば、指摘していただけると幸いです

787 :
おまけ
引数の自由度が格段に下がるので、利便性は微妙ですが…
ver2.96用のwait命令もどきを上げておきます
function NSCOM_wait
local time = NSTimer()
local count = NSPopInt()
while true do
if (NSTimer() - time) >= count then break end
if NSDoEvents() then return end
NSExecAnimation()
NSSleep(1)
end
end
連投&長文、失礼いたしました

788 :
質問した人間じゃないけど勉強になる

789 :
>>784-787
つまりNすくの動作を止めてる状態なのに、
lua上のbexecはNスク側で処理を走らせる、これが問題
っていう理解でいいんだろうか?

790 :
NscとLuaとの関係は、Nsc実行環境がメインでLua実行環境はサブという関係にあると思います
一般論として、
1:サブはメインから呼ばれて、returnでメインに制御を返す
2:メインがサブを呼び出すことはあっても、サブがメインを呼ぶことはない
3:サブはできるだけ早く、メインに制御を返すようにする
というセオリーがあると思います
NSExec()でLua(サブ)からNscの命令(メイン)を使える(呼び出せる)というのは
とても便利ですが、若干イレギュラーな印象もあります
NSExec()でユーザー定義命令(defsubで定義した命令)が使えない
NSExec()自体が2重に呼び出せないのはこの為かと思います

791 :
セオリーを重視すれば、bexecはNsc側に置いたほうが自然かもしれません
NSExec("bexec $Var")で問題が起きないのならそれで良し、というのも
一つの考え方だと思います
人によって判断や意見の分かれるところで、どちらか一方だけが絶対に正しい
わけではないと思います
セオリーは、経験の蓄積で出来た智恵の集合体です
痛い経験をたくさんした人ほど、セオリーを重視する傾向があるかと思います
NSExec("bexec $Var")を絶対にやってはいけない訳ではなく、
どうせだったら、Nsc側に置いてもいいんじゃない?くらいの
ニュアンスではないかと思います

792 :
>>789
>lua上のbexecはNスク側で処理を走らせる
それは誤解。基本的にNSExec()つかった処理でもlua上扱い。
lua上でできないものは、保留して中で確保しといて次のlua行いく。確保したのをNスクに帰ってから実行。

793 :
>>792
ごめん、それはたぶん違うと思う
Luaに制御が移った時点でNscは停止しているのだけれど
NSExec()は、停止しているNscを部分的に動かすことで実現していると思います
この「部分的」というのが問題にならないことも多いけれど、問題になる場合もあったりする
結果、NSDoEvents()やNSExecAnimation()等で明示的に補完してあげる必要があったりなかったりする
Nscの命令はNsc側に置いておけば、こうしたことを意識する必要も無いので
なるべくNsc側に置いたほうが「お得」だと思います

794 :
ついでなので、NSGoto(),NSGosub(),NSReturn()の動作について説明してみようと思います
Nsc実行環境は、内部にプログラマカウンタ(PC)という変数を持っていて
ここに、次に実行する命令の行番号(アドレス)が入っています。
で、実行環境は
1:PCの位置にある命令を読み込む。
2:命令を実行する
3:PCの値を+1する
4:1に戻る
の繰り返しで動いています。
で、
goto "*aaa" という命令文は、
mov PC,"*aaa"という形で実装されています。
ジャンプというよりは代入命令だというのがポイントです

795 :
function NSCOM_foo()
NSGoto("*aaa")
NSGoto("*bbb")
NSGoto("*ccc")
end
について考えた場合、これは実質
function NSCOM_foo()
mov PC,"*aaa"
mov PC,"*bbb"
mov PC,"*ccc"
end
です
Luaの関数に飛んだ時点で、Nsc側の実行環境は停止して
Luaの関数から抜けると、Nsc実行環境は再開されます
その時のPCの値は"*ccc"ですので、"*ccc"から実行が再開されます
Luaから抜けた時点で多段ジャンプするのではなく、代入が上書きされた結果です

796 :
同様に、
gosub "*aaa"は
push PC
mov PC,"*aaa"
であり、
returnは
pop PC
です
紙の上にスタックの状態とプログラマカウンタの状態を書き出してみると
処理の流れがわかり易いかもしれません
ただ、スパゲッティプログラムの温床になりやすいので、NSGoto(),NSGosub(),NSReturn()は
あまり使わないほうがいいかもしれません
以上、連投しつれいしました

797 :2012/10/23
これは流れてしまうの勿体ない
まとめサイトとかに保存しておきたい
TOP カテ一覧 スレ一覧 2ch元 削除依頼
HSPでRPG作ろうぜ (419)
シェーダープログラマが集うスレ (537)
さいたまRPG作ろうぜ (792)
シューティングゲーム(非FPS)製作技術総合 (949)
【同人】作ったゲームを金にする その4 (257)
かまいたちの夜のパクリ作れる人。 (237)
--log9.info------------------
【好きっていいなよ。】葉月かなえ 1【3巻発売】 (503)
勝田文◇其の二 (709)
*-*-*-*-*- かまたきみこ -*-*-*-*-* (376)
仲村佳樹 スキップ・ビート! ACT.49 (426)
●●竹崎真実スレッド●金瓶梅●●PART21 (832)
【こっちむいて!】おのえりこ4【みい子】 (928)
山岸凉子4 (355)
西炯子11 (230)
名作なのにアニメ化・ドラマ化されてない作品 (898)
少女漫画のむかつくヒーロー5 (247)
大和和紀作品について語りましょう7 (605)
あぁ…専業主婦よりモデルが生き甲斐こやまゆかり28 (335)
ももち麗子 (969)
○ 天乃忍 ○ (355)
【LOVELESS】高河ゆん36【佐藤くんと田中さん】 (362)
【君に届け】椎名軽穂70【虚言癖のある作者】 (721)
--log55.com------------------
俺らだってメンバーに説教したくてしてるわけじゃ無いんだ
STU48 2期研究生 加入決定のお知らせ
最新の菅原りこさんがこちら
【HKT48】朝長美桜ちゃん応援スレ☆280【みお】
【画像】 松山大学のミスコンがとんでもない結果になってしまうwwwwwwwwwwww
【本店】チームB推しだけど、B公演やりすぎじゃね?
「50GB 900円」楽天モバイルMNOプランの価格が流出?
「この子は売れる」と確信したけど売れなかったメンバー