TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
親父PGがゲームを作り始めるスレッド
【ゲームで、この処理ってどーやってんの?】
みんなでオリジナルRPG作るぞ!INゲ製作 Part7
ゲーム制作失敗について語るスレ
ツール・スクリプト総合スレッド
【企画】ギャルゲー製作!!
新ジャンル『幼女980円(税)』ゲーム化製作スレ
アクションゲームツクールMV 6作目
素人だけどゲーム作りたい
Unityで何かゲームを作りたいんだがね

NScripter Ver.19.00


1 :2014/01/30 〜 最終レス :2017/12/31
商業流通でなければフリーで利用可能な
ゲームエンジンNScripterについて語るスレです。
・本家
ttp://www.nscripter.com/
・うpろだ
ttp://nscuploader.wkeya.com/

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

3 :
・前スレ その2
Ver.10.00
http://pc11.2ch.sc/test/read.cgi/gamedev/1176450917/
Ver9.00
http://pc11.2ch.sc/test/read.cgi/gamedev/1167444413/
Ver8.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1157719180/
Ver7.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1149639307/
Ver6.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1142593513/
Ver5.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1126791382/
Ver4.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1112550571/
Ver3.00
http://pc8.2ch.sc/test/read.cgi/gamedev/1100029774/
Ver2.00
http://pc5.2ch.sc/test/read.cgi/gamedev/1082131647/
初代
http://pc5.2ch.sc/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以外のノベルツールに関する話題は、ここでは歓迎されません。
・作成中のスクリプトを晒さなくて済むような技術的な話題については
最初にTips、解説、サンプル掲載サイトで解決可能であるかをご確認下さい。
・また、ノベルツールの比較検討や論議については、下記のスレで行って下さい。
(但し、特定のノベルツールを叩く為のスレではありません)
ノベルツール選考スレ 4th KIND
http://toro.2ch.sc/test/read.cgi/gamedev/1329043965/
ノベルツール選考スレ 3rd STRIKE (4th KINDの前スレ)
http://hibari.2ch.sc/test/read.cgi/gamedev/1145204843/
ノベルツール選考スレXP (3rd STRIKEの前スレ)
http://pc8.2ch.sc/test/read.cgi/gamedev/1083482407/

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

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

10 :
スレ立て人からのお知らせ
・うpろだのリンク表記を現行のurlに変更しました。
・今回のリンク切れは表記の抹消では無く、リンク切れ表記の付加で対処しました。(今回のみの予定)
・本家からNScripterサポートBBSが無くなっていた為、テンプレを一部変更しました。

11 :
お知らせの追加
・関連書籍の絶版表記の付加
関連書籍の追加候補
ノベルゲームのシナリオ作成技法 第2版(※絶版)
ttp://www.shuwasystem.co.jp/products/7980html/2120.html
ttp://www.7netshopping.jp/books/detail/-/accd/1102642651/subno/1
ttp://www.amazon.co.jp/exec/obidos/ASIN/4798021202/

12 :
>>8
ONScripterに違法性が在る根拠を教えて下さい

13 :
人の作ったものを勝手にコピーしてばらまく事に違法性がないと考える人ですか?

14 :
そんな諸事情知らないっての

15 :
>>13
フルスクラッチのプログラムが違法の根拠を教えて下さい
linuxも違法なんですか?

16 :
Windowsをフルスクラッチしてばらまいてみたらわかるんじゃない?

17 :
>>16
世界中から感謝しかされないな

18 :
スレを荒れさせない方便だよ
そんな心配しなくても今や過疎スレだがな

19 :
それって、古い商業ゲーのコンバートが流行ってた時代の名残でしょ。
商業の新作がNScrで出てる時期なら必要だったと思うけど
今じゃもうテンプレからその文面削っていいと思うけどね。
それより前スレ埋めようず

20 :
新作の有無は関係なくて、NSc製の商業タイトルが存在している限り
基本的に変わらないことだと思ってるよ。

21 :
もはや版権品のコンバートじゃなくて、
スマホ向けのオリジナルもの開発エンジンとして定着してんじゃんあれ

22 :
意味わからんのは
なんで、自分が作ったのをそのツールで動かしても
犯罪者呼ばわりされなきゃいけないのかってことだ

23 :
例えば>>20みたいなやつは
ONScripterという違法ツールを使ってノベルゲーを公開してる作者を犯罪者呼ばわりしてるわけだ
違法ツール認定するってことは利用者を犯罪者呼ばわりするのと同じだからな
それをわかっててエンジン利用者を排斥してるのわかってんのかね?

24 :
俺が疑問を持ってるのはそこだな
作品制作者を犯罪者呼ばわりするコミュニティって終わってんなってこと

25 :
ONScripterが違法って言うより、
>・Nscripter以外のノベルツールに関する話題は、ここでは歓迎されません。
こちらに引っかかってると考えたほうがいいんじゃない?
ONScripterは、文法的にはほとんど本家と同じだけど、
未対応の命令もあるし、微妙に動作が違う部分もあったりする。
質問者がONScripterを使っていることを明かさずに
話を進めていたりすると、本家しか使っていない人と
食い違いが出たりしそうだしね。
ONScripterについての話題を扱いたいなら、
専用のスレを立てるしかないのかも。

26 :
・ONSという「ツール」 …… 合法
 ├・他人の著作物のコンバート「行為」 …… 禁止されてる
 └・オリジナルゲームを作成する「行為」 …… 合法

27 :
例えONScripterを使う目的がオリジナルのタイトル製作であっても
NScripterとの互換性が付いて回る性質上一緒くたに扱うのは無理。
それでもONScripterに拘るのであればさっさと別スレ立てるのがおすすめ。

28 :
>>24
ONScというツールの生まれが
「商業ゲームを勝手移植で携帯機でプレイ」なんだから仕方がない
容認してスマホ板から
「○○ってゲーム動かないんだけどどうやるの?」
って勘違い野郎に住み着かれて荒らされる自体を想定するなら
高橋直樹製でない無許可の互換ツールの除外は至極当たり前だろう
定期的に湧いてONScの話したいってgdgd暴れることこれからもするんだったら
うっとおしいだけなんで別スレ立ててそっちで好きなだけONScの話しなよ
どっちかつーと互換ツールなんかよりもNスク2の関心あるし

29 :
前スレ埋めろよ

30 :
Nスク2そろそろ来そうで楽しみだわ
やっと袋文字が使えるようになるのか…

31 :
質問スレじゃないとは思うんですが・・・
テキストウィンドウにフリー素材を使おうとして
setwindow 30,356,22,4,20,20,0,0,20,1,1,":a;画像名.jpg",30,300
とやっても画面の真ん中あたりで画像が切れてしまいます。
元画像のサイズをいろいろいじってみたんですが、切れてしまうか大きく
はみだすかのどちらかで・・・。
同じ状況から解決した方、方法を教えていただければ・・・。

32 :
>>31
aになってるところをcにする

33 :
>>32
できました!ありがとうございます!
言われてみれば「c」でよかったんですね・・・
初心者で、フリーノベルゲー製作中なので
良ゲー作ってご恩を返せたらと思います

34 :
良ゲーよりもまずは完成だな

35 :
>>25,28
ここをスマホ板のヘルプ出張所に使おうにも質問内容と実際の動作が噛み合わなくてバレるね。
この板にONScスレを立てるとしてもスレの利用希望者はどれだけ居るのかなー?
このスレの住民としてはONScスレにノータッチのまま今まで通りにマターリ進行して行くと思うよ。

36 :
今までどおりONScripter利用者は犯罪者として糾弾していきます

37 :
といった荒らしの余地すら生むから話題そのものが非推奨なのよ、最初に質問した人分かってくれただろうか

38 :
ONScスレが立ってから、ここの住人に絡みたいだけの人の仕業だったと判明されそうな流れっぽいね。
でも、それがそのまま未だにゲ製板にONScスレが立たない理由になっていると思うよ。

39 :
テンプレでONScripter利用者は犯罪者だと認定しているので
このスレそのものがONScripterを糾弾する含みがある

40 :
キ○ガイかかわると碌なことが無い

41 :
NScを使わない限りこのスレに用は無い

42 :
isdownとかcheckkeyみたいに
軽快に右クリックの押下状態を取得する方法ってないんだっけ?

43 :
ろだにそんなプラグインがあがってたはず

44 :
luaでよければNSGetClick()があるね
例としてはこんな感じで
--system.lua
rbutton = 0
function NSCOM_isrdown()
local l,r,w,ld,rd = NSGetClick()
if rd then rbutton = 1 end
if r then rbutton = 0 end
NSSetIntValue(NSPopIntRef(),rbutton)
end

45 :
>>44の続き
;00.txt
;右クリック中は「0」を出力し続け、離すと改行して止まり、左クリックすると終了する。
*define
luasub isrdown
;isrdown %var
;右ボタン押下中なら1、離してたら0を返す
game
*start
*loop
isdown %0
if %0=1 end
isrdown %1
if %1=1 gosub *onrclick
wait 2
goto *loop
*onrclick
*onrclick_loop
isrdown %1
if %1=1 puttext "0/":wait 2:goto *onrclick_loop
puttext ""
return

46 :
luaで44の参考にやったらできました!!
使ってみたらいい感じ。
そうだよこの早さが欲しかったんだよぉぉぉおおお(´;ω;`)
ちょいとばかしlua勉強するわ。

47 :
Luaは部分的に使うだけでもいいから凄く便利だよ

48 :
NS2の質問はあり?

49 :
ものによるんじゃね、どうせ勢いもあんまりないし書くだけ書いてみなされ

50 :
NS2の質問で、質問は2つなんだけど、
・立ち絵やその他スプライトを拡大縮小する事は出来るのか?
・立ち絵のアニメーションはできるのか?
最初のはリファレンスに命令が記載されてないけど
これって拡大縮小はできないって事なのかな
二番目はspの引数にanimtimeを設定してセルに複数の画像を記述すれば
アニメーションというか、簡単な画像の切り替えは出来るんだけど
やりたいのはそういうのじゃなくて、例えば立ち絵を画面右側から左側に
スーッと移動させるとか、画面上から下になんかのスプライト画像を落とすとか
そういうアニメーションのやり方が分からない

51 :
ここ数ヶ月全く触ってないけど、
自分はNS2で拡大縮小アニメーションや移動アニメーションなんかを弄ってました。
RESETTIMER と GETTIMER を利用して指定したミリ秒での操作を。
それと do と loop を利用して、その秒数の間だけ SPMOVELT を使ってアニメーションを行わせる、みたいな感じです。

52 :
>>51
レスありがとうございます。
resettimerとgettimerは拡大縮小の関係で使うという事でしょうか?
ちょっと全く取っ掛かりが分からなくて・・・。
できればサブルーチンの例なんかご教授いただけると分かりやすのですが・・・
ループさせてspmoveのx値を1F単位で動かすのは考えて
実際にやってみたのですが、上手く行きませんでした

53 :
作ったループとspmoveを組合わせた処理は
<01.txtに>
defsub spmove_loop,"S" ;演出 - 立ち絵動かす用(左から右に移動)
@spmove_loop
param %name
;カウンタクリア
%cnt = 0
;ループ@▼開始
@spmove_loop2
if %cnt < 1000 then
spmove %name,0+%cnt,0
%cnt = %cnt+1
;デバッグ
;cprint %cnt
;ループ@▲終わり
goto @spmove_loop2
else
spdelete %name
return

54 :
<02.txtに>
spmove_loop "CHR1" ;ループして動かすテスト
として、中央の立ち絵を左から右にスーッと動かす
処理を実現したかったのですが、なぜか立ち絵が消えてしまいます
spmove_loopのcnt変数内はcprintで確認して
任意の数字が代入されている事は確認できていますが
スプライト自体がどう動いているのかよく分かりません
画面的にはspmove_loopを実行した途端立ち絵が消えてしまうので
ミスの指摘ややり方などご教授お願いします

55 :
今すぐの動作は確認してないけど、自分が実際に使っていたものをちょっと弄ってはっつけて見ます
lceffect "キャラクタ名",1
 とか
lceffect "キャラクタ名",2
 とかで動くと思います
lceffect が気軽に呼び出して使うメインのサブルーチン。パラメータが多く見えるのは削り残しです。
lcanimation は、 lceffect の中でのみ呼ばれるもっと細かい挙動をつかさどるサブルーチン (シナリオ上からは呼ばない)

56 :
; ニックネーム,エフェクトタイプ,画像中心からのX位置,画像中心からのY位置,サイズ
@lceffect
; CTRL押されていれば処理しない
if getskip() == 1 or 0<>GETKEY("CTRL") then
return
end if
param %nick,%type,%xpos,%ypos,%size
if %nick == #NIL or %nick == "" then OKBOX "立ち絵命令文のニックネームが不正です" , "lc命令文エラー"
%spname = "character:" + %nick ; ★スプライトセット系。各自対応を
getspinfo %spname , %spinfo
if ISDEF(%spinfo.cx) == 1 and ISDEF(%spinfo.cy) == 1then ; ほしい情報がちゃんと定義されてる?(存在する?)
if %type == 4 then
lcanimation %spname,(%spinfo.cx+5),%spinfo.cy,0,60
lcanimation %spname,(%spinfo.cx-7),%spinfo.cy,0,60
lcanimation %spname,(%spinfo.cx+10),%spinfo.cy,0,60
lcanimation %spname,(%spinfo.cx-7),%spinfo.cy,0,60
lcanimation %spname,(%spinfo.cx+5),%spinfo.cy,0,60
lcanimation %spname,(%spinfo.cx),%spinfo.cy,0,60
elseif %type == 5 then
lcanimation %spname,%spinfo.cx,%spinfo.cy-20,0,40
lcanimation %spname,%spinfo.cx,%spinfo.cy-40,0,40
lcanimation %spname,%spinfo.cx,%spinfo.cy-30,0,40
lcanimation %spname,%spinfo.cx,%spinfo.cy,0,30
end if
end if
end if
return

57 :
; 立ち絵を動かすサブルーチンで呼ばれるサブルーチン。弄るのは・・・X,Y座標関係と傾きのみ?
@lcanimation
param %spname,%to.cx,%to.cy,%to.rot,%time
; SP "window:linebreak",{name={%ld1 , %ld2 , %ld1 , %ld2 , %ld1},xs=%size,ys=%size,cx=(%send_cx+%xpos),cy=(%send_cy+%ypos),animtime=100,animtype="round"}
GETSPINFO %spname,%from
; CPRINT %from.cx
;-----------------
; %from から %to の値に %time掛けて 移行させる処理
;------------------
RESETTIMER ;---- 時間処理開始
do
%nowtime=GETTIMER() ;---- 経過時間取得
if %nowtime > %time then
exit ;---- 経過時間が超過したらloopを抜ける
end if
;---- 全体の何割経過したかを %parcentへ算出
%parcent = %nowtime / %time

%now.cx = %from.cx - ((%from.cx - %to.cx) * %parcent)
%now.cy = %from.cy - ((%from.cy - %to.cy) * %parcent)
%now.rot = %from.rot - ((%from.rot - %to.rot) * %parcent)
; CPRINT "%parcent:"+STR(%parcent)+" / %now.cx:"+STR(%now.cx)+" / %now.cy:"+STR(%now.cy)+" / %now.rot:"+STR(%now.rot)

SPMOVELT %spname,%now.cx,%now.cy, %from.xs , %from.ys , %now.rot , 255
print #C
loop
; 【※】loop抜け@一番最後の処理で最終目標の to 値で表示させる。 cx,cyだけは中心位置が変更しないので、そもそもtoが存在しない
SPMOVELT %spname, %to.cx , %to.cy , %from.xs , %from.ys , %from.rot , 255
print #C
return

58 :
レスありがとうございます。
取り急ぎお礼レスだけ書き込ませて頂きます。
これからよく内容読んで解析してみます

59 :
>58
それで、すみません、
>>55-57 は拡大縮小のアニメーション処理は行っていないです
立ち絵をブルブル震わせたり、ジャンプぽい動きをさせたりだけで済ませるための命令として用意したので..
概念としては >>57 の @lcanimation 内にある
RESETTIMER
do
loop
あたりに囲まれている処理をなんとなく読み解けば、応用できるのではないかと思います。

60 :
>>59
了解しました。
ありがとうございます。

61 :
>>50
NScr2は触ってないので的外れだったらごめん
質問1
spにxsとxyに実数で指定すると拡大縮小します。
ただし、座標指定をスプライトの中心座標のcx,cyで指定しないと無効化されます
例:
sp "CHR1",{name="test.png",cx=100,cy=100,xs=2.4,ys=0.5}
横2.4倍、縦0.5倍で表示されます
sp "CHR1",{name="test.png",x=100,y=100,xs=2.4,ys=0.5,rot=45}
座標をx,yで指定しているので、xs,ys,rotの指定は無視されます
質問2
print文がないので画面が更新されていないだけだと思います
画面が更新されないまま、ループをぬけてspdeleteでスプライトが消えてるのではないかと
あとループ処理中はなるべくsleepかwait系の命令をはさんでおいた方が良いかと思います

62 :
>>61
xsとかysは知りませんでした・・・
basic命令テキストでグレップしたら確かに見つかりました
sはscaleのsですかね
今までx,y,zしか使った事ないので、cx、cyも知りませんでした。
cxやxsの詳しい説明がNS2はリファレンスに記載ないので(だから現状NS2はβ版らしいですが)
>あとループ処理中はなるべくsleepかwait系の命令をはさんでおいた方が良いかと思います
なるほど
これは多分、waitしないと1F枚に実行されて速度が早過ぎる、
処理が重くなるあたりの理由っぽいですね
NS2はまだ個人ブログなどでの情報も少なく、手がかりがほぼ公式リファレンスだけで、
初心者の私には少々手厳しかったので非常に参考になりました。
ありがとうございました

63 :
・立ち絵である某さんを、1000ミリ秒(1秒)かけて、x100から x200へ移動させたい
・まずは RESETTIMER さんと GETTIMER さんの力を借りる
 1000ミリ秒経過するまでは、ずっとループし続ける枠組みを作ります
; ▼ここから
RESETTIMER
do
%nowtime=GETTIMER() ; loopでやり直されるたびに何秒経ったか常に数える
if %nowtime > %time then ; パラメータで送られた 1000ミリ秒 になれば、loopを抜ける。逆に言えば時間になるまでは繰り返す
exit ; 時間になるまでこのifの中は処理されません。 exit されません。
end if
; このあたりに、スプライトを描画させる処理を組む
; 例えば、500ミリ秒経過していれば、 1000ミリ秒でx100からx200への移動を行う過程で、
; x150の座標を描画してあげればOK
; 200ミリ秒経過していれば、200と100の移動距離の差である 100 を、 1000ミリ秒 ÷ 200ミリ秒 = 1/5 もとい 20% にする
; 最初の位置 x100 + 移動距離 100 の 20% を足す → x120で某さん描画 みたいな感じ。
loop ; doに戻れ (exit でのみ loppをすり抜けられる)
; ここに、最終描画 (x200へ移動しきった) を行う処理。
; ここに達しているという事は、 地獄の 1000ミリ秒 loop 工程を無事クリアしたという事
; ▲ここまで
自分が >>57 で書いたのは、多分こんな感じになっています。
sleepとかwait入れてないや・・・(;゚ω゚) 大丈夫かしら

64 :
>>63
ありがとうございます。
まだ内容解析できてないませんが、参考にさせて頂きます

65 :
メール欄にsageって入力してな(´・ω・`)

66 :
>>65
すみません、忘れていました・・・。
あともう一つ、教えていただきたいというかお聞きしたいのですが
今ノベルゲームを作っています
そこで、私は「スプライト名」、「変数名」の2つを一覧.txtというファイルを作り
そこで一覧化して管理する事にしました
例)
フラグ名:%flag (内容 ON:1 OFF:0)
設定契機:@game_start、@event_1
解除契機:@ending、@test2
とかこういうのを一覧化しているんですが、こういうのはゲームを一本作るにあたって
やった方がいいのでしょうか?それともやる必要はないのでしょうか?
また、私は現在「スプライト名」、「変数名」について一覧化していますが
この2つ以外にも一覧化すべき(または、した方が便利)なものがあれば
ご教授頂けますでしょうか?

67 :
>>66
横だけど
> やった方がいいのでしょうか?それともやる必要はないのでしょうか?
最初にかっちり計画を立てて一気に組み上げるほうが向いてる人もいるし、逆に計画ばかり作りこみすぎてそれで満足しちゃう人もいるし
こればっかりは好き好きだけど、画像とかの素材(手間がかかるもの)は最初に作っておいたほうがいいと思う
でも、どんな出来でもいいからとにかく完成させることがすごーく大事だよ
> この2つ以外にも一覧化すべき(または、した方が便利)なものがあれば
やるんならラベル名、音楽、効果音あたりもかなー
あとちょっとずれるけど、よく使う色もメモに書くなりライブラリとしてまとめるなりすると便利

68 :
>>67
確かに、ラベル名は一覧化しておいた方がよさそうですね
ありがとうございます。

69 :
Nscripter始めて2日目の者ですが、ググったけど解らないんで教えて下さい。
音声のセリフと文字のセリフを同時に表示させて進めるアドベンチャーゲーム作ろうとしてるんですが
オートで進める場合はどうやるんでしょうか?
メニューのとこのオートモードを使うと音声が終わる前にどんどん先に行ってしまいます。
@を使わずに音声再生が終わったら次の音声に自動で行くにはどうしたら良いのでしょう?

70 :
ageなくてええよ
なんだっけ音声いれたことないからわかんないけど
ファイルごとに長さ設定しておけばいいんじゃね?

71 :
そうなんですか、それを全てのセリフで設定するのは面倒くさいですね……

72 :
>>69
これで上手くいかない?
*define
game
*start
テストスタート
\
dwave 0,"test.ogg";適当な音声ファイル用意してね♪

\

\

\
end
dwaveの詳しい仕様は
NScripter Scripting Factory
ttp://senzogawa.s90.xrea.com/
が参考になると思います
他にも
Binary Heaven ミラーサイト
ttp://sorejyadamedarou.sakura.ne.jp/o_show/
【NScripter−Tips】
ttp://sorejyadamedarou.sakura.ne.jp/nscripter/
なども初心者には参考になるかと思います

73 :
>>72
出来ました!マジ感謝です。有難うございますm(__)m
今までbgmやmp3でコールしてたのが出来ない原因なのかな?
3日目にして少し前進できそうです。

74 :
sage

75 :
>>66
ttp://sorejyadamedarou.sakura.ne.jp/nscripter/tip04.htm#TIP1
ここの印刷して管理してるわ。
モニタと手元の紙別であると早い。
ラベル名は必要なくね? システム書いてる時なんて、コード見てコピペすればいいし。
シナリオ中なんてそれこそ用事ない気がする。

76 :
>>75
確かにそうですね
NS2なんで分岐はselectですが@ラベルの飛び先を
一覧化しとけばいいかなと思ったんですが、飛び先は必ず単一だし
そんなのファイル検索すればすぐ見つかるし、一覧化なんて逆に
手間かかるだけですね

77 :
一覧化の有用性は制作期間によるな
短期でサラッと作るのなら不必要だけど
2〜3年とか長期の見込みで作る気なら
覚えてて当然ってのも細かくメモしてる方が
製作からしばらく距離おいてド忘れした時に役立つ

78 :
>>77
今作ってるのは短期なんですが、私はそもそもはじめたばかりですし
将来大きなウェイトのものを作る予定があるので、簡単なやり方じゃなく
大きな物作るときのやり方に慣れておきたいので短期の制作物でも
一覧化しました
あとNS2ですが、selectやwait、clickなどの標準命令は大文字小文字
どちらでも機能しますが、命令の記述は大文字と小文字どっち使った方がいい
とかありますか? 今は命令は全部小文字使ってます
もしくは、この命令は小文字、この命令は大文字とか使い分けすると
便利、みたいな事ってありますか?

79 :
本体に付属されてるマニュアル命令郡の書き方に従って使った方がいい
命令覚える方はそれに合わせて記憶するのが自然だと思うから
初代Nスクでの話になるけど
以前、大文字で全部書かれたスクリプトに出会ったことあるけど
見慣れない書き方だから瞬時に判別できなくて読みづらくて仕方なかったよ

80 :
>>79
アドバイスありがとうございます。
>>56あたりでアドバイスして頂いた時とか、getspinfoは小文字、
ISDEFは大文字など混ざってるので、なんかの法則に従って
使い分けてるのかなと思ったんで聞いてみました
命令の大文字小文字はどちらかに統一した方がよさそうですね
ただ、リファレンスは大文字なんですが、私は小文字で統一しちゃってます
大文字にした方がいいんだろうか・・・
でもNS2は今ベータ版という事で今後リファレンスが大きく
変わることもあるだろうし、とりあえず、様子見してみます

81 :
すみません、あとひとつあるのですが、
未クリアの場合を0、クリアしたら1を立てて
1(クリア済み)なら背景を変えるとか、クリアしたかしてないかで
処理を変える事をやっています
結果から言えば出来たのですが、strsaveとstrloadを使いました
そのファイルに初期値0を書き込み、クリアしたらstrsaveで0以外を書き込み、
その後、クリアしたか判別したい箇所手前でそのファイルをstrloadで
読みに行って、0以外(クリア済みフラグ)があれば、専用処理をする、としました
リファレンスを見た限り、クリア判別に使えそうなのがこのファイルへの書き出し、
読み込みしかなかった(私として思い付かなかった)のでstrsave/strloadを使いましたが
通常の変数(ローカルでもグローバルでも)だけでクリア判別って不可能ですよね?

82 :
1:まずクリアフラグ用の変数を「_」で始まる変数で用意します
仮に「_flag00」としてみます
2:「最小規模システム」のサンプルを例にすると、
00.txtの@first_settings以下に次の一文を追加します
_flag00 = 0
3:savedataフォルダの中身を全部消しておきます
以上でたぶん期待した動作になると思います

83 :
>>82
>_で始まる変数はシステム変数です。どこからでもアクセスできます。
>セーブファイル単位ではなくエンジン単位で保存されるので、クリアフラグやコンフィグ設定等に使ってください。
すみません、上記のような説明がtxtに書いてありました。
試すのはこれからですが、とりあえずお礼レスだけさせて頂きます
ありがとうございました。

84 :
NS2関係の質問している者ですが、もうちょっと質問しても大丈夫でしょうか・・・?
タイトル画面に音楽室を表示して、BGM聞けるヤツがサウンドノベルには
よくあると思いますが、それを実装しました。機能的には問題ありません。
そこで次に、今再生中の曲名を表示する機能を実装しようと思って
やってみたのですが、上手くいきません。
もう10時間くらい悩んでいます
大した処理じゃない気がするんですが・・・なぜか上手くいきません。
↓がソースです

85 :
(02.txtの@title下に)
; 音楽室
-------------------
@soundroom
bgmstop ;念のため
spset "soundroom",100
sp "soundroom:back",{name="stages\soundroom.jpg",x=0,y=0,z=100}
sp "soundroom:bar",{name="bar\soundroom_bar.png",x=0,y=460,z=99,a=160}
sp "soundroom:s1",{name={"?曲1,menu3","?曲1,menu4"},x=120,y=340,z=0}
(中略。曲2、曲3と続くだけです)
sp "soundroom:s96",{name={"?再生中タイトル:,menu4","?再生中タイトル:,menu4"},x=50,y=480,z=0}
sp "soundroom:s99",{name={"?停止,menu3","?停止,menu4"},x=710,y=530,z=0}
btnclear "soundroom"
btn "soundroom:s1"
btn "soundroom:s96"
btn "soundroom:s99"

86 :
↑の続き
@soundroom_lp
%retvolume = getbgmvolume() ;BGMボリューム取得(音楽室終了時ボリューム戻し用)
%nowplay = 0 ;プレイ中曲判定フラグ
; 再生中タイトルのフォントを定義
spset "soundtitle",100
sp "soundtitle:none",{name={"?NONE,menu4"},x=270,y=480,z=0}
sp "soundtitle:t1",{name={"?曲1,menu4"},x=270,y=480,z=0}
(中略。曲2、曲3と続くだけです)
spsetvisible "soundtitle",0
@soundroom_lp2
%nowvolume = getbgmvolume() ;BGMボリューム取得(音楽室内でのボリューム調整用)
;最低(最大)ボリュームを下回(上回)らないよう抑止
if %nowvolume > 0 then
%nowvolume = 0
elseif %nowvolume < -10000 then
%nowvolume = -10000
endif

87 :
↑の続き
; ボタン判定
; %nowplayを判定し、押した曲がすでに再生中の場合は再度再生はしないよう抑止する
btnexec %ret, "soundroom"
★ if %ret == "s1" and %nowplay <> 1 then spsetvisible "soundtitle",0 : spvisible "soundtitle:t1",1 : %nowplay = 1 : bgmfadeout 200 : wait 200,0 : bgmplay "sound\曲1.ogg"
(中略。曲2、曲3と続くだけです)
★ if %ret == #R then spsetvisible "soundtitle",0 : spvisible "soundtitle:none",1 : bgmstop : bgmvolume %retvolume : spsetdelete "soundroom" : print #c : goto @title
goto @soundroom_lp2
return ;音楽室ここまで

88 :
★の部分
ここがそれぞれの曲名をクリックした時に入るルートですが、
ここにcprint置くとちゃんと入る事は確認できています
曲2をクリックすれば曲2に、曲5をクリックすれば曲5に、右クリック時は#Rルートに
ちゃんと入るのですが、spestvisible〜の処理が明らかにスルーされてるようなのですが
原因が全く理解できません
デバッグエラーも出ないので記述ミスもないと思います。
spset "soundtitle",100
sp "soundtitle:none",{name={"?NONE,menu4"},x=270,y=480,z=0}
↑の2行だけを@game_start以降に置くとちゃんと表示されるのでスプライトも正常に生成されているはずです
spsetvisible "soundtitle",0を削除しても表示されません
z軸を疑いましたが、背景画像などを全部消しても表示されませんでした
何かヒント頂けないでしょうか・・・?

89 :
>>87
1:spsetvisibleは「スプライトセット」の表示状態を変える命令です
スプライトセットの中のスプライトの表示状態を一括で変更する命令ではないです
2:スプライトの状態を変更した後は、print #Cなどで画面に反映させましょう
%ret=="s1"の場合、printで反映されずにループの頭(@soundroom_lp2)に戻ってます
たぶん、こんなんではないかと

90 :
NScripter標準のショートカットキー一覧ってどっかで確認できる?

91 :
>>89
>1:spsetvisibleは「スプライトセット」の表示状態を変える命令です
>スプライトセットの中のスプライトの表示状態を一括で変更する命令ではないです
でも結果的には一括で変更しているように思えるのですが・・・
デフォルト(サンプル)のタイトル画面なんかがそのような動作をしている認識なのですが・・・
試しに文章中で可視不可視を切り替えてみましたが、
spset "st",100
sp "st:a",{name={省略}
sp "st:b",{name={省略}
spsetvisible "st",0
文章1
spsetvisible "st",1
(★st1:1とst:bが両方表示される)
文章2
spsetvisible "st",0
(★st1:1とst:bが両方消去される)
という結果になります
確かに「スプライトの可視状態を変更している」のではなく、「スプライトセットの可視状態を変更している」
のは分かっているつもりですが、結果としてはスプライトセットが内包しているスプライトの可視状態が一括で
変更されている(ように見える)という事ですよね?
あと気づいたんですが、上記のようなスプライトを一つの画面に表示させるのではない処理って
スプライトセットに纏めず、スプライト単位で(spsetを使わずspのみで)記述した方がいいのでしょうか?

92 :
>>90
「D」「N」「Alt+Enter」くらいじゃね?

93 :
>>92
Alt押したら突然処理止まって驚いたんだがごめん、俺の早とちりだったわ
右Altで止まるのってWindows側の機能なのね

94 :
>>93
左右alt関係なく、Windowsの基本操作
アクティブウィンドウのメニュー操作をキーボードでするためのものだからNスク関係ないね
もちろんメニューが無いdeletemenu時は機能しない

95 :
>>94
Windows何年も使ってるのに今まで知らんかった……
計測していたタイマーが停止分を考慮してくれずに悩んでいたんだけど、NSTimer()の後にNSDoEvents()持ってきたら上手いこと動いたわ

96 :
>>91
>87のspsetvisible "soundtitle",0 : spvisible "soundtitle:t1",1
の部分がスプライトの表示フラグを全部クリアして、soundtitle:t1の表示フラグを
立てるに見えたのよ
「スプライトセット」は中身のスプライトとは独立した表示フラグを持っていて
両者の組み合わせでスプライトが画面に表示されたりされなかったりするのよ
サンプル用意してみたから、よければ試してみて
sp "background",{name="*800,600,#FF000000",x=0,y=0,z=0}
FONT "st_a",{name="MS ゴシック",color=#FF0000FF,width=24,height=32}
FONT "st_b",{name="MS ゴシック",color=#FF00FF00,width=24,height=32}
spset "st",100
sp "st:a",{name="?スプライトst:a,st_a",x=128,y=32,z=0}
sp "st:b",{name="?スプライトst:b,st_b",x=384,y=32,z=0}
スタート
スプライトst:aを非表示状態にします
spvisible "st:a",0
[スプライトセット]を非表示状態にします
spsetvisible "st",0
スプライトst:aを表示状態にします
spvisible "st:a",1
スプライトst:aを表示状態にしました
スプライトst:bを一度非表示状態にします
spvisible "st:b",0
[スプライトセット]を表示状態にします
spsetvisible "st",1
[スプライトセット]を表示状態にしました
スプライトst:bを表示状態にします
spvisible "st:b",1
以上です。\nお疲れ様でした。
quit

97 :
>>96
すごく分かりやすいサンプル、ありがとうございます。
理解できたと思います。
spsetvisible "soundtitle",0 : spvisible "soundtitle:t1",1
↑これって要するに、spvisibleでスプライトだけ可視にしても
直前で属しているspsetを不可視にしているからスプライト"soundtitle:t1"も
不可視のままだったんですね
>>96で言う13行目と同じ状態ですよね
それを踏まえたうえで修正して、表示自体はできました。
スマートではない気がしますが、普通にsp単位で可視不可視を切り替えるようにしました
↓続きます

98 :
ただ、今度はz軸の疑問が出てきてz軸は0〜100で
0が最も手前だという認識です
77と76では76が手前に表示されますよね?
例えば、z=77が文字でz=76が背景だと、文字は背景に隠れて
見えなくなると思います
ですが、
spset "soundroom",100
 sp "soundroom:back",{name="stages\rmenu_bg.jpg",x=0,y=0,z=100} ;背景です
 sp "soundroom:bar",{name="bar\soundroom_bar.png",x=0,y=460,z=99,a=160} ;背景の手前に表示する棒(バー)
spset "st",99 ;スプライトセットとしても上記のセット"soundroom"より手前にしているはずなのですが
 sp "st_none",{name={"?---,menu4"},x=270,y=480,z=0} ;これを上記背景jpgより手前にしたい
 sp "st_t1",{name={"?灰色の思考,menu4"},x=270,y=480,z=0} ;これを上記背景jpgより手前にしたい
としても、"soundroom:back"が"st_none"や"st_t1"より手前に表示されてしまい
"st_none"や"st_t1"が見えなくなってしまいます
これってz軸の認識おかしいですか?
単純に数値が0に近い方が手前に表示される、という認識なのですが・・・

99 :
軸には正負あるから単純に大きい方が上なのではないかと試さずにエスパー

100 :
 sp "soundroom:back",{name="stages\rmenu_bg.jpg",x=0,y=0,z=100} ;背景です
 sp "soundroom:bar",{name="bar\soundroom_bar.png",x=0,y=460,z=99,a=160} ;背景の手前に表示する棒(バー)
↑これのz値を上下で交換して、背景のz値を99、棒(バー)のz値を100にすると
棒(バー)が背景に隠れて見えなくなるのでz値は数値が小さい方が手前、というのは
間違いないはずです。リファレンスにも書いてありました。


100〜のスレッドの続きを読む
【unity】とある3Dシューティング制作記録
【初心者】スレを立てる前にココで質問を【Part28】
めっちゃ面白いゲーム作る
◆ ツクールは終わった ◆
【UEI】shi3zスレ Ζ【enchant】
ゲームプログラマーの技術レベルは高い。
【Spine】2Dボーンアニメツール【Sprite Studio】
親父PGがゲームを作り始めるスレッド
シム人みたいな生活シミュゲームが作りたい
【OSS】みくみくファイター【Unity】【MMD】
--------------------
好きな小説3つ挙げて立ち去るスレ
JH audio part3
幸福の科学、斜、某村がヤバい件  虚&L&G
【悲報】七十七銀行のCMメイキングでも堀未央奈がハブられる…(齋藤白石生田秋元堀)
CR009 RE:CYBORG Part44
長期ヒキから脱ヒキした奴・する奴 part12.5
【デレステ】スターライトステージ★11196
井澤詩織さん
【令和初の】第92回 選抜高校野球大会出場校ランキング part6【優勝校はどこだ】
実写ゲーム総合スレッド
「催眠」「時間停止」「透明化」 →手に入れるならどの能力がいい?? [324064431]
クソ経営者のクソエピソード
【さらば】 新 労 組 結 成 【御用組合】
元ラジ○天社員ですが何か?
アーレスティのチャートはいいね
鉄道ヲタク@40代 5番線
【架空請求】更新料・敷金は取り戻せます2【違法】
【558khz】CRK ラジオ関西 JOCR【神戸】Part.12
【ムカデ】虫の対処法【大クモ】2
堀口恭司が離婚した本当の理由とは
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼