Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
RandomCosmetic
【Client MOD】Randomizes your equipped cosmetics on level changes using unlocked cosmetics only.レベル変更時に所持済みコスメだけで衣装をランダム化します。
By REPO_JP
| Last updated | 16 hours ago |
| Total downloads | 81 |
| Total rating | 1 |
| Categories | Mods Client-side Cosmetics AI Generated |
| Dependency string | REPO_JP-RandomCosmetic-4.0.0 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
COMPATIBLE WITH COSMETICS UPDATE V0.4.0.
RandomCosmetic
This mod is a client-only mod that randomizes your equipped cosmetics when the level changes.
Only cosmetics already unlocked by your save data are used by default. It does not unlock cosmetics, grant cosmetic tokens, or overwrite saved presets unless you explicitly enable the optional save settings.
Features
- Randomizes your cosmetic loadout on level changes.
- Uses unlocked cosmetics only by default.
- Supports separate randomization settings for normal levels, shop levels, and arena levels.
- Supports category toggles for head, face, body, back-like, and other cosmetics.
- Can include empty equipment slots in random results.
- Protects saved presets by default.
- Applies the randomized loadout after the level and local player cosmetics are ready.
- Shows debug logs when enabled.
Mod Type
Client-only.
Each installed client randomizes only their own cosmetic loadout. The visible result depends on the vanilla cosmetic sync behavior. The host does not need to install this mod.
Important Notes
- This is not an unlocker mod.
- This is not a cosmetic-token mod.
- This does not give access to locked cosmetics by default.
- Saved presets are not overwritten by default.
- Randomized loadouts are applied after the game becomes ready to avoid touching cosmetics too early.
Configuration
General
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| Enable | Enables this mod. | true | false | true |
| ShowDebugLog | Shows debug logs in the console. | false | false | true |
Randomize
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| RandomizeOnChangeLevel | Randomizes cosmetics on level changes. | true | false | true |
| RandomizeOnNormalLevelEnter | Randomizes cosmetics when entering normal levels. | true | false | true |
| RandomizeOnShopEnter | Randomizes cosmetics when entering shop levels. | false | false | true |
| RandomizeOnArenaEnter | Randomizes cosmetics when entering arena levels. | true | false | true |
| UseUnlockedOnly | Uses unlocked cosmetics only. | true | false | true |
| AllowEmptySlot | Allows empty equipment slots in random results. | true | false | true |
| EmptySlotWeight | Weight for empty equipment slots. | 1 | 0 | 100 |
Category
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| RandomizeHead | Randomizes head cosmetics. | true | false | true |
| RandomizeFace | Randomizes face cosmetics. | true | false | true |
| RandomizeBody | Randomizes body, arm, leg, foot, and grabber cosmetics. | true | false | true |
| RandomizeBack | Randomizes back-like cosmetics detected by cosmetic names. | true | false | true |
| RandomizeOther | Randomizes other cosmetics. | true | false | true |
Preset
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| DoNotOverwriteSavedPreset | Prevents saved preset overwrite while a random loadout is active. | true | false | true |
| SaveRandomizedLoadout | Saves randomized loadouts to the normal equipped cosmetic save. | false | false | true |
| SaveRandomizedLoadoutAsPreset | Saves randomized loadouts to a preset when allowed. | false | false | true |
| PresetSlot | Preset slot index used when saving randomized loadouts. | 0 | 0 | 27 |
Timing
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| ApplyDelaySeconds | Delay before applying a random loadout after the game becomes ready. | 0.25 | 0 | 10 |
| RetryIntervalSeconds | Retry interval while waiting for the local player and cosmetics. | 0.25 | 0.05 | 5 |
| MaxRetrySeconds | Maximum retry time for applying a random loadout. | 10 | 1 | 60 |
For Developers
The mod avoids direct compile-time references to cosmetic-only classes where possible and uses reflection-based access for compatibility with common BepInEx build environments. Randomization is scheduled after level transition detection and applied after level generation and local player cosmetic readiness. This reduces the risk of running cosmetic logic during menu, lobby, or region-selection states.
※Mod created by AI
COSMETICS UPDATE V0.4.0対応済み.
RandomCosmetic
REPOが好きな日本人のための日本人のみのREPOのDiscordサーバーあります! 参加は以下のリンクから! https://discord.gg/h5ATY4m5bZ
このMODは、クライアント専用の、レベル変更時に自分の装備中コスメをランダム化するMODです。
初期設定では、セーブデータ上で所持済みのコスメだけを使用します。 コスメの解放、コスメティックトークンの付与、保存済みプリセットの上書きは行いません。 保存系の任意設定を明示的に有効化した場合のみ、ランダム結果の保存を行います。
機能
- レベル変更時にコスメロードアウトをランダム化
- 初期設定では所持済みコスメのみ使用
- 通常レベル、ショップ、アリーナごとの個別設定
- 頭部、顔、体、背中系、その他のカテゴリ別設定
- 空装備をランダム候補に含める設定
- 保存済みプリセットの上書き防止
- レベル生成後、ローカルプレイヤーのコスメ準備後に適用
- デバッグログ表示
導入区分
クライアント専用
導入したクライアント本人のコスメロードアウトだけをランダム化します。 他人から見えるかどうかは、バニラのコスメ同期仕様に依存します。 ホスト側の導入は不要です。
注意事項
- コスメ解放MODではありません
- コスメティックトークンMODではありません
- 初期設定では未所持コスメを装備しません
- 初期設定では保存済みプリセットを上書きしません
- コスメ処理を安全に行うため、ゲーム側の準備完了後にランダム化します
設定項目
General
| 設定値名 | 設定内容説明 | 初期値 | 設定可能最小値 | 設定可能最大値 |
|---|---|---|---|---|
| Enable | このMODを有効化します。 | true | false | true |
| ShowDebugLog | コンソールへデバッグログを出力します。 | false | false | true |
Randomize
| 設定値名 | 設定内容説明 | 初期値 | 設定可能最小値 | 設定可能最大値 |
|---|---|---|---|---|
| RandomizeOnChangeLevel | レベル変更時にコスメをランダム化します。 | true | false | true |
| RandomizeOnNormalLevelEnter | 通常レベル進入時にコスメをランダム化します。 | true | false | true |
| RandomizeOnShopEnter | ショップ進入時にコスメをランダム化します。 | false | false | true |
| RandomizeOnArenaEnter | アリーナ進入時にコスメをランダム化します。 | true | false | true |
| UseUnlockedOnly | 所持済みコスメのみ使用します。 | true | false | true |
| AllowEmptySlot | 空装備をランダム候補に含めます。 | true | false | true |
| EmptySlotWeight | 空装備候補の重みです。 | 1 | 0 | 100 |
Category
| 設定値名 | 設定内容説明 | 初期値 | 設定可能最小値 | 設定可能最大値 |
|---|---|---|---|---|
| RandomizeHead | 頭部系コスメをランダム化します。 | true | false | true |
| RandomizeFace | 顔系コスメをランダム化します。 | true | false | true |
| RandomizeBody | 体、腕、脚、足、Grabber系コスメをランダム化します。 | true | false | true |
| RandomizeBack | 背中系として判定できるコスメをランダム化します。 | true | false | true |
| RandomizeOther | その他コスメをランダム化します。 | true | false | true |
Preset
| 設定値名 | 設定内容説明 | 初期値 | 設定可能最小値 | 設定可能最大値 |
|---|---|---|---|---|
| DoNotOverwriteSavedPreset | ランダム衣装中は保存済みプリセットを上書きしません。 | true | false | true |
| SaveRandomizedLoadout | ランダム衣装を通常装備として保存します。 | false | false | true |
| SaveRandomizedLoadoutAsPreset | 許可時にランダム衣装をプリセットへ保存します。 | false | false | true |
| PresetSlot | ランダム衣装保存時のプリセット番号です。 | 0 | 0 | 27 |
Timing
| 設定値名 | 設定内容説明 | 初期値 | 設定可能最小値 | 設定可能最大値 |
|---|---|---|---|---|
| ApplyDelaySeconds | 準備完了後にランダム衣装を適用するまでの遅延秒数です。 | 0.25 | 0 | 10 |
| RetryIntervalSeconds | ローカルプレイヤーとコスメ準備待機中の再試行間隔です。 | 0.25 | 0.05 | 5 |
| MaxRetrySeconds | ランダム衣装適用の最大再試行秒数です。 | 10 | 1 | 60 |
開発者向け詳細
このMODは、一般的なBepInExビルド環境での参照エラーを避けるため、コスメ関連クラスへの直接的なコンパイル時参照をできるだけ避け、Reflectionベースで処理します。 レベル遷移検知後にランダム化を予約し、レベル生成完了後およびローカルプレイヤーのコスメ準備後に適用します。 これにより、メニュー、ロビー、リージョン選択中にコスメ処理が動作するリスクを下げています。
※AI生成MOD