アニメ調シューター『Strinova』賞金50万円

BF2042:「VIPモード」を作ってみよう!世界一わかりやすいルールエディターの使い方

  • URLをコピーしました!

ルールエディターの基本:変数

次に頭に入れておきたいものは「変数(Variables)」。数学でいう「x」や「y」といった概念と同じですが、プログラミングの変数は数字だけでなく、文字やプレイヤーID、あるいは配列など、様々な種類の情報を格納しておくことができます。

ルールエディターの変数はその上で、以下の3種類(スコープ)それぞれ別で作ることができます:

  • グローバル:ゲーム全体で管理している変数
  • チーム:チームごとに管理している変数(「チーム1の変数x」と「チーム2の変数x」は別)
  • プレイヤー:プレイヤーごとに管理している変数(「プレイヤー1の変数x」から「プレイヤー128の変数x」まで全部別)

作りたいものやコードの書き方によって使用する変数は違ってきますが、私たちが作るVIPモードの雛形では、4つの変数を使うことになります。例のごとく名前は何をつけてもいいので、自分にとってわかりやすい名前に変更しても大丈夫です:

  • グローバル変数「VIPKillTeam」:1番最近VIPをキルしたチームの情報を記録するための変数
  • チーム変数「VIPDeathCount」:チーム毎のVIPがデスした回数を記録するための変数
  • チーム変数「VIP」:チーム毎のVIPプレイヤーを指名するための変数
  • チーム変数「VIPCheck」:そのチームに現在VIPが居ることを確認するための変数

また、万が一のバグを回避するために、ゲーム開始時に変数の初期値を一通り指定しておくと良いでしょう。

「変数の定義」というもので、プログラミング言語によってはやっておかないと壮絶にバグる。とりあえず使用する予定の変数は全部「0」を入力しておこう。

では「VIPプレイヤー」を指名するための変数を作ったところで、さっそくチームのランダムなメンバーをVIPにするためのプログラムを組んで行きましょう。ここで使うことになるのが「配列(Array)」です。

ルールエディターの基本:配列

配列とはズバリ、「縦は1列しかないけど、横はいくらでも伸びている表」のことで、複数のデータを1セットとして扱う時に使われます。ここではチームのメンバーのリストを作るために、一旦配列としてデータを揃えなくてはいけないわけですね。

ちなみに本職のプログラマーなら配列に配列を仕込むことで縦列を増やしたり(2次元配列)、立体的な表を作ることもできる(3次元配列)のですが、複雑になってくるので今回は扱わないのと、Portalのルールエディタは3次元配列を作れないという噂もありますので、本記事では割愛していきます。

では早速、実際のコードを処理の順番に見ていきましょう。

  • フィルター済み配列:普通に「プレイヤーの配列」を作ってしまうと、両チームの全プレイヤーをリスト化してしまうので、フィルターを使って片方のチームに絞る必要があります。
  • プレイヤーを取得:フィルターの要素は「プレイヤー」です。
  • =/チームIDを取得/現在の配列要素:図のようにはめ込むと、「フィルターの要素(プレイヤー)」の「チーム番号」が「チーム1」と同じ場合だけ、というフィルターになります。
  • 配列内のランダムな値:フィルターされて作られた配列(チーム1のプレイヤーリスト)の中から、ランダムに1つ選択します。
  • 変数を設定:上で選んだランダムなプレイヤーを「チーム1」の「VIP」として登録します。

これで「チーム1のランダムなプレイヤーがVIPになる」というプログラムが完成しました。あとはチーム2用に同じ物を作っておいて、ゲーム開始時のルールに組み込んでいきましょう。

長すぎて若干見切れているが、マウススクロールや右下の+と-からサイズを調整可能だ。
1 2 3 4 5
  • デバイス総合
  • マウス
  • キーボード
  • ディスプレイ
  • PS5
  1. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥5,170
    新品最安値 :
    ¥5,170
  2. ジャンル別
  3. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥2,700
    新品最安値 :
    ¥6,011
  4. 家電 ストア
  5. ビデオゲーム
  6. 家電 ストア
  7. 家電 ストア
  8. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  9. 家電 ストア
  10. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  11. ゲーミングマウス
  12. ゲーミングマウス
  13. 家電 ストア
  14. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  15. ハンドル・ジョイスティック
  16. ビデオゲーム
  17. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  18. 家電 ストア
  19. 家電 ストア
  20. 家電 ストア
  1. ジャンル別
  2. 家電 ストア
  3. 家電 ストア
  4. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  5. ゲーミングマウス
  6. ゲーミングマウス
  7. 家電 ストア
  8. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  9. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  10. 家電 ストア
  11. 家電 ストア
  12. 家電 ストア
  13. 家電 ストア
  14. 家電 ストア
  15. 家電 ストア
  16. ゲーミングマウス
  17. 家電 ストア
  18. 家電 ストア
  19. 家電 ストア
  20. 家電 ストア
  1. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥2,700
    新品最安値 :
    ¥6,011
  2. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  3. 家電 ストア
  4. Amazon限定特典付ゲームが200円OFFクーポンプレゼント
  5. 家電 ストア
  6. PC Game Pass キャンペーン
  7. PC Game Pass キャンペーン
  8. PC Game Pass キャンペーン
  9. 家電 ストア
  10. ゲーミングキーボード
  11. ゲーミングキーボード
  12. PC Game Pass キャンペーン
  13. PC Game Pass キャンペーン
  14. 家電 ストア
  15. 家電 ストア
  16. 家電 ストア
  17. ゲーミングキーボード
  18. 家電 ストア
  19. ゲーミングキーボード
  20. 家電 ストア
  1. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥5,294
    新品最安値 :
    ¥5,294
  2. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥14,800
    新品最安値 :
    ¥14,800
  3. ジャンル別
  4. ジャンル別
  5. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥14,800
    新品最安値 :
    ¥14,800
  6. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥14,800
    新品最安値 :
    ¥14,800
  7. ジャンル別
    発売日 : 1970年01月01日
    価格 : ¥5,345
    新品最安値 :
    ¥5,345
  8. 機種別
  9. アクセサリキット
  10. 周辺機器・アクセサリ
  11. 機種別
  12. 周辺機器・アクセサリ
  13. 機種別
    発売日 : 2024年09月24日
    価格 : ¥7,999
    新品最安値 :
    ¥7,999
  14. 機種別
    発売日 : 2024年09月24日
    価格 : ¥7,999
    新品最安値 :
    ¥7,999
  15. 機種別
    発売日 : 2023年01月01日
    価格 : ¥332,879
    新品最安値 :
    ¥332,879
  16. 周辺機器・アクセサリ
    発売日 : 2023年01月01日
    価格 : ¥115,353
    新品最安値 :
    ¥115,353
  17. Xbox
  18. 機種別
    発売日 : 1970年01月01日
    価格 : ¥100,954
    新品最安値 :
    ¥100,954
  19. 機種別
  20. アクセサリキット
  1. ジャンル別
    発売日 : 2022年01月01日
    価格 : ¥4,525
    新品最安値 :
    ¥4,525
  2. ゲーム機本体
    発売日 : 2024年11月07日
    価格 : ¥119,980
    新品最安値 :
    ¥129,140
  3. ゲームソフト
    発売日 : 2024年11月14日
    価格 : ¥6,282
    新品最安値 :
    ¥6,282
  4. ゲーム機本体
    発売日 : 2023年11月10日
    価格 : ¥79,980
    新品最安値 :
    ¥75,800
  5. ゲームソフト
    発売日 : 2025年12月31日
    価格 : ¥9,130
    新品最安値 :
    ¥9,130
  6. ケーブル・アダプター
  7. ゲームソフト
  8. ケーブル・アダプター
  9. ゲームソフト
    発売日 : 2025年12月31日
    価格 : ¥12,100
    新品最安値 :
    ¥12,100
  10. ゲーム機本体
  11. ゲームソフト
  12. ゲーム機本体
  13. ゲームソフト
  14. ハンドル・ジョイスティック
  15. ゲームソフト
  16. ゲームソフト
  17. ハンドル・ジョイスティック
  18. ゲームソフト
    発売日 : 2024年10月17日
    価格 : ¥7,873
    新品最安値 :
    ¥7,450
  19. ゲームソフト
  20. ゲームソフト
BF2042:「VIPモード」を作ってみよう!世界一わかりやすいルールエディターの使い方 アイキャッチ

FOLLOW EAA!!

SHARE
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (13件)

  • こういう風にルールに処理書きまくると、可読性悪すぎて、後で見たときに、何やってるかわからなくなるから、処理ごとにサブルーチン作ったほうがいいぞ。
    動けばいいって思想でコード書くのは危険。
    可読性が悪かったり、処理の分離ができてないと、バグが発生したときにどこでバグが起きてるのか追うのが大変になる。
    こういうコードはアンチパターンって覚えておいたほうがいいよ、いわゆるスパゲッティコードだから。

  • クリスマスにすら必死にアンチコメしてるの悲しすぎだろ

      • 聖夜に批判してることについて言ってるだけの人に噛みついてて草
        哀れすぎる

      • コメ主に対してブーメランって言いたいんやろか
        BF擁護もしてないのにキレ散らかしてるのはよっぽど悔しかったんかな

  • 機能は凝ってるのに本体が機能してないのもったいないよな

コメントする

CONTENTS