REPO_JP-Simple_EnemyScaler icon

Simple EnemyScaler

Host-or-single default enemy count multiplier.ホスト/ソロで敵数を倍率変更するMOD

By REPO_JP
Last updated 12 hours ago
Total downloads 104
Total rating 1 
Categories Mods Monsters Server-side
Dependency string REPO_JP-Simple_EnemyScaler-1.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2304 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2304

README

Simple_EnemyScaler

  • Host-or-single default enemy count multiplier

Overview

  • What this mod does

    • Scales the default enemy count by a multiplier on the host (or in singleplayer)
    • Example: 1.0 = vanilla, 2.0 = double enemies, 0.0 = no enemies
  • Who it is for

    • Hosts who want a super simple way to increase or decrease enemy counts without complex settings
  • What changes after installation

    • The host recalculates and rebuilds the enemy selection list when the run sets up enemy amounts

Features

  • Host-or-single execution

    • Runs only when SemiFunc.IsMasterClientOrSingleplayer() is true
    • Non-host clients do not execute the scaling logic
  • Default enemy count scaling

    • Hooks EnemyDirector.AmountSetup (Harmony Postfix)
    • Reads the base counts:
      • amountCurve1Value
      • amountCurve2Value
      • amountCurve3Value
      • totalAmount
    • Calculates scaled targets using General.EnemyCountMultiplier
    • Keeps totals consistent by distributing rounding remainders across difficulty buckets
  • Enemy list rebuild (same game flow, rebuilt counts)

    • Clears and rebuilds internal lists:
      • enemyList
      • enemyListCurrent
      • enemyListIndex
    • Calls private EnemyDirector.PickEnemies to repick enemies using the scaled counts
      • Picks difficulty 3 first, then 2, then 1
  • Logging

    • Startup: logs EnemyCountMultiplier=...
    • Apply: logs EnemyCountMultiplier applied baseTotal -> targetTotal xMultiplier

Configuration

  • General.EnemyCountMultiplier

    • Default: 1.5
    • Range: 0.0..10.0
    • Meaning: multiplies the default enemy count on the host (or in singleplayer)
    • Examples
      • 1.0 = vanilla
      • 2.0 = roughly 2x enemies
      • 0.0 = 0 enemies

Usage

  • Minimal steps

    • Install the mod on the host (or in singleplayer)
    • Launch the game once to generate the config
    • Set General.EnemyCountMultiplier
    • Start a run and the enemy count is scaled automatically
  • Notes

    • Works only for host or singleplayer
    • Clients do not need the mod for the host’s enemy count changes to take effect

Contact


Simple_EnemyScaler

  • ホスト/ソロでデフォルト敵数を倍率変更するMOD

概要

  • このMODが何をするか

    • ホスト(またはソロ)でデフォルト敵数を倍率で変更
    • 例: 1.0 = バニラ, 2.0 = 敵数2倍, 0.0 = 敵0体
  • どんな人向けか

    • 超シンプルに敵数だけ増減したいホスト向け
  • 導入で何が変わるか

    • 敵数セットアップ時にホストが敵数を再計算し 敵抽選リストを作り直す

特徴

  • ホスト/ソロ専用動作

    • SemiFunc.IsMasterClientOrSingleplayer() が true の場合のみ動作
    • 非ホスト参加者では倍率処理を実行しない
  • デフォルト敵数の倍率変更

    • EnemyDirector.AmountSetup を Harmony Postfix でフック
    • 元値として以下を参照
      • amountCurve1Value
      • amountCurve2Value
      • amountCurve3Value
      • totalAmount
    • General.EnemyCountMultiplier を用いて目標数を算出
    • 端数は難易度別に配分して 総数が破綻しないように補正
  • 敵抽選リストの再構築(処理はゲーム側の流れを利用)

    • 内部リストをクリアして再構築
      • enemyList
      • enemyListCurrent
      • enemyListIndex
    • private の EnemyDirector.PickEnemies を呼び出して 敵を再抽選
      • 難易度3 → 2 → 1 の順で抽選
  • ログ

    • 起動時 EnemyCountMultiplier=... を出力
    • 適用時 baseTotal -> targetTotal xMultiplier を出力

設定

  • General.EnemyCountMultiplier

    • 既定値: 1.5
    • 範囲: 0.0..10.0
    • 意味: ホスト(またはソロ)でデフォルト敵数を倍率変更
      • 1.0 = バニラ
      • 2.0 = だいたい敵数2倍
      • 0.0 = 敵0体

使い方

  • 最短手順

    • ホスト または ソロにMODを導入
    • 1回起動して設定ファイル生成
    • General.EnemyCountMultiplier を設定
    • Run開始で自動的に敵数が倍率適用される
  • 注意点

    • 動作するのはホスト または ソロのみ
    • 非ホスト参加者はMOD不要で ホスト側の敵数変更が反映される

連絡先