5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Tonyu(豆乳)でゲーム製作-2-

1 :名前は開発中のものです。:05/02/06 14:35:02 ID:66Eqt5GR
ゲーム専用のオブジェクト志向っぽいスクリプト言語。

公式サイト
http://hoge1000.kake.info.waseda.ac.jp/tonyu/
Vectorの新着ソフトレビュー
http://www.vector.co.jp/magazine/softnews/020227/n0202273.html
関連サイト
http://www.geocities.co.jp/SiliconValley/1833/
http://ryota222.hp.infoseek.co.jp/cgi-bin/wiki/wiki.cgi
初心者向け講座
http://ryota222.hp.infoseek.co.jp/cgi-bin/wiki/wiki.cgi

以下参考になりそうなプログラム。ほとんどソースのみ
もぐらたたき風3Dシューティングゲーム
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/img/1799.zip
リアルタイム戦術シミュレーション
http://homepage2.nifty.com/notatnumber/files/SSF_EXT_v055beta.zip
RPG
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/img/3317.lzh
シューティング
http://khex7495v.kir.jp/Game/CyBreaker/CB_Ver101.zip
http://www5e.biglobe.ne.jp/~a_p/game/mmm105.zip
ドット絵エディタ
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/img/3272.zip
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/img/2186.zip
タイピング
http://2shin.net/cgame/game/game/TonyuType.lzh
ぷよぷよ風パズル
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/img/3112.lzh
ブロック崩し
http://hpcgi3.nifty.com/nobiro/lime/lime.cgi?control
http://hpcgi3.nifty.com/nobiro/lime/lime.cgi?sokai2

2 :名前は開発中のものです。:05/02/06 14:38:27 ID:HvF8RED6

      ___________
    //             \\
   / /                .ヽヽ
   l  l                  l l
  |  |                  | |       :
  .|  |______,,─=─____| |      ::::::
  |___     -'''''  ̄ ̄ ̄  ___|     :::::::::::::
 |_l__ヽ            /__l__|      ::::::
 |_l_`ニ/      。     ヽニ'__l__|   ..............:...............
 `l''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''l' ..:::::::::::::::: :::::::::::::::..
 |''''''l''''''''''''''''''l'''''''l ̄ ̄ ̄l'''''''''l''''''''''''''''l'''''''|::::::::::::::::   :::::::::::::::::
 |::::::|::::::::::::::::::|::::::|___|:::::::::|:::::::::::::::|:::::::|  :::: :: ::: ::
  |;;;;;L,,,,,,,,,,,,,,,'──────-`;;;;;;;;;;;;_l;;;;;;;| :: :::: ::: : :::: :::: :: :
  |::lニl|::::::::::::l──────-l:::::::::::::lニl::::|::::::::: ::: :: :
  `ニニ───────────:::::::::::::::::::::
  |:::::::::::|            (::○::::::::::::::::::::::::::::
  |:::::::::::|                |:::::::::::|
  `─-'                 `─-'
       なんだかわかりませんが、
         とりあえず黒煙を撒いておきますね   デリカ

3 :名前は開発中のものです。:05/02/06 14:52:58 ID:+JStAXyN
>>1


4 :名前は開発中のものです。:05/02/06 16:07:14 ID:66Eqt5GR
リンクミス

初心者向け講座
http://ea.uuhp.com/%7etaka/kouza/

5 :名前は開発中のものです。:05/02/06 19:47:56 ID:UYpoofg4
>>


6 :ミス:05/02/06 19:48:27 ID:UYpoofg4
>>1


7 :名前は開発中のものです。:05/02/06 20:13:11 ID:+JStAXyN
前スレの888でうpったACT素材っぽいのが更新したんで乗せときますわ。
ttp://uploader.zive.net/file/12056.lzh

8 :名前は開発中のものです。:05/02/06 20:40:13 ID:ID3uqL19
>>7



9 :名前は開発中のものです。:05/02/07 04:53:44 ID:BPKns4Ql
とりあえず、即死判定にならないように書き込み。

10 :名前は開発中のものです。:05/02/07 11:06:30 ID:lgunUPPK
マップにチップを並べて、実行する時マップが壊れる時が
あるのは使用なのかな

11 :名前は開発中のものです。:05/02/07 17:17:30 ID:CKbkKr/+
ところで前スレはへのリンクは貼らないのか

12 :名前は開発中のものです。:05/02/07 19:20:01 ID:7u/qbeKM
ほい前スレ。
Tonyu(豆乳)でゲーム製作
http://pc5.2ch.net/test/read.cgi/gamedev/1015143101/

13 :名前は開発中のものです。:05/02/07 21:16:20 ID:qB1/dDVA
>>10
正直豆乳は全然知らんが、それはお前が実行時に壊してる
だけじゃないのか?

14 :名前は開発中のものです。:05/02/07 23:14:04 ID:Z8Epn3lg
そういえば、サイズによって変な動きするとか何とか本家BBSの過去ログで見た気がする。

15 :名前は開発中のものです。:05/02/08 10:05:20 ID:PGZ6fGGJ
マップが16x12の場合
□□□□□□□□□□□□□□□□
(略)
□□□□□□□□□□□□□□□□

■の位置(16x12からはみ出た位置)にパターンを置くと
□□□□□□□□□□□□□□□□■
(略)
□□□□□□□□□□□□□□□□■
■■■■■■■■■■■■■■■■■

実行時にこうなる
■■■■■■■■■■■■■■■■■
(略)
■□□□□□□□□□□□□□□□■
■■■■■■■■■■■■■■■■■
原因は多分これ。

16 :名前は開発中のものです。:05/02/08 14:25:01 ID:AP/rBp96
サンクストン!!!

17 :名前は開発中のものです。:05/02/08 21:11:41 ID:UyHz7HHY
プログラム経験ないけど豆乳やってみようかな。。


18 :名前は開発中のものです。:05/02/09 17:51:42 ID:db0hRnw9
function test(x,y)
{
if(x>=0&&x<10&&y>=0&&y<10)
{
print("x"+x+"y"+y);
test(x+1,y);
//ここから
test(x-1,y);
test(x,y+1);
test(x,y-1);
//ここを削除するとエラーが起きなくなった
}
}

↑を実行すると読み込み違反が起きる
これでは再帰が使えないので困る

19 :名前は開発中のものです。:05/02/09 18:02:14 ID:okbAhi/R
>>18
test(9,0);はtest(8,0);を呼び、test(8,0);はtest(9,0);を呼びます。
つまり、永久に呼び続けることになります。

Tonyuは16階層ぐらいまでしか関数呼び出しを使えません。
それ以上深くなると呼び出し元を覚えているメモリが溢れてしまいます。

20 :18:05/02/09 20:21:34 ID:zYZCIwHN
>>19
ぅゎ、ひどいミスorz
これじゃ動かないわけだ。

関数呼び出しは30階層位まで大丈夫みたいだった。

21 :名前は開発中のものです。:05/02/10 00:34:14 ID:4gR3QPbc
>>1見るとやっぱ厨房が多いでつね。
けどクオリティ高いのもいくつかあったりwwwwwっうぇ

22 :名前は開発中のものです。:05/02/10 07:26:45 ID:o493u5hr
あくまで道具に過ぎないからな。ユーザの質が道具で決まるわけじゃない

23 :名前は開発中のものです。:05/02/10 15:25:17 ID:3GHEoTOv
スタック領域が64(256バイト)
関数を呼ぶたびに引数の数+ローカル変数の数+1消費
関数を抜けるとその関数を呼ぶときに消費した分回復

function A(a,b,c,d,e,f,g,h,i,j)
{if(a)return A(a-1,b,c,d,e,f,g,h,i,j)*2;else return 1;}
↑A(7)なら2+10+10+10+10+10+10=62で大丈夫
 A(8)だと2+10*7=72でエラー発生

64なんてあっという間に使い果たしてしまう。
256バイトと言うのはいくらなんでも節約しすぎ。
スタック領域を設定する関数が欲しい

24 :名前は開発中のものです。:05/02/11 02:59:31 ID:h3qzSvz3
再帰が使える仕様なのに実際には使えないなんて面白い仕様だなw
そもそもなんで豆乳ってわざわざ自前で(しかもやたら小さい)スタックなんか持ってんだろう?

25 :名前は開発中のものです。:05/02/11 03:05:16 ID:HnOecms1
そんなプログラムに詳しいなら
面白いゲーム作ってよ。

26 :名前は開発中のものです。:05/02/11 13:08:27 ID:6Vz429DJ
VMが自前でスタックを持たなくて、ほかの何が持つんだ、と。

27 :名前は開発中のものです。:05/02/11 14:25:26 ID:acEFUjTr
豆乳は一つのオブジェクトに一つのスレッドをモつんでしょ?
てことは、全てのオブジェクトにそれぞれスタックを割り当てないとダメ。
オブジェクト一つ一つだから、あまり多くを割り当てるとマズイ。

ってことじゃねーの?使ったことは無いんで実際は知らんけど。

28 :名前は開発中のものです。:05/02/13 05:26:12 ID:dNS9lmQx
>>1のタイピングの
main.tonyu

function keychk(variable,shift)
......

の部分が分からんのだが
誰かおせーて。

29 :名前は開発中のものです。:05/02/13 05:28:49 ID:BGU4Cjy+
おまえらわざわざ苦労してるんだねぇw

30 :名前は開発中のものです。:05/02/13 13:37:47 ID:mu5oEbAX
>>28
押されたキーのキーコードが何であるかをgetkey()で取得し、そのキーコードと
shiftキーの状態からアスキーコードを算出し、文字と比較している。
合っていれば1を、違っていれば-1を返す。
キーコードはaもAも関係ないのでこういう処理が必要になる。
>>1のタイピングではCAPSキーの判定はしていない。

>>29
苦労は買ってでもしろって言うからな。
それが無料でできるなんてすばらしいじゃないか。
開発環境の優劣なんていう話にはしないでくれよ、無意味だから。

31 :名前は開発中のものです。:05/02/13 14:17:57 ID:iz1d69bG
ttp://prog-etc.bbs.thebbs.jp/1106912195/

the掲示板という大規模掲示板サイトのプログラム板に
ここと似たスレがあり、公式で活躍してるごま太郎がいた。

32 :墓穴:05/02/13 15:58:57 ID:6h9BpMmJ
>>30
開発環境のうんたらについて同感。
だいたい、作者が「初心者がプログラムに親しむための」と言っているんだから初心者が楽しめばそれでよさげな。
Cと比べられても困るよな^^;

ryota氏のサイトが「準備中」だとか。
以前、彼のサイトでHSPとtonyuとの速度比較の話があったんだけど、実験結果では同等の速度だったとか。
なんだかんだ言っても透明処理なんかのことを考えるとやっぱりトロい気がしてなんないけども、ちょっと救われた気分だった(笑)

33 :28:05/02/13 17:15:42 ID:dNS9lmQx
>>30
Thx
タイピングってメンドイな..
日本語に対応するにはどうしたらいいでつか?
「じ」だったら J+I か Z+I とか..

34 :名前は開発中のものです。:05/02/13 21:29:22 ID:mu5oEbAX
//日本語入力テストサンプル(Enterの判定甘いです)
extends PanelChar;
$TextEditor.setPosition(4,4,200,16);
$TextEditor.edit();
t = "";
$TextEditor.setText(t);
while (1) {
  if($TextEditor.isEditing()){
    if(getkey(13)){
      gt = $TextEditor.getText();
      if(t==gt && gt!=""){
        $panel.fillRect(4,32,320,240,$Blue);
        $panel.drawText(4,32,t,$clWhite);
        $TextEditor.setText("");
        gt = "";
      }
    }
    t = gt;
  }else{
    $TextEditor.edit();
  }
  update();
}
//それにしても1行・1単語単位の入力処理は向かないね。
//J+IとかZ+Iとかに分けないと>>1タイピングっぽくは動かせないと思う。
//(あんまり豆乳さわってないのがバレバレで申し訳ない)

35 :名前は開発中のものです。:05/02/13 22:54:12 ID:t9vBAheF
>>33
http://ryota222.hp.infoseek.co.jp/cgi-bin/wiki/dl.cgi?jinput.lzh

拙作だが参考になれば。

36 :名前は開発中のものです。:05/02/13 22:55:23 ID:L/GULwb0
>>32
シューティングで弾500個とか出したらtonyuじゃHSPにはとてもかなわないような…

37 :28:05/02/14 00:05:27 ID:dNS9lmQx

>>34-35
Ryota氏かな?サンクス。
さらに複雑になったな(;´Д`)
他のタイピングもその方法なのだろうか...

>>36
いつだか忘れたけど
公式で誰か弾幕作ってた人が居て、
HP見に行ったら何かの命令をはずしたら処理が軽くなったとか書いてあった気がする。
どこのHPだか思い出せなくてスマソ

38 :名前は開発中のものです。:05/02/14 13:17:56 ID:JdMY6LJR
それはSTG作る人には耳よりな情報だね
なにかとオブジェクト多いジャンルだし
速度が出るならわざわざフレームレート落とすこともなくなるし

39 :名前は開発中のものです。:05/02/14 18:58:12 ID:aN8Gmrvw
なんか俺が試しに作った処女作の未完成版。
http://ababa.client.jp/game.zip

40 :名前は開発中のものです。:05/02/15 06:48:02 ID:Lin1MK5l
最初バルカン押しっぱなしで戦っててなんだよこれと思ったけど
ミサイル→エナジータメ→音を聞いて回避→ミサイル→
が分かってくると楽しい。誘導弾を壁にぶつけさせたり
Qボタンの早いミサイルって敵に当たる?

41 :39:05/02/15 19:15:38 ID:+MrFfSFJ
ミサイルのホーミング性能これじゃやばいと思うんだがかわしたあともっとスム
ーズに敵の方向に移動させたい、どうすればいいだろうか、やっぱ加速度じゃな
くて等速で敵の方向まで少しずつ向かせるほうがいいのか。でも等速にしてしま
うとどうもミサイルって感じがしなくて嫌だ、どうしたものか

42 :28:05/02/15 19:35:32 ID:2Cbln3bt
>>41
http://tonyu.kake.info.waseda.ac.jp/uploadcenter/joyful.cgi?mode=res&no=2903
これなんてどうでつか?

>>38
ちょっと探したけどやっぱHP見つからない...
たしかfor in...文によるあたり判定だったと思うけど

43 :名前は開発中のものです。:05/02/17 14:00:12 ID:b5q/r0NC
Hosyu!Hosyu!

44 :名前は開発中のものです。:05/02/17 16:03:18 ID:8HgWiXfH
>42
本家のUPBBSのNo.1540のレスの事かしら?
今は[直接移動] [58]の所で見られる。


45 :名前は開発中のものです。:05/02/17 20:31:57 ID:033u3baB
見てみた。フレームマネージャ−を使って高速化するという記事のとこだね。サンクス。

46 :名前は開発中のものです。:05/02/23 21:17:24 ID:SiWRy1DD
age

47 :名前は開発中のものです。:05/02/25 19:20:06 ID:KqRGgDmE
イラン戦絶対勝つよな?でもなぁ…

48 :名前は開発中のものです。:05/03/01 20:27:10 ID:7SJj9vcR
「あきら」と名乗る者からspamが来た。
「あらき」かと思ってしまったorz

49 :名前は開発中のものです。:05/03/02 05:00:25 ID:l1qY63fd
あらきあきら

50 :名前は開発中のものです。:05/03/02 14:49:38 ID:4cHgIc73
ここはTonyuスレでつよね?

51 :名前は開発中のものです。:05/03/12 19:59:25 ID:7L4F3Iro
誰かちゃんねらで作ってる香具師いねーのかよw

52 :名前は開発中のものです。:05/03/12 20:23:47 ID:cW59ts7B
thebbs(某ネット掲示板)ならごま太郎がいたよ。誘導してみるべし

53 :名前は開発中のものです。:05/03/13 00:11:29 ID:p0Tz/TEo
オブジェクト位置はそのままに背景だけスクロールさせるのってどうすればいいんだろう

54 :名前は開発中のものです。:05/03/13 01:17:26 ID:5rDeSjw3
>>53
公式HPのサンプルにあったべ
(http://tonyu.kake.info.waseda.ac.jp/scroll/html/HID00000001.htm)

55 :名前は開発中のものです。:05/03/13 12:05:42 ID:9Yt7eoV0
もしかして全オブジェクトに対して
スクロール変数分の移動スクリプトを追加せなあかんの?
めんどくせー

56 :名前は開発中のものです。:05/03/13 12:25:19 ID:Ob0T/wR0
>>55
スクロールの変数をsx、syとしたら、
全部のオブジェクトの頭に
function onUpdate(){
x+=sx;
y+=sy;
}
とつけてみよう。

57 :名前は開発中のものです。:05/03/13 12:33:33 ID:9Yt7eoV0
>>56
重くなったりしません?

あと、画面表示系をオブジェクト座標との関連ではなく、単純な数値でつけてきていたので、
例えば画面端設定や、敵出現位置指定を、これから全部オブジェクト座標+αで指定しなおさねばならない・・・
トホホ。

58 :名前は開発中のものです。:05/03/13 12:39:52 ID:9Yt7eoV0
いっそ背景をオブジェクトで表示して流していければいいのだが、
それもまた面倒くさいんだよなん。
マップだけ動かせるような何かがポンとあれば苦労しないんだけど、考えたら実用性薄いか

59 :名前は開発中のものです。:05/03/13 13:13:31 ID:Ob0T/wR0
$viewX、$viewYを使うって手もある。

60 :Kroitz@tonyu.yi.org:05/03/13 15:53:15 ID:O5BTFpuF
少し高等テクニックだけど

/* CustomDXChar.tonyu */
extends DXChar;
function /*override*/ draw(){
 drawScreenXY(1);
 super.draw();
 drawScreenXY(0);
}

こうしておいて、

extends DXChar;
となっているところはすべて
extends CustomDXChar;
に変える。

TextCharとかSpriteCharも使うなら、CustomTextCharをCustomDXCharと同じ内容で作って継承すればよい。

61 :53:05/03/13 18:42:52 ID:FkcIHaHj
>>60
なんだかわからないけれど面白そうですね

とりあえず、一つのオブジェクトを座標(0,0)にして、
全ての値を$**.x+数値、$**.y+数値と組みなおしてみますわ。

ついでに
現在製作中のSTGのプランを言いますと
タイトル・・・architect(仮)
ストーリ・・・電脳世界に送り込まれた結晶化ウィルスが、悪の電脳創造主をやっつける
システム・・・
Aでショット。
Bで、ステルスダイブ発動(短時間無敵特攻)。ダイブ継続中に敵機を破壊することでダイブが継続しコンボ数も増える。
敵を溜めてからダイブで敵の間を渡り歩くゲーム。
回避不能弾幕をダイブで抜けたり、固い敵を挟んでダイブを継続して破壊することなんかが可能。

62 :53:05/03/13 18:46:09 ID:FkcIHaHj
一つ、豆乳で不思議なこと。
少数計算になると何故急に数値が端数になるのだろう

63 :53:05/03/16 22:29:15 ID:RMcfDzFN
・・・駄目だ面白くなる気がしない・・・

64 :名前は開発中のものです。:05/03/17 07:27:51 ID:c36IWw1t
作り手が面白くなくなってきたと感じる時期を乗り越えれば
ようやく遊び手が面白いと感じる出来になる

遊び手を面白くするためのスパイスは、作り手には煩雑なことが多い
がんがってちょ

65 :墓穴:05/03/18 14:41:50 ID:AUYQEeSt
>>64
同感。
もっとも、俺は「面白くするためのスパイス」が抜けて作り手に優しく遊び手につまらないものしか作れないけど。

66 :53:05/03/18 21:29:23 ID:pmqskpdL
面白いと思った構想が案外つまらなかったりして悲しいものですね。
もうじきここに試作品でもUPしますわ。

67 :墓穴:05/03/19 00:05:40 ID:N8oUfUva
なんだか、アクションゲームでマップの取得がうまくいかない。てか、取得はいいけどマップにちびっと埋まる。
32x64サイズキャラクター(ごま太郎のうんたらで試してみてた使いまわし)で左、左上中央、左上、上、右上、右上中央、右、右下中央、右下、下、左下、左下中央の十二箇所でマップを取得
@*@*@
@***@
@***@
@***@
@*@*@
の@のところでマップを取得。
ある程度はマップに埋まらないんだけど、ほんの少しだけ埋まったりすることがあって潔癖症にはつらい。
マップを取得する箇所は十分すぎるほどだと思うんで、あとはいかに「埋まらない」プログラムをするか。
何かいい方法はないかな?

68 :名前は開発中のものです。:05/03/19 00:35:29 ID:gPFYclnz
x+(キャラクターの幅)/2で右側判定
x-(キャラクターの幅)/2で左側判定
とかしなきゃなんないんじゃないの?
あ、あとvxとかもいれなきゃなんないか。

69 :名前は開発中のものです。:05/03/19 00:58:43 ID:Dez6S2iy
俺もなにもわからず最近はじめたばっかりで、いろんなとこからひっぱってきたりこねくりまわしたりしてる
while(1){
if ($map.getAt(x-16,y)==$pat_Block+0) x+=3;
if ($map.getAt(x+16,y)==$pat_Block+0) x-=3;
if ($map.getAt(x-15,y)==$pat_Block+0) x+=5;
if ($map.getAt(x+15,y)==$pat_Block+0) x-=5;
if ($map.getAt(x,y-20)==$pat_Block+0) y+=2;
if ($map.getAt(x,y+23)==$pat_Block+0) y-=4;
if ($map.getAt(x,y-23)==$pat_Block+0) y+=2;
// if ($map.getAt(x,y+20)==$pat_Block+0) y-=2;
anim.pause();
if (getkey(39) && $map.getAt(x+16,y)!=$pat_Block+0 ) {
x+=3;
f=0;
anim.swing($pat_player+0,$pat_player+2,5);
}
// ↑ カーソルキー右が押され、さらに右側が壁でなければ右へ移動
if (getkey(37) && $map.getAt(x-16,y)!=$pat_Block+0 ) {
x-=3;
f=1;
anim.swing($pat_player+0,$pat_player+2,5);
}
// ↑ カーソルキー左が押され、さらに左側が壁でなければ左へ移動
y+=vy; // vy: y 方向の速度。 yにvy を加える
if ($map.getAt(x,y+24)==$pat_Block+0 ) { // ブロックに当たっていたら
vy=0; // 落下速度を0にする
if (getkey(32) && $map.getAt(x,y+5)!=$pat_Block+0 ) vy=-10; // スペースキーを押したらジャンプ
if (getkey(32) && $map.getAt(x,y-20)==$pat_Block+0 ) vy=-1;
} else { // ブロックに当たっていなかったら
vy+=0.5; // 落下速度を上げる
}
じつにきったないが参考にでもなれば

70 :53:05/03/19 01:46:45 ID:XRt4+XXn
tonyu本家のアップローダーはちょっと小さくて、
音声ファイルの多い本作をUPできませんでした。

http://nyannyan3.minidns.net/uploader/File/20050319013847archi.zip

150時間で消えるようですが、やってみてくださいな

71 :名前は開発中のものです。:05/03/19 02:24:36 ID:NYO1MV/Z
ダイブ気持ちいい。

72 :53:05/03/19 21:27:50 ID:5oKGUCgi
>>71
ありがとうございます。

73 :名前は開発中のものです。:05/03/20 00:08:59 ID:QvhXsMGf
>>70
文字が震える演出がとてもいいと思いました。

遊ばせ方のレパートリーがすくなさそうなゲームデザインですね

74 :名前は開発中のものです。:05/03/20 13:12:55 ID:nS7TWucq
>53
なかなか良いね、成長を期待。

どうでもいいが震度6弱キター

75 :墓穴:05/03/20 17:21:50 ID:5fecn8LO
>>69
どうもありがとう。
ただ、基本的なプログラムはできているので、問題はもうちょい複雑っぽ。いろいろ試してみますか。

76 :名前は開発中のものです。:05/03/20 19:49:09 ID:mc9ZZlXI
>>75
とりあえずうpしてくれ

23 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)