テトリスを作る (774レス)
上下前次1-新
1(19): 02/10/07 16:53 ID:Pf3z3KIH(1) AAS
みなさん言語は、javaでもHSPでもCでもいいからテトリス作って
ソースを載せてください
2(1): あぼーん [あぼーん] AAS
あぼーん
3(1): ひきプロ ◆8fhky/PGis 02/10/07 16:56 ID:??? AAS
外部リンク[zip]:www.geocities.co.jp
はやくなったらおかしくなりますが…VB
4: 02/10/07 16:57 ID:??? AAS
企画は総合発表&雑談スレッドに書いて下さい
このスレッドでまとまり次第、独立したプロジェクトスレッドを立てて下さい
(前触れの無いプロジェクトスレッドは削除対象となります)
5: あぼーん [あぼーん] AAS
あぼーん
6: あぼーん [あぼーん] AAS
あぼーん
7: 02/10/07 17:00 ID:??? AAS
この板のローカルルール
>企画は総合発表&雑談スレッドに書いて下さい
>このスレッドでまとまり次第、独立したプロジェクトスレッドを立てて下さい
>(前触れの無いプロジェクトスレッドは削除対象となります)
総合発表&雑談スレッド
2chスレ:gamedev
>>1は即座に削除依頼を出してください。
省1
8: あぼーん [あぼーん] AAS
あぼーん
9(1): 02/10/07 21:36 ID:??? AAS
ソース
int WINAPI WinMain(...)
{
return WinExec("tetris.exe", SW_SHOW);
}
※別途作成のtetris.exeが必要
10: 02/10/07 23:59 ID:??? AAS
>>3
ださすぎ、才能ないよ
11: あぼーん [あぼーん] AAS
あぼーん
12(6): 02/10/08 01:29 ID:4phHdMAC(1/3) AAS
遊び方:カーソル左右で移動、リターンキーで回転
プレイ環境:おそらく IE 5.01 以上?
<body onKeyDown=K=event.keyCode><script>X=[Z=[B=A=12]];h=e=K=t=P=0;function Y()
{C=[d=K-38];c=0;for(i=4;i--*K;K-13?c+=!Z[h+p+d]:c-=!Z[h+(C[i]=p*A-Math.round(p/
A)*145)])p=B[i];!t|c+4?c-4?0:h+=d:B=C;for(f=K=i=0;i<4;f+=Z[A+p])X[p=h+B[i++]]=1
if(e=!e){if(f|B){for(l=228;i--;)Z[h+B[i]]=k=1;for(B=[[-7,-20,6,17,-9,3,6][t=++t
%7]-4,0,1,t-6?-A:-1];l--;h=5)if(l%A)l-=l%A*!Z[l];else for(P+=k++,j=l+=A;--j>A;)
省2
13: 02/10/08 02:02 ID:??? AAS
7行すれには感服しますた
14: 02/10/08 03:15 ID:B8Ib8XsX(1) AAS
>>12
スゲェー!
15: 02/10/08 04:02 ID:??? AAS
>>12
うぅーー。ほんとにテトリスになってる。
Javaスクリプトってテトリスできるんですね?
感動。
しかも7行で。
16(1): 02/10/08 04:07 ID:??? AAS
>>12
すまん、悪いんだが、普通に展開するとどんな感じになるんでしょ?
いかんせん for() がどこまでかかるか分からなくて。(JAVAスクリプト書いた
ことないもので)
17: あぼーん [あぼーん] AAS
あぼーん
18: 02/10/08 07:06 ID:??? AAS
>>16
indentツールを使うべし
19(1): 02/10/08 10:20 ID:??? AAS
いちいち終了とカキコする必要無し
だまって放置できねえのかガキども
みっともねえなあ、ゲーム系PGは
20: あぼーん [あぼーん] AAS
あぼーん
21: pom 02/10/08 21:51 ID:95TlUE2v(1) AAS
これでどうだ? HSP
外部リンク[txt]:dainet.port5.com
22(2): コピペ 02/10/08 21:56 ID:4phHdMAC(2/3) AAS
V=20:screen ,200,400:title "0":dim B,4:dim C,10,V:dim D,10,V:randomize:F=2:boxf
dim A,4,7:A=1,4,5,6,5,6,10,14,5,6,9,13,5,6,9,10,2,6,5,9,1,5,6,10,1,5,9,13:repeat
wait 1:if G=0{rnd N,7:memcpy B,A,16,,16*N:H=3:I=-4:J=0:G=1}J-F:if J<0{K=0:L=1
gosub Z:if M=0{N=0:repeat 4:O=B.cnt\4+H:P=B.cnt/4+I:if P<0{N=1:break}C.O.P=1
loop:if N{break}dim Q,V:R=0:repeat V:S=cnt:N=0:repeat 10:N+=C.cnt.S:loop:if N>9{
Q.cnt=1:R+:palcolor 255:boxf 0,cnt*V,200,cnt*V+18}loop:if R>0{wait 50:color:boxf
E+R*R:title ""+E:N=19:repeat V:S=19-cnt:if Q.S=0{memcpy C,C,40,N*40,S*40:N-}loop
省7
23: 02/10/08 22:02 ID:??? AAS
>>22
コピペって他人のコピペということか。
なら出典も書こうぜ。作者への敬意はどうした。
24: コピペ 02/10/08 22:07 ID:4phHdMAC(3/3) AAS
ごめんよ
>>22の出展:
HSP - Hot Soup Processor
2chスレ:gamedev
25: 02/10/08 22:11 ID:??? AAS
見直した。
26: [age] 02/10/22 19:36 ID:??? AAS
AA省
27: 02/10/22 19:55 ID:??? AAS
テトリスなんてソースを要求するようなレベルじゃないだろ
28(1): [age] 02/10/24 10:16 ID:??? AAS
禿同。本当、ここって馬鹿ばっかりなんだね・・・。
29: 02/10/24 11:15 ID:??? AAS
>>28
クソスレ上げる貴様は馬鹿を通り越してキチガイだがな。( ´,_ゝ`)プッ
30(11): 02/10/24 12:21 ID:FJThY7vc(1/2) AAS
どちらかというと対CPUの思考ルーチンがいいんじゃないの?
テトリスサーバ立ててに思考ルーチンから信号投げあって強さ競う段階だろ。テトリスなら。
31(4): 02/10/24 15:36 ID:??? AAS
>>30
テトリスの強さを競うのは不可能
瞬時に計算できてミスが無いのなら永遠に終わらない
そのくらいのことも分からないのに何が「段階だろ?」なんだか
32(2): 02/10/24 16:59 ID:??? AAS
>>31
たまには検索しろ
テトリスが対戦ゲームになってることを知らないのか?
33(1): 02/10/24 17:22 ID:??? AAS
>>32
やっぱり分かってない
通常の対戦ルールでは多少ブロックがせり上がってくる程度では
瞬間的に計算可能である限り終わらない
三目並べの強さを競っているのと同じ状態になる
だからといってCPU戦専用に特殊ルールを導入したらテトリス以外の何かであって
テトリスの「強さ競う段階だろ」ということにはならない
34: 02/10/24 17:31 ID:??? AAS
画像リンク[jpg]:www2.strangeworld.org
35(2): 02/10/24 19:42 ID:0Bv0kr07(1) AAS
>>33
天然か?
テトリスには先読みの要素があるから、思考ルーチンにも癖が出るだろうが。
どうしても4段消ししたいからと粘って積み上がってしまうとか、より早く組むために加速と連打を駆使したがブロックがせりあがりハマるとか。
テトリスやったことあるなら、予測が必要なことぐらいわかるぞ?
囲碁や将棋のようなターン制じゃないんだから、逐次状況を把握する必要があるし。
考えが浅はかすぎ。
36(1): 02/10/24 20:46 ID:??? AAS
>>35
ブロックがせりあがる程度ではミスも遅れも無いCPUでは永遠に勝負がつかない
かといってテトリスを出すと10段上がってくるようなルールにするとテトリスとはよべない
そうなるとアルゴリズムの強さではなく、ほとんどの要素が運だけになってしまう
>囲碁や将棋のようなターン制じゃないんだから、逐次状況を把握する必要があるし。
これで全然理解していないのが確定
人間にはリアルタイムアクションに見えてもCPU側から見ればターン制と変わらない
省1
37: 02/10/24 20:50 ID:??? AAS
>どうしても4段消ししたいからと粘って積み上がってしまうとか、
>より早く組むために加速と連打を駆使したがブロックがせりあがりハマるとか。
それは単なる程度の問題ってことで。
「死なないように消していけば」絶対終わりませんな。ぷよぷよじゃあるまいし。
38: 02/10/24 21:18 ID:??? AAS
ターン制の話は無かったことにするのか?
もう少しプログラムを勉強してから出直せ
39(1): 02/10/24 21:36 ID:FJThY7vc(2/2) AAS
死なないようにちまちまやってて最強とはな。
残りの隙間1ブロックから初めても打開出来るかのような理屈じゃ話にもならんよ。
40: 02/10/24 22:38 ID:??? AAS
age荒らしのおかげで再生したじゃん、このスレ
珍しいこともあるもんだ
41(1): 02/10/25 03:26 ID:Agjby0bj(1) AAS
>>36がなんか勘違いしてるよな。
対人ではなくCPU同士で対戦させようとしてる話じゃないのか?
42: 02/10/25 05:45 ID:??? AAS
アフォはほっとけ
43(3): 02/10/25 07:26 ID:??? AAS
>>41
CPU同士だから内部処理ではターンがまわってくるのと変わらないということでは?
44: 02/10/25 08:55 ID:??? AAS
>>39
いつそんな理屈になったんですか?逃げないでください。
45(1): [age] 02/10/25 08:59 ID:??? AAS
おまえら意思疎通ができていない。超馬鹿だな(www
馬鹿同士永遠に討論してろ。
46: 02/10/25 09:18 ID:??? AAS
>>45
うーん、見ればわかることをそのまま書くだけで興奮できるなんて器用だねえ。
うまく皮肉れなかったのを、wの数増やしてカバー? うわあ。
47: 02/10/25 11:08 ID:q9Sa1cQR(1) AAS
>>43
内部処理的にはそうなるな。一見するとリアルタイムバトルのようだが、
内部処理的には1/60秒(一例)のスパンで切って、ターンを交互に回してその間に思考→移動(何もしない事もあり得る)
を繰り返すわけで実質パスの許されるターン制になるわけだね。
しかし、その「制限時間内」にコンピュータが次のアクションを考えきれなかったらいったいどうするのか
・・・・これへの対処法がわからない。
(オセロみたいに結論が出るまで処理待ち、なんてアフォな事は許されないし)
48: 02/10/25 11:40 ID:??? AAS
>・・・・これへの対処法がわからない。
対処法はない
ゲーム自体を進行させているのがCPU側だから
制限時間内に処理できなければゲームの進行が遅くなるだけ
シューティングゲームでオブジェクトが増えると遅くなるのと同じ
そもそもCPU側に正確な時間制限を課すのは不可能
正確に測定可能だったとしても強さがマシンの性能によって左右されることになる
省3
49: 02/10/25 11:42 ID:??? AAS
ブロックがせりあがるだけなら問題無いような気もする
50: 02/10/25 12:23 ID:djOn48Dh(1/2) AAS
>>43
>>30の話してるんじゃないの?
そりゃ、1CPUなら言ってる通りだけど。
まずは日本語だな。お前の場合
51: 02/10/25 12:56 ID:??? AAS
信号?というのは置いておくとして
メッセージを投げ合うということは通信延滞の少ない方が有利になります。
そんなアンフェアな状態でどうやって強さが競えるのでしょうか?
それを防ぐためにテラリウムのようにアルゴリズムそのものを投げる方式になると思うのですが?
52: 02/10/25 13:17 ID:??? AAS
少なくとも>>30は「強さを競う段階だろ」と言いきっている
ならばどうやってネットワーク越しに強さを競うのか「方法を提示すべき段階だろ」
53: 02/10/25 13:54 ID:??? AAS
対人ならアンフェアは許されるのに?
54(1): 02/10/25 14:33 ID:??? AAS
ゲームを楽しむことが目的の対人戦と強さを競うことを目的とするCPU戦では条件が異なる
少なくとも>>30は「強さを競う」と言っている
ではどうやって強さを競うのか説明すべき
55(1): 02/10/25 14:36 ID:??? AAS
テトリスはターン制だと言っておきながら同期を問題にするのはナンセンス
56: 02/10/25 15:04 ID:djOn48Dh(2/2) AAS
>>55
おまえ人からよく頭悪いって言われるだろ?
>>30>>35ときてターン制じゃねえって言ってんのにどこから勘違いできんだよ。
57: 02/10/25 15:06 ID:??? AAS
テラリウムのような方式にすればネットワーク越しでも同期は問題になりませんが、
>信号投げあって強さ競う段階
という方法がどのようなものなのか説明してもらわないと話が進みません
落ち着いて>>30の説明を待ちましょう
58: 02/10/25 15:12 ID:??? AAS
COM同士が対戦するのになぜ同期が問題になってんのよ?
どうせありもしない俺ルールに縛られてるんだろうけどな
特に>>54氏など見てると見てられない
59: 02/10/25 15:13 ID:??? AAS
で、説明はまだか?
60(3): 02/10/25 18:59 ID:SfJfGuMk(1) AAS
アホか。
先に謝るのが筋だろうが。
それに説明って何を説明すんだよ。
思考ルーチン持ったアプリ作って、テトリスサーバと信号やり取りするっつってんだろカスが。
回線状況云々はもう思考ルーチンの話だろ?
その話ならまだ追求する余地があるったんだよ。まんまじゃねーか、話聞いてんのか!!
61: 02/10/25 19:43 ID:??? AAS
つまり回線を確保するまでが遠足ですってこと?
62: 02/10/25 19:46 ID:??? AAS
>>60
だからその方式だと回線が弱いほうが不利になるつってんだろボケが
63(1): 02/10/25 21:36 ID:??? AAS
>>60
通信条件が違ったら強さが競えないんですが
それをどうするつもりなのかというところを説明してください
そうしないと
>強さ競う段階
にたどりつけません
64: 02/10/25 21:45 ID:??? AAS
舗装道路と泥沼でかけっこをして足の速さが競えると本気で思っているのか?
オメデテェナァ
65: 02/10/25 21:49 ID:??? AAS
未だにダイアルアップな人が不平を鳴らすインターネットはここですか?
66(3): 60 02/10/26 13:24 ID:HrdkkESO(1) AAS
>>63
まず謝れよ。
煽り方だけ一人前で謝り方は乳幼児以下か?てめえは。
通信条件をどうするかなんて何も言ってねぇだろ。
話の主旨をコロコロかえて逃げてんじゃねぇよ。
>テトリスの強さを競うのは不可能
>アルゴリズムの強さではなく、ほとんどの要素が運だけになってしまう
省5
67: 02/10/26 13:47 ID:??? AAS
AA省
68(2): 02/10/26 14:11 ID:??? AAS
>>66
それが示しているのは1CPUで強さを競うには問題があり
それ以降の話で通信させても問題があるということになった
じゃあ、どうやって強さ競う段階に出来るのかということだろ
>強さを競う段階だろ
と断定している以上、責任持ってどうすればいいのか説明するのが筋だろ
どうせ無理だろうけど
69: 02/10/26 14:23 ID:gfRWU+tS(1) AAS
タイムアタックにすればよい。
例えば100ライン消すまでの時間を競う。
70: 02/10/26 14:30 ID:??? AAS
そうなるとサーバは不要、同期の問題も無く、
単発消しがメインで運に左右されることになるけど、
それを強さと主張すれば競うのは不可能ではない
が、イマイチ面白くない
71: 02/10/26 14:31 ID:??? AAS
外部リンク[wmv]:www2a.kagoya.net
外部リンク[wmv]:www2a.kagoya.net
外部リンク:www2a.kagoya.net
72: 02/10/26 14:39 ID:??? AAS
AA省
73(2): 66 02/10/26 15:59 ID:??? AAS
>>68
謝れよ。ウンコ野郎。
>それが示しているのは1CPUで強さを競うには問題があり
>それ以降の話で通信させても問題があるということになった
>じゃあ、どうやって強さ競う段階に出来るのかということだろ
>>強さを競う段階だろ
>と断定している以上、責任持ってどうすればいいのか説明するのが筋だろ
省2
74(1): 73 02/10/26 16:12 ID:o6MpjTsM(1) AAS
>>68
強さを競う段階っていうのはな、
テトリスのゲーム自体のロジックではなく、
CPUの思考ルーチン(の強さ)を考える段階ってことだよな?解かるか?
『強さ』を決める要素には、そら一杯あるだろうな。
それを考えたらいかがですかー?って書き込みだったんだから。
…なんか、いくら打ってもお前が理解出来る気が全然しないよ。
省4
75: 02/10/26 16:13 ID:??? AAS
>>73
結局何も説明できないのか
76: 02/10/26 16:17 ID:??? AAS
>テトリスのゲーム自体のロジックではなく、
>CPUの思考ルーチン(の強さ)を考える段階ってことだよな?解かるか?
つまりテトリス自体のロジックが無い状態で
どうやってその思考ルーチンを考える段階になるのかまた謎が深まったと
説明求む
77: 02/10/26 16:39 ID:??? AAS
タイム縮めようと思ったら1ライン消しとかやってられないから
タイムアタックも賢さの指標になると思うよ
78: 02/10/26 16:47 ID:??? AAS
下押しっぱなしの速さで後は積まないようにするだけだから
最後はかなり微妙な差を競うことになりそうな気がするけど
79: 02/10/26 16:55 ID:SB1/m0nw(1) AAS
で、結局>>1はソースを貰ってもコードが読めなかったというオチですか?
上下前次1-新書関写板覧索設栞歴
あと 695 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.020s