テトリスを作る
みなさん言語は、javaでもHSPでもCでもいいからテトリス作って ソースを載せてください あぁ、書き忘れがありました。 次のテトラミノが出てくるまでの時間はまた別です。 これもLvが上がるに連れて、短くなるのですが・・・。 下に落ちてから(フィールドに出てから)、固まるまでの時間です。 はい。 ttp://2st.dip.jp/imgbbs/src/1090794859.png 某子鯖でget ( д ) ゚ ゚ なんで流れてんのさ、ねぇ、ねぇ・・・? 今日を持って開発終了 どっかのup職人気取りと同じパターンだな。 もう来ないでいいよプププ プがついてる書き込みを見ると「夏だなぁ」ってほほえましくなるね。 readme.txtより引用 3-最後に必ず読んでほしいこと 著作権とかよくわかりませんが、おそらくグレーゾーンだと思いますので。 その辺に公開とかはやめてください。 二次放流もしないでくださいおねがいします。 そういうの見つけ次第フィックス等開発もすべてやめますので。 了承ください。 個人では作ってると思うけどね。 -------------------------------------------------- まぁ、俺の手元に来たってことは流れてるんだな 更に、コンパイル済みだったのは何の罠ですか?普通に動いたけれども >473 の開発終了宣言もでたことだし クラスタワードは >471 の2行目で ファイル名tapで引っ掛かってきたら最高だな と、ネタをふってみる サイズ的にそれっぽいものがあったが カケラも落ちてきません。 釣りか? 2a789c7200d2ee3186b1203846b4d14b ttp://www.nhk.or.tv/kow/program/index.php ぼくちんのサイトに作り方かいてある。 C言語。コマンドプロンプト上で動作。ポインタなし。構造体なし。 Visual C# .netでテトリス作るのに参考になるサイトないですか? そんな極めて状況の限定されたことを解説してるサイトなんて、 よほど貴方の運が良くない限り存在すらしないと思うぞ。 >>483 今ny2で流れてる奴、ソースついてるから開いてみれば あれ、C++だったかも知れん・・・・・・ テトリス) tap ver0.2b (Normal,Master).zip テトリス) tap ver0.5a (Normal,Master)ツモ微調整.zip テトリス) tap ver0.9a (Normal,Master,Death,Shirase-Beta).zip テトリス) tap ver1.1b (Normal,Master,Death,Shirase-Beta,Death+).zip テトリス) tap ver1.1c (Normal,Master,Death,Death+,Shirase-Beta)ツモ再調整.zip テトリス) tap ver1.3a (Normal,Master,Death,Death+,Shirase-Beta,Practice)TGMコマンド追加.zip テトリス) tap ver1.4c (Normal,Master,Death,Death+,Shirase,Kamui,Practice)目測、体感テストver.zip 今まで本人に貰った奴w まだホールドなかった、Practiceは好きなLvからできる奴。 >>487 サンクス でも全然引っかからない。。。(´・ω・`) >>487 あぁ?リネームされてるとかねぇだろーな? 引っかからない(´・ω・`) テトリス) tap ver1.5a (Normal,Master,Death,Death+,Shirase,Kamui,Practice)カムイとシラセ微調整、HOLD追加.zip Readmeの一部 ShiraseとKamuiはNext3つ強制表示 フィールドがTAPなのはお察しください。 ロケテの時カメラで撮るとかチキンなのでできませんでした。 HOLDもKamuiとShiraseのみです。 ホールドって水色ハマリ回避以外の使用方法がわかりません・・・。 ついさっきメッセで貰った 今からny2で共有するぜっ >>492 引っかからないよ・・・(´・ω・`) ファイル名はそのままですか? >>492 のファイル名でantinny流してるのどこのどいつだ こちらにTGM系でGMランクとったことのある人ですぐ近くにMacがあり、使用できる方いませんか? テストしてほしいものがあるのですが。 テトリスのネット対戦ものってあるの? なかったら俺作ろうかな。 ttp://game10.2ch.net/test/read.cgi/netgame/1055676142/l50 ハッシュ書いてもいいのかな やっぱTi出てからにする 723 名前: ゲームセンター名無し [sage] 投稿日: 2005/04/30(土) 05:09:23 ID:??? ttp://www.vipper.org/vip3584.jpg nyでやっと見つけたと思ったら モードが出ない件について >>515 いいんじゃない? というか、開発状況報告スレのほうがいいと思う。 >>516 ここ人居なさ気っすね。 現在、開発状況報告スレでちまちまやってますんで。 >>344 >段階学習スレの絵描きさんバージョン それやろうとしたら激しく罵られた しかも的ハズレな(素材提供してもらって楽するな)という批判 こっちが絵を描くのになぜそういう話になるのか結局わからず この板なんだか頭のおかしい人が常駐しててやりにくい 回転法則ってこんな感じなのがいいんだっけ? □□□□ □□■□ ■■■■←□□■□ □□□□→□□■□ □□□□ □□■□ □□□□ ■■□□ □□□□ □■□□ ■■■□←□■□□←□□■□←□■□□ ■□□□→□■□□→■■■□→□■■□ □□□□ □□□□ □□□□ □□□□ □□□□ □■□□ □□□□ □■■□ ■■■□←□■□□←■□□□←□■□□ □□■□→■■□□→■■■□→□■□□ □□□□ □□□□ □□□□ □□□□ □□□□ □□■□ ■■□□←□■■□ □■■□→□■□□ □□□□ □□□□ □□□□ ■□□□ □■■□←■■□□ ■■□□→□■□□ □□□□ □□□□ □□□□ □■□□ □□□□ □■□□ ■■■□←■■□□←□■□□←□■■□ □■□□→□■□□→■■■□→□■□□ □□□□ □□□□ □□□□ □□□□ あとこれも。 □□□□ □■■□ □■■□ □□□□ TTCが定めるワールドルールとかっていう奴は全然分からなス >>520-521 俺は、4行4列の行列として扱って「行列の回転」の演算を利用したよ ただ単に行列の回転でもいいけど、そのリスト見てわかるように 赤以外のブロックの最底面の位置は合わせた方がいいぞ。 じっくり遊べば気づくかもしれんが、接地中の操作性がまるで違うから。 テトリスワールドは床蹴りやらで対応しているが、個人的にそれはどーかと。 □□□□ □■□□ □■□□ □■□□ ■■■□←■■□□←■■■□←□■■□ □■□□→□■□□→□□□□→□■□□ □□□□ □□□□ □□□□ □□□□ ↑ こうだったら接地中、回転させると浮いてしまうはず。 当時、なぜ接地中でも浮かないんだろうと思ったけど、こんな事だったとかなり後で分かったぽ 壁 壁 .壁 │ │ .│ │■ │■ ...│ ■ │■■ → ■■■ → |■■■ │■ │ .│ │ │ .│ これができれば大半の人は満足するんじゃね? 少なくとも、俺の周りでテトリス好きの人は>>524 がクリアできてるゲームしか遊んでないけどね ただ、確かにシフトして底面を合わせる回転方式をスマートに実装するのは難しいな。 補正量を記述した定義ファイルを別に作ってそれを読み込ませて対応したが、少し非効率な気もする。 HSPでテトリス作りたいんですけど、何から手をつけて良いかがわかりません。 2次元配列を使うのですか? >>531 まずはこのスレを頭から読み直せ 話はそれからだ。 何がわからないか書いてみな、 今漏れも久しぶりにHSPさわってるから。 532さん、レスありがとうございます。 とりあえず、見づらいですが途中までのソース載せときます。 buffer 1,,,1 picload "tetris.bmp" ;32×32の灰色のブロックと黄色いブロック screen 0,415,607,1 palcopy 1 *START gmode 2 gosub *SETMAP *LOOP1 redraw 0 gosub *ブロック gosub *DRAWMAP redraw 1 await 60 goto *LOOP1 *ブロック BY+3 stick KY,8 if KY=1 :BX=BX-32 if KY=4 :BX=BX+32 if KY=8 :BY=BY+16 return *DRAWMAP color 0,0,0 :boxf 0,0,414,606 repeat 19 RCNT=cnt repeat 19 if MAP.cnt.RCNT=1 { pos cnt*32,RCNT*32 :gcopy 1,0,0,32,32 ;壁用灰色ブロック } loop loop pos BX,BY :gcopy 1,32,0,32,32 ;落下用黄色ブロック return *SETMAP dim MAP,19,19 MAP.0.0=1,0,0,0,0,0,2,0,0,0,0,0,1 MAP.0.1=1,0,0,0,0,0,0,0,0,0,0,0,1 ∫ MAP.0.17=1,0,0,0,0,0,0,0,0,0,0,0,1 MAP.0.18=1,1,1,1,1,1,1,1,1,1,1,1,1 repeat 19 RCNT=cnt repeat 19 if MAP.cnt.RCNT=2 { BX=cnt*32 :BY=RCNT+32 MAP.cnt.RCNT=0 } loop loop return これで以上です。 まずは黄色いブロックが、底辺まできたら蓄積されるようにしたいのですがどうしたら良いでしょうか? ちなみに、1が壁用ブロック、2が落下用ブロックです。 (本当は12×19マスの配列にしたいのですが、良くわからず19×19の配列になってます) レスがありませんね。 いや、随分と素っ頓狂なプログラムを書いてしまいました。 アドバイスのしようがありませんものね。 どうぞ、僕のことはスルーして次の話題に行ってください。 >>538 ちょwww自分のレス遅かったのにそれかよwww >>532 が来るまでこれでも見とけ ttp://gamdev.org/w/?%5B%5B%A5%C6%A5%C8%A5%EA%A5%B9%C9%F7%CD%EE%A4%C1%A4%E2%A4%CE%A5%B2%A1%BC%A5%E0%A4%F2%BA%EE%A4%EC%5D%5D レスありがとうございます。 リンク先見ました。 スプライトとプレイフィールドの意味がわからないですが、 とりあえずペイントソフトで七種のブロックをつくってみます。 リンク先にあった〜コウのポケット〜をみて、HSP風に変えてみました。 dim A.12.21 A.0.0=9,0,0,0,0,0,0,0,0,0,0,9 A.0.1=9,0,0,0,0,0,0,0,0,0,0,9 ( 省 略 ) A.0.19=9,0,0,0,0,0,0,0,0,0,0,9 A.0.20=9,9,9,9,9,9,9,9,9,9,9,9 repeat 21 rcnt=cnt repeat 12 pos cnt*15,rcnt*15 if A.cnt.rcnt=9 { mes "口" } loop loop stop ここまでが僕の限界です。 ブロックは別に配列を作るそうですが、どうしたら良いのかまったくわかりません。 ここのを参考にしながら作ってみた。 ttp://kasamatusan.sakura.ne.jp/cgi-bin2/src/ichi23414.exe.html win32 SDL.dll 必須(同じフォルダに置く) SDL.dll ttp://www.libsdl.org/release/SDL-1.2.9-win32.zip テトリスのCPUアルゴリズムのコンテストってこのスレでやった方がいい? おもしろそうだな ム板に将棋や麻雀のCPUアルゴリズムを競うスレがあったが ID表示が無いせいでなかなか議論が進まない傾向が見られた 一方こちらは人が居ない オセロと同じでテトリスは単純だからアルゴリズムはFAが出てる だから速度で競うしかないからやってもつまらんよ >>546 後はTGMみたいにアイデアと操作性の勝負になるんだよな。 NEXTがかなり先まで見える状態で 下まで掘り返すプログラムも簡単にできるのか? 今だーーー!550ゲットーーーーーー!!!!!!!! ただいまTETRIS2002ガイドラインになんちゃって準拠したテトリスを作ってるところでつが、 T-SPINとスーパーローテーションの実装方法が分かりませんでつ。 ご指南いただければ幸いかと。 Tスピンねぇ… @固定される直前の動作が回転である A左右移動できない B最後に回転した方向にもう一度回転できない この条件がすべて揃っていればイイんじゃないでしょうかね >>552 晒すのが先 出来たところまででいいからさ 一つだけ言っておくが クレ厨の言うことなんか聞くこと無いんだぞ >>555 すんません ttp://www.freewebs.com/pme_jp/tetris.lzh いちを操作方法。キーコンフィグはまだ無い。すまんね。 ←→:移動 ↓:高速落下 ↑:ハードドロップ [A]or[C]:回転 [X]:ホールド ※:[ ]の中はキーではなくてボタン。F1キーを押して変更できる 注意:今のところどれだけライン消してもレベルは上がりません ツクールXPで作ってるから、RTPのダウンロードしてない人はやっといて。 完成してないのに RTPのダウンロードやっといてとは随分な言い方ですね >>557 乙 スーパーローテーションは、まず壁に当たらずに回転できるならそうして、できなかったら4つの壁蹴り候補を総当りするっぽいです。 ここの画像が参考になるかも。 ttp://www.the-shell.net/img/srs_study.html T-SPINは、 1.種類がT型テトラミノ 2.固定前に行った操作が接地した状態での回転 3.固定したときに、テトラミノの四隅(☆の部分)に3つ以上のブロックまたは床、壁がある ☆■☆ ☆■☆ ☆ ☆ ☆■☆ ■■■ ■■ ■■■ ■■ ☆ ☆ ☆■☆ ☆■☆ ☆■☆ これら全ての条件が成り立てば成立します。 ちなみにこれはテトリスDSの判定方法です。 テトリスワールドだと壁や床がブロックと見なされないようです。 TGM3だと3番の条件が無く、その代わりに1ライン以上消えることが条件となります。 そもそもT-SPINが無いゲームもいっぱい存在するのでT-SPINは必須では無さそうです。 >>558 書き方が悪かったら謝ります orz でも無いと動かないから勘弁して。 >>559 GJ&dクス!! これを参考にしてやってみて、うまくいったらまたここに晒してみます 最近Javaでテトリスを作っていたのですが、壁蹴りのアルゴリズムがわからなくてぐぐってここに来ました。 >>559 さんの貼ってるサイト見ました。 総当りというのは、それぞれのブロックのページにある、ブロックのアニメーションの 数だけ全部総当りてことでしょうか? やはりスーパーローテンションの挙動はブロックによって考える必要があって、 統一された規則があるわけではないんですかね・・・? ちなみに今途中まで作ってるのはこれです。 http://hilala-web.hp.infoseek.co.jp/Tetris/ 普通に回転部分を作ると、回転出来なかったら回転しない で終わりだと思うけど、 そっからさらに続くのが壁蹴りの総当たり。 要するに左にずれて回転すれば回転出来るか、右にずれて回転すれば回転できるかってのを 順々に試していって、成功したらその状態に確定という事をやる。 (L字ブロックのいわゆる『陰謀』は、この順々に試すという性質によるもの。つまり仕様ってのは嘘じゃない) んで、セガテト以外の回転方式だと上にずれて回転できるかってのを試す、 いわゆる床蹴りってのが必要になってくると思うんだが 個人的にはこれやるぐらいならおとなしくセガテト方式にした方がいいと思うなぁ。 >>563 ああ、なるほど。 なんとなく床蹴りは入れてみたいと思ってるのですがw とりあえず左右だけ、壁蹴りの実装に挑戦してみます。 俺、X68kで BASIC覚え始めてから3週間くらいで テトリス作った。 でも、どんなにコードをブラッシュアップしても 遅すぎてゲームにならんかった・・・。 ロジック以外は同じでボタン操作するロボット作って 勝負させたらいいんじゃないの? なんとか実装してみました。 細かい挙動や、バグはまだ確認していないので何か不具合あるかもしれませんが・・・ http://hilala-web.hp.infoseek.co.jp/Tetris/ read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる