- 1 名前:名前は開発中のものです。 [04/04/07 01:07 ID:B46sLvhx]
- rogueライクやアドベンチャー等
文字主体のゲーム製作について語って。
- 428 名前:417 [2007/01/26(金) 21:28:53 ID:Rqt2ieRC]
- >>417
どうもです。確かに当てにくい・・・ 飛行機・・・というよりボスキャラのような 感じのものを作りました。自機の48倍(14*6)今日中に上げられるかどうか・・・ ビープ音って音量の調節ができないことに今日気づきました もしかして他の人のPCとかでは、すごく、うるさいかもと思った。 なるべき少なくするようにしたいと思います。たぶん・・・
- 429 名前:417 [2007/01/27(土) 00:00:17 ID:jHn5aSKM]
- ボスキャラを作成!!倒したら又ループする
自機の音は抑えた gamdev.org/up/img/8736.lzh
- 430 名前:名前は開発中のものです。 mailto:sage [2007/01/27(土) 13:23:39 ID:3TLIFNBj]
- >>429
ボスが動く時、ゲームの処理が一時的に止まってしまう。 サイズが大きいから、描画量が多くなるためだと思うが。
- 431 名前:417 [2007/01/27(土) 13:43:12 ID:YL2K+vb9]
- >>430
まじっすか(>_<) 使っているPCって古いタイプかな・・・他のソフトは全て閉じて実行でもダメかな? 確かに1文字キャラの48倍のprintf関数を使っているからどうかなと思ったが (1ループで書き込みと消去をしているので多少の負担はあると思われる) 自分のあまり高くないスペック(595MHz192MB)でも動いているからOKかな考えていました ソースを見直し修正してて色々試してみます。中くらいのも考えます。レス有り難うございました。
- 432 名前:名前は開発中のものです。 mailto:sage [2007/01/27(土) 14:51:07 ID:3TLIFNBj]
- >>431
自分のスペックはその2/3ぐらい。 そちらのそのスペックで動いているなら問題ないと思う。 さらに低スペックで動かすなら、 描画の方の1ループのタイミングを遅くする事かな。 味方、敵、全体のスピードが遅くなってしまうけど。 それか、WriteConsoleOutputを使って一度に描画する。 ただ、これは、40マス程度の領域に対しては、 普通にprintfの方が早くなるかも。 地面とか背景をスクロールさせたい時は必須になると思う。
- 433 名前:名前は開発中のものです。 mailto:sage [2007/01/27(土) 15:04:50 ID:ILAO057F]
- taat.fi/tmdc/
- 434 名前:417 [2007/01/28(日) 16:46:30 ID:SFfreQjf]
- gamdev.org/up/img/8748.lzh
14*6から9*4に変更の中ボス作成。^_^ 前回とはボスの大きさが変わっただけですm(_ _)m 軽くなっているから止まらないと思う・・・ というか弾のすり抜け不具合の対応に時間がかかった(>_<) ループタイミングとかスピードとかはこれから色々試す予定 ファミコンのゲームをやって、どうするかゆっくり決めていきます。 コンソールで地面、背景ってできるのかな・・・ 現状はコンソールAPIだけ使いたい・・・しかし疲れが(T_T;)
- 435 名前:名前は開発中のものです。 mailto:sage [2007/01/29(月) 20:49:06 ID:jqNQWeQC]
- gamdev.org/up/img/8760.zip
↑くそげバージョンアップw クリアごとにご褒美画像付き。
- 436 名前:名前は開発中のものです。 mailto:sage [2007/01/29(月) 20:51:29 ID:jqNQWeQC]
- ああ、ちなみにご褒美画像は18禁な
なので今回は18歳未満はやらないように おじさんとのやくそくだぞ!
- 437 名前:名前は開発中のものです。 mailto:sage [2007/01/30(火) 03:02:02 ID:7TtXtK7p]
- >>434
まだ止まる時もある。 止まるのは、ボスが動く時と、キー入力を両方行った時っぽい。 背景の表示も、飛行機と同じで、普通にprintfなどで行う。 飛行機が無い位置は背景を表示し、ある位置は飛行機を表示する感じ。 飛行機が見難くならないように、 グラデュースみたいに壁だけ表示するのがいいと思うが。 >>435 1000 ******** おめめ ******** コマンドまたはファイル名が正しくありません. みたいに出て、ご褒美画像が見れない。 プレイ環境は9x系。
- 438 名前:名前は開発中のものです。 [2007/01/30(火) 09:38:06 ID:qkd7/mT7]
- クリアー無理
三面まで猿のようにやった 抜いた エロゲにしてはむずい
- 439 名前:名前は開発中のものです。 mailto:sage [2007/01/31(水) 23:53:18 ID:GGJaxLa9]
- ほれ!
gamdev.org/up/img/8783.zip ↑新作だ エロゲ第2弾な ネット環境がないと動かない。 あとwin9xとか検証できないので無理w
- 440 名前:417 [2007/01/31(水) 23:56:40 ID:+O4kN4sJ]
- 今は、デバックコードを作成中・・・キー入力、フレーム等、確認中・・・
- 441 名前:名前は開発中のものです。 mailto:sage [2007/02/02(金) 07:03:14 ID:Vw28ki0u]
- >>439
うはwwwwおkwwww 盗撮ゲームって面白いな動画の品質もまぁまぁだし ていうか動画幾つあるんだ? 盗撮場所によっても違うみたいだし てかセーブ機能希望 警察に捕まってから始めからってダルス
- 442 名前:名前は開発中のものです。 [2007/02/02(金) 08:09:11 ID:4MVbxLfh]
- 金がたまらん
- 443 名前:名前は開発中のものです。 mailto:sage [2007/02/02(金) 23:24:30 ID:Up+s2p7C]
- まじめにやってるのかw
このゲームは連射ツールを探すゲームだろ
- 444 名前:417 mailto:sage [2007/02/03(土) 23:01:32 ID:mWQs+0GM]
- gamdev.org/up/img/8810.lzh
今回の修正ポイントは ボス爆破、退避、体力半分になったら色が変わるです 重いのは修正は後回し・・・原因が!?・・・(>_<)力不足ですまそ アドバイス有り難うございます。これからは引き続き ボスの処理とステージ表示くらいは・・・
- 445 名前:名前は開発中のものです。 mailto:sage [2007/02/05(月) 17:25:13 ID:h+muHqVy]
- >>444
止まるのはあまり無い感じだけど、 逆に突然敵が物凄いスピードになる。
- 446 名前:名前は開発中のものです。 mailto:sage [2007/02/05(月) 17:28:28 ID:h+muHqVy]
- そういえば、物凄いスピードになるのは前のバージョンでも
Replayゲームでたまになることがあった。
- 447 名前:417 mailto:sage [2007/02/05(月) 19:53:54 ID:hdM4NXL7]
- gamdev.org/up/img/8835.lzh
Win32APIを使用したら改善されたようです。やりー!(^_^;)/ たぶんですが・・・少しだけ楽しくなってきた!? (キー入力で速度アップ、処理が重いの2点) if(kbhit()) ikey = getch();→if( GetAsyncKeyState('F') & 0x8000) ↑これが、悪さをしている感じは気づいていたのですが・・・ APIは難しいです。現状、使い方は適当。 >>445-446 キー入力を変えたから改善されていると思う・・・ Replayゲームってなんだろ・・・ >>432>>437 >1ループのタイミングを遅くする。やりかたがよくわかっていないです。おそらく、vsyncのことと思います。 >WriteConsoleOutputは現在、さわっていないです。今後検討します。今は、printfだけ使用 >背景スクロールってコンソールでやったらどうなるんだろ>グラディウスみたい壁だけ表示。 ・・・イメージできない・・・>_<
- 448 名前:417 mailto:sage [2007/02/05(月) 20:22:11 ID:hdM4NXL7]
- ゲームオーバー処理でkbhit()を
使っていて動作が、あやしいです。 次回改善します。
- 449 名前:名前は開発中のものです。 mailto:sage [2007/02/05(月) 23:27:30 ID:h+muHqVy]
- >>447
ゲーム中のボタン入力が効かなくなった。 Replayするかの問いかけの時には効く。 関数は自分の場合は、表示はWin32APIだけど、 入力はkbhit + getchだった。 >Replayゲームってなんだろ・・・ ゲームオーバー後の再プレイのゲームの事。 >1ループのタイミングを遅くする。 ゲームループはwhile(1){Sleep(1);}みたいにやっていると思うけど、 毎ループ表示はしないというか・・。詳しいやり方は忘れてしまった。 >背景処理 ■■■ □□■ ↓ ■■■ □■□ 別にGUIと一緒で、上の様に壁を自機側に動かす事で、 自機が前に進んでいるように見えるやり方。
- 450 名前:名前は開発中のものです。 [2007/05/08(火) 22:17:11 ID:5Oemp9qt]
- 保守
- 451 名前:名前は開発中のものです。 [2007/06/23(土) 04:24:21 ID:NgfGTGqT]
- 保守ついでにネタを投下(つか質問だけど)。
コンソール上で動くネトゲということで、手始めにTELNET鯖を作ろうとした。 ・WinXPに入ってるtelnetクライアントは、一文字ずつ送信(ECHO?) ・Cygwinに入ってる/usr/bin/telnetは、Enterキー押下で送信(ECHO?) DOS窓+日本語入力の際に半角1文字が入力されるたびに送信していると 日本語が入力できないので、/usr/bin/telnetのようにEnter押下で送信する機能と 一文字ずつ送信する機能を実装したいんだけど、どうすればいいんだろう。 ※標準実装のTELNETで利用できるゲームを作りたいので、クライアント(telnet.exe)は 今のところノータッチで進めたい。 RFCのTelnet仕様書(+日本語訳) ttp://www5d.biglobe.ne.jp/~stssk/rfc/rfc854j.html 分かりづらくて読み進められない状態です TELNETを知ろう ttp://www.space-peace.com/ethereal/prot/ethereal_protcol_3.htm 端末環境の調整処理があるみたい。 上の調整処理を実装したら可能なのかな?
- 452 名前:名前は開発中のものです。 mailto:sage [2007/06/25(月) 00:31:16 ID:ZRqfg7v2]
- なんかおもしろそうな話なので調べてみた。
もう解決済みかもしれないけど一応。 telnetは1文字ごとに送信/エコーするのが基本みたいなので 1行ごとに送信させるには、オプション設定でラインモードに変更するように サーバーからクライアントへ要求を出す必要があるようだ。 つまりこれはクライアント側で実装されている機能。 手順としてはサーバーからIAC DO LINEMODE(0xFF 0xFD 0x22)を送って クライアントがIAC WILL LINEMODE(0xFF 0xFB 0x22)を返してくれればOK。 しかしXPのtelnet.exeで試してみたところ IAC WONT LINEMODE(0xFF 0xFC 0x22)で拒絶されてしまう。TeraTermでも拒絶。 どうやらサブオプションがたくさんあるようなので(RFC1184) それを一緒に設定しないといけないのか、それとも単に実装されていないだけなのか不明。
- 453 名前:名前は開発中のものです。 mailto:sage [2007/06/25(月) 00:32:36 ID:ZRqfg7v2]
- cygwinは手元に無いのでVineLinuxのtelnetで試してみたら
クライアントからラインモード変更要求が来た。 要求呑んだらサブオプションも来たが長いので未解読。 ちなみに1バイトずつエコーを返しているだけでも2バイト文字は表示された。 ただ日本語を入力させるだけならラインモードにしなくてもよさそうだ。 以下参考 3分間NetWorking 第55回 telnet(3) ttp://www5e.biglobe.ne.jp/~aji/3min/55.html telnetオプションとラインモードに関する解説 ネットワーク総合辞書 Telnetとは ttp://www.7key.jp/nw/technology/protocol/telnet.html telnetオプションのネゴシエーション方法 RFC1184 Telnet Linemode Option ttp://www.faqs.org/rfcs/rfc1184.html 面倒なので読みたくない。
- 454 名前:名前は開発中のものです。 mailto:sage [2007/06/25(月) 12:23:58 ID:L30g44Rp]
- >>452
検証ありがd。451以降別のことやってたのでそれ以上調べてなかった。 サブオプションで切り替えを行ってるんだろうなあとうすうす感じつつも、RFCを深く読んでなかった。 ちゃんと読んでからWinXPのtelnet.exeで試してみる。(1byteエコー/ラインエコー実装しているか) >>453 FedoraCore6のtelnetクライアントもデフォルトでラインモードだね。 「OSにデフォルトでくっついてる環境」ってことでtelnetは魅力的なんだけど、自前で作った方がいいのか・・ (画面制御関連もあるし・・・ 参考URL読んできます
- 455 名前:名前は開発中のものです。 mailto:sage [2007/07/12(木) 11:42:45 ID:fm6cBZE/]
- 上のログに似てるモノ発見
ttp://www.geocities.jp/bizzontain/Snake_What_Happend_Snake_Snaaaake.htm ゲームじゃないけど面白い ttp://www.masswerk.at/jsuix/
- 456 名前:名前は開発中のものです。 mailto:sage [2007/07/12(木) 12:11:09 ID:fm6cBZE/]
- >>454
ttp://glossary.tank.jp/t083D.html
- 457 名前:名前は開発中のものです。 mailto:sage [2007/07/13(金) 00:18:24 ID:m4Id/o4c]
- >>455
なにこれ、すご! ホントにUNIX系のサーバーにログインしてるよね。 ブラウザでこんな事できるんだ
- 458 名前:名前は開発中のものです。 mailto:sage [2007/07/15(日) 00:54:53 ID:Uuola+pL]
- >>457
ソースを見てないからよくわからんけど、ターミナルの動きだけを再現してると思う。 Perlのopen関数を使ったら、実際にサーバー上でコマンドを走らせることが出来るから、 それと組み合わせたら面白そうだね。 ちなみに、Perlの実験で「ぶっとびネット」「さくらレンタルサーバー」「TOK2」で、 open関数にコマンドを入れて実行したら、ブラウザからサーバー上のgccが使えた。 (HelloWorld程度のC言語ソースをコンパイル)書き出したバイナリの実行も出来た。 <こんな感じ> gamdev.org/up/img/9773.gif 無料のtok2サーバーで実行してみたところ。 上:lastコマンドで、各ユーザがftpdの権限でログインした形跡が見れる。 モザイク部分はユーザ名とIPアドレス。前から脆弱性については話になってたけど、 ここまであっさり見れるとは。 下:ルートディレクトリの一覧。 <IPA(情報処理推進機構)> Perlの危険な関数 www.ipa.go.jp/security/awareness/vendor/programming/a04_02.html ファイルオープン時のパスにご用心 www.ipa.go.jp/security/awareness/vendor/programming/a04_01.html
- 459 名前:名前は開発中のものです。 [2007/07/16(月) 11:46:42 ID:FnsT7+Qn]
- これって>>393の人?
www.nicovideo.jp/watch/sm600768
- 460 名前:名前は開発中のものです。 mailto:age [2007/08/04(土) 03:29:51 ID:0r7QSK2d]
- www.nicovideo.jp/watch/sm755974
キター
- 461 名前:名前は開発中のものです。 mailto:sage [2007/09/19(水) 16:55:54 ID:CUFW49Hm]
- >>460
講座吹いたw
- 462 名前:名前は開発中のものです。 [2007/11/10(土) 09:54:39 ID:bpEeMvqn]
- 過疎ってるなー
- 463 名前:名前は開発中のものです。 mailto:sage [2007/11/10(土) 14:52:53 ID:v8Rue/8a]
- yes, this is
- 464 名前:名前は開発中のものです。 [2007/12/18(火) 10:48:23 ID:KpYVv7Rk]
- うん
- 465 名前:名前は開発中のものです。 mailto:sage [2008/01/08(火) 18:00:33 ID:c12aeRz9]
- 良すれ保守
- 466 名前:名前は開発中のものです。 mailto:sage [2008/01/13(日) 02:51:08 ID:B4/zxp/Z]
- char型二次元配列を裏画面として使って、
putsで一行ずつまとめて表示すると割と高速。
- 467 名前:名前は開発中のものです。 mailto:sage [2008/01/19(土) 05:10:01 ID:qUuZEDm3]
- ttp://gamdev.org/up/img/10959.zip
windows標準でついてるマインスイーパー消しちゃって、 自分で作ってみた物です。 面白そうなスレでしたのでうpしてみました(*'∀') 最初の1個目から地雷踏んだりするけど、見逃してやってください。
- 468 名前:名前は開発中のものです。 mailto:sage [2008/01/19(土) 17:01:25 ID:k8SuXtuE]
- >>467
やってみた。 操作性もいいし、いいんでないの? マインスイーパーはそこまで好きじゃないからなんとも言えないけど。
- 469 名前:467 mailto:sage [2008/01/19(土) 22:24:51 ID:qUuZEDm3]
- >>468
プレイしてくれてありがと〜 少々手抜きに作ってあるので、処理が少々重いかもしれないです 改めて日付の進み具合みると、かなり過疎ってるスレだったんですね… コンソールゲーム好きなんで盛り上がってほしいものです(´ω`)
- 470 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 19:28:43 ID:3pTy6Xfx]
- 多人数じゃんけんと小さいテトリスをつくってみました
テトリスは配列を使わずにつくってみました ttp://gamdev.org/up/img/11108.zip
- 471 名前:名前は開発中のものです。 [2008/02/27(水) 23:03:16 ID:YkodrRUR]
- >>470
テトリスが延々とスクロールしてゲームにならんのだが
- 472 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 13:03:48 ID:K/7PLLla]
- >>471
うわ、プレイしてくれたのに申し訳無いです 自分のパソコンだとちゃんと動くんですがなんでだろう? シフト使ってるから論理と算術の違いなのかな、調べてみます 汚いコードですがテトリスのソースの方上げておきました ttp://gamdev.org/up/img/11133.zip
- 473 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 13:52:12 ID:K/7PLLla]
- もしかして延々とスクロールって
スコア増加でスピード変化しないことなんでしょうか? 意味取り違えてたかも・・・ スコア増加でスピードが変化するようにしました(スコア10点でスピード1割) ttp://gamdev.org/up/img/11134.zip
- 474 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 17:49:02 ID:mHka+q54]
- >>473
うーん、ソースみたところ printf("\x1b[2;0H"); これがうまくいってない、この記述つかったことないので なんともいえませんね… 動画とって見ましたんで、ご確認を ttp://gamdev.org/up/img/11135.zip
- 475 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 18:10:31 ID:Gp03dHkZ]
- >>474
横からだが「エスケープシーケンス NT」でぐぐれ
- 476 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 18:10:38 ID:K/7PLLla]
- >>474
わざわざ動画あげてもらって申し訳無い、これはヒドイ・・・ 多分ここ ttp://f4.aaa.livedoor.jp/~pointc/log137.html に 書いてあることだと思うので対策できるようにもう少し調べてみます
- 477 名前:474 mailto:sage [2008/02/28(木) 18:11:06 ID:mHka+q54]
- 調べてみたところNT系は、デフォルトではコンソールウインドウで
エスケープシーケンスが使えないとのこと。 SYSTEM32フォルダ内のCONFIG.NTに device=%SystemRoot%\system32\ANSI.SYS と入れると動作するとかありました。 おそらく私はこれに引っかかったのだと思います。 お騒がせしました。
- 478 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 18:14:11 ID:mHka+q54]
- あぁぁ、書き込みが遅かった
とりあえずエスケープシーケンスが使えないてことみたいですね 直接制御できるので、もしよかったら試してみてくださいな〜
- 479 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 18:15:38 ID:4ClwLeVU]
- 2k/XPのコマンドプロンプトでは、
ANSIエスケープ・シーケンスはサポートされていないから
- 480 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 18:32:48 ID:K/7PLLla]
- たくさんのレスありがとうございます、参考になります
しかし当方Win98SEなので CONFING.NTファイルを見たことがないのでよく分からず無念 流石によく知らない者がその辺のファイル弄るのは危なすぎると思うので
- 481 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 23:26:14 ID:K/7PLLla]
- >>直接制御
昔やったような気がすんですが、SetConsorCursorPosition()とかでしょうか? CONFING.NTがよく分からないので エスケープシーケンスの所を全部コレに変えました、動くといいんですが・・・ ttp://gamdev.org/up/img/11136.zip あ、テトリスはsキーでブロックが空中でも止まります、意味はないです じゃんけんは問題なくてよかった、前にあげたものは消しておきました
- 482 名前:名前は開発中のものです。 mailto:sage [2008/02/29(金) 00:29:06 ID:cu8GNJze]
- >>481
ちゃんと動くようになりましたよ〜 おつかれさまです。 私の場合はここのヘッダ使ってカーソル位置とか色変えてますね 使いやすくて便利です。 ttp://www.plustarnet.com/aspil/Programming/CConsole.htm >>467にあるマインスイーパーがそれを使ったゲームになってます
- 483 名前:名前は開発中のものです。 mailto:sage [2008/02/29(金) 12:41:32 ID:0mOKtDVP]
- >>482
確認ありがとう〜、ちゃんと動いてよかったです これからはこれ使っていこうと思います そのページはブックマークしてたりしますが、C++なのでまだ分からなかったり マインスイーパーやらせてもらいました、やりやすかったですよ〜 ちょっと気になったんですが 頻繁に黒いマスや黒い行なんかが現れては消えたりしました うちのパソコンが古いせいかな?↓スクリーンショット撮っておきました ttp://gamdev.org/up/img/11137.jpg
- 484 名前:名前は開発中のものです。 mailto:sage [2008/02/29(金) 20:58:31 ID:cu8GNJze]
- >>483
うわぁほんとだ、なんだろうこれ… どうにか対処してみようかと思いますね。 あと荒いソースですが、もしかしたら原因が特定できるかもしれないし ソースうpしときます ttp://gamdev.org/up/img/11139.zip ではいまからがんばってきます〜
- 485 名前:名前は開発中のものです。 mailto:sage [2008/03/01(土) 19:11:20 ID:vFAmEApP]
- >>484 乙です
多分、描画が追いついてないのかな printf()前にSleep(0)で間を開けると直ったんですが、操作性がひどいことに 私も触発されてマインスイーパー作り始めました、むずかしい
- 486 名前:名前は開発中のものです。 mailto:sage [2008/03/02(日) 01:12:22 ID:4aFwrjUS]
- >>485
うーん、隙間が開いて欠けてるからif文のミスかとおもってました。 メイン関数内のSleep(10)を0にするとかどうでしょうね? CPU使用率考慮していれてあるだけなので、消してもいいかも マインスイーパー作るときに一番苦労した部分って 周囲に爆弾がないとき、一気に開くってのが一番苦労しましたね。 思いついて入れた処理もかなり強引ですが、それっぽく動いてるので そのまま実装しちゃいましたよ。
- 487 名前:名前は開発中のものです。 mailto:sage [2008/03/03(月) 19:05:51 ID:PJWWh74H]
- >>487
SetConsoleTextAttribute()(の反映?と実行両方?)が時間かかるみたいですね おまけや自分の作ったマインでも同じことが起こりました レス後に難易度調整に気付いたんですがHELLだと操作ラグもかなりキツかったです せっかくのカラーだったんですがSet〜を全部消せばかなりサクサク動きました 更にメインのSleep()も0にすれば完璧だったですよ マインスイーパーの基礎ができました やっぱり連鎖開きに悩みまくりましたが 考え方を探して再帰とかいうので処理してみました マインの前に作った○×ゲームとおまけも入れて ttp://gamdev.org/up/img/11148.zip
- 488 名前:名前は開発中のものです。 mailto:sage [2008/03/04(火) 00:37:30 ID:Ooz14xk6]
- >>487
マインスイーパークリアーしときました、こんなに早く作れるなんて すごいなぁ〜! やってて不具合はなかったんですが、開くとフラッグのキーが近すぎて よく間違えちゃうです(´ω`) 実は最近になってカーソル位置を変えるとか色つけるとか、 覚えたんで使ってたのですが、実は重いんですね。 もっと軽くなるように組みたいものです。 いままではsystem("cls")で画面ちらつかせながら コラムスとかテトリス作ってました。目に優しくないです。 今度はコラムスを改良してあげてみようかな。
- 489 名前:名前は開発中のものです。 mailto:sage [2008/03/05(水) 22:23:03 ID:PP0p/cWz]
- >>488
いえいえ〜、488さんのソースも参考にさせてもらいましたし キーは自分も間違えるんですよね コラムスですかー やったことないんで調べてみたんですけどぷよぷよに近い感じみたいですね ずらすっていうのが面白そうです OS調べてコンソールAPIとエスケープシーケンスを切り替える実験したんですが コンソールAPIの方がまだ分からないんで実験して貰えないでしょうか? ただ自信がないので危なそうならやめてください 無限ループですがESCで抜けられますです ttp://gamdev.org/up/img/11153.zip
- 490 名前:名前は開発中のものです。 mailto:sage [2008/03/05(水) 22:36:29 ID:PP0p/cWz]
- ぬお、すいません
見落としがあったのでやめておいてください getosversion()関数の lstrcat(lstrcat(szOS, " "), osvi.szCSDVersion);を考慮してませんでした
- 491 名前:名前は開発中のものです。 mailto:sage [2008/03/05(水) 22:46:05 ID:PP0p/cWz]
- メインの方での確認を
strncmp()で分かる文字列の範囲内で比較するように修正しましたです ttp://gamdev.org/up/img/11153.zip
- 492 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 08:44:59 ID:/GRx5LMI]
- >>491
最初にWindows XP Service Pack 2とでてきて FF風味の画面に移行しましたね アダマンタイマイなつかしいですw 起きてすぐなのでメインしかみてませんが、 表示のほうは正常なようですよ〜
- 493 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 12:23:32 ID:CB9BuRd5]
- >>492
実験ありがとう、よかったちゃんと動いて これでちゃんとエスケープシーケンスとコンソールAPI切り替えられそうです 画面はちょうど枠描画する関数とか書いていたので、これにしちゃえとw 「改良コラムス」の方が上がるのを期待してますよ〜
- 494 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 15:56:01 ID:/GRx5LMI]
- >>493
ずいぶん古くに作ったプログラムなので、1から作り直しレベルですね もうちょい時間かかりそうです(現在60%) 昔のソースはインデントとコメントがカオスってますよorz
- 495 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 17:52:32 ID:/GRx5LMI]
- 整理と軽量化がまだ終わってませんが、雰囲気だけでも
ttp://gamdev.org/up/img/11156.zip
- 496 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 18:20:20 ID:CB9BuRd5]
- 乙です
が、必要なDLLファイルMSVCR80D.DLLが見つかりません と出てしまいます
- 497 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 18:47:16 ID:/GRx5LMI]
- あぁMDdのままでした、MTにしてみたのでこれで動くはず。
消してあげなおしたら同じ名前になったけど、変更してあります。 ttp://gamdev.org/up/img/11156.zip
- 498 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 20:29:50 ID:CB9BuRd5]
- >>497
今度はちゃんと動きました しかし、system("cls")のちらつきよりカーソルの移動のが気になるという事実w コラムスの雰囲気伝わってきました、1から書き直し後40%頑張ってくだされ〜 >>昔のソースはインデントとコメントがカオス 私も中々上手くかけないので、最近は色んなソース見てパクりまくってます
- 499 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 14:10:13 ID:0VovTDRA]
- ずいぶんと時間がかかってしまいました。
色を排除して、カーソル移動で描画したいところだけ描画するように 直してみました。軽くなってるかどうかちょっとわかりませんが… どうも連鎖してるように見せる為にSleepで一度止めたりしてるところとか 斜めの消去判定とるあたりが強引な気がします。 なんか良い斜めの消去判定ないものかなぁ… ttp://gamdev.org/up/img/11181.zip
- 500 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 19:48:54 ID:ZiYiX7Gz]
- >>499
改良乙かれさまです、できればソースも見たいです ちらつきは殆どなかったですよ! 連鎖もいいかんじでした、ただ連鎖のSleep()はむしろもう少し長い方がいいかも 連鎖だ!うおー、パパッ、アレ?と終わるせいかよく分からないことがw キーを入力するとブレーキかかったような状態になるんですが 常に一定速度で落ちて来ないのは結構気になります しかし、斜め判定は難しそうだなぁ
- 501 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 22:28:02 ID:0VovTDRA]
- >>500
あいかわらずの汚いソースですが… ttp://gamdev.org/up/img/11183.zip 昔のソースを紐解いて、なんか斜めの消去のやり方が 二次元配列に添え字二つを同時に動かして、配列外になった添え字を元の場所に戻す。 これを繰り返してうまくループさせるために必要以上に大きく配列を取ってあるようです。 常に一定速度で落ちない理由がまだつかめてません。 割り当ててないキーを押したりしても、強制落下とは違う速度で加速してしまう ようなので、そこの改善と消去関数をもう少し分かりやすく 合理的にできるといいな〜と それよりグローバル変数に頼る癖も早く直したい気がしますね(ノ∀`)
- 502 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 13:14:48 ID:u0RGCZRQ]
- >>501
多分ですが game_play()関数内でのswitch()でキー処理する直前のfor()文のせいかな? コメントアウトで速くなったのでここで全体のウェイト取ってると思うんですが これがキー処理に必ずウェイトかかる原因のような気がしますね 私は最近はグローバル使わずに全部構造体にぶち込んで渡してます これもどうかと思いますが
- 503 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 05:24:55 ID:qALuOMqs]
- >>502
うーん、全体のウェイトをWin32APIのSYSTEMTIME構造体からwMillisecondsを 使って0.01秒を取得して、秒経過したら落とすようにしてみたんですが どうでしょうね? こちらで起きてた、割り当てされてないキーを押すと落下が加速する現象は これで起きなくなったんですが、他で使えるのかわかりません。 またソースごとあげてみますので、よかったら試してみてください〜 あとカラー機能をON、OFFで切り替えれるように実装しときましたんで合わせて いかがでしょうか? ttp://gamdev.org/up/img/11197.zip
- 504 名前:503 mailto:sage [2008/03/13(木) 15:19:19 ID:qALuOMqs]
- ちょっとバグがあったんで修正しておきました
ttp://gamdev.org/up/img/11201.zip
- 505 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 16:43:10 ID:snZebMO3]
- おお、消去に実にいい感じのアニメがつきましたねw
グッジョブです、これはマネしないとw カラーも今の広さでは問題なしでしたよ! 報告ですが中連鎖以上位でキー押しっぱにするとビープ音連発状態になります 後は、細かく見ると左右交互に押すと結構処理が追いつかずカクカクしました なので操作性辺りはまだ少し気にはなるです 私もコラムス作ってみた(ナナメ判定がやりたかった)のと ヘッダ作ってみたのでちと上げてみます
- 506 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 16:59:39 ID:snZebMO3]
- コラムスは得点も一気に消す石もでないので凄い中途半端ですが
後はぷよぷよ辺りで落ち物は一通り完了かなぁ ヘッダはぐちゃぐちゃだった前のを全面見直しして 位置と文字列が同時指定(フォーマット指定や縦書きとかも可)できる関数や 枠(普通、JIS、新JIS、枠一部なし等)を簡単描画できる関数を作ってみました エスケープシーケンス版とコンソールAPI版の2つ入れてあります ttp://gamdev.org/up/img/11202.zip
- 507 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 17:48:15 ID:qALuOMqs]
- >>506
memo.txtみました、なるほどこうすればよかったのかー 私の消し方かなり稚拙ですね、参考になりました(>Д<)ゞ ぷよぷよは途中まで作って他の事始めちゃったので ちゃんと作ったことないですねぇ、いずれ作りたいゲームではあります。 あと簡単に作れそうだけどサメガメとか、パズルじゃないけど 平安京エイリアンみたいなのか、前つくった自動生成ダンジョンの アルゴリズムを使ってローグを自分で作るとかしたいですね 書き綴ってみて作りたいの多すぎですね(ノ∀`)
- 508 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 22:59:00 ID:z7zyGLKw]
- >>506
ソースをパッと見ただけだけど columns xxx(columns data); という関数は void xxx(columns *data); にしたほうが速い。 上の方は構造体のコピーを何回も行うことになる。 あと、基本的にはヘッダに実装を書いちゃダメ。
- 509 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 11:46:37 ID:BYBS0C4v]
- >>507
メモ書きは作る前にいつも書きなぐるもので 私がまだ再帰位しか分からないので参考になるか分からんとです ぷよぷよってテトリス+コラムスみたいな感じですよね うむしかし、挙げてくださったゲーム名がローグ以外ちっとも分からないw 私も作りたいのはたくさんありますがまだまだ技量が足りてません 色々作ったゲームがたまっていくのはなんか楽しいです >>508 感想ありがとう参考になります 今はポインタ渡す方を試してますが、こっちの方が速かったんですね ヘッダに実装というとヘッダ内の関数のことですか? 実は関数分けがよく分からなくて分けても○○はモジュールエラーでどうにもです 重複インクルードで引っかかってるのかな?と思って調べましたが #ifndef〜#endifがいまいち分からず 凄い小さいプログラムでもう一回順々に試してみます
- 510 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 00:56:56 ID:JeDNgf5B]
- >>509
分割コンパイルとリンクについてもう少し勉強してみて。 コンパイル単位はソースファイル(*.c, *.cpp)だ。 あと、定義と宣言の違いとか。
- 511 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 21:14:20 ID:K/4nSBEA]
- >>510
おかげさまで分割コンパイルはできるようになりました 宣言はメモリを使用せず、定義はメモリを使用する、ですよね セーブデータに反応してロード項目が明暗するタイトル画面と ローグライクの"部屋割りしかできない"プログラムを作ってみました 部屋と部屋を繋げるのは難しいなぁ あと、全角文字ってDOSプロンプトの全画面表示にすると文字化けするんですね ttp://gamdev.org/up/img/11244.zip
- 512 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 22:00:41 ID:xiMUzKfB]
- >>511
もう少し細かいことを言うと、ヘッダファイルにはインクルードガードをつけよう。 例えば、game.hなら #ifndef GAME_H #define GAME_H ... #endif /* GAME_H */ typedefや#defineが2重定義でエラーになることがある。 あと、ヘッダファイルでは必要最低限のものだけをインクルードすること。 基本はソースファイルでインクルード。 モジュール間の依存関係をなるべく減らすため。 ゲームに関係ないことばっか書いてるな
- 513 名前:名前は開発中のものです。 mailto:sage [2008/03/27(木) 22:28:35 ID:Z85E7du+]
- >>512
指摘凄く助かってます、インクルードガードも付けました 無駄に何回もincludeさせて成功したので上手くいってるはず、多分 結局、関数も使いにくかったのでまた全部書き直しでした ttp://gamdev.org/up/img/11257.zip
- 514 名前:名前は開発中のものです。 mailto:sage [2008/06/10(火) 20:00:54 ID:GdKCfS38]
- gamedev.orgって死んでる?
- 515 名前:名前は開発中のものです。 mailto:sage [2008/06/10(火) 21:27:20 ID:C6VWRbnA]
- 新しいのができてますよん
TopPage - game-develop.com wiki wiki.game-develop.com/ GameDevWikiを何とかするスレ pc11.2ch.net/test/read.cgi/gamedev/1156117275/
- 516 名前:名前は開発中のものです。 mailto:sage [2008/06/11(水) 04:35:11 ID:pgfiz1XC]
- >>515
ありがとー。需要ないかも知れないけど、スレ用Wikiを作っておきました。 gamedev@CUI www7.atpages.jp/~whitewiz/cui/ 基本的なゲームプログラミングはgame-develop.comに任せて、 CUIベースに特化した技術や構想、実装方法などをメモしていけたらなと思ってます。 # telnet.exeを使ったオンラインゲームやcursesの分かりやすい使い方など、 # 3D/2Dベースのゲームでは出てこない要素も結構あるし
- 517 名前:名前は開発中のものです。 mailto:sage [2008/06/20(金) 02:02:35 ID:r2ZGTi5+]
- ふ〜む、久々にC++の練習も兼ねて作ってみようかな
このスレ的に、.NETってありなのかな?
- 518 名前:名前は開発中のものです。 mailto:sage [2008/06/21(土) 06:07:40 ID:2xguHMDH]
- コンソールゲームであれば言語は何でもおk
- 519 名前:名前は開発中のものです。 mailto:sage [2008/06/21(土) 08:11:30 ID:SxFf5e3W]
- 日本語でもおk?
- 520 名前:名前は開発中のものです。 mailto:sage [2008/06/21(土) 08:51:31 ID:2xguHMDH]
- おk
- 521 名前:名前は開発中のものです。 mailto:sage [2008/06/25(水) 21:04:54 ID:Fq+B4v22]
- どうも過疎ってるな
面白いコンソールゲーはないのか
- 522 名前:名前は開発中のものです。 mailto:sage [2008/06/27(金) 00:04:50 ID:Q3tbUled]
- ttp://www.textmodegames.com/
- 523 名前:名前は開発中のものです。 mailto:sage [2008/08/02(土) 09:34:40 ID:BSqYp/Fl]
- そうか、ボンバーマンライクなゲームなら
アスキーで事足りるか
- 524 名前:名前は開発中のものです。 mailto:sage [2008/08/03(日) 00:14:13 ID:K3uw6tAp]
- >>523
作るのなら応援するぞ。
- 525 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:37:24 ID:EJzQ6R8p]
- あまり人居なさそうだけども、ちと質問です。
コンソールのとある1部分をころころと変えるような処理をしたい場合、 ・char配列としてバッファを持っていて、毎回全部出力 ・WriteConsoleOutputCharacter();で場所を指定して、そこにちょこっと出力 のどちらが高速に動作するんでしょうか、、、教えてください。
- 526 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:56:55 ID:CMyXDagd]
- >>525
わたくしの気分的には、場所を指定できるなら指定した方が速いような気がします! 何ら根拠はありません。 ただ、毎回全部出力だとスクロールによって画面がちらつくとか、 画面サイズによって出力する文字数を調整しないといけない = めんどくさくなるので 速度に関わらず場所指定した方が幸せな気がします。
- 527 名前:名前は開発中のものです。 mailto:sage [2008/08/25(月) 20:01:45 ID:GP5x1+ae]
- CPANのcursesモジュールはマルチバイト文字に対応してないバージョンみたいだね。
テキスト処理が要になってくるのでPerlは重宝するんだけど、日本語や全角記号が使えないのは致命的だ・・・
- 528 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 08:16:06 ID:2yEXI7qs]
- >>525
>・char配列としてバッファを持っていて、毎回全部出力 これは、何を使って出力する?printfとか?
- 529 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 08:44:13 ID:DyQwvJP2]
- というかまさにそのための curses だよね… 何使ってるの?
- 530 名前:名前は開発中のものです。 mailto:sage [2008/09/06(土) 09:51:17 ID:P73o7xe5]
- System.Consoleだったりして
- 531 名前:名前は開発中のものです。 [2008/10/27(月) 04:16:25 ID:Tr2ZhL8i]
- 【お題】 コンソールゲーム
【タイトル】 くよくよ 【ジャンル】 パズルゲーム 【URL】 applis.servehttp.com/?file=00031419.zip(pass kuyo) 【製作時間】 二日 【開発環境】 Dev C++ 【概要】 ぷよぷよみたいなの 【操作方法】 まだなし ぜんぜん完成していないけどあげてみました
- 532 名前:名前は開発中のものです。 [2008/10/27(月) 04:17:34 ID:Tr2ZhL8i]
- すいませんこれです
applis.servehttp.com/?file=00031419.zip
- 533 名前:名前は開発中のものです。 mailto:sage [2008/10/27(月) 10:20:14 ID:FJ+86jwr]
- pc11.2ch.net/test/read.cgi/gamedev/1217601153/
Syntax Error. しかしらないキチガイが現れました
- 534 名前:名前は開発中のものです。 mailto:sage [2008/10/29(水) 15:53:16 ID:k+1+1EX+]
- >>531
キャラの違いを、シンプルにバックの色の違いだけで あらわしているのが、コンソールぽくっていいな。
- 535 名前:名前は開発中のものです。 mailto:sage [2008/10/31(金) 22:44:34 ID:n1mfw1c7]
- このスレオモロー
- 536 名前:名前は開発中のものです。 [2008/11/04(火) 03:06:58 ID:0nUrYxL5]
- 【お題】 コンソールゲーム
【タイトル】 くよくよ 【ジャンル】 パズルゲーム 【URL】 www.dotup.org/uploda/www.dotup.org15831.zip (pass kuyo) 【製作時間】 いっぱい 【開発環境】 Dev C++ 【概要】 ぷよぷよみたいなの 【操作方法】 矢印キーとスペース 操作と影つけた
- 537 名前:名前は開発中のものです。 [2008/11/04(火) 03:07:58 ID:0nUrYxL5]
- なんかぐちゃぐちゃになってきて
いやになってきた
- 538 名前:名前は開発中のものです。 mailto:sage [2008/11/04(火) 19:43:31 ID:1+4Hm42Y]
- *.oファイルは配布する必要ないよ
- 539 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 01:15:17 ID:ULMZJhap]
- >>537
作者まで悔々(くよくよ)とな? やってみたけど、表示面綺麗じゃないー 完成がんばってね。
- 540 名前:名前は開発中のものです。 [2008/11/05(水) 04:08:41 ID:MNLWX1do]
- >>538
ごめんなさい プロジェクトそんまま突っ込んだ >>539 背景白にしようかな 仕様かえて最初からがんばるは
- 541 名前:名前は開発中のものです。 mailto:sage [2008/11/05(水) 13:38:47 ID:MNLWX1do]
- すいません
サゲわすれてた
- 542 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 03:21:40 ID:7vAPgL5Q]
- >>541
気にしなくておk
- 543 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 14:14:10 ID:1WlAiqgD]
- www.dotup.org/uploda/www.dotup.org17524.zip.html (kuyo)
エラーが見つかったので修正しました
- 544 名前:名前は開発中のものです。 mailto:sage [2008/11/06(木) 16:34:05 ID:1WlAiqgD]
- www.dotup.org/uploda/www.dotup.org17552.zip.html
合体するとこまでできました^^
- 545 名前:名前は開発中のものです。 mailto:sage [2008/11/11(火) 22:51:46 ID:wW1kgsT4]
- "cpan curses multibytes"で検索すると>>527の自分のレスがトップに表示されて涙目。
Unicodeベースでも使えるように腹くくって移植するかなぁ・・・。
|

|