コンソールゲーム
■ このスレッドは過去ログ倉庫に格納されています
rogueライクやアドベンチャー等 文字主体のゲーム製作について語って。 http://gamdev.org/up/img/8748.lzh 14*6から9*4に変更の中ボス作成。^_^ 前回とはボスの大きさが変わっただけですm(_ _)m 軽くなっているから止まらないと思う・・・ というか弾のすり抜け不具合の対応に時間がかかった(>_<) ループタイミングとかスピードとかはこれから色々試す予定 ファミコンのゲームをやって、どうするかゆっくり決めていきます。 コンソールで地面、背景ってできるのかな・・・ 現状はコンソールAPIだけ使いたい・・・しかし疲れが(T_T;) ああ、ちなみにご褒美画像は18禁な なので今回は18歳未満はやらないように おじさんとのやくそくだぞ! >>434 まだ止まる時もある。 止まるのは、ボスが動く時と、キー入力を両方行った時っぽい。 背景の表示も、飛行機と同じで、普通にprintfなどで行う。 飛行機が無い位置は背景を表示し、ある位置は飛行機を表示する感じ。 飛行機が見難くならないように、 グラデュースみたいに壁だけ表示するのがいいと思うが。 >>435 1000 ******** おめめ ******** コマンドまたはファイル名が正しくありません. みたいに出て、ご褒美画像が見れない。 プレイ環境は9x系。 クリアー無理 三面まで猿のようにやった 抜いた エロゲにしてはむずい ほれ! http://gamdev.org/up/img/8783.zip ↑新作だ エロゲ第2弾な ネット環境がないと動かない。 あとwin9xとか検証できないので無理w 今は、デバックコードを作成中・・・キー入力、フレーム等、確認中・・・ >>439 うはwwwwおkwwww 盗撮ゲームって面白いな動画の品質もまぁまぁだし ていうか動画幾つあるんだ? 盗撮場所によっても違うみたいだし てかセーブ機能希望 警察に捕まってから始めからってダルス まじめにやってるのかw このゲームは連射ツールを探すゲームだろ http://gamdev.org/up/img/8810.lzh 今回の修正ポイントは ボス爆破、退避、体力半分になったら色が変わるです 重いのは修正は後回し・・・原因が!?・・・(>_<)力不足ですまそ アドバイス有り難うございます。これからは引き続き ボスの処理とステージ表示くらいは・・・ >>444 止まるのはあまり無い感じだけど、 逆に突然敵が物凄いスピードになる。 そういえば、物凄いスピードになるのは前のバージョンでも Replayゲームでたまになることがあった。 http://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だけ使用 >背景スクロールってコンソールでやったらどうなるんだろ>グラディウスみたい壁だけ表示。 ・・・イメージできない・・・>_< ゲームオーバー処理でkbhit()を 使っていて動作が、あやしいです。 次回改善します。 >>447 ゲーム中のボタン入力が効かなくなった。 Replayするかの問いかけの時には効く。 関数は自分の場合は、表示はWin32APIだけど、 入力はkbhit + getchだった。 >Replayゲームってなんだろ・・・ ゲームオーバー後の再プレイのゲームの事。 >1ループのタイミングを遅くする。 ゲームループはwhile(1){Sleep(1);}みたいにやっていると思うけど、 毎ループ表示はしないというか・・。詳しいやり方は忘れてしまった。 >背景処理 ■■■ □□■ ↓ ■■■ □■□ 別にGUIと一緒で、上の様に壁を自機側に動かす事で、 自機が前に進んでいるように見えるやり方。 保守ついでにネタを投下(つか質問だけど)。 コンソール上で動くネトゲということで、手始めに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 端末環境の調整処理があるみたい。 上の調整処理を実装したら可能なのかな? なんかおもしろそうな話なので調べてみた。 もう解決済みかもしれないけど一応。 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) それを一緒に設定しないといけないのか、それとも単に実装されていないだけなのか不明。 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 面倒なので読みたくない。 >>452 検証ありがd。451以降別のことやってたのでそれ以上調べてなかった。 サブオプションで切り替えを行ってるんだろうなあとうすうす感じつつも、RFCを深く読んでなかった。 ちゃんと読んでからWinXPのtelnet.exeで試してみる。(1byteエコー/ラインエコー実装しているか) >>453 FedoraCore6のtelnetクライアントもデフォルトでラインモードだね。 「OSにデフォルトでくっついてる環境」ってことでtelnetは魅力的なんだけど、自前で作った方がいいのか・・ (画面制御関連もあるし・・・ 参考URL読んできます 上のログに似てるモノ発見 ttp://www.geocities.jp/bizzontain/Snake_What_Happend_Snake_Snaaaake.htm ゲームじゃないけど面白い ttp://www.masswerk.at/jsuix/ >>454 ttp://glossary.tank.jp/t083D.html >>455 なにこれ、すご! ホントにUNIX系のサーバーにログインしてるよね。 ブラウザでこんな事できるんだ >>457 ソースを見てないからよくわからんけど、ターミナルの動きだけを再現してると思う。 Perlのopen関数を使ったら、実際にサーバー上でコマンドを走らせることが出来るから、 それと組み合わせたら面白そうだね。 ちなみに、Perlの実験で「ぶっとびネット」「さくらレンタルサーバー」「TOK2」で、 open関数にコマンドを入れて実行したら、ブラウザからサーバー上のgccが使えた。 (HelloWorld程度のC言語ソースをコンパイル)書き出したバイナリの実行も出来た。 <こんな感じ> http://gamdev.org/up/img/9773.gif 無料のtok2サーバーで実行してみたところ。 上:lastコマンドで、各ユーザがftpdの権限でログインした形跡が見れる。 モザイク部分はユーザ名とIPアドレス。前から脆弱性については話になってたけど、 ここまであっさり見れるとは。 下:ルートディレクトリの一覧。 <IPA(情報処理推進機構)> Perlの危険な関数 http://www.ipa.go.jp/security/awareness/vendor/programming/a04_02.html ファイルオープン時のパスにご用心 http://www.ipa.go.jp/security/awareness/vendor/programming/a04_01.html char型二次元配列を裏画面として使って、 putsで一行ずつまとめて表示すると割と高速。 ttp://gamdev.org/up/img/10959.zip windows標準でついてるマインスイーパー消しちゃって、 自分で作ってみた物です。 面白そうなスレでしたのでうpしてみました(*'∀') 最初の1個目から地雷踏んだりするけど、見逃してやってください。 >>467 やってみた。 操作性もいいし、いいんでないの? マインスイーパーはそこまで好きじゃないからなんとも言えないけど。 >>468 プレイしてくれてありがと〜 少々手抜きに作ってあるので、処理が少々重いかもしれないです 改めて日付の進み具合みると、かなり過疎ってるスレだったんですね… コンソールゲーム好きなんで盛り上がってほしいものです(´ω`) 多人数じゃんけんと小さいテトリスをつくってみました テトリスは配列を使わずにつくってみました ttp://gamdev.org/up/img/11108.zip >>470 テトリスが延々とスクロールしてゲームにならんのだが >>471 うわ、プレイしてくれたのに申し訳無いです 自分のパソコンだとちゃんと動くんですがなんでだろう? シフト使ってるから論理と算術の違いなのかな、調べてみます 汚いコードですがテトリスのソースの方上げておきました ttp://gamdev.org/up/img/11133.zip もしかして延々とスクロールって スコア増加でスピード変化しないことなんでしょうか? 意味取り違えてたかも・・・ スコア増加でスピードが変化するようにしました(スコア10点でスピード1割) ttp://gamdev.org/up/img/11134.zip >>473 うーん、ソースみたところ printf("\x1b[2;0H"); これがうまくいってない、この記述つかったことないので なんともいえませんね… 動画とって見ましたんで、ご確認を ttp://gamdev.org/up/img/11135.zip >>474 横からだが「エスケープシーケンス NT」でぐぐれ >>474 わざわざ動画あげてもらって申し訳無い、これはヒドイ・・・ 多分ここ ttp://f4.aaa.livedoor.jp/~pointc/log137.html に 書いてあることだと思うので対策できるようにもう少し調べてみます 調べてみたところNT系は、デフォルトではコンソールウインドウで エスケープシーケンスが使えないとのこと。 SYSTEM32フォルダ内のCONFIG.NTに device=%SystemRoot%\system32\ANSI.SYS と入れると動作するとかありました。 おそらく私はこれに引っかかったのだと思います。 お騒がせしました。 あぁぁ、書き込みが遅かった とりあえずエスケープシーケンスが使えないてことみたいですね 直接制御できるので、もしよかったら試してみてくださいな〜 2k/XPのコマンドプロンプトでは、 ANSIエスケープ・シーケンスはサポートされていないから たくさんのレスありがとうございます、参考になります しかし当方Win98SEなので CONFING.NTファイルを見たことがないのでよく分からず無念 流石によく知らない者がその辺のファイル弄るのは危なすぎると思うので >>直接制御 昔やったような気がすんですが、SetConsorCursorPosition()とかでしょうか? CONFING.NTがよく分からないので エスケープシーケンスの所を全部コレに変えました、動くといいんですが・・・ ttp://gamdev.org/up/img/11136.zip あ、テトリスはsキーでブロックが空中でも止まります、意味はないです じゃんけんは問題なくてよかった、前にあげたものは消しておきました >>481 ちゃんと動くようになりましたよ〜 おつかれさまです。 私の場合はここのヘッダ使ってカーソル位置とか色変えてますね 使いやすくて便利です。 ttp://www.plustarnet.com/aspil/Programming/CConsole.htm >>467 にあるマインスイーパーがそれを使ったゲームになってます >>482 確認ありがとう〜、ちゃんと動いてよかったです これからはこれ使っていこうと思います そのページはブックマークしてたりしますが、C++なのでまだ分からなかったり マインスイーパーやらせてもらいました、やりやすかったですよ〜 ちょっと気になったんですが 頻繁に黒いマスや黒い行なんかが現れては消えたりしました うちのパソコンが古いせいかな?↓スクリーンショット撮っておきました ttp://gamdev.org/up/img/11137.jpg >>483 うわぁほんとだ、なんだろうこれ… どうにか対処してみようかと思いますね。 あと荒いソースですが、もしかしたら原因が特定できるかもしれないし ソースうpしときます ttp://gamdev.org/up/img/11139.zip ではいまからがんばってきます〜 >>484 乙です 多分、描画が追いついてないのかな printf()前にSleep(0)で間を開けると直ったんですが、操作性がひどいことに 私も触発されてマインスイーパー作り始めました、むずかしい >>485 うーん、隙間が開いて欠けてるからif文のミスかとおもってました。 メイン関数内のSleep(10)を0にするとかどうでしょうね? CPU使用率考慮していれてあるだけなので、消してもいいかも マインスイーパー作るときに一番苦労した部分って 周囲に爆弾がないとき、一気に開くってのが一番苦労しましたね。 思いついて入れた処理もかなり強引ですが、それっぽく動いてるので そのまま実装しちゃいましたよ。 >>487 SetConsoleTextAttribute()(の反映?と実行両方?)が時間かかるみたいですね おまけや自分の作ったマインでも同じことが起こりました レス後に難易度調整に気付いたんですがHELLだと操作ラグもかなりキツかったです せっかくのカラーだったんですがSet〜を全部消せばかなりサクサク動きました 更にメインのSleep()も0にすれば完璧だったですよ マインスイーパーの基礎ができました やっぱり連鎖開きに悩みまくりましたが 考え方を探して再帰とかいうので処理してみました マインの前に作った○×ゲームとおまけも入れて ttp://gamdev.org/up/img/11148.zip >>487 マインスイーパークリアーしときました、こんなに早く作れるなんて すごいなぁ〜! やってて不具合はなかったんですが、開くとフラッグのキーが近すぎて よく間違えちゃうです(´ω`) 実は最近になってカーソル位置を変えるとか色つけるとか、 覚えたんで使ってたのですが、実は重いんですね。 もっと軽くなるように組みたいものです。 いままではsystem("cls")で画面ちらつかせながら コラムスとかテトリス作ってました。目に優しくないです。 今度はコラムスを改良してあげてみようかな。 >>488 いえいえ〜、488さんのソースも参考にさせてもらいましたし キーは自分も間違えるんですよね コラムスですかー やったことないんで調べてみたんですけどぷよぷよに近い感じみたいですね ずらすっていうのが面白そうです OS調べてコンソールAPIとエスケープシーケンスを切り替える実験したんですが コンソールAPIの方がまだ分からないんで実験して貰えないでしょうか? ただ自信がないので危なそうならやめてください 無限ループですがESCで抜けられますです ttp://gamdev.org/up/img/11153.zip ぬお、すいません 見落としがあったのでやめておいてください getosversion()関数の lstrcat(lstrcat(szOS, " "), osvi.szCSDVersion);を考慮してませんでした メインの方での確認を strncmp()で分かる文字列の範囲内で比較するように修正しましたです ttp://gamdev.org/up/img/11153.zip >>491 最初にWindows XP Service Pack 2とでてきて FF風味の画面に移行しましたね アダマンタイマイなつかしいですw 起きてすぐなのでメインしかみてませんが、 表示のほうは正常なようですよ〜 >>492 実験ありがとう、よかったちゃんと動いて これでちゃんとエスケープシーケンスとコンソールAPI切り替えられそうです 画面はちょうど枠描画する関数とか書いていたので、これにしちゃえとw 「改良コラムス」の方が上がるのを期待してますよ〜 >>493 ずいぶん古くに作ったプログラムなので、1から作り直しレベルですね もうちょい時間かかりそうです(現在60%) 昔のソースはインデントとコメントがカオスってますよorz 整理と軽量化がまだ終わってませんが、雰囲気だけでも ttp://gamdev.org/up/img/11156.zip 乙です が、必要なDLLファイルMSVCR80D.DLLが見つかりません と出てしまいます あぁMDdのままでした、MTにしてみたのでこれで動くはず。 消してあげなおしたら同じ名前になったけど、変更してあります。 ttp://gamdev.org/up/img/11156.zip >>497 今度はちゃんと動きました しかし、system("cls")のちらつきよりカーソルの移動のが気になるという事実w コラムスの雰囲気伝わってきました、1から書き直し後40%頑張ってくだされ〜 >>昔のソースはインデントとコメントがカオス 私も中々上手くかけないので、最近は色んなソース見てパクりまくってます ずいぶんと時間がかかってしまいました。 色を排除して、カーソル移動で描画したいところだけ描画するように 直してみました。軽くなってるかどうかちょっとわかりませんが… どうも連鎖してるように見せる為にSleepで一度止めたりしてるところとか 斜めの消去判定とるあたりが強引な気がします。 なんか良い斜めの消去判定ないものかなぁ… ttp://gamdev.org/up/img/11181.zip >>499 改良乙かれさまです、できればソースも見たいです ちらつきは殆どなかったですよ! 連鎖もいいかんじでした、ただ連鎖のSleep()はむしろもう少し長い方がいいかも 連鎖だ!うおー、パパッ、アレ?と終わるせいかよく分からないことがw キーを入力するとブレーキかかったような状態になるんですが 常に一定速度で落ちて来ないのは結構気になります しかし、斜め判定は難しそうだなぁ >>500 あいかわらずの汚いソースですが… ttp://gamdev.org/up/img/11183.zip 昔のソースを紐解いて、なんか斜めの消去のやり方が 二次元配列に添え字二つを同時に動かして、配列外になった添え字を元の場所に戻す。 これを繰り返してうまくループさせるために必要以上に大きく配列を取ってあるようです。 常に一定速度で落ちない理由がまだつかめてません。 割り当ててないキーを押したりしても、強制落下とは違う速度で加速してしまう ようなので、そこの改善と消去関数をもう少し分かりやすく 合理的にできるといいな〜と それよりグローバル変数に頼る癖も早く直したい気がしますね(ノ∀`) >>501 多分ですが game_play()関数内でのswitch()でキー処理する直前のfor()文のせいかな? コメントアウトで速くなったのでここで全体のウェイト取ってると思うんですが これがキー処理に必ずウェイトかかる原因のような気がしますね 私は最近はグローバル使わずに全部構造体にぶち込んで渡してます これもどうかと思いますが >>502 うーん、全体のウェイトをWin32APIのSYSTEMTIME構造体からwMillisecondsを 使って0.01秒を取得して、秒経過したら落とすようにしてみたんですが どうでしょうね? こちらで起きてた、割り当てされてないキーを押すと落下が加速する現象は これで起きなくなったんですが、他で使えるのかわかりません。 またソースごとあげてみますので、よかったら試してみてください〜 あとカラー機能をON、OFFで切り替えれるように実装しときましたんで合わせて いかがでしょうか? ttp://gamdev.org/up/img/11197.zip ちょっとバグがあったんで修正しておきました ttp://gamdev.org/up/img/11201.zip おお、消去に実にいい感じのアニメがつきましたねw グッジョブです、これはマネしないとw カラーも今の広さでは問題なしでしたよ! 報告ですが中連鎖以上位でキー押しっぱにするとビープ音連発状態になります 後は、細かく見ると左右交互に押すと結構処理が追いつかずカクカクしました なので操作性辺りはまだ少し気にはなるです 私もコラムス作ってみた(ナナメ判定がやりたかった)のと ヘッダ作ってみたのでちと上げてみます コラムスは得点も一気に消す石もでないので凄い中途半端ですが 後はぷよぷよ辺りで落ち物は一通り完了かなぁ ヘッダはぐちゃぐちゃだった前のを全面見直しして 位置と文字列が同時指定(フォーマット指定や縦書きとかも可)できる関数や 枠(普通、JIS、新JIS、枠一部なし等)を簡単描画できる関数を作ってみました エスケープシーケンス版とコンソールAPI版の2つ入れてあります ttp://gamdev.org/up/img/11202.zip >>506 memo.txtみました、なるほどこうすればよかったのかー 私の消し方かなり稚拙ですね、参考になりました(>Д<)ゞ ぷよぷよは途中まで作って他の事始めちゃったので ちゃんと作ったことないですねぇ、いずれ作りたいゲームではあります。 あと簡単に作れそうだけどサメガメとか、パズルじゃないけど 平安京エイリアンみたいなのか、前つくった自動生成ダンジョンの アルゴリズムを使ってローグを自分で作るとかしたいですね 書き綴ってみて作りたいの多すぎですね(ノ∀`) >>506 ソースをパッと見ただけだけど columns xxx(columns data); という関数は void xxx(columns *data); にしたほうが速い。 上の方は構造体のコピーを何回も行うことになる。 あと、基本的にはヘッダに実装を書いちゃダメ。 >>507 メモ書きは作る前にいつも書きなぐるもので 私がまだ再帰位しか分からないので参考になるか分からんとです ぷよぷよってテトリス+コラムスみたいな感じですよね うむしかし、挙げてくださったゲーム名がローグ以外ちっとも分からないw 私も作りたいのはたくさんありますがまだまだ技量が足りてません 色々作ったゲームがたまっていくのはなんか楽しいです >>508 感想ありがとう参考になります 今はポインタ渡す方を試してますが、こっちの方が速かったんですね ヘッダに実装というとヘッダ内の関数のことですか? 実は関数分けがよく分からなくて分けても○○はモジュールエラーでどうにもです 重複インクルードで引っかかってるのかな?と思って調べましたが #ifndef〜#endifがいまいち分からず 凄い小さいプログラムでもう一回順々に試してみます >>509 分割コンパイルとリンクについてもう少し勉強してみて。 コンパイル単位はソースファイル(*.c, *.cpp)だ。 あと、定義と宣言の違いとか。 >>510 おかげさまで分割コンパイルはできるようになりました 宣言はメモリを使用せず、定義はメモリを使用する、ですよね セーブデータに反応してロード項目が明暗するタイトル画面と ローグライクの"部屋割りしかできない"プログラムを作ってみました 部屋と部屋を繋げるのは難しいなぁ あと、全角文字ってDOSプロンプトの全画面表示にすると文字化けするんですね ttp://gamdev.org/up/img/11244.zip >>511 もう少し細かいことを言うと、ヘッダファイルにはインクルードガードをつけよう。 例えば、game.hなら #ifndef GAME_H #define GAME_H ... #endif /* GAME_H */ typedefや#defineが2重定義でエラーになることがある。 あと、ヘッダファイルでは必要最低限のものだけをインクルードすること。 基本はソースファイルでインクルード。 モジュール間の依存関係をなるべく減らすため。 ゲームに関係ないことばっか書いてるな >>512 指摘凄く助かってます、インクルードガードも付けました 無駄に何回もincludeさせて成功したので上手くいってるはず、多分 結局、関数も使いにくかったのでまた全部書き直しでした ttp://gamdev.org/up/img/11257.zip >>515 ありがとー。需要ないかも知れないけど、スレ用Wikiを作っておきました。 gamedev@CUI http://www7.atpages.jp/ ~whitewiz/cui/ 基本的なゲームプログラミングはgame-develop.comに任せて、 CUIベースに特化した技術や構想、実装方法などをメモしていけたらなと思ってます。 # telnet.exeを使ったオンラインゲームやcursesの分かりやすい使い方など、 # 3D/2Dベースのゲームでは出てこない要素も結構あるし ふ〜む、久々にC++の練習も兼ねて作ってみようかな このスレ的に、.NETってありなのかな? どうも過疎ってるな 面白いコンソールゲーはないのか ttp://www.textmodegames.com/ そうか、ボンバーマンライクなゲームなら アスキーで事足りるか あまり人居なさそうだけども、ちと質問です。 コンソールのとある1部分をころころと変えるような処理をしたい場合、 ・char配列としてバッファを持っていて、毎回全部出力 ・WriteConsoleOutputCharacter();で場所を指定して、そこにちょこっと出力 のどちらが高速に動作するんでしょうか、、、教えてください。 >>525 わたくしの気分的には、場所を指定できるなら指定した方が速いような気がします! 何ら根拠はありません。 ただ、毎回全部出力だとスクロールによって画面がちらつくとか、 画面サイズによって出力する文字数を調整しないといけない = めんどくさくなるので 速度に関わらず場所指定した方が幸せな気がします。 CPANのcursesモジュールはマルチバイト文字に対応してないバージョンみたいだね。 テキスト処理が要になってくるのでPerlは重宝するんだけど、日本語や全角記号が使えないのは致命的だ・・・ >>525 >・char配列としてバッファを持っていて、毎回全部出力 これは、何を使って出力する?printfとか? というかまさにそのための curses だよね… 何使ってるの? 【お題】 コンソールゲーム 【タイトル】 くよくよ 【ジャンル】 パズルゲーム 【URL】 http://applis.servehttp.com/?file=00031419.zip (pass kuyo) 【製作時間】 二日 【開発環境】 Dev C++ 【概要】 ぷよぷよみたいなの 【操作方法】 まだなし ぜんぜん完成していないけどあげてみました ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.0 2024/04/24 Walang Kapalit ★ | Donguri System Team 5ちゃんねる