3月4日から11日までの週は、非常識でした。
2012年の経験に基づいて、すべてが期待したほど悪くはありませんでした(今回は実際に1泊7-8時間寝ることができました!)。そして、彼の自由にはるかに多くのツールを持っていました。 素晴らしいものを作りたいという欲求から、今年の
7日間ローグライクチャレンジのゲームである
POLYBOT-7に80時間以上の作業を
費やしました 。
(*これは 1週間
のみで、 7DRLまでの準備時間は含まれません!)今週、私の頭を一掃するタスクとソリューションの数は、非常に多くなりました。 時には退屈なこともありましたが、同時に、非常に多くの機能やコンテンツを短時間で実装できるハッキングを見つけるのは驚くべきことでした。 とても。 たくさん。 ハック。 巨大な技術的義務! ほとんどのコードを書く過程で、私はイライラしたと感じましたが、最短ルートを選択するか、すべて失敗するリスクがあるかのいずれかを選択するしかありませんでした。 最初の数日間、コードは少しきれいになりましたが、期限が近づいたため、私は本当におかしなことを始めました。
何年もの間ローグライクの「通常の」作業を続けて、自分がやっていることや計画していることをすべて書き留め、最高の解決策を求めて長い間考えることを教えてくれたので、このプロジェクトは私にとっては難しいことでした。 私はこの習慣を克服し、ただ
仕事をしなければなり
ませんでした。仕事について書くのではなく、今すぐそれをしなければなりませんでした! 私はこのことを一週間ずっと思い出さなければなりませんでした。
この記事は、POLYBOT-7の開発を説明する詳細な事後分析です。 全体としてのプロセス全体と、意思決定の際に私を導いた思考の両方を検証します。
コンセプト-何となぜ?
当初、7DRLに対する私の野心は少し少なかった。 目標は、Cogmindゲームの単純なデモを作成し、余計なものをすべてカットし、純粋な戦闘ローグライクゲームを開発することでした。 同時に、ほとんどの作業は、インターフェイスをより少ない情報でより簡潔なビューに変換することでしたが、フォントとタイルのサイズは
2倍になりました。 これは、Cogmindの一般的なテーマやスタイルに興味があるが、ゲームを表示するのに十分な大きさの画面を持っていない人々に見せることができるモデルかもしれません。 このバージョンのコンセプトを「Bigmind」と呼びました。
しかし、審議の後、このアイデアは退屈に思われ始めました。 これは7DRLです! それは実験と興味深い新しいローグライクに捧げられるべきです!
もっと過激にならなければならなかったのですが、そのときは新しいCogmind機能についてメモをスケッチしていました。 今年の大きなチャレンジアップデートでリリースしたかったのです。実際、プレイヤーは近くのオブジェクトの磁石の役割を果たす必要があります。
突然、これは7DRLで使用できる優れた基本的なメカニズムであるように思えました。実際、理想的なデザインには他の多くの変更が必要であり、実際、同じ世界内で大幅に異なるゲームを作成するという事実は言うまでもありません。 7DRLは、このアイデアを単純な競合チャレンジモードよりもはるかに高く評価していたため、開発の新しい方向になりました。
一般的に、提案された変更はCogmindのゲームプレイを大きく変えました。 オリジナルの
POLYBOT-7アナウンスメントでこのゲームの類似および異なる機能のリストを読むことができますが、それらのいくつかについては以下でさらに詳しく説明します。
もちろん、出発点としてCogmindを選んだ理由は
他にもありました。 最後のことではありませんでした。私はあまりにも長い間計画と準備をする必要がなかったということではなく、基本ではなくゲームプレイまたはコンテンツの開発に集中できました。 間違いなく、POLYBOT-7がこれに最適でした。
7DRLで作業する最善の方法の1つはプロジェクトの範囲を制限することですが、
別の最善の方法の
1つは既存のゲーム、または少なくとも強力なエンジンまたはフレームワークに依存することです。 私はゲームとエンジンのソースコードに精通しており、長年にわたってそれらに取り組んできました。技術的な部分があまり得意ではないため、ホイールを再発明する必要がないことが本当に適しています。実際、非常にゆっくりと働いています。時間枠。
私の初期のプロジェクトのソースコードは、長年にわたって新しいプロジェクトを生み出しました。 プロジェクトをゼロから開始することはほとんどなく、代わりにコードを変更するだけです。(ただし、7DRLは自由に使用できるため、目標は素晴らしいゲームを完成させることではなく、単にエンジンを構築するか、常に夢見ていた新しいフレームワークを作成することです。)
しかし、すべてがバラ色ではありませんでした! 結果があまり良くなかった理由の一部は、週の初めに完成したデザインがなかったことです。 2012年、最初の7DRLの開始前に、すべてを準備しました。すべての数学、数式、およびデータ間隔をチェックしました。残っているのは、これらすべてをコードとASCIIに転送することだけでした。 POLYBOT-7の場合、詳細がまったくないアウトラインプランしかありませんでしたが、新しい詳細が表示されるとドミノ効果が非常に簡単に作成されるため、これが問題になりました。 そしてそれが起こった。 その結果、システムを調整するために大きな変更と追加を行う必要がありましたが、事前に十分に考えていませんでした。
しかし、最も深刻な欠点は、私が一週間のほとんどを
考えて実装しないことに費やしたことでした。 最大の効率を得るために、7DRLの週はそれについて考えるのではなく、
作成する必要があります(優れたデザインの作成には1週間以上かかる場合があります。これは、主にアイデアが時の試練に合格するか、より良い解決策があるかどうかを確認するために潜伏期間を必要とするためです)。 主にコード内のアドレナリンに満ちたハックのおかげで、私はかろうじて管理できました。
7DRLの前のステージ
7DRLの準備は、週自体よりも少し早く始まります。 1月、私はいくつかのデザインドキュメントを調べましたが、時として後者を開いて混chaとしたときに変更を加えたり、デザインの現在の状態を把握するために新しいドキュメントのすべてを再編成するために大幅な変更を行いたいと考えました。 2012年、私はそのような仕事のために多くの自由時間を持ちましたが、今年はCogmindなどを開発するのにかなり忙しかったので、設計に必要な時間を得ることができませんでした。 技術的に完成した高レベルの設計ドキュメントを持って7DRLに来ましたが、もう少し時間があればもっと改善できたでしょう。
7DRLの
前に
、私のブログと
itch.ioにもリリースのお知らせを書きました
。 実際、私はかなりゆっくりと書いていますが、今週中に良いリリースを発表する時間がないことも知っていました。 その結果、後でデザインの変更に応じて小さな変更を加えましたが、基本的にアナウンスは同じままで、後でいくつかのスクリーンショットを追加しました。 また、以前は取引がなかったitch.ioを知る良い機会でもありました。 7DRLの作業を完了した後、すべてを台無しにするのは何とか楽しいでしょう!
週の開始前に、Cogmindの未使用のタイルセットを使用してカバーオプションを設計しました。
プレリリースのドラフトボックスデザイン。これにより、Casperがタイルセットを完成させた後、週末にPOLYBOT-7のボックスデザインの作成が簡素化されました。 類似性に気付くかもしれません:
最終的なボックスデザイン!UI
dzdokamiでの作業に加えて、REXPaintで少し時間を過ごして、レイアウトUIを作成しました。 最初は、必要なものをすべて106x30グリッドに収めようとしました。最初からインターフェイスをテストしました。制限がメカニズムに影響を与える可能性があることがわかっていたからです。
私はこの最初のレイアウトをかなり早く捨てました。
レイアウトUI No. 1(HUDのみ)縦縞はあまりにもわかりにくく、読みにくいため、追加の番号を入れる余地がありません。 その後、型の分離にのみ使用される4つのヘッダー/行を削除することで、パーツのリストの上にスペースを空けることができることに気付きました。 いずれにせよ、各行の隣の各部分にASCII /タイルを追加できます。これらは自動的にソートされるため、これらのヘッダーは厳密には必要ありません。 次に、最初の本格的なレイアウト(メモ付き)が登場しましたが、以下に示すように、左側のUI区切り文字をカバーするASCIIアイテムを作成することは非常に悪い考えでした! (できる限り多くの水平UIスペースを節約するための実験としてこれを試しました)
レイアウトUI No. 2Cogmindスタイルと可能な限り異なるインターフェイスを作成するために、全体的な外観を変更する方法を検討することも重要です。 これを行う最も簡単な方法の1つは、色を変更することです。そのため、もちろん(私とは別にキャスパー)、まず緑から離れて、別のプライマリUI色、つまりオレンジを選択することにしました。 DynaHackのこの感動的なスクリーンショットに見られるように、黒地に金色は奇妙なテーマです。
配色を変更したDynaHackのスクリーンショットのサンプル。私はこの考えをREXPaintで研究しましたが、残念なことに、UXの観点から、一般的に、オレンジはPOLYBOT-7の機構にはあまり適していませんでした。 Cogmindでは、主な機能はオブジェクトの破壊です。カラースキーム全体では、緑は「良い」と見なされ、他の効果と状態は独自の論理色を使用する傾向があります。 ほとんどの場合、接地されていないものはすべて、通常、注意が必要です。 同時に、損傷インジケータとラベルの移行標準「緑->黄色->オレンジ->赤」が保持され、このテーマはインターフェースのさまざまな部分に常に適用されます。 原色を変更すると、このような直感的な理解が損なわれ、UIの理解度が低下します。
そのため、適切な最終HUDレイアウトが生まれ、上部に4行追加されました。
レイアウトUI No. 3(HUDのみ、最終バージョン)後で他の変更を加えましたが、一般的にはすべてがそのままでした。 REXPaintのレイアウトはすべてを明確に示しているため、実装は非常に単純になり、この予備作業は非常に役立ちました。
黒い背景のハイコントラストスタイルを再び使用する代わりに、少し暗いテキストが少し明るい背景の上にある低コントラストのテーマに切り替えました。 昨年の終わりに、エンジンに「レンダリングフィルター」を追加しました(ブログで
説明しています)。これにより、構成パラメーターを変更するだけで低コントラストのビューに切り替えることができました。 当時、私はそれらをここで使用することを知りませんでした-システムはCogmindプレイヤーがインターフェースをカスタマイズできるようにするだけでしたが、それでもジャムに重宝しました!
構成ファイルのこの行は、前面レイヤーが明るすぎることを許可せず、背景全体に緑色の色合いを与えます。ただし、低コントラストフィルター自体は非常に大きなハックです。 Cogmindは、背景が黒であるという前提で長年開発されてきたため、このモードではアニメーションが常に完璧に見えるとは限りません。 武器で使用される膨大な量のパーティクルを更新する時間は絶対にありませんが、少なくともUIの外観は改善できます。 これらの変更はすべてCogmindに加えられました(この7DRLの恩恵を受けました)。 遅かれ早かれそれをやりたかったのですが、この場合、作業は7DRLの時間に移行しました。
実際、2つのタイプの問題を解決する必要がありました。低コントラストモードでも背景を強制的に黒にするか、色を背景色から目的の色に線形補間するようにアニメーションを変更します。
2番目のソリューションの例。 修正する前に、アニメーションは目的の補間ではなく黒に線形補間を実行することに注意してください(つまり、最初に黒に変わり、次に目的の色に切り替わります)。 修正後、最初は目的の色がわかっているため、見た目はずっと良くなります。仕事を始める前に、フォントについても考えました。 外観と実装の両方の点でシンプルなものが欲しかったので、テキスト
とマップにはTerminusを選択しました。これは、ほぼすべてのサイズで利用できる美しいピクセルパーフェクトなモノスペースフォントだからです。 ただし、Cogmindのようにサイズの大きな間隔を作成したくなかったため(作業に時間がかかります)、マップモード(およびHUD)を垂直方向に拡張することを禁止し、30行に固定しました。 ただし、幅は変更できるため、一部の画面ではテキストが狭くなります。 ただし、これは、スケーリングよりもはるかに優れたオプションであり、テキストとタイルがビットマップから直接ピクセル単位の完璧な外観を維持できるようにします。
さらに、これは、わずか4つの異なるサイズで、解像度範囲全体をサポートできることを意味していました。 768p解像度の12x12カードの基本正方形タイルは24x24フォント(12 * 2を使用して作成されたばかり)を使用し、現在最も人気のある1080p解像度は36x36(12 * 3)フォントを使用し、サイズ48(12 * 4、1440p以上) )および72(12 * 6、2160p)。 テキストは半幅のセルを使用します。これには、6x12の基本寸法を持つ4つのサイズも必要です。
7DRLの前に書かれたメモ。 折り畳まれた紙をポケットに入れて、考えを投げかけます。 私の息子はこのシートを借りて、裏面に何かを描くことにしました。ゲームプレイデザイン
デザインの主な目標は、「コーヒーブレイク」と推定されるCogmindスタイルの簡単なゲームプレイを作成することでした。そのため、すべてがこのアイデアを中心に展開されました。 ゲームプレイで決定する必要のあるものが少なくなるため、多くのインタラクションシステムを削除する必要がありました。 そして、システムだけでなく
、武器の
視覚的効果でさえ、注意をそらし、プレイヤーを遅くする可能性がありました。 これを念頭に置いて、私は今週、すべての遅いアニメーションを修正するか、それらが使用されたほとんどの種類の武器を除外したかった。
Cogmindの電磁パルスアニメーションとPOLYBOT-7の高速アニメーションの比較。 (メカニズムの理由から、EMPをゲーム内に保持したいので、スピードを上げる必要がありました。)行われた決定の数を減らすためのもう1つのステップは、インベントリを完全に削除することでしたが、すぐにはそのような決定には至りませんでした。 上記のレイアウト#2には、最初にモーダルウィンドウとして考えていたインベントリがあり、パーツを組み立ててから、必要に応じて取り付けることができることに注意してください。 とても遅い! すべての自動化機能を備えていても、Cogmindの最も遅い側面の1つは在庫管理であり、これを制限することは素晴らしいことだと思いました。 したがって、さらに前のパーツが失われた後に取り付けられたパーツの順序付けられた「キュー」について考えましたが、単純で簡潔なゲームとして考えられるものには複雑すぎるように見えました。
それから私は、在庫の必要性がまったくないことを思いつきました。実際のところ、プレーヤーは
世界の 「在庫」であり、周囲にある部品を引き付ける既存の能力により簡素化されました。 それはシンプルであることが判明し、ゲームプレイに興味深い結果をもたらしました。
取り付けた後、パーツを個別に取り外すことはできません。パーツの自動取り付けは無意味になるためです。残りは近くにあるため、プレイヤーは単に不要に切断されるためです(より多くのtyagomotina!)。 したがって、破壊による損失(ゆっくりと信頼性の低い)に加えて、別の方法が必要です。 そして、計画の別の重要な部分が表示されます:クリーンアップの仕組み。
Cogmindには、絶対に必要な場合に脱出するために、接続されているすべてのパーツを破壊するgo nakedコマンドが既にあります。 したがって、POLYBOT-7に変換すると、ゲームプレイがはるかに向上します。 すべてのパーツを破壊する代わりに、ランダムな半分を破壊し、残りの半分を捨てることで、潜在的に有用なパーツを保持し、周囲に大量のパーツを作成せずにすべてのスロットを再び塞ぐ可能性を残します。 このメカニズムにより、1)構成が完全にアンバランスで無用になった場合、または2)使用したい優れたオブジェクトを見つけた場合に、プレイヤーは構成を「シャッフル」できます。
Cogmindのプレイヤーとの会話(一般的な計画を提示する前の週)から、無制限の「クリーン」は機能せず、簡単に回避できることが明らかになりました。 これは、エネルギーが多い場合にはるかに高速になるため、興味深い場合があります。 さらに、「クリーンアップ」の後、プレーヤーは弱くなり、このアクションを実行する前に状況を真剣に評価する必要があります。 このようなシステムに問題があり、現在は動作が異なるため、これについては後で説明します。
また、次のセクションでは、他のユニークなメカニズムについて説明します。
UIの開始
7DRL週の最初のステップは、既存のUIを最も効率的な方法で切り捨てて再構築することでした。
最善のアプローチは「主にUI」です。これは、ゲームのコンテンツ(元々Cogmind Beta 5に類似)の表示に取り組み、既知の変数のままで開発プロセスを高速化できるためです。
現在、ソースマテリアルの多くのウィンドウは不要になりましたが、予想されるように、コードベースにはそれらや他のコンテンツへのあらゆる種類のリンクがいっぱいになっているため、それらを完全に削除して安定したゲームを期待することは不可能です。 私は何をしましたか? ちょうどそれらを移動しました:)
デフォルトのCogmind UIスキーム。 矢印は、POLYBOT-7でコンソールが範囲外に移動したか、狭くなったことを示しています。またハック? はい、もちろんです。 代替よりも簡単ですか? もちろん。 また、これらのウィンドウのコンテンツと対話するコマンドをブロックしました。
したがって、技術的な観点から、POYLBOT-7でプレイする場合、実際に存在し更新されるコンソールがかなりありますが、画面からレンダリングされるため、可視領域にはレンダリングされません。
最も興味深いハッキングの1つは、メッセージログです。 POYLBOT-7には独自のメッセージログが必要ですが、ゲームにはCogmindのように常に表示するのに十分なスペースがないため、2つのソリューションを組み合わせて使用しました...
Cogmindには、バトルログをマップに直接出力するシステム(メッセージログとは別)が既にあったので、このシステムをメッセージログ自体に接続しました。バム、メッセージがマップに一時的に表示されるようになりました。 ただし、Cogmindの周期的なアプローチ(
おそらく 、この新しいシステムに戻って置き換える
ことができる)を使用するのではなく、常に下にスクロールして古いメッセージを上にシフトするように、動作を変更する必要がありました。
マップを上にスクロールするメッセージの例。ただし、マップの一部を閉じてメッセージを永久に残すことはできません。さらに、古いメッセージを表示する方法が必要なので、とにかくこの機能を実装するためのインターフェイスが必要です。
そこで、私は単にCogmindの「完全なメッセージログ」を使用するというアイデアを思いつきました。 元のゲームでは、F4を押すと、メッセージログが画面の一番下まで展開され、さらに多くのメッセージが表示されます。
POLYBOT-7では、「m」を押すとメッセージログが移動し、画面の左上隅の座標が(-1、-1)になり(タイトル/境界線が非表示になります)、高さが拡大して内部が地図を閉じます。 「m」キー、エスケープ、またはマウスのクリックでログを閉じると、再び圧縮されて範囲外に移動します。便利なことに、この別のメッセージログウィンドウを画面外に表示し続けることができましたよね?これは、一部のウィンドウのみを構成した場合のプロセスの様子です。展開されたログが画面からわずかに開くことに注意してください(後でP7ログの貴重なスペースを占有するため、組み込みの移動番号をオフにしました)。最初は、メッセージログはCogmindのようにマップの幅の半分しか拡張しませんでしたが、後でマップの幅まで増やして完全に閉じました-これにより、スペースが増え、メッセージが読みやすくなりました!地図の上に詳細なメッセージログを開く。フォントの働き方を考慮して見栄えがよくなった(そうでなければ、文字は画面の端のすぐ横に表示される)ので、後で境界線を表示したままにすることに決めたことは注目に値します。メイン端末のサイズを変更する前に私が最後にしたことは、目的の領域のサイズにほぼ対応するようにヘルプ画面の内容を再編成することでした。以下は、すべての準備が整っていないスクリーンショットですが、ほとんどのコンテンツは既に削除されています。オプションの便利なメニューを作成するのに十分な時間はありませんでしたが、悪党のようにヘルプ画面が必要であることに加えて(そうすることはそれほど難しくありません)、さらにゲームメニューとボタンを複製します。新しいフォントと端末サイズに切り替えた後の最終バージョン:前のレイアウトからわかるように、「スキャン」ウィンドウと「ボレー」ウィンドウ(カーソルの下のオブジェクトに関する簡単な情報と攻撃の詳細を取得するためにそれぞれ使用)はスコープから削除されますが、それらに含まれる情報は非常に貴重なので、どこかに表示する必要があります。コンソールウィンドウ自体は画面の上部にあり、そのレンダリングロジックは正常に機能します。また、画面の下部にパーツのリストを含む1行のバーを追加しました。これは、これらのコンソールからの表示出力を文字通り読み取り、それらをコピーします。パーツリストの下の「情報バー」。さまざまなオブジェクト/状態に関する簡単な情報が表示されます。このインターフェイス関数をすぐには追加しませんでした(元のレイアウトではないことに注意してください)が、少しテストを行った後、アイテムの潜在的なスロットを犠牲にすることで、さらに多くの機能が得られることに気付きました!情報ストリップの完全なコードは次のとおりです。彼はかなり混乱しており、これは私が今週中にしたほとんどすべてのことのように、簡単なハックです。他のコンソールからテキストをコピーし、必要に応じて新しい領域に表示するために再フォーマットします。力学
UI計画の実装に最初の数日間を費やした後、次の段階に進みました-すべての新しいメカニズムの実装...最初に、主要な新機能の1つである部品の引き付けについて設定しました。 Cogmindには長い間同様の効果を持つ特別な機能があったので、動作させるのはそれほど難しくありませんでした。プレイヤーの位置から、ダイクストラは半径(4)内のすべての詳細を検索し、それぞれがパス検索コードを使用して、1ターンごとに1ステップずつプレイヤーに近づこうとします。Cogmindでは、戦術的なポジショニングが常に重要でしたが、この機能のために、それはさらに必要になりました。なぜなら、最適なゲームのためには、敵から落ちる可能性のある戦利品を含むオブジェクトの位置も考慮する必要があったためです。近すぎる場合、空のスロットに弱いディテールが表示されます!取り付けられたパーツは、プレーヤーに最も近いパーツからランダムに選択されるため、特定の構成を作成するのがさらに難しくなります。さらに、詳細を個別に削除することはできません。そうしないと、ゲームは退屈なルーチンに変わります。次の詳細とその固定の魅力。(注:今週はASCIIのみで作業しましたが、これらの機能のほとんどは、後で作成されたタイルの助けを借りて実演します。)これらすべてのオブジェクトが横たわっているとき(特に、戦いで残ったトロフィーの形で)、それらは未使用のままであるため、この混乱をすべて取り除くための何らかの方法が必要です。- カードが乱雑になると、適切な部品を見つけることが難しくなります
- 引力のメカニズムのために、余分なゴミは必要なオブジェクトを引き付けるタスクをさらに困難にします
- ほとんど常に近くにさまざまなパーツのセットがあり、空のスロットの存在を簡単に回避します(つまり、一般的に生き残るのが簡単です)
Cogmindはこの目的のためにプロセッサを使用してトロフィーをリサイクルプラントに収集しますが、POLYBOT-7では戦闘ボットのみを使用することに固く決めました。したがって、既存のCogmindシステムを作り直し、オブジェクトの自己破壊を実装しました。 Cogmindでは、このメカニズムは特別な場合にのみ使用されますが、ここでは普遍的になりたいと思いました。トロフィーのようなロボットから落下するすべてのアイテムは、動きのカウンターを開始し、タイマーが切れると、アイテムはそれ自体を破壊します。それらのそれぞれが少しの問題を残した後、それは有用であり(弾薬として)、面白そうです(戦闘後の残骸または部品のグループを見ることができます)。プレイヤーのスロットがいっぱいなので、部品の自己破壊を示すために移動をスキップします。明らかに、プレイヤーが見つけることができる詳細がまだ近くにあるはずなので、プレイヤーが引き始めるまでタイマーはありません。そして、プレイヤーがマップ上で「詳細をドラッギングする」ことを防ぐために、すべてのアクティブに引き付けられたパーツについて、スペアのものと同じくらい長い間、タイマーは2倍速く減少します。タイマーがアクティブになるとアイテムは少し光り、タイマーがゼロに近づくとより強く光り始めます。このシステムを改善することはできますが、十分な時間がないため、特に重要ではありませんでした。ゲームプレイにおけるもう1つの主要な戦略的変更は、スロットタイプの削除です。これにより、デザインは未踏の代替パスに沿って移動しました。これは2012年に検討しました。私の意見では、他の新しいPOLYBOT-7メカニズム、特に部品の魅力を考慮して、非常に適切であることが判明しました。結果として得られたP7の非常に柔軟な構成により、パッセージはより混乱し、興味深いものになりました。ゲームにはタイプヘッダーはもうありませんが、詳細は自動的に並べ替えられ、ASCII /タイルが左側に表示されるため、現在利用可能な各タイプの詳細の数をすばやく確認できます。Cogmindにはスロットがさまざまなタイプに属しているという基本的な仮定があるので、この実装は想像よりもはるかに痛みが少ないことがわかりました!コード内では、スロットは依然としてタイプである必要があり、それを無視するためには、入力と出力の制限を削除または変更するだけです。技術的な観点から見ると、プレイヤーは新しいスロットを受け取るたびに、武器スロットに何でも置くことができるため、プレイヤーにとっては明らかではないにもかかわらず、「武器」タイプになります。オブジェクトとのやり取りを簡素化し、プレイヤーの構成を制御するもう1つの重要な原則は、異なるタイプの推進システムを混合する許可でした(一度に1つのタイプの推進システムしかアクティブにできないCogmindとは異なります)。混合物の実装は非常に簡単でしたが、一般に、推進システムのシステムは、いくつかのタイプの設備を同時に使用する古い機構を維持しながら、非常に不器用になりました。この問題を回避する方法はなかったので、動きのメカニズムをゼロからやり直さなければなりませんでした!当初、設計ドキュメントでは、この変更は「素晴らしいことですが、時間がありません」というリストに載っていたため、道路の真ん中で新しい推進システムを作成する必要があることがわかりました!高品質にするには、システムでテストと複数の反復を実行することが望ましいため、これが7DRLに適していないことは明らかです。まあ、どういうことか、それは避けられないので、ある朝、私はちょうど袖をまくり、すべてをやり直しました。ここでは詳しく説明しませんが、オプションの数を3種類のムーバーに減らすことで大きな助けになったとしか言いません。 (私はまだ彼が戦いに重点を置いてゲームに近づいていなかったので、彼はもはや外国人のようで、彼らのニッチに入ることができなかったので、フライトを削除するつもりでした。)したがって、エアクッションは速度を提供しますが、より大きなサポートを提供する能力はありません。脚はプレーヤーを少し遅くしますが、いくらかより大きなサポートを提供し、トラックはプレーヤーを非常に遅くしますが、より大きなサポートを提供します。概念的には、これはCogmindの数学ではタイプの混合が許可されていないという事実にもかかわらず、Cogmindと多少似ていますが、同時に、他の機能、たとえば過負荷(P7のリモート)およびベースを増加させる推進システムをサポートするため、より複雑です速度(P7にも存在しない)。推進システムの実装の準備。 POLYBOT-7プロパルサーのメカニズムは、スプレッドシートの分析とテストではなく、「ナプキンで」の簡単な数学的計算に完全に基づいています。幸いなことに、システムに変更を加える必要はまったくありませんでした。実践に基づいて、かなりバランスが取れていることがわかりました。これらのアイテムのテンプレートを変更する必要さえありませんでしたが、そのうち54個の推進システム用の新しいアイテムが取得されました。なんて安心!スペースを乱雑にする問題に加えて、非戦闘ボットがないため、POLYBOT-7の別の副作用が発生しました。ゲーム内の壁を修理するエンジニアがいませんでした。もちろん、これはポイ捨てのような大きな問題ではありませんが、完全に破壊可能な世界で横行する破壊は予期せぬ結果をもたらす可能性があります。さらに、マップリカバリは見栄えが良いため、実装しました。「ガントレット」はその構造を復元します。アニメーションが高速になれば素晴らしいと思います-実際、これはゲームの最も遅い部分です(覚えているように、私は高速にしたかったのですが)速く働いたので、アニメーションに効果音がないことは望みませんでした他のすべてが発声されたこと...)、そして唯一の適切な音にはそのような持続時間がありました...ですから、アニメーションの持続時間をそれらと比較しました。少なくともこれは、前のサイクルの後、レリーフの一部が破壊された場合にのみ発生します。一部のアクションには警告音が付いているため、プレイヤーはレベルの回復に対応できます。たとえば、壁の反対側に移動して追跡者/攻撃者をブロックします。振り返ってみると、システム全体に多くの作業が必要であることがわかります。美学
POLYBOT-7をCogmindから切り離すために、POLYBOT-7のユニークな外観を作成する方法を見つけることの重要性について言及しました。彼のゲームプレイのスタイルは非常に異なるため、理想的には、外観は可能な限り異なる必要があります。既に新しいUIサイズ、より大きなピクセルフォント、色の変更がありますが、タスクを実行する方法は他にもあります。最も単純で最も明白なのは、線に基づいた方向付けられた壁の使用です。幸いなことに、Cogmindにはこのスタイルを実装するコードがまだあります(元々はX @ COMのソースコードから残っていました)。この「切り替え」は簡単に切り替えられましたが、長年切り替えられていないため、もちろん完全に機能していませんでした...すべてのバグを修正した後、指向性のドアも考慮しました -ハックが必要だった迅速な実装のための新機能、およびそれにもかかわらず、私はそれを完全に改善することができませんでした(カード回復システムは常にドアを正しく再作成するとは限りません)。ああ、ついにドアに関するすべての問題を修正したとき、障害のあるタイルが範囲外に現れました!典型的なゲーム開発者...方向を正しく処理するためにカードのメモリシステムが必要だったため、いくつかの追加の問題が発生しました。(タイルについて:私は通常ASCIIで作業しますが、タイルモードの方向が機能するかどうかを確認する必要があったため、この時点で古いCogmindタイルがまだありました。)指向性のある壁の単純な実装の副作用として、プレイヤーは壁の後ろで何が起こっているかについてより多くの情報を得ることができますが、ロボットの世界ではこれは何らかの論理によって説明できるので、私はすべてをそのままにしました。しかし、システムを更新するのに少し時間を費やす必要があったので、さもなければ無意味にレンダリングされる隠された廊下/ドアへの接続を無視しました。 7DRLの終わりまでに、少なくとも1つの異常が残りましたが、これにはもっと時間がかかりました。そのため、私は何もしませんでした。部屋の隅にある隠れた廊下がその場所を明らかにします。オリエンテーションシステムはすでにかなり複雑になっており、特別なケースを考慮すると、実装した単純なルールよりもはるかに多くの作業が必要になります。方向付けられた壁の動作上記のスクリーンショットからわかるように、床も変更されています-フルサイズの床タイルの代わりに太字のドットを使用しています。これにより、前景のタイルがさらに目立つようになり、より伝統的なローグライクな外観も維持されます(2015年、ゲームが他のゲームよりも際立っていたため、塗りつぶされたフロアタイルがCogmindに表示されました。さらに、Casperは実験を望んでいましたが、気にしませんでしたが、最終的にはどのアプローチでも機能するからです)。キャスパー彼は私と一緒に7DRLに参加してタイルセットを作成することに同意したため、新しいスタイルが必要でした。当初は24x24の基本サイズを作成することを考えましたが、週の初めに、Casperはこのサイズに基づいていくつかのコンセプトを作成し、ゲームに挿入して外観を確認しました。スクリーンショットは、新しい24x24タイルセットスタイル(矢印でマーク)の概念と新しいテキスト(残りはテスト用に変換されていない古いタイル)の概念を示しています。 ご覧のとおり、ここには後に処分された性細胞があります。主な問題は、Terminus 6x12フォントのスケールを(すべての適切なサイズで読みやすくするために)増やしてテキストを作成したため、その外観がより細かいピクセルタイルに対応せず、全体的な外観が不自然に見えることでした。 そのため、12x12タイルの使用に戻って、テキストに合わせてインターフェイス全体をかさばる外観にするために、単にスケールを増やす方が良いと考えました。 私は、正確に横から見た、可能な限り平らなビューを提案しました(Casperは、より少ない日陰で作業することを決定しました)。
基本的に、2つのシェードを使用するロボットを除き、フラットタイルセットPOLYBOT-7。上記の完成したスタイルでわかるように、ASCIIモードのように、タイルセットで方向付けられたドアと壁が使用され、「地面」(壁の間の塗りつぶされたスペース)が単純な正方形に変換されます。 これにより、Cogmindとは異なる外観が作成され、タイルの要件が最小限に抑えられ、Casperがジョブを終了できるようになります(または、少なくとも重要なことにもっと時間をかけることができます!)。
もう1つの非常に大きな変更は、オブジェクトの配色の置き換えです。 さまざまなデザインをすばやくテストしました。 このような変更は、Cogmindから離れるために必ずしも必要ではなく、UIを簡素化するための実験でした。
サンドボックス内のオブジェクトのさまざまな配色のクイックテスト(すべての場合、不明確なオブジェクトは白で表示されます)。 ウォンナンバー3。また、タイルが表示されるパーツリストでダイアグラムがどのように表示されるかを比較することも重要でした(コンテンツが同じではなく、分布が悪いため、比較がかなり不十分でしたが、急いでいた!)その結果、私は純粋な青の色合いのシンプルさが気に入りました。 これらはインターフェースではあまり使用されず、緑色のUIとよく一致しています。 それは多かれ少なかれモノクロのスキームでしたが、青の明るい色合いを使用して貴重な詳細を強調し、すぐに目を引くことができました。 そして、青の色合いには、紺fromから天空やターコイズまで、さまざまな色が関連付けられています。
ただし、最初は
プレイヤーも青であり、オブジェクトが彼を囲むと混乱する可能性があるため、最後に彼の色を緑に変更しました-この色はマップの他の場所では使用されていません(Cogmindの中立ボットがここにあるため削除)。 次に、1)マップ上の他のすべてのものと比較して非常に重要であり、2)プレイヤーのキャラクターに固有であるため、アップグレードモジュールの色を緑に変更しました。
カード生成
私は一日中カードを生成しました。 一日の終わりには、私の机は次のようになりました。
POLYBOT-7カードのさまざまなスキームについて考えた後の私のテーブル。すべてのマップはCogmindの私の
トンネリングアルゴリズムを使用しますが、パラメーターは異なります。 スロットモジュール(新しいパーツスロットを取得する方法)は、実際にはこれらのパラメーターの中にあり、
プレハブの形で存在し、カードからの入力/出力に対して異なる場所にランダムに配置されます。
メモ付きの100x100マップの例。 プレーヤーは、赤い点の1つからカードを入力し、もう1つの点から出る必要があります。 この特定のスキームでは、通常の3つではなく4つの分散モジュールスロットルームが使用され、POLYBOT-7にはCogmindよりも多くの隠れたドアと廊下があります。 また、大きな部屋はほとんどありません。私はこの開発段階で失敗することを特に恐れました。なぜなら、優れたカードのセットを作成するには多くの時間がかかり、それらをやり直す時間はもうないからです。 スキームを作成するとき、私はCogmindカードの研究から学んだことと、POLYBOT-7の内容がすべてを変更する計画に基づいています(プロセスの次の段階。これについては、以下で説明します)。 正直なところ、私はカードの生成にそれほど時間を費やす必要はなく、すべてがうまくいきましたが、再現性を高め、ゲームを複雑に保つために、より多くの変動性が必要でした。 マップのサイズとレイアウトはバランスを取るために重要であり、各深度でマップのサイズを増やす必要があると判断しました。つまり、各フロアにいくつかの異なるレイアウトが必要でした。 そのため、長い時間がかかりました。
80x80カードの回路生成のテスト(2階)。100x100カードのテスト回路生成(3階)。125x125カード(4階)のスキームの1つのスタイル(各フロアには複数のスタイルがあります)の生成をテストします。マップの生成作業中に、ゲームの開発の方向に絶え間ない変更を加えました:絶え間ないアップグレード。 プレイヤーが核の完全性を回復してパフォーマンスを向上させるために出口に到達するだけの進化システムCogmindとは異なり、POLYBOT-7では、ダメージ耐性、エネルギー/物質の追加容量、精度の向上などの永続的なメリットをもたらすランダムアップグレードモジュールを選択しますまたは可視性の半径など。 私は本当にP7のこの仕組みを探求したかったのですが、最初はdizdokで「おそらくこの時間がない」とリストに載っていました。 週の半ばには、このアイデアを使用してデザインのバランスを取る必要があるとは思いもしませんでした。
新しいメカニズムの条件では、P7カードは小さくなるはずでしたが、すべての機能のアップグレードは床に対してローカルであったため、入力と出力をCogmindのように配置することは非常に困難でした。つまり、非表示にする必要はありませんでした出口は遠いです! プレイヤーはすぐに結果を見つけることができますが、これは通常のことです。なぜなら、彼らは学習の過程であまり失われないようにしながら、新しいアップグレードを求めてフロアを探索したいからです。 これがゲームプレイの主な難点です。
さらに、これらのアップグレードを取得するには、ディスパッチャ(床に散らばっている敵の主なソース)を攻撃する必要があります。これにより、ゲームの戦闘面に集中することができます-リスクを取る、アップグレードのために戦う、またはすぐに逃げます。 さらに、Cogmindにはほとんど存在しないという事実にもかかわらず、継続的なアップグレードのコレクション自体がゲームの興味深い部分です。 したがって、Cogmindに似た設定で彼と実験することは興味深いものでした。
Cogmindでは、ステルス/スピード戦略はメカニック自体から自然に発生します-プレイヤーは出口を探す際に敵を避けようとします(またはそれらから逃げます)が、これはここでは不可能であり、POLYBOT-7メカニックはプロセスの基礎として戦闘にはるかに重点を置いています。 残念ながら、これはまた、すべてのアップグレードを作成するために、コンテンツに対してさらに
多くの作業を行う必要があることを意味しました。
内容
幸いなことに 、私は7DRLのかなり良い作業スケジュールを準備しましたが、このスケジュールは「バランスと関心」のために2日間余分に提供しました。結局のところ、コンテンツに関連するより必要なものにそれらを費やさなければならなかったからです。 元の計画によれば、私は主にPOLYBOT-7で独自の
メカニックを作成し、Cogmindからできるだけ多くのアイテムを保存することに焦点を当てる必要があります。 しかし、多くの理由から、これはテーマ的にも機構の観点からも不適切であることが判明しました。 たくさんの新しいコンテンツを追加するのが最善でしょう...その結果、週の半ばに、私はプロジェクトのこの計画外の部分で地獄に取り組みました。 最後の数日間に近づくと、彼女は青白く見え、私には時間がないとさえ思いました! 結局、私はできる限りのことをすべて削減し、本当に速く仕事をしなければなりませんでした。
新しいコンテンツに関係なく、新しいカードサイズに合わせてすべてを作り直す必要がありました。 Cogmindでは、現在のマップの50x50サイズの領域が同時に表示され、そのメカニズムとコンテンツはすべて、そのようなサイズに基づいて開発されます。 プレイヤーに気づき、画面の端から彼を撃つことさえする敵は、どうしても避けなければならない悪い設計です。 同時に、アクセス可能な可視領域の利点を最大限に活用するオブジェクトとシステムを持つことが望ましいため、この領域は設計において重要な役割を果たします。
不必要な労力とテストを行わずに可能な限りバランスを維持するために、利用可能なデータを操作する最も簡単な方法は、範囲に関連するすべての値を取得し、それらを40%削減して、可視性の50から30への変更を反映することでした。これが最初の変更です:文字通り、私は単に武器の範囲のデータをコピーし、それらをすべて0.6倍してから、結果をコピーして戻しました。
しかし、40%の減少は、発射時間に大きな間接的な影響を与えました。 以前、推進システムを書き直すために、移動速度をわずかに上げて、実際には(全荷降ろし質量に基づいて)プレイヤーが1単位のスペースを移動するには0.75から2.5の移動が必要であると計算しました-これにより、プレイヤーは移動しません縮小された地図に比べて動き
が速
すぎる場合があり
ます 。 そしてこれに関しても、Cogmindの経験からよく知っているバランスを維持するために、次の目標は、敵がCogmindと同じ程度の速いまたは遅いプレイヤーの射撃能力を持つように、射撃時間にかかる費用を選択することです。 数は次のとおりです。1つの武器からのショットあたり3ターン、2つの武器からのボレーあたり4.5ターン。 さらにテストを行ったところ、これはうまく機能しているため、セットアップは不要になりました。
マップのサイズが必要な速度に対応することを確認するために、マップの生成プロセス中にスケッチされた移動速度とボレーの相対時間の計算。範囲を変更するだけでなく、オブジェクトでの作業が必要になります。
- Cogmindの推進システムのすべてのアイテム(110個)が削除され、46個の新しいものに置き換えられました(一部の名前は同じままですが、特性が変更されました)。
- 電源のセットが簡素化され、23の電源が削除され、9の電源の新しいセットが追加されました。そのほとんどは(従来の電源ではなく)敵によって使用されます。
- 14個のアップグレードモジュールが作成されました(少なくとも半数については、動作コードはCogmindから取得され、後半については、同様のモデルのおかげでコードを追加するのは非常に簡単でした)。
- 補助アイテムはリサイクルされました-純粋に非戦闘効果を持つ大部分は削除され、命名スキームの残りの部分は簡素化されました。 全体として、P7にはCogmindよりも182少ない補助アイテムが含まれています。
- 武器の名前と進歩も簡素化されました。 さらに、21個の新しい武器が追加されました。そのほとんどは敵が使用する必要があります。 Cogmindから多くの武器(約200)が削除されました。前述のように、このプロセス中にアニメーションが遅いほとんどの武器を取り除きました。 唯一の例外はマイクロカーネルチャージで、Cogmindではクールさが十分ではなかったので、POLYBOT-7を使用して栄光のすべてを見せ、改善されたランチャーを作成しました。 Cogmindの多くのタイプの武器も大幅に変換され、以前の武器の改良バージョンに変換され、新しいグループに合わせてアニメーションが変更されました。
- 合計で、POLYBOT-7には412アイテムしか含まれていませんが、Cogmind-900
オブジェクトを完成させた後、私はロボットに移動する必要がありました。ロボットのプロパティは主にオブジェクトによって決定されました。 すべてのロボットはゼロから作成されましたが、ほとんどの場合、設計を開発するときにCogmindのロボットをテンプレートとして使用しました。 一般的な考えは、敵のロボットは弱いディテールを使用するため、プレイヤーは自分自身に取り付けて何でも使用できますが、可能な場合はトロフィーのディテールを避ける方が良い場合が多くあります(スロットを自動的に埋める多数のキャプチャされたパーツがある場合に問題が発生します) !これにより、プレイヤーは戸口で戦う「安全な」戦術を使用できなくなります)。 また、それらの電源にはエネルギーを保存する能力がないため、プレイヤーが他のボットのみに頼って電力を得る場合、ロボットのユニバーサルデザインをサポートするための予備が少なくなります。
さらに、実際に使用しないロボットアイテムをいくつか提供しましたが、これはプレーヤーにとっては役立つ可能性があります。 この設計戦略はP7よりもCogmindでより一般的に使用されますが、場合によっては役立ちます。 たとえば、Aimbotには構造スキャナーが搭載されているため、プレイヤーは頻繁にアクセスして隠れたドアを認識できます。POLYBOT-7にはもっと多くのドアがあります。 (さらに、テーマ的には理にかなっています-壁を介してターゲットを攻撃できるAimbotは、そのようなデバイスを持つことができます)。
ロボットの完全な詳細!ロボットでの作業を完了した後(参照?-作業は非常に正しい順序で移動しています)、最終的に、ディスパッチャ、戦闘の大部分の焦点、そして複雑さを含むゲームプロセスの時が来ました! 実際、DispatcherはCogmindの駐rison地ですが、動作が異なります(プレイヤーの近接度に基づいて起動し、破壊前に所定の間隔でユニットを作成し、切断後にモジュールを残します)。 しかし、それらはゲームプレイの重要な部分であることが判明したため、結果として、特にトリガーされる距離と生成されるボットの数のバランスを取るために多くの作業が必要でした。 過去数日間、これらの設定を数回変更しました。 ただし、ボット
は常にプレイヤーを直接攻撃すると
は限りません ! これは非常に退屈になる可能性があるため、一部は静止してDispatcherを保護しますが、他のプレイヤーはプレイヤーがDispatcherをトリガーしたポイントに送信されますが、技術的な観点からは、Cogmindの一部のユニットのようにプレイヤーを直接探しません。
多かれ少なかれコンテンツが完成したので、カード全体のバランスを取ることに切り替えました。 私はこれに多くの時間を費やしました:ランダムなカードを常にロードし、それらを遠ざけ、オブジェクト、パトロール、ガード、ディスパッチャーなどの分布を調べ、敵を作成するための多くの数字/係数を設定して、バランスのとれたゲームのようなものを作成しますプロセス。
パトロールルート(色付きの線で表示)を含むマップパーツのコンテンツを調べます。POLYBOT-7は十分に短いはずです:5フロアのみですが、ユニークなカードスキームに加えて、ゲームが好きな人のためにリプレイの価値を高める比較的安価な方法を見つけました-勝利後に「New Game +」モードを追加します。 多くの複雑さを決定する変数は、プレーヤーの勝ちの数に応じて簡単に変更できるので、なぜ単純なNG +で停止するのでしょうか? 5つの連続した新しいゲームモードを追加することにしました。各モードは前のモードよりも複雑です。 変更可能なパラメーター:
- 最初にマップ上にあるパトロールの数
- パトロールサイズ
- ディスパッチャーがトリガーされる距離
- グループで生産されたロボットの数
- 製造されたロボットの種類の重量の変更
- リリースされたロボットが、サポートするブラストボット(ミサイルを使用)またはフォースボット(パワーシールドで味方を保護)によって補完される可能性を追加
- ロボットのリリース間隔(実装されましたが、変更の必要性が見られなかったため、一定のままでした:100移動)
- 破壊されたロボットのトロフィーから受け取った係数
NG +ゲームプレイに関連しないその他の変更:
- それぞれに「Alpha」、「Beta」などの一意の名前があります。
- それぞれに壁の独自の色があります。
- ポイントの乗数は各モードで増加し、プレーヤーが勝っていない場合でも、ポイントが付与されるすべてのアクションに対して膨大な量のボーナスポイントを与えます
実装を簡素化するために、NG +パスで負けた後、プレーヤーは勝ち連勝を失い、最初と「通常のパス」から始めなければならなくなるようにしました。 本質的には、これはローグライクのようなものですが、New Gameでの一連の勝利に似ています。 これは最善の解決策ではありませんが、急いでいた! 振り返ってみると、1回の損失でプレーヤーが以前のNG +モードに戻った場合(少なくとも1回以上の連続通路を獲得している場合)、それほど多くの進歩が失われないようにすると良いと思います。
注:Cogmindの最高のプレイヤーの1人がP7ですでに非常に、非常に最新の
NG +++++モードを獲得し、最終的な勝利を達成しました!最後の瞬間に
バランスをとるために計画されたすべての時間はコンテンツを追加することで使い果たされたため、「正しい」バランスにはほとんど何も残りませんでした。 必要な計算をすべて実行するのに時間がかかりすぎました。完全に新しいコンテンツを最初から作成し、数式を使用して新しい形式にバランスをとることが好きでしたが、それはまだ7DRLです-計画は少なくとも半分現実的でなければなりません。
これを念頭に置いて、私は非常に感銘を受け、すべてが非常にうまくいったことに非常に感銘を受けました。 もちろん、これは決してCogmindのバランスのレベルではありませんが、数回のクイックウォークで、緊急の解決策を必要とする最も深刻な問題を発見しました。
ロボットの数を減らすことに加えて(最初はロボットの数が多すぎました!)、大量の武器をマップに追加し、基本的にそれらをオブジェクトの通常の配布システムにハッキングしました:すべての個々のオブジェクトの少なくとも15%が武器の形で作成され始めました。通常、オブジェクトの分布はそのようには見えませんが、テスト実行中に定期的に武器を使い果たした後、Cogmindオブジェクト分散デバッグ出力システムを使用して、武器を作成する通常の確率を調査し、ほとんどの階で値が驚くほど小さいことに気付きました。スロット/タイプごとの、従来型とプロトタイプの両方の、各フロアのオブジェクトの最終的な(バランス調整後の)分布。さらに、同じように、ランチャーは楽しいので、各フロアにランチャーを強制的に配置しました(大きなフロアにはもっと多くあります)。さらに、POLYBOT-7のプレイヤーには、見つかったアイテムや目的のアイテムを収集するための空きスロットがない場合があります(ゲームに装備がないことを忘れないでください!)されます使用することである、あなたが安全に、よりそれらの簡単すぎるこのゲームには行っていない追加することができます。また、保証されたブランクの形で、より多くの武器と他の良いアイテム、すなわち「武器室」といわゆる「集会室」が追加されました。これらは、細部の閉塞がある部屋です。つまり、武器だけで(それで遊ぶことができます)、スロットの全範囲でバランスのとれたオブジェクトのセットだけです。このような部屋を見つけたプレイヤーは、すべてのアイテムをドロップし、アイテムの新しいコレクションを取得することで、「クリーニング」を実行できます。 「集会室」では、電源、推進システム、補助装置、武器の提示が保証されています。メモ付きの特別な空室。そのような部屋にはしばしば二重ドアがあり、外部から簡単に認識できることに注意してください。今、私は武器で行き過ぎたと思う(今ではそれはどこにでもあります)が、より多くの選択肢には常に利点があるので、不足よりもバストする方が良いです!完璧なバランスを達成するのに十分な時間がありませんでした。結局、私はこのすべてを最後の数時間でやらなければなりませんでした。土壇場で変更された基本的なメカニズムのもう1つは、クリーニングタイマーです。最初は、戦略的には、充電のために各移動中にプレイヤーからエネルギーを引き出すデバイスを使用する方が面白いと思われました。この動作は、完全に充電されるまでエネルギー生成の減少が続くため、クリーニング時間に関する決定の必要性を追加します。しかし、一般的にこれは特に望ましいことではないことに気づきました。クリーニングはすでにランダムな部分を破壊し、プレイヤーを不確実な状況に導く可能性があるためです。したがって、このメカニズムを単純な100ウェイタイマーに置き換えました。これは、より予測可能で興味深いものです。アクションのクリーニングタイマー。カウントダウンを実行し、近くに残っているオブジェクトを常に引き付けますが、再度クリーニングを実行するだけです。で、非常に最後の最後、私はすぐにゲームをテストし、UIに欠席した重要なパラメータ、発見:詳細の現在の床の上に集め量(その保証量の床の上に、それは重要なパラメータであるので)、および現在の床のも、手紙を!これらのパラメーターはどちらも進行状況を評価するのに役立ちますが、画面にほとんどスペースがなかったため、進行状況カウンターの横でそれらを叩きました。最後の瞬間にHUDに追加されます:収集されたスロットの数とフロアID!(フロアの数字の代わりに、対応する文字は次のとおりです:A / B / C / D / S)HUDインジケーターは、プレーヤーにとって有用であることに加えて、プレーヤーがスクリーンショットを共有する際にスクリーンショットをより有益にします。これはCogmindのUIスタイルの利点の1つです。知っておく必要のあるほぼすべてが1つの画面に表示されます。また、不完全なパッセージに戻った後、すばやく速度を上げることができます。終わり
私はタイムゾーンですべてを時間通りに終えましたが、キャスパーと仕事を続け、彼はタイルセットを完了するために彼の日曜日の残りを必要としていたので、私は翌朝まで目を覚まし、彼のすべてのタイルをゲームに詰めるまでゲームを公開しませんでした。彼女はついに準備ができました!でも、彼はノンストップのほぼ全域週彼のプロジェクトに取り組んでいるという事実にもかかわらず、驚くべきことに何の私が、その間、週に爽快されたと思っていない私は急いでする必要があること。 Cogmindに取り組んでいる以外のことをしてからかなりの時間が経過したので、趣味のゲームの時間を純粋に開発する喜びを忘れました。商用製品では、すべてを文書化、研ぎ澄まし、慎重に選択した仕様で組み立てる必要があります。POLYBOT-7の場合は、単に降伏できますワークフロー。最初は、このような無料のアプローチに適応することは困難でしたが、間違いなく私にとってははるかに生産的だったようです。リリース後まもなく、Dispatcherをクリックすると、ゲームにはまだ守備隊のハッキングインターフェイスがあることが通知されました。衝突によるハッキングの可能性を取り除きましたが、マウスクリックの処理がコードの別の部分で実行されることを忘れていました!これは、プレイヤーがディスパッチャにハッキングして、奇妙な名前G(ギャリソンの最初の文字)で床への階段を作り、技術的な観点からはギャリソンマップへの実際のリンクであったことを意味しましたが、すべてのギャリソンデータを削除したため、ゲームクラッシュ。人々がこのブラックホールに侵入できないように修正バージョンをすばやく追加しました(POLYBOT-7のハッキングインターフェイスの設計が変更されなかったことは言うまでもありません)。バグによって開かれたハッキングインターフェイスにより、理論的にはDispatcherへのアクセスが許可されました。バグといえば、開発期間中にCogmindで、そしてエンジン自体でさえ、かなりの数のバグを発見しました。深刻なことは何もありませんが、それらを取り除くことも素晴らしかったです。一般に、POLYBOT-7のコンセプトは非常に興味深いと思いますが、7DRLはその可能性を部分的にしか明らかにしませんでした。関心のある要素を大幅に増やすことができるアイデアの1つは、「キットルーム」です。本質的に、これらは、特定のスタイルまたは武器に関してバランスのとれた優れたアセンブリのすべての詳細を含む部屋であり、殺人機械に変わるためにそのような部屋を見つけるとすぐに掃除することを強制します。実際、最後の最後に追加された「アセンブリルーム」は、キットルームの概念の単純化された実装でしたが、詳細は完全にランダムです。ただし、アセンブリルームとは異なり、キットルームは秘密のドアの後ろに隠しておく必要があります。秘密のドアでは、スキャナーが検出するか、ランダムショットを成功させる必要があります。技術的な観点から見ると、ゲームには1つしかありませんキットルーム。すぐに最上階でスケッチしました。彼女を見つけることができれば素晴らしいでしょう。プレイヤーの反応
多数のCogmindプレイヤーがゲームをダウンロードし、気に入っています。彼女は彼がCogmindをよりよく理解するのを助けたとさえ言いました!Cogmindを知らない人でも楽しんでいたようです。最初の8日間で、ゲームは(回数が少ない個々のプレイヤーではなく)437回ダウンロードされましたが、ダウンロードされた回数は... 882回です。明らかに、多くの人が後でプレイするためにそれをダウンロードしました。(ゲームを更新したために数回ダウンロードした人もいますが、プレイヤーごとに2〜3倍ではありません。Cogmindで行ったように、統計とリーダーボードを収集するのは面白いでしょう。私のメインプロジェクトで!POLYBOT-7はデモではありませんが、特にitch.ioプラットフォームで広告の役割を果たすのに十分なほどCogmindに似ていますが、これは以前に使用したことがありません。 (同時に、POYLBOT-7をCogmindに接続することは、itch.ioで後者を見つける間接的な方法です。)その人気により、このゲームは戦略カテゴリのトップに位置し、選択したほとんどのタグ(たとえば、ピクセルアート)で1位になりました。ステップバイステップ... ...ローグライク。彼女はitch.ioのトップ20ゲーム(当時は100,000ゲーム強)に参加するのに十分なほど人気があり、翌日にはトップページにいました。itch.ioホームページで推奨されているPOLYBOT-7。もちろん、人気はページのクリック数に過ぎないため、多くのサイトで発表を発表するのに役立ちました。また、他のゲームをプレイしたNookriumの堅実なプレーヤーもリリース初日にP7を表示しました。Cogmindの売り上げを監視し続けました:重大な影響はありませんでしたが、7DRLでのリリース後、Steam のウィッシュリストに追加すると、前週と比較して29.4%増加しました($ 20は無料より少し高価で、ゲームは早期アクセス中です) )なるべく、いくつかのマイナーなバグを修正した別のリリースをリリースし、次にそれをもう少し磨くことができるまでゲームを棚に置きます。Cogmindの後、小規模なプロジェクトに取り組むべきだと思います。POLYBOT-7は、6か月で深刻なものに発展する興味深い機会のように見えます...