だれか作って。
初めての 2 ゲット!!
#てか…開発言語とか…あと作って欲しいなら作って欲しい理由言えよ…。 いくらネタでもさ。
3 :
仕様書無しさん:01/10/16 19:31
矩形ゲームなら簡単なんだがテトリスは2年かかるよまじで。
4 :
仕様書無しさん:01/10/16 19:33
環境にもよるけど・・DOSテキストでいい加減なものなら一人/日だな
5 :
仕様書無しさん:01/10/16 19:36
>>4 いや、それは時間のかけ過ぎでしょう。
Win上でGUIレベルで4時間ぐらいでしょ?
糞スレあげんな。
>>5 なんのかんのいっても4時間なんかあっという間。
どういう作りにしようかなぁ〜って考えてるだけでも結構かかるよ。
作ったこと無いと簡単げにみえるけど
テキストでも一日じゃできないよ。
まあ、できるといいはるんならやってみたらいい。
もしできたらダウンして遊んであげる。
だからって 2 年はないだろ。
10 :
仕様書無しさん:01/10/16 19:43
4時間じゃBGMの作曲すらできねぇ。
11 :
piyopiyo:01/10/16 19:44
ぷよぷよ1日半で作ったことあるけど
同じようなもんじゃないの?
12 :
みちゅ ◆zzfy/JR2 :01/10/16 19:47
テトリスってサンプルプログラムありそうなりね☆
でも作れと言われたら作れなさそうなり( ̄▽ ̄;)
ありそうっていうか、そこらへんに落ちてんじゃないの。
BGMなら15分で作れそうだ
>>7 落ちげーなら、stateでしょ?
それに複雑な判定がないとなれば、すでにコースは決まっている。
せめて新卒研修でぷよぷよ同等品を作ることぐらいの
レベルにはなってほしいよなぁ
調子よければ四時間で形になるかな。
でもdirectxとか知らないからな。あとリアルタイムにキースキャンする方法も調べないとわかんない。
でもtextベースとかかなり簡単にすますつもりならコーディング正味4時間は十分かもね。
17 :
みちゅ ◆zzfy/JR2 :01/10/16 19:52
皆しゃんスキル高いなりね☆
18 :
仕様書無しさん:01/10/16 19:53
正味の時間と、あちこち調べたり試行錯誤したりする時間って
かなぁり違うよね。
正味の時間で見積もりして痛い目にあったこと多し。
今日も会社でお泊りするような連中が食後の息抜きしてるんだろ>17
高校の時にBASICで1週間かけて作った。
今GUIで作ったらどれくらいでできるだろう。
みんなそれぞれに挑戦してみない?
21 :
みちゅ ◆zzfy/JR2 :01/10/16 19:55
やっぱりC言語で作るなりよね?
おれはJavaScriptが一番早いと思う
23 :
みちゅ ◆zzfy/JR2 :01/10/16 19:58
VBならサンプルありそうなりね☆
24 :
仕様書無しさん:01/10/16 19:58
ただ組むだけなら簡単だがちゃんと遊べるようにするには…
25 :
みちゅ ◆zzfy/JR2 :01/10/16 20:03
誰かiアプリで作ってくれっちゃ☆
>>24 インチキでもなんでも動きゃいいんだよ。
いつも仕事でやってることだろ?ワラ
言語及びプラットフォームは自由、ということで。
対戦はいらない(不可能な言語もあるので)。
音は出そう(BGMの完成度は問わない)。
ソースの美しさは度外視。あくまで「開発時間の短さ」を競おう。
さぁタイムトライアルだ♪
>>27 月額100円かよw
携帯プログラマーの惨状がひしひしと伝わってくる・・・。
int main(void)
{
TetrisMain();
return 0;
}
31 :
みちゅ ◆zzfy/JR2 :01/10/16 20:11
>>27 お金払いたくないなり(^^;)
でもここの人達が集結したら凄いソフトが作れそうなりね☆
みちゅまとめ役やりたいなり(*'-'*)
みちゅってあのひろみちゅ?
33 :
みちゅ ◆zzfy/JR2 :01/10/16 20:13
>>28 仕事ほっぽり出してでも挑戦してみたい(w
35 :
みちゅ ◆zzfy/JR2 :01/10/16 20:14
>>32 誰なりか?
みちゅは海外サッカ〜板によく居るなりからよろしくっちゃ(*'-'*)
>>31 ジュース一本より安いだろボケ!!払え!!
>>31 >みちゅまとめ役やりたいなり(*'-'*)
こんな濃いメンバー、俺だったら絶対お断りだな(w
#include <stdio.h>
int main(void)
{
TetrisMain();
printf("
>>33ヤター!!");
return 0;
}
#include <stdio.h>
#include "tetris.h"
int main(void){
if(TetrisMain()==GOOD)
printf("
>>33ウワーイ!!");
printf("Message\n 誰か先作ってくれ。");
return 0;
}
40 :
仕様書無しさん:01/10/16 20:26
>>31 >みちゅまとめ役やりたいなり(*'-'*)
個別に作るんでいいんでないの?
41 :
仕様書無しさん:01/10/16 20:28
つーかLinuxのテトリスならソース公開されてるじゃん。
>>38-39 version up のたびに余分な機能ばかりを大量につけていく
某OSのようだ… (w
出来た!といってブラクラを貼る人出てくるのかな?(w
44 :
間違えた・・:01/10/16 20:43
>>28 >対戦はいらない(不可能な言語もあるので)。
ネット対戦結果
1st:仕様書無しさん
2nd:仕様書無しさん
3rd:仕様書無しさん
4th:仕様書無しさん
5th:仕様書無しさん
6th:仕様書無しさん
・
・
・
賢明な判断だと思われ。
仮にもコンピュータの仕事に関わる人間が
ブラクラを恐れるのはどうかと・・・
50 :
仕様書無しさん:01/10/16 21:44
高校生の時、Z80アセンブラで1週間で作った。
もどきだから厳密なアルゴリズムは違うけど。
>>48 ブラクラはいいんだよ。
グロがいやなんだよ。
52 :
仕様書無しさん:01/10/16 21:59
当時のプログラマーなら誰でもテトリスを見てアルゴリズムを
考えただろうな。頭の中で完成していれば、1〜2日でとりあえず
遊べるものが作れるだろうね。
グロ見ても平気なオレは逝ってよし?(;;´д`)
貼ってヨシ。
>>53 大変貴重なお方です。
いつもありがとう。
しかし、よく平気でいられるね。
漏れはダメです。あー、思い出しちゃったよ(T^T)
平気じゃないけど、そんなに苦しみはしないよ。
匂いとかも無いし。
57 :
仕様書無しさん:01/10/16 23:32
対戦テトリスって、ただ二人並んでテトリスやるだけ?
自分のピースを相手の領域に落として邪魔したりできるの?
テトリスはDOSなら3、4時間ぐらいで作れたけど
プヨプヨはアブノーマルプログラム出まくって挫折したな
>>25 iアプリ DoJaのサンプルにテトリス無かったっけ?
60 :
仕様書無しさん:01/10/16 23:46
ぷよぷよもちょっと難しそうだけど、クォースはもっと難しそうだ。
61 :
仕様書無しさん:01/10/17 01:07
62 :
仕様書無しさん:01/10/17 10:45
>>57 バージョンによって違うよ。
最近のゲーセンのはいろいろな攻撃ができる。
昔のは2つ以上(だっけな)まとめて消したブロックが消すきっかけになったブロック部分
を除いて相手のフィールドの下から出現した。
ゲームバランスなんかを考えると、かなり考えて作らないといけない。
厨房の言うような簡単なものではないのは確か。
シンプルなだけに作り手のセンスが問われますね。
63 :
仕様書無しさん:01/10/17 11:28
VBで3年くらい前に作った。
丸2日掛かったよ。
落下のアニメーションや、NEXT表示したりした。
64 :
仕様書無しさん:01/10/17 11:46
NEXT表示はデフォルトで実装だろ
これがないテトリスやってると激しく鬱になる(w
テトリスか懐かしいな・・・。
ファミコン版をはじめてやったときは、プレイした瞬間全て積み上がって泣いた覚えが。
NEXTが有ると無いとじゃ、作業量がそこそこ変わる。
NEXTのために、NEXTキューやNEXT表示プログラムを新たに
作らなきゃいけない。
すんなり動かなかった場合、1時間くらい掛かっちゃうかもしれない。
67 :
仕様書無しさん:01/10/17 17:59
>>66 CUIなら話は別だが、GUIならば大して変わらないのではないかと思う今日この頃。
68 :
java applet:01/10/17 18:23
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.Math;
import java.net.URL;
import java.net.MalformedURLException;
public class t extends java.applet.Applet implements Runnable,KeyListener
{
69 :
java applet:01/10/17 18:23
int StartFlg = 0;//1 = ゲームスタート
int StopFlg = 0;//1 = ブロックが動かない状態
int BLOCK_WIDTH = 9;
int BLOCK_HEIGHT= 20;
int PaintMode = 0;//0:ブロック描画 1:ブロック消去 2:画面全体更新
int BlockColor = 0;//ブロックの色(1〜4)
int BlockX[];//ブロック毎のx座標(4ブロック)
int BlockY[];//ブロック毎のy座標(4ブロック)
int BlockBuf[][];//画面全体のブロック情報
int MyLevel = 0;//レベル
int MyDeleteLine= 0;//消去したLINE数
int MyPoint = 0;//得点
long MyLevelTime = 500;//速さ
Graphics gg = null;
Image MyImage[];
Thread MyThread = null;
MediaTracker mt = null;
70 :
java applet:01/10/17 18:24
//初期化
public void init()
{
int BlockNo = 0;
//変数初期化
PaintMode = 4;
//@サイズ変更(X=9ブロック:Y=20ブロック+2得点LEVEL欄)(144:352)
this.setSize(9*16,22*16);
//Aブロックを格納する配列を作成します。
BlockX = new int[4];//移動ブロックのX軸情報を格納します。
BlockY = new int[4];//移動ブロックのY軸情報を格納します。
BlockBuf = new int[BLOCK_WIDTH][BLOCK_HEIGHT];//ブロックの配置情報を格納します。
//Bブロックイメージを配列に格納します。
mt = new MediaTracker(this);
MyImage = new Image[4];
for(int i = 0;i < 4;i++)
{
BlockNo = i + 1;
MyImage[i] = getImage(getCodeBase(),"Block" + BlockNo + ".gif");
mt.addImage(MyImage[i],i);
};
try{mt.waitForAll();}catch(InterruptedException e){};
//Cキー操作登録
addKeyListener(this);
//Dバックカラーを設定します。
setBackground(Color.black);
//Eグラフィッククラス取得
gg = this.getGraphics();
};
71 :
java applet:01/10/17 18:24
public void update(Graphics g)
{
paint(g);
};
public void paint(Graphics g)
{
switch(PaintMode)
{
case 0://ブロック描画
if(BlockColor > 0)
{
g.drawImage(MyImage[BlockColor-1],BlockX[0] * 16,BlockY[0] * 16,this);
g.drawImage(MyImage[BlockColor-1],BlockX[1] * 16,BlockY[1] * 16,this);
g.drawImage(MyImage[BlockColor-1],BlockX[2] * 16,BlockY[2] * 16,this);
g.drawImage(MyImage[BlockColor-1],BlockX[3] * 16,BlockY[3] * 16,this);
};
break;
case 1://ブロック消去
g.setColor(Color.black);
g.fillRect(BlockX[0] * 16,BlockY[0] * 16,16,16);
g.fillRect(BlockX[1] * 16,BlockY[1] * 16,16,16);
g.fillRect(BlockX[2] * 16,BlockY[2] * 16,16,16);
g.fillRect(BlockX[3] * 16,BlockY[3] * 16,16,16);
break;
case 2://画面更新
for(int i=0;i<BLOCK_WIDTH;i++)
{
for(int j=0;j<BLOCK_HEIGHT;j++)
{
if(BlockBuf[i][j] != 0)
g.drawImage(MyImage[BlockBuf[i][j]-1],i * 16,j * 16,this);
else
g.fillRect(i * 16,j * 16,16,16);
};
};
break;
case 4://Start画面
g.setColor(Color.black);
g.fillRect(0,0,this.WIDTH,this.HEIGHT);
g.setColor(Color.white);
g.drawString("Start F5 Key",20,20);
break;
};
};
72 :
java applet:01/10/17 18:25
public void start()
{
MyThread = new Thread(this);
MyThread.start();
};
public void stop()
{
MyThread.stop();
MyThread = null;
};
public void run()
{
Thread me = Thread.currentThread();
me.setPriority(Thread.MIN_PRIORITY);
repaint();
while(MyThread == me)
{
if(StartFlg == 1)
{
if(StopFlg == 1)
{
DispGame(BlockChek());
BlockData();
StopFlg = 0;
};
try{MyThread.sleep(MyLevelTime);}catch(InterruptedException e){};
if(BlockDown())
{
PaintMode = 1;
paint(gg);
BlockY[0]++;
BlockY[1]++;
BlockY[2]++;
BlockY[3]++;
};
PaintMode = 0;
paint(gg);
}else
{
try{MyThread.sleep(500);}catch(InterruptedException e){};
};
};
};
//キーがタイプされた時(押されて離される時)の処理
public void keyTyped(KeyEvent e)
{};
73 :
java applet:01/10/17 18:26
//キーが押された時の処理
public void keyPressed(KeyEvent e)
{
switch(e.getKeyCode()){
case KeyEvent.VK_F5://START
for(int i= 0;i<BLOCK_WIDTH;i++)
{
for(int j=0;j<BLOCK_HEIGHT;j++)
BlockBuf[i][j]=0;
};
StartFlg = 0;
StopFlg = 1;
PaintMode = 2;
paint(gg);
StopFlg = 1;
StartFlg = 1;
MyLevel = 0;
MyDeleteLine = 0;
MyPoint = 0;
MyLevelTime = 500;
DispGame(0);
break;
case KeyEvent.VK_LEFT://左移動
if((StartFlg == 1) & (StopFlg == 0))
{
if(BlockMoveSide(0))
{
PaintMode = 1;
paint(gg);
BlockX[0]--;
BlockX[1]--;
BlockX[2]--;
BlockX[3]--;
PaintMode = 0;
paint(gg);
};
};
break;
74 :
java applet:01/10/17 18:27
case KeyEvent.VK_RIGHT://右移動
if((StartFlg == 1) & (StopFlg == 0))
{
if(BlockMoveSide(1))
{
PaintMode = 1;
paint(gg);
BlockX[0]++;
BlockX[1]++;
BlockX[2]++;
BlockX[3]++;
PaintMode = 0;
paint(gg);
};
};
break;
case KeyEvent.VK_Z://回転(反時計回り)
if((StartFlg == 1) & (StopFlg == 0))
{
BlockMoveCircle(0);
};
break;
case KeyEvent.VK_X://回転(時計回り)
if((StartFlg == 1) & (StopFlg == 0))
{
BlockMoveCircle(1);
};
break;
case KeyEvent.VK_DOWN://下移動
if((StartFlg == 1) & (StopFlg == 0))
{
if(BlockDown())
{
PaintMode = 1;
paint(gg);
BlockY[0]++;
BlockY[1]++;
BlockY[2]++;
BlockY[3]++;
PaintMode = 0;
paint(gg);
};
};
break;
};
};
//キーが離される時の処理
public void keyReleased(KeyEvent e){};
75 :
仕様書無しさん:01/10/17 18:27
>>66 NEXTの準備と表示なんてたいした事ないじゃん。
76 :
java applet:01/10/17 18:28
//ブロックが落ちる時の処理(これ以上降りられない場合BlockBufに値を書き込みStopFlgを1にしてFALSEを返します。)
public boolean BlockDown()
{
boolean ReturnCD = false;
if((BlockY[0] != (BLOCK_HEIGHT-1)) & (BlockY[1] != (BLOCK_HEIGHT-1)) & (BlockY[2] != (BLOCK_HEIGHT-1)) & (BlockY[3] != (BLOCK_HEIGHT-1)))
if((BlockBuf[BlockX[0]][BlockY[0] + 1] == 0) & (BlockBuf[BlockX[1]][BlockY[1] + 1] == 0) & (BlockBuf[BlockX[2]][BlockY[2] + 1] == 0) & (BlockBuf[BlockX[3]][BlockY[3] + 1] == 0))
ReturnCD = true;
if(ReturnCD == false)
{
BlockBuf[BlockX[0]][BlockY[0]] = BlockColor;
BlockBuf[BlockX[1]][BlockY[1]] = BlockColor;
BlockBuf[BlockX[2]][BlockY[2]] = BlockColor;
BlockBuf[BlockX[3]][BlockY[3]] = BlockColor;
StopFlg = 1;
};
return ReturnCD;
};
//ブロックが左右に移動する時の処理 LR = 0 左移動 1 右移動 動けない場合 FALSEを返します。
public boolean BlockMoveSide(int LR)
{
boolean ReturnCD = false;
switch(LR)
{
case 0://左移動
if((BlockX[0] != 0) & (BlockX[1] != 0) & (BlockX[2] != 0) & (BlockX[3] != 0))
if((BlockBuf[BlockX[0] - 1][BlockY[0]] == 0) & (BlockBuf[BlockX[1] - 1][BlockY[1]] == 0) & (BlockBuf[BlockX[2] - 1][BlockY[2]] == 0) & (BlockBuf[BlockX[3] - 1][BlockY[3]] == 0))
ReturnCD = true;
break;
case 1://右移動
if((BlockX[0] != (BLOCK_WIDTH - 1)) & (BlockX[1] != (BLOCK_WIDTH - 1)) & (BlockX[2] != (BLOCK_WIDTH - 1)) & (BlockX[3] != (BLOCK_WIDTH - 1)))
if((BlockBuf[BlockX[0] + 1][BlockY[0]] == 0) & (BlockBuf[BlockX[1] + 1][BlockY[1]] == 0) & (BlockBuf[BlockX[2] + 1][BlockY[2]] == 0) & (BlockBuf[BlockX[3] + 1][BlockY[3]] == 0))
ReturnCD = true;
break;
};
return ReturnCD;
};
77 :
java applet:01/10/17 18:30
//ブロックが回転する時の処理 LR = 0 左回転 1 = 右回転 動けない場合FALSEを返します。
public boolean BlockMoveCircle(int LR)
{
int i = 0;
int x = 0;
int y = 0;
int bx[];
int by[];
bx = new int[3];
by = new int[3];
for(i=0;i<3;i++)
{
bx[i]=0;
by[i]=0;
};
switch(LR)
{
case 0://左回転(反時計回り)
for(i=1;i<4;i++)
{
x = BlockX[i] - BlockX[0];
y = BlockY[0] - BlockY[i];
bx[i-1] = y * -1;
by[i-1] = x;
};
break;
case 1://右回転(時計回り)
for(i=1;i<4;i++)
{
x = BlockX[i] - BlockX[0];
y = BlockY[0] - BlockY[i];
bx[i-1] = y;
by[i-1] = x * -1;
};
break;
};
for(i=0;i<3;i++)
{
bx[i]=BlockX[0] + bx[i];
by[i]=BlockY[0] - by[i];
};
78 :
java applet:01/10/17 18:30
if((bx[0] >= 0) & (bx[0] < BLOCK_WIDTH) & (bx[1] >= 0) & (bx[1] < BLOCK_WIDTH) & (bx[2] >= 0) & (bx[2] < BLOCK_WIDTH))
if((by[0] >= 0) & (by[0] < BLOCK_HEIGHT) & (by[1] >= 0) & (by[1] < BLOCK_HEIGHT) & (by[2] >= 0) & (by[2] < BLOCK_HEIGHT))
if((BlockBuf[bx[0]][by[0]] == 0) & (BlockBuf[bx[1]][by[1]] == 0) & (BlockBuf[bx[2]][by[2]] == 0))
{
PaintMode = 1;
paint(gg);
BlockX[1] = bx[0];
BlockY[1] = by[0];
BlockX[2] = bx[1];
BlockY[2] = by[1];
BlockX[3] = bx[2];
BlockY[3] = by[2];
PaintMode = 0;
paint(gg);
return false;
};
return false;
};
79 :
java applet:01/10/17 18:31
//行列にブロックが埋まっているかチェックし埋まっていれば消去します。ライン数を返します。
public int BlockChek()
{
int i = 0;
int j = 0;
int k = 0;
int LineCount = 0;
int bcount = 0;
for(i=(BLOCK_HEIGHT - 1);i >= 0;i--)
{
bcount = 0;
for(j = 0;j < BLOCK_WIDTH;j++)
{
if(BlockBuf[j][i] != 0)
bcount++;
};
if(bcount == BLOCK_WIDTH)
{
for(k=i;k>0;k--)
{
for(j=0;j<BLOCK_WIDTH;j++)
{
BlockBuf[j][k]=BlockBuf[j][k-1];
BlockBuf[j][k-1]=0;
};
};
LineCount++;
i++;
};
};
if(LineCount != 0)
{
PaintMode = 2;
paint(gg);
};
return LineCount;
};
80 :
java applet:01/10/17 18:31
//得点を表示します。消したライン数を渡します。
public boolean DispGame(int LineCount)
{
switch(LineCount)
{
case 1:
MyPoint = MyPoint + 10;
break;
case 2:
MyPoint = MyPoint + 25;
break;
case 3:
MyPoint = MyPoint + 50;
break;
case 4:
MyPoint = MyPoint + 100;
break;
};
MyDeleteLine = MyDeleteLine + LineCount;
MyLevel = MyDeleteLine / 10;
MyLevelTime = 500 - ((MyLevel % 10) * 50);
gg.setColor(Color.green);
gg.fillRect(0,20*16,16*9,32);
gg.setColor(Color.black);
gg.drawString("LEVEL " + MyLevel,10,(20*16)+12);
gg.drawString("POINT " + MyPoint,10,(21*16)+12);
return true;
};
81 :
java applet:01/10/17 18:32
//ブロックパターンを格納します。
public void BlockData()
{
int P = 0;
P = (int)(Math.random()*1000);
P = P % 7;
BlockX[0]=4;
BlockY[0]=0;
switch(P)
{
case 0://四角
BlockColor = 1;
BlockX[1]=BlockX[0] + 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0] + 1;
BlockY[2]=BlockY[0] + 1;
BlockX[3]=BlockX[0];
BlockY[3]=BlockY[0] + 1;
break;
case 1://棒
BlockColor = 2;
BlockX[1]=BlockX[0] - 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0] + 1;
BlockY[2]=BlockY[0];
BlockX[3]=BlockX[0] + 2;
BlockY[3]=BlockY[0];
break;
case 2://L
BlockColor = 3;
BlockX[1]=BlockX[0] + 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0] + 2;
BlockY[2]=BlockY[0];
BlockX[3]=BlockX[0];
BlockY[3]=BlockY[0] + 1;
break;
case 3://逆L
BlockColor = 3;
BlockX[1]=BlockX[0] - 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0] - 2;
BlockY[2]=BlockY[0];
BlockX[3]=BlockX[0];
BlockY[3]=BlockY[0] + 1;
break;
case 4://S
BlockColor = 4;
BlockX[1]=BlockX[0] - 1;
BlockY[1]=BlockY[0] + 1;
BlockX[2]=BlockX[0];
BlockY[2]=BlockY[0] + 1;
BlockX[3]=BlockX[0] + 1;
BlockY[3]=BlockY[0];
break;
case 5://逆S
BlockColor = 4;
BlockX[1]=BlockX[0] - 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0];
BlockY[2]=BlockY[0] + 1;
BlockX[3]=BlockX[0] + 1;
BlockY[3]=BlockY[0] + 1;
break;
case 6://凸
BlockColor = 1;
BlockX[1]=BlockX[0] - 1;
BlockY[1]=BlockY[0];
BlockX[2]=BlockX[0] + 1;
BlockY[2]=BlockY[0];
BlockX[3]=BlockX[0];
BlockY[3]=BlockY[0] + 1;
break;
};
};
};
83 :
java applet:01/10/17 18:33
***終了***
>>65 ファミコン版の操作方法を変えた奴を小1時間問い詰めたい(w
昔、X1で作ったよ。
一週間くらいかかったかな。あと、こまい調製で3日くらい。
ま、今はZ80忘れたから作れないけど^^
86 :
仕様書無しさん:01/10/17 20:47
アプレット張り付けている人。
実行できる全部を張り付けて欲しいんですけど。
87 :
仕様書無しさん:01/10/17 20:50
つうか、ソース圧縮してどっかにアップして。
88 :
仕様書無しさん:01/10/17 21:00
そいえばテトリス作ったことないやw
ていうかゲーム系はよく分からん。
口だけじゃいやん。
○日でできるよとか○時間でできるとかいっているあなた。
じゃ、早速作ってアップお願いします。
待っているんですけど。
ちなみにぼくが作ると2年かかるのでぼくは辞退します。
もう口先だけの書き込みはいいって。
作らないと作れないは同じ。
じゃあ、3は種無しってことで
93 :
仕様書無しさん:01/10/17 21:40
作ったやつはソースを上げよう
で、皆でそれぞれコンパイルして評価
>>89 作るのは良いけどそれにいくら出すの?
ただで作るほどお人好しではないんだが
冗談ぬきで2年かかるって本当にこの業界の人?
4時間で作る人以上に信じられないのだが
96 :
仕様書無しさん:01/10/17 22:07
テトリスは落ちてくるものの形が違うというのでコラムスよりも複雑になる。
各形の定義が面倒だ。
各形に対応した回転ルーチンも面倒だ。
回転させるときの当たり判定や着地するときの当たり判定もコラムスよりは
複雑になる。
ひとマスずつカクカク落下させずに、きれいにドット単位でなめらかに落下
させようとするとこれまた面倒だ。
ゲーム系やったことない人だとタイミングとるのが難しいだろう。
多くの自称プログラマーはゲームのように同時並行を必要とするプログラム
の経験がないから以外にほとんどの人がテトリス作れないと思う。
簡単に見えるけど意外に難しいと思うよ。
そんなに簡単なら自分のホームページにアプレットぐらいすでに載せている
だろうに。
97 :
仕様書無しさん:01/10/17 22:10
新人の頃、エクセルのマクロの勉強がてら作った。
すまそ。期間は貴重な日曜日を潰したから一日かな。
テトリスのプロトタイプなら4時間で作れるでしょ
プログラムをゲーム作りで勉強した人は意外と少ない?
ゲームはロジックを凝らなきゃならないから
業務系には無理。
>>96 それは既に応用編の話だな。
ゲームプログラムは、いろいろ演出つけだしたら
キリがなくなる。
ゲーム自体あんまりやらないから
テトリスに何が必要か考えるだけでも1日は使いそうだ。
ゲームを作れる人って結構尊敬する。
>104
同意。
すぐに思いつくだけでも考えなきゃならんこと多くて1日でなんてとても。
1日に10時間使えるとして、設計、コーディング、手抜き試験で最低でも
5日間かかりっきりってとこか。
>>105 考え方がプロだねぇ。
煽りとか蔑みじゃなくていい意味でね。
とりあえず適当に作ってみたよ。
5h掛かってしまった。
なんかスコア、nextなんかがないです。雰囲気がちょっと味わえる(w
108 :
仕様書無しさん:01/10/18 11:42
「ゲーム作ってみたいんですけど」スレでも立てるか。
>108
お願いします。 そしたらム技術板から誘導しますんで
110 :
仕様書無しさん:01/10/18 23:32
テトリス・・・例えばVBなら数時間で作れるはずだが。
少なくとも3日あればできる。
できないやつはCOBOLでもやってなさいってこった。
>>110 COBOLでテトリス書けたらそれはそれで凄いと思う。
コードを何ステップ以内で組めるか?って話かと思った。
113 :
仕様書無しさん:01/11/07 00:13
うちのプログラマはWIZの移植より
テトリス作るほうが難しいといっとったなぁ。
絶妙な操作感のテトリスを作るようになるまで
新人なら2年くらいかかるんじゃない?
テトリスごときで2年もかける新人はいらんな
待てても1週間が限度だな
115 :
仕様書無しさん:01/11/07 00:32
>>絶妙な操作感のテトリスを作るようになるまで
技術ウンヌンじゃないよな。
ファミコンの初代テトリスは遊べたもんじゃなかった。
3Dテトリス作ったら売れるかな?
クリアするのが死ぬほど難いだろうけど。
117 :
仕様書無しさん:01/11/07 00:38
>>116 くにおくんシリーズ作ってるメーカーがプレステで出してたな。
クソつまらなかったけど。
くにおくんってハドソンだっけ?
テクノスジャパン
どうでもいいけど、最近、emacs -nw -f tetris にハマってる......。
>>121 Meadowでやってみた。
カラーで出来てビックリした。
123 :
仕様書無しさん:01/11/07 05:16
現役ゲームプログラマだけど、セガ(アーケード)並のクオリティのテトリスなら三日くらい欲しい。
見た目の拘りを含めて1週間あるといいな
124 :
仕様書無しさん:01/11/07 05:18
新人研修でやらせるにしても、最低限のルール構築まで待てて2週間だな
それ以上かかったらクビだ。
125 :
仕様書無しさん:01/11/07 05:21
仮に作って公開したとして、誰からも文句言われないかな
売ったらアレだろうけど、配っただけでBM98みたいに突っ込まれたらかなわん・・・
モノリスどえrくらいで作れる??
128 :
仕様書無しさん:01/11/07 06:34
ロを足すだけでテロリストに変身、
テを引くだけでロリストに変身、
漢字変換するだけで手とリスに変身、
のを足すだけで手乗りリスに変身、
トを引くだけで手摺りに変身、
スを引くだけで手取り30万。
134 :
仕様書無しさん:01/11/07 12:04
テトリスの作り方なら、テトリス足トリス教えてあげるよ。
135 :
仕様書無しさん:01/11/07 12:29
□□
□□
↑これしかおちてこないテトリス
とか
テトリス棒が長すぎて回転できないテトリスとか作ってよ。
んで そのテトリスを得点じゃなくて
どれだけ長く遊べたかで競って。
136 :
あぼーん3級:01/11/07 12:45
後たまに
靴とか傘とかアンパンマンとかが
落ちてくるテトリスがいいな
誰か作れよ
137 :
仕様書無しさん:01/11/07 12:51
なんかなつかしー
MSX2で最初に作ったのが、「セルフサービス」テトリス。
接地したらおもむろにスペースを押して止める。んで消える場合は
下からのオフセットで消すラインを入力。(4段消しの場合0,1,2,3)
スペースを押さないとどこまでも落ちていく。グラフィックを動かして
XORで描いていくだけ(笑
その後ベーシックで判定をつけて、遅いからスプライト(2枚重ね3色)を
マシン語で動かすようにして。接地後の余裕も持たせて、BGMもつけて、やっと
ゲーセン並みの面白さになった。グラフィックはなかったけどさ。
1ヶ月以上かかったかも。
138 :
仕様書無しさん:01/11/07 13:54
(・∀・)テトリスヲイチギョウBASICデツクレ!
139 :
仕様書無しさん:01/11/07 14:00
CGI(Perl)でリロードされながら落ちてくるブロックを
SUBMITボタンで移動させ遊ぶテトリス。
うぜえぇえぇ〜
140 :
仕様書無しさん:01/11/07 14:06
テトリスは昔、配列の勉強で作ったなぁ
141 :
仕様書無しさん:01/11/07 14:21
まず実際のフィールドより数マス広い配列を確保するのは基本でしょうか。
142 :
仕様書無しさん:01/11/07 14:28
◆◆◆□□□
■□◆□■■
■□□◇◇■
■■□◇◇■
143 :
仕様書無しさん:01/11/07 15:10
FreeBSDには、Tetris あったYO。
テキスト版で、TelnetでTeraTerm内でも、
楽しんだ。ソースもあるよ。
Linux知らない。
144 :
仕様書無しさん:01/11/07 19:46
3ヶ月あれば作れる
146 :
仕様書無しさん:01/11/07 21:50
ただテトリスのルールに沿ったものならば1日。
その後の調整に3ヶ月(〜それ以上)くらいか?
148 :
スーパーハードノンノノンノノンノノンノ:01/11/07 22:37
俺的には回転させるあるごりずんむが難しいと思うんだけどどうよ。
壁を蹴らないのなら簡単。
いや、簡単だと思うが。
152 :
仕様書無しさん:01/11/08 13:19
56バイトあれば全ブロックの回転パターンが入るよ。
#最近作ったもんで。
最適解を求める思考ルーチンはけっこうむずかしそうだな。
>>153 ミンナニハナイショダヨ
50ルピーあげよう。
>>155 わぁ〜い、これででっかい盾が買えるよ〜で、また食べられる。
それだとブロックのオフセット座標が入らないと思う。
159 :
仕様書無しさん:01/11/09 18:13
160 :
仕様書無しさん:01/11/09 21:40
>>154 テトリスは、一人遊びだから割と簡単に行ける気がするな。
高得点狙いと、できるだけ積まない戦略。の2とおりの正解がある
ような気がする。
ぷよぷよは難しいんじゃないかな。
ぷよぷよの高得点狙いアルゴリズムなんかどうよ。
コンピューターの癖に頓死できるぞ。これ。
ある程度積んだ後にくそヅモ連打になってしまえば
どんなアルゴリズムでも敵わないと思われ
1/(π * 10000 ) ラジアンずつ回転するテトリス。
アルゴリズムという言葉の使い方がちょっと違う気もする今日このごろ。
164 :
仕様書無しさん:01/11/10 04:31
テトリスの最適解は一つだよ
全消しボーナスがあるから
165 :
仕様書無しさん:01/11/10 12:40
VZエディタのマクロで書いたテトリスもあったなぁ。
エディタのマクロでこんなことができるのかと、いたく感心したのを覚えてる。
>>158 どーゆーこと?
昔自分は28バイトでやって問題なかったよ。
>>166 1パターンあたり1バイト、ブロックあたり2ビットしか使えないけど入る?
せっかくだからここに書いてちょ。
168 :
仕様書無しさん:01/11/10 15:24
01010101テトリス棒のビット
01011010四角ブロックのビット
01110100うねってるやつのビット
169 :
仕様書無しさん:01/11/10 15:25
X01110100うねってるやつのビット
O01111000うねってるやつのビット
Directorでいいならまる1日。アセンブラでやるなら2週間ホシイ。
171 :
仕様書無しさん:01/11/10 16:02
アセンブラで1週間
報酬は?
172 :
仕様書無しさん:01/11/10 16:23
無論フリーソフト
173 :
仕様書無しさん:01/11/10 18:36
DOSのころ、常駐テトリスってなかった?
174 :
仕様書無しさん:01/11/10 23:15
>>95 >作るのは良いけどそれにいくら出すの?
>ただで作るほどお人好しではないんだが
テトリス程度で金とってんじゃねぇよ。
口だけのやつ多すぎ。
4時間くらいでできるとか言ってるヤツ,
さっさと完成品をウプしろ!
175 :
仕様書無しさん:01/11/10 23:24
明日は日曜日だし、みんなでテトリス作るか?
176 :
仕様書無しさん:01/11/10 23:31
C++&win環境でいいんなら作りたい。
つっても最近は管理職だが……。
テトリスは趣味で作ったことがある。
パソコンで、フルアセンブラで、一日でできた。
そこから対戦できるようになるまで10日かかった。
もし操作性や動きを作りこむなら少なくともあと2週間。
落ちげーは着地の挙動で手抜きをするとすぐバレる。
製品として見栄えがするものを作るなら最低でも3ヶ月は欲しい。
どこまで演出に凝るかによるけど。
某落ちげーを作ったときは6ヶ月かかった。
>>167 あああああああ
勘違いしてたよ
112バイトでやってましたスマソ
179 :
名無しさん:01/11/11 15:41
ここにいる奴らは口だけか・・・。
180 :
仕様書無しさん:01/11/11 18:15
テトリスまだ?
181 :
仕様書無しさん:01/11/11 18:21
テトリスが作りたくてプログラム始めて
完成まで3ヶ月位だったかな
>>181 すごぉ〜ぃ!
中々出来なくて、3ヶ月も徹夜の連続だったの?
なんか、3ヶ月って表現も凄く曖昧だね。
183 :
仕様書無しさん:01/11/11 18:28
学生だったから毎日12時間くらい費やしてた。
テトリスってなんか凄い難しそうな気がする。
やったことないけど。
if とか for 書くのに本開いて、インターネットもパソ通も
なくてサンプルコードもなくて、自力でやったから時間
かかった
普通の人なら1ヶ月で出来るでしょ
186 :
仕様書無しさん:01/11/11 19:34
みんな、あと4時間半を切ったが、進捗状況はどうだい?
オラオラ、この分じゃ徹夜だぞ〜?
真っ先に公開したヤツは英雄になれるな。
5目ならべと同じ進行になることに1票。
ム板のブロック崩しの方は英雄だな。
プログラマ1年生の時、X68000のBASICで、
休日3日使って作ったな
(落下スピード変わらず、NEXT表示あり程度)。
今作った方が時間がかかりそうで、鬱だ...
匿名アップローダある?
高校生のときに2週間くらいで作った…
Lv15になるとちゃんと1/60secに1ラインおちてくるやつを。
N88-Basicで。
PC-9801のV-Syncに同期してたので実際には1/55secに1回くらいだったが。
194 :
仕様書無しさん:01/11/12 23:47
/ │/
./ ./ .|i'
./.! i |! \ | | | | | | | | | /
/ !.l | i⌒ヽ、 .─ ─
i . i l l _ _,. ヽ. !'ヽ.ヽ ─ ここだ… ─
,!| .! ヽ _,∠´/__ ̄`ヽ、 ヽ !ヽ.ヽ ─ ここでageるんだ!! ─
. l .| ! 、._ _,,. ‐''´//´ ヽ、ヽ. ゝヽ .─ ─
. | l i ト、._ _,.二フ l l (○ヽ ヽ ゙! ( ゙i / | | | | | | | | | \
l. `ヽ l、.ヽ、_ ̄/ i│ ヽ゚ノ ヽ! }
!、 ヽ、 │ ` ‐-゙=‐ / _/ ー' _
゙ー=-ラ i| / ノ ヾ、, ‐''´
.ヽ.、._,ノ |!! ./ i'⌒`ヽ、 /‐''" ̄
 ̄/ /l |.!! ./ _,, __ l / ヽ / \、
.l / l l l!.i i´ /(0ヽ ` / ./ ,. ゝ/ ヽ\.∧∧∧∧∧∧∧
l/.│.| i、| l. l ヽ゚_) =- ノ / / ./| < >
| |l ! ゝ、._ _,. 、 / / ./:::::| ,,. -─'''" < みんなageろ! >
.!| l、 !l、ト、、ニ(ヽ、 \ー´ l ./::::::::::| / < ふらのage荒らし >
゙! !、│ヽト‐  ̄ヽ、 ヽ、 ` ‐-:イ::::::::::::ゝ/ ,,. -==─ < 作戦だ!! >
ヽ! `'‐ヽ / ヽ:::::::::::// < >
` ー---‐/ ゝ:::::/:ヽ ∨∨∨∨∨∨∨∨∨
l y´::::::::\
しょうがないなあ、みんな。
とか言ってみるテスト
196 :
仕様書無しさん:01/11/12 23:50
アメリカン航空機がNYに墜落
ニューヨークで12日午前9時過ぎ、アメリカン航空のボーイング767型が墜落、炎上した。墜落した近辺のビル4棟が燃えている。乗客数は不明。(23:46) 全文 >>
197 :
仕様書無しさん:01/11/12 23:51
テロリストどれくらいで作れる?
3年あれば多分
マジだよ。NHKつけろ平和ボケプログラマー。
やっぱりこの時期アメリカへの旅行控えるのは正解。
この期に及んでsageてる俺って。
Javaアプレット。6時間くらいで、
だいたいゲームができるくらいまで作ったんだけど、
音がうまくならないよ・・・
AppletViewerなら鳴るんだけど IE だと鳴らない。
あと、着地の判定がいまいち本物と違うんだが
どう直していいのかよくわからない。
鬱だ。
upしたら誰か見てくれる?
204 :
仕様書無しさん:01/11/13 01:21
もちろんです。音の有無も確かめます。
アプきぼんぬ。
205 :
仕様書無しさん:01/11/13 01:27
ge,まじだ。飛行機
206 :
仕様書無しさん:01/11/13 01:29
離陸後2分で墜落。
ハイジャックするには時間なさすぎ。
事故か爆弾テロと思われる。
>>203 AudioClipはいろいろと問題ありますからなあ。
でももうちょっと待って。
段消えたときの音とか作らないといけないので。
正直音(.auファイル)作るほうに時間かかってるような…
というよりもこんなオッサンが作ってていいのかという疑問が。もっと若いやつがつくれよ。
ちと思い当たったんですが、
auファイルがちゃんと8kHz-8bitモノラルのμ-Lawフォーマットに
なっていないなんてことはないですか?
Java 2以降だと別のフォーマットでも再生されてしまうかも。
ああ。そういうフォーマットでないとダメなんですか。
なんか .auだったらなんでもいいのかと思ってました。
ちょっと試してみます。
鳴るようになりました。。ありがとうございます。
>>210=152
214 :
仕様書無しさん:01/11/13 04:18
test
215 :
テトリスer:01/11/13 12:21
結構本格的あげ。51051点でした。
216 :
ヘタレてとらー:01/11/13 16:36
>>213 すごーい。これが6時間少しでできちゃうの?
ベテランプログラマって凄い。
ちゃんと回転入れとかにも対応してるし。
折角だから全消しボーナスも実装しましょうよ。
って、全消しボーナスって何点だったっけ??
かなり本格的感動あげ。
217 :
らっきーかむかむ:01/11/13 20:04
テロリストってどれくらいで作れる?
テロリストは恨みと絶望から作られる
そこに孤独が加わると、、、
219 :
仕様書無しさん:01/11/13 22:25
おぉ。素晴らしいです。
>>213 1は見てないのか?
220 :
仕様書無しさん:01/11/13 22:35
213すごい!!
MFC使って1週間かかっちゃいました。
しかも音無いし。
皆さんすごいっすね。
222 :
仕様書無しさん:01/11/13 22:46
感動した!!
223 :
仕様書無しさん:01/11/13 22:55
すごいすごい。6時間かー。俺は一日かかるだろうなー。
224 :
仕様書無しさん:01/11/13 23:11
213さん、テトリスは長くホムペには置かないほうがいいかもしれません。
前に自作のゲームが置いてるところがあったんだけど、
なぜかすぐに諸々の事情によりという事でテトリスだけなくなってました。
もしかしたら、テトリスは著作権とかがうるさいのかもしれません。
>>224 それはテトリスの作者が今MSにいることと関係が?
つーても検索すれば
JavaからJavaScriptからFlashからWindowsから大量に出てくるし>テトリス
わかってるよー。2:00にはもう消すよ。
228 :
仕様書無しさん:01/11/14 00:02
213は英雄です。例えテトリスが消えても。
229 :
203=213:01/11/14 01:01
>>216 とりあえず全消しつけた。
全消しボーナスは通常得点の10倍。
あと最初のブロックを落とすときに
サウンドが初期化されて固まる現象とか、
そのへんをちょっと直した。
>>一般の方へ。
普通のゲームはこんなにすぐにはできないので
誤解しないように…
230 :
仕様書無しさん:01/11/14 01:09
>>227 > わかってるよー。2:00にはもう消すよ。
え〜、消しちゃうの?
おれの Mozilla、Java Plugin 入ってないからまだ見られない〜。
Netscape4 じゃ何も表示されなかった〜。
>>229 >>>一般の方へ。
そんなヤツはこんなとこへ来ないから心配すること
無いと思われ。
すまん、Readme入れてないので説明
4-左 6-右 2-落下
[F9]終了
これ、テトリスじゃなくてフラッシュポイント…(とも違うけど)
上のやつ全然説明になってなかった(w
4-左 6-右 2-落下 Z、X-回転
[F9]終了
対象機種
Windows95以降+DirectX7
つか、どのへんがフラッシュポイント?
フィールドに邪魔ブロックなんか置いてないが。
ラインを消したときに浮いてる部分が下まで落ちきるところ
232のやつ、
もう消えてるじゃん・・・
239 :
仕様書無しさん:01/11/20 19:32
なんか、マ板に来てみたら、こんなスレがたってんじゃんかよ〜。
最近暇だし、*JavaScript*で作って野郎じゃないかよ、
>>1よ。
DOSのCで昔作ったな。
ロジックを解くのが結構面白かった。
一応任天堂型対戦にしたよ。
期間は暇見てダラダラ作ったから結構かかったはず。
形としてのテトリスが出来てからがまた面白かった。
当時、各メーカーからテトリスが発売されていたけど、正直出来の悪いのもあった。
それぞれの善しあしがはっきり見えていたから、自作テトリスにも反映させていけた。
具体的には接地後の処理とか、ブロックの落下速度の緩急、対戦時攻めまくられても逆転可能なシステムなど。
スコアアタックする気にさせるバランスにも気を使った。
241 :
haruka:01/11/21 03:11
>>238 とりあえず左右キー押しながらでも
回転キーに反応するようにして欲しい です。
下キー押しながら回転キーには反応するのに…なんで?
ある程度のサイズ(構造の如何は関係無いと思う、多分変数の
総数が多いことが難易度を上げるのだと思う)以上のプログラム
を組める人(プロのプログラマー含む)は一般に思うよりかは少な
い気がします。所有するロジックやアルゴリズムにも偏り有るし。
テトリスやぷよぷよ(かなりシンプルに作ったとしても)を作れる人
というのは意外に少ないのではないでしょうか。
>>242 テトリスとぷよぷよって、
ぷよぷよの方がずっと作るの難しいような気がするんですけど…
なんで一緒にされちゃうんだろう?
>243
どっちにしろ作れない人は作れない、作れる人は作れるだろうから。
とはいえどっちも実際に作るのは結構きついと思う
あ・・、「とことんぷよぷよ」は兎も角として、COMキャラ思考ルーチン
は確かに特殊スキル・・・失礼しまった。
まあ、どういう「ぷよぷよ」を作れって言われているかによりますね…
私がぷよぷよ作ったら、
ゲームオーバのときに下から出てくる変なキャラクタの動きを作るだけで、
一日かかってしまいそうですので…
20G,接触時間無限,壁蹴り無し,.点数無しなら1日でなんとか…
>245
「やっぱデザイン能力ないなぁ>俺」とかいう部分でつまづく
(というよりやるきをなくす)人多そうですね。
けどキャラデザとかはプログラマの守備範囲外ということで
良いと思います、普通は。
>246
点数に互換性がないとプレイしてくれるひとが減りそうなのが
辛いですよね、やぱり(所詮はモドキ・・・)
>>241 プログラムが手抜きなだけ(w
「一度キーを放すまで次の入力を受けない」っていうののフラグを
左右移動と回転で共有してるせい。(次あげるときは直しとくよ)
「ぷよ」についてだけど、どこまで凝るかによるだろ。
テトリスだって動きとか機能に凝っていけばどこまででも複雑に
なるわけだし。
関係ないけど、ぷよクローン作りたいって人は「ALL ABOUT
ぷよぷよ通」って本見とくといい。
249 :
仕様書無しさん:01/11/22 01:23
ぷよぷよがテトリスと比べて(ほんのちょっとだけ)むずいのは
消滅判定だけではないかな。さめがめが作れれば簡単か。
250 :
仕様書無しさん:01/11/23 04:12
>249
コラムスの消滅判定はノートに書き出すとこぐらいまでやった。
総ブロックチェック、部分チェックの最低2パターンはあるな。
テトリスは多分腐るほど簡単。
おれ、ぷよもどき作ったが、ぷよ作ったやつらどうなんだろ。
はっきりいって、もっと強いCPU作ることが出来る
というか、なんであの程度作れないんだ?
挙句の果てには、攻撃率をいじるだけで難易度調整してるし…。
>>251 単にデバッグ等の手間を考えての事かと。
実際、与えられた開発期間はかなり短かったそうだし。
>>251 ルーチンパターンを複数用意すれば、それぞれに対してデバッグ
しなきゃならんからなぁ。
それに、ルーチンパターンなんて幾ら凝っても最終的には
プレイヤーに勝たせなきゃいけないから、凝るだけ無駄。
あんまり馬鹿すぎるのもアレだが、強いのも商品に乗せるには
ダメだし。
それに、ぷよに限らずCPUルーチンを複数用意したゲームなんて
あんまり見かけないよ。
あんまり自分の意見入ってないけど、
「1だと一番最初のドラゴケンタウロス、2だと・・・(ど忘れ)
しかまっとうな思考ルーチンは使ってねーんじゃねーのか」
とか某プレイヤーが言っているのを聞いた。
窓の杜で昔「しばきゅう」か「しばきゅー」だかいうの紹介
されてたので拾った。かなりコラムスに近いっぽし。
・・・ぷよ似のものは知らん。
>253
最小限の努力で最大限の利益こそ職人芸。
無意味な(画像・音響)エフェクトのりまくりのゲーム見ててそう感じる。
>>254 そもそもエフェクトなんて(どういうモノにするかは)プログラマが
どうこう言える場合は稀だけどな。
乗せるのは確かにプログラマなんだが。(鬱
>255
昔こういうパターン結構多かったんでわ?
1さくめがよそうがいのはんきょう。
きぎょうは2さくめを当然考える。
優秀なプログラマー、優秀なデザイナー、
要は優秀な技術屋をかき集めるのよね。
無論、技術は確かにすごいのだろう。
けど、ゲーム・・・つまんね。
優秀なプログラマー集め出した企業は黄信号
だとおもったりおもわなかったり
>>256 そりゃぁ、それぞれ船頭を努める事が出来る人間達を一つのチームに
すれば当然、それぞれ拘りが違うから揉め出してプロジェクト自体が
ヘタレ集団以上に妥協を重ねて沈むから(藁
優秀なスタッフを集めだした企業が黄信号なのは頭を誰に据えるか
考えずに手当たり次第集めるから = 自社に頭任せられる『人』が
いないから。
・・・どっちにしろ寒い話だ。
高度な技術はみんな出し惜しみしあうのは目に見えてる。
何らかのプライドや信念がなければ人は有能にはなれない
というのにバカみたいに「高等技能嗜好」の人間をかき集める。
有能な信念がうまくまとまれるのはほんのひととき。
自分を殺せるような人間は「有能人間募集」話にはのらない。
単純な(二次元or三次元の)表参照?程度で同等の機能が
できるのにわざわざ法則性やテクニックに拘る。
・・・寒い話ですわ、マッタク
>258
その場合の問題点は技術の採用ではなく、その技術の有用性を
スキルが低いくせに僻みっぽくて人の話を聞こうとしない無能人間に
納得できるような説明をしない(できない)ことだな。
ところで、技術を出し惜しみするような人間が有能な技術者とは
思えないが。三大美徳の傲慢が欠けている。
>>259 無能人間に技術を説明するってのは
(相手の無能度合いによるが)
すごい労力が必要になるので、
それ相応の報酬をもらわないとやってられまセン。
人を集めるときに、どういう仕事なのかってのを
ちゃんと説明できてない時点でダメなんじゃないでしょうかね。
テトリス作りに話戻して〜!! んで、だ。
まー、細かい事はともかくとして他人のライブラリいとかに
どれぐらいいぞんしてよいわけだ?
GDIもまともに知らん奴も多いだろう(漏れもそれよ!)
DirectX使う使わないにしたって、自分で根底から作るの
はまー無理だろ?(会社の物をつかうのもまずかろーて。
こうかんがえるとむしろプロの方が分が悪いよな?)
ぷろぐらまの資質見るだけならHSPやBASIC系でも
十分ってことになんの?(Cとかは正直ダルイよ、まぢでなー)
俺なら、
Windowsで作れっていわれたら、
Win32直叩きでCで作るのが一番簡単、、、です。。
結局使い慣れてるやつがいちばんいいです。
ぷよぷよは難しいので1ヶ月かかります(笑)
学校がアレだったり、他に作ってるゲームがアレだったりでバージョンアップ
してないけど、誰もそんなの待ってないからマアイイヤ。
>>261 俺は、コツコツと作り溜めした関数群(ライブラリとは呼べるシロモノじゃない)
で作ってるよ。
しかし、ライブラリを使おうと使わまいと、遊ぶ方は同じ基準で判断するワケ
だし、ライブラリ不使用をゲームがダサイ言い訳にはできんね・・・
>263
ま、確かにいいわけにはならんだろう。がしかし、
わかる奴なら「ああこいつは既にできているな」と完成していなくて
もそう思うだろうけどネ、素人じゃなければ
(それと俺の場合CGとかがゼンメツダヨ〜)
プロやってるとジブン遊び用の関数群とかをなんとなくため
づらくて・・・、いまはプロやってないけど、それでもそういう
ことへの抵触は残ったまま。
そう、仕事というものを意識すると・・・なかなか・・・
10年、20年たってまったくつかえなくなった、過去の自作
ライブラリとかを思って、「もう完成品は空しいからヨソウ」
そう考える奴も多いかもな
>、「もう完成品は空しいからヨソウ」
これ真剣に考える日がいつかくると思うよ。
結局一作品一人で全部製作なんて一生に一度かその程度
266 :
仕様書無しさん:01/12/11 00:42
うむ、結局数人足らずか、完成させた奴は
テロリストならもう完成させてある。
126〜√130の辺りをみろ。
268 :
仕様書無しさん:01/12/12 04:26
氷魚にすら勝てない連中ばかりか・・・
レベル低いな、この板も
氷魚さんってどんな人だったのですか?
>269
MFCの元とVCLの元とSTLの元になるものを個人の力で
書き上げた奴。既に人でなし。
前者二つは己がOSに関わっていたのにタブーを破って、
OSプログラマーの癖にアプリ製作にまでも関わろうとした
愚か者。よって米業界を追放。 米国防総省より
271 :
仕様書無しさん:02/01/21 10:06
パラ メ〜 タ♪
∧_∧ ∧_二_∧ ∧_∧
( ・∀・) (・∀・三・∀・) ( ・∀・)
⊂ ⊂ 丿 ⊂ 二 二 つ ⊂__へ つ
( ( ( | | > (_)|
(__(_) (((__)_))) 彡(__)
クルクルクル シュタ
お前らアホだろ
コンパイ
273 :
仕様書無しさん:02/01/21 17:47
みんな結構短いね。見積もりの時間。
俺なら2週間って言う。3週間でもいいかな。
普段の仕事でも、(実際にかかると思った時間)×2+α
で時間見積り出すようにしている。
動作テスト、調整、品証テストも含めてね。
ここで、一日でとか○時間で余裕っていってる人は、普段
でも締め切り前に大慌てとか、納品一ヶ月遅れでペナルテ
ィー発生ってなことありませんか?
まあ、「テトリスを自作で」と聞いて、どのくらいの品質を思い
浮かべるのかにもよるが。
ただ、どう考えても4時間ってのはおかしい。
きっとプロトタイプも作れない。俺は。
274 :
仕様書無しさん:02/01/21 18:38
作業に波がある奴ほど、「絶好調の時なら○時間」って言わないか?
で、その絶好調の時ってのは必要な時に都合良く来るのか?
>>249ぷよぷよ系(性格にはぱずる玉なんだが)の消滅判定は、
ペイントルーチン(なつかしー)を流用してツクタヨ。
ぷよぷよなら4ピクセル、ぱずる球なら3ピクセル連続してれば消滅。
276 :
仕様書無しさん:02/01/21 19:43
>>2732週間はどう見ても多いだろ?
メイン画面1面のその他ダイアログ数枚...仕様は固まってるんだし。
納品物に仕様書やテスト結果報告があれば話は別だが...
バランス調整まで考えたら1週間や2週間じゃとても無理だと思う。
その辺は全て与えられていて〜ならともかく。
278 :
仕様書無しさん:02/01/22 11:10
>>273 うん。それくらいが普通だと思う。
203は6時間で作ったって言ってるから1週間くらいなのかね…
280 :
仕様書無しさん:02/01/22 12:28
>>273 >普段の仕事でも、(実際にかかると思った時間)×2+α
今は此れで良いかも知れぬが、将来は仕事がもらえなくなるぞよ。
早く+αを消すべし...
だいたい、作りたい仕様があやふやな状態で時間だけ求めるから
みんなバラバラの見積もりになるんじゃない?
6時間って言っている人は、CUIでレヴェルなどの調節一切無し、横移動と回転のみ。
書籍のサンプルレベル。とかで、
2週間って言っている人は、GUIで人にプレイしてもらえるレベル。とかだったり。
こういった、仕様をきちんと決めないと、見積もりなんて信用出来ないよ。
つーことで、仕様を決めよう。とか言ってみるテスト。
製品品質が基準なのか?
テトリスくらい最低限のルールとアルゴリズムなら2〜3時間だろ。
後の装飾は蛇足。
つけようと思えばいくらでもつけれるし、いくらでも時間はかかる。
最低限はこれくらいかね?
・左右移動
・回転
・落下(↓キーでスピードアップorスペースキーで一番下まで落ちる)
・1ラインそろったら消える
・NEXT表示
・ゲームオーバー(プログラム終了でも良いか)
どのテトリスを手本とするかによって細かいルールが少し違うけど、
たぶんそれは同でも良いこと。
話の腰をおっちゃって悪いんだけど、、、
知らない人もいるようなので忠告しますが、
テトリスに関する権利はテトリスカンパニーという
アメリカの会社が全て握っています。
だから出しゃばりすぎると、もしかしたら叩かれるかもしれないので注意。
まあ、んなこたないだろうけど。
テトリスって特許とかになってるの?
アイデア真似るだけなら著作権は関係ないと思ったけど。
まぁ、不正競争防止法っていうセンもあるかもしれんが。
>>285 うんにゃ、個人ページで公開してたら苦情が来て公開中止しました、ってページをいくつか見たことがあるぞぬ<テトリス。
288 :
仕様書無しさん:02/01/23 01:54
290 :
仕様書無しさん:02/01/23 04:00
現在巷のゲーセンで一番インカムのいい業務用テトリスのコアシステムのクローン。
ゲーセンではかなりやり込んだけど、再現性はすごいの一言。
やはりここまでストレスなく快適に操作できないと
商品とは言えないでしょう。フリーでこれだけのものがあるのですから。
もはや職人芸です、経験と己の感覚が頼りです
http://www.hosiken.Afis.To/
>>288 法律板で聞いた方がいいよ。 版権やアイディアのゲーム化権とか色々ね。
まあ、それらのもどきが許されてるのはテトリスの旬が過ぎたからでしょうね。
で、仕様を固めるという話は?
293 :
仕様書無しさん:02/01/23 11:35
>>292 とりあえず、CUI版にしようか。
CUI作っておけば、エンジン部分はGUIにも適用出来そうだし。
基本的には、
>>283氏の感じでいいと思う。
ブロックは、●トリスに準拠。
レベルアップなどの機能はなし。
対戦機能はなし。
スコア機能なし。
起動直後にゲーム開始。
ゲーム中にctrl+cでctrl+c
ゲームオーバーすると終了
その他付加機能一切なし
>>295 290の出来がよかったので295にも期待したのですが、ネタでしたか…
>>297 あ、「完成度はすこぶる低い」ってちゃんと書いてあるじゃん。
なんか誉めてるのかと思って間違って296書いちゃった。ごめん。
299 :
仕様書無しさん:02/01/25 13:37
テトリスの規格を教えて君。
横は10列っていうのはわかんるんだけど、
縦は何行なんでしょうか?
あと、回転の軸とかも決まっているんですよね?
回転の方向も?
久々に来たら盛り上がってるな(w
軸は知らんけど、フィールドは横10×縦20だよ。
回転の軸は、
任天堂テトリスの回転の仕方と、
セガテトリスの回転の仕方で、おおきく二通りあると思いますっ。
あと、壁にぶつかるように回転したときに
壁を蹴るかどうか、、とか、
上の壁があるかないか、
その他いろいろ細かいところでいっぱい決めないといけないことが
あると思います。
302 :
仕様書無しさん:02/01/26 01:07
>>301 そうか。壁とかいろいろ考えなきゃいけない部分が沢山あるんだな。
だれだ!6時間で作れるなんて言ったのは(w
GBのテトリスは良かったなぁ。
304 :
仕様書無しさん:02/01/26 08:01
昔、Z80マシンにアセンブラで移植した時は、友達から借りた
攻略本に、各ブロックの回転遷移が方眼に書かれていたので
それを参考にした。多分アーケードのもの。
例えば、凸なんかは、
□■□ □□□ □■□ □□□
■■□→■■■→□■■→□■□
□■□ □■□ □■□ ■■■
と常に底面が一致するように回転し、かならず
きまったポイントを回転軸にするわけではない。
Lとかその対称もそう。
あと、自由落下の場合、接地してから固まるまでに、
少し時間が空いていたりもする。
うまい人は、この間を利用してブロックを転がり落として
行くと書かれていた。
やはり、ここら変のテトリスをテトリスたらしめているポ
イントは再現して欲しい。プロトタイプ作成にかかる時間を
競うのが目的なら
>>293くらいの仕様でいいけど。
俺は、背景画とBGMとハイスコア表示以外の機能・特徴
は全て移植して、期間は暇を見つけつつ2ヶ月ってとこだったね。
更にタイミングを調整するのに、色々な人にやってもらって2週間。
今の開発環境でフルタイムだと開発だけなら2週間。調整で
一週間かな。
>>304 一応そのへんはある程度考慮して
(ただブロックの回転パターンは微妙に違ってて)
音なしのゲームが動くまで6時間
音つけるのに2時間
合計8時間でしたが、何か?
まあもともとゲーセンでテトリスやりまくってそのへんに詳しかったからなんだけどね。
もっかいあげおとくので見てくれや。
307 :
仕様書無しさん:02/01/26 18:26
□■□ □□□ □■□ □□□
■■□→■■■→□■■→□■□
□■□ □■□ □■□ ■■■
309 :
仕様書無しさん:02/01/26 20:31
>>306 動かないのは気のせいですか?
画面が真っ暗になったまま。数秒でアプリ終了。
Windows2000
DirectX8.1
310 :
仕様書無しさん:02/01/26 22:01
311 :
仕様書無しさん:02/01/28 17:05
俺もWin2kだが問題なく動いてるよ。
>>311 306のアップしたファイルがトロイだった、というネタだろ
暇なので人心を惑わそうと思ったのだが、通じなかったようだ。悲しい。
315 :
仕様書無しさん:02/01/29 10:35
316 :
仕様書無しさん:02/01/29 14:58
わからないですな。。。。。
んじゃ、世の中には知らない方がいいこともあるってことで.
318 :
仕様書無しさん:02/01/29 17:55
age.
319 :
仕様書無しさん:02/01/29 19:49
現地テストで暇をもてあましてる時に
俺の先輩が5,6時間で作ってたよ。VBで。
その後にVC++&MFC、JAVAでも作ってた。
最近はBCC&SDKでも作ったみたい。
新しい環境を勉強する時はたいてい作ってみるとか
320 :
仕様書無しさん:02/01/30 11:13
>>320 ごめん、会社やめちゃったから(先輩が。)
でも、2ちゃんねらだったからここ見てたりして。
>>294 メーカーによると、
>実際に人間が対応できた最高値の平均を数値化して作っているんです。
らしい。
反応以前にブロックが落ちてきてるのが見えない。
その場に現れてる感じだな(;´Д`)・・・
とりあえず、固まるまでの時間があれば対応できるって事では?
「最高値の平均=固まるまでの時間」だったりして。
>>322 アレは実際、落ちてきてるんじゃなくてワープしてきてますよ。(そういう仕様です)
平均が〜ってのは固まるまでの時間のことかと
325 :
仕様書無しさん:02/02/06 15:53
あげとく?
ウマイヤスイトリス
美味い安いトリス???
329 :
仕様書無しさん:02/02/06 18:56
馬嫌吸い取り酢???
고맙습니다
331 :
仕様書無しさん:02/02/06 19:21
>>326 どうやってコンパイルすんの?これ。
Borland C++ Compilerてのは見つけてきたんだけどさ、
ダブルクリックしてもなんもならん、、、
>332
おお、まだそこも残っていたんだ←失礼済まぬ
以前関連のぺーじ紹介しようとしたら殆ど見れなくなってて
焦った。
テトリスけっこうできよいほうなのかなー、やりこんだ事の無い
漏れには判別不能だけれど・・・。
ガイド線ないとずれたとこに落とす俺、やはりへぼ腕。
334 :
仕様書無しさん:02/02/07 11:31
>>332 もしかして作者の人?
なんかトップページ見ると2ちゃんねらーの香りがする(w
335 :
仕様書無しさん:02/02/07 17:34
だ
め
だ
CDコマンドてゆーのはどこにあるんだ?
make.exeは実行しても一瞬ウィンドウでて終わっちゃうし〜
改造して勉強してみようとおもたのに。
漏れには無理なのかな〜
>>335 コマンドプロンプトを上げてやってる?
まさか、エクスプローラ上から起動してないよね?(w
>>336 >まさか、エクスプローラ上から起動してないよね?(w
そうですけど駄目なんですか?
>コマンドプロンプトを上げてやってる?
??それはどこにあるんですか?
恥ずかしい、、すみませんが教えて下さい。
三年前くらいにボンブリス作ってたよ。C++で。
テトリス+αだから雑魚だと思ってたけど
ある程度作って壁にぶち当たった。
爆発したあと残ったブロックが落下… これができぬ。
誰か処理のしかた教えて下さい。
てゆーかボンブリスやったことある人って…
339 :
仕様書無しさん:02/02/07 18:32
>>339 いや、マジだったんですけど、検索したら分かりました。
コンパイルはまだなんですけど、
コマンドプロンプトは実行できたんでもう少しかな?
でも、なんでこんなモンがウィンドウズに付いてるでしょ?
VC++なら学校で使ったんでわかるんだけど、随分と違うんですね
VC++高いからなぁ。
ま、もう少し頑張ってみます。コマンドプロンプトを使いこなしている
カコイイ!!自分を夢想しながら(w
341 :
仕様書無しさん:02/02/07 18:46
340貴様…
MSDOSはウィンドウズ上で動かすものだとでも思ってるだろう…
>>341 MSDOSは確かウィンドウズの前のOSですよね?
ウィンドウズ上で別のOSが動くんですか?
342貴様…
コマンドプロンプトはDOS言語だってこと分かってないだろ…
>>343 そんな事言わないで、、、
>>344 DOS言語、、勉強します。
とりあえずCDとDIRとMAKEは覚えました(w
それと、テトリスのコンパイルは無事成功しました!
親切に教えてくださった皆さんありがとうございました。
もう世代が違うんだなぁ。とシミジミおもた
347 :
仕様書無しさん:02/02/07 21:41
ねえねえ。人のプログラムを改造した場合ってさ、
ホームページとかで配布しなけりゃ問題ないのかな?
ちょっと友達に試してもらうとかぐらいならいいんだろうか。
それでもやっぱ作者に了解得た方がいいのかなあ?
でもなあ、改造はするけど見せたくないってのはワガママみたいで
CONFIG.SYSも書けねえやつがパソコン使うな。
なんて昔の話。
>348
もしかしたら記憶違いかも知れんけど・・・
command.com(のようなもの)からcommand.comみたいなのを
呼び出した時何が起こるかの説明はさんざん聞かされた。
まだ英語使えなかったか、隠していたかのどちらかの頃に。
最終的にはやはりメモリ使用量を計測して納得してた。
(中身あんまりみちゃだめいわれるし、、ま、探り方はある・・・)
けどOSは不詳。
351 :
仕様書無しさん:02/02/08 13:24
352 :
仕様書無しさん:02/02/08 13:25
手取りす足取りすクリトリスデモクリトス
なぞなぞならばmemcpy自作辺りをやるべき。
現状、OS上辺のものとOS内部の昔からあるものの二種類か?
てらにーしでぶのぶ東入り口付近すきんそーぷまむこ
OSとアプリを同化させたようなものならかなーり資産価値は下がって
よいものつくれたりしねーか?
じっさいんとこいろんな機器接続できるから問題なわけなのだしね
355 :
仕様書無しさん:02/02/08 20:34
母なる地球は40億年かけてテトリスを生み出しました。
愛ゆえに。
てとりあしとり
357 :
仕様書無しさん:02/02/09 18:55
んで、結局誰か作った?ここまで読むの面倒くせーな。
358 :
仕様書無しさん:02/02/09 21:15
360 :
仕様書無しさん:02/02/09 22:20
その2日かかったってところが嫌味ったらしいわねあなた。
だけど、テトリスの出来は良くてよ。
362 :
仕様書無しさん:02/02/16 11:34
??
↑
いや、ねぇ。セーブデータがテキスト的だったから、改変を目論んで
・・・しかしまだやってはいないという状態。
アイテム位置やらそこそこはわかるのだがなかなかに難しい。
364 :
仕様書無しさん:02/02/27 19:57
申し訳ない
DOSも理解してない奴がいるとは…。
リアル工房だけど、それぐらい常識だろ。
っても、俺はLinux厨ですけど。
>>365 否。
いまや、コマンドは知らないのが常識になってしまった。
いいか悪いかは別として、コマンド知らなくてもやっていけるってこと。
コマンド世代の我々も、いつまでも古い考えだけで行くのではなく、
これからの新しい人たちにバカにされないように新しいことも
どんどん覚えていかなければならないのだ。
367 :
仕様書無しさん:02/03/03 19:16
ああそうなんだよな。
batは知らないけどwshならOKですって新人を見ると
自分が年寄りに思える。
368 :
仕様書無しさん:02/03/11 20:45
このスレ読んで俺も作ってみようと思ってから2ヶ月。
【できませんでした。】
リアル工房だから自慢したいのか?
あーハズカシィ。
>>368 キミはプログラマよりコメディアンのほうが向いているんじゃないかな。
371 :
仕様書無しさん:02/03/31 22:13
ヘボリス1.60登場age
372 :
仕様書無しさん:02/04/20 21:15
sage(w
家にライブラリ無いし。仕事でGUIやらんし。
モジュール作ってもすぐブラックボックス化して忘れるし。
作れる奴は趣味グラマーだろ?
>>374 家にはコンパイラがない…。
唯一あるのはBCC。でも…。
JavaScriptってCに似てるらしいから作ってみよっかな?
>>375 Delphi6 (Personal) なんてどうだろう。
その気になればDirectXもできるよ。
ドクターマリオの基本システムどのくらいで作れる?
画像・音楽抜きで
>377
あれってテトリス+ぷよぷよみたいなんだっけ?
動けばいいってことだよな?
キー操作諸々も適当でいいんだよな?
うーん、、、仕事でやってるなら3,4日ぐらいか?
まぁ実際はその倍かかるとして1週間。
申告するなら2,3週間で申告。
379 :
仕様書無しさん:02/05/04 16:08
age
380 :
仕様書無しさん:02/05/04 16:31
落下してるブロックの下でHボタンを押すと、ブロックの数字が変わります。
同じブロックが4つ並ぶか、連番(234など)で3つつながれば消えます。
ゲームオーバー判定はないです。
いちおうソースもついてるよ
382 :
仕様書無しさん:02/05/04 16:36
ゲームかぁ。凄いね。
384 :
仕様書無しさん:02/05/04 16:42
ゲームかぁ。凄いね。帰っていいよ。
385 :
仕様書無しさん:02/05/04 17:31
なにをもって「テトリス」とするか・・・・・・だな。
たとえばブロックの90度回転ひとつとっても
等速度で回すか、加速度的に回すかだけでもプレーヤの心境が変わってくる。
細かいところを徹底的につめるか、形だけテトリスにするか・・・・
後者ならVG(笑)あたりで3〜4時間だろ。
たが、前者なら単純なだけに奥が深く、何週間もかかるだろうね。
386 :
仕様書無しさん:02/05/04 17:48
>>385 そう。ゲームプログラミングのうち
グラフィック処理の占める割合が一番多い。
とりあえずゲームができるだけなら、コードはものすごく少なくなる。
387 :
仕様書無しさん:02/05/04 17:53
>>386 ゲームじゃなくてもそうだよ。
GUIが一番手間かかる。手間だけで中身は無い。
>>384 ではお先に帰らせて頂きます。さようなら。
かなり前だけど、何年かぶりにプログラミングやってみたとき、
徹夜して10時間ぐらいかかった。
内、変なバグに引っかかって、それ取り除くのに3時間ぐらい費やしていた。
NEXTとかスコアランキングはつけたけど、音はつけなかったな。