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.
FastCosmeticGacha
【Client MOD】Speeds up cosmetic gacha animations and supports rapid queued gacha use.コスメティックガチャ演出を高速化し、連続予約ガチャに対応します。
By REPO_JP
| Last updated | 3 days ago |
| Total downloads | 1162 |
| Total rating | 2 |
| Categories | Mods Client-side Cosmetics AI Generated |
| Dependency string | REPO_JP-FastCosmeticGacha-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.
FastCosmeticGacha
This mod is a client-only mod that speeds up cosmetic gacha animations and supports rapid queued gacha use.
Overview
FastCosmeticGacha shortens the cosmetic token gacha flow without changing reward contents, token consumption rules, or cosmetic unlock logic.
It can speed up token insertion, reward display, spin waits, confetti waits, return-to-idle timing, and repeated gacha use.
When only a participant has the mod, the main effect is local visual speed-up.
When the host has the mod, the gacha machine state itself can progress faster, and queued multi-use requests can be processed rapidly for the room.
Main Features
- Speeds up cosmetic gacha animations
- Supports SpeedMode values: Vanilla, Fast, VeryFast, Instant
- Shortens state timers without skipping reward-confirmation states
- Keeps cosmetic unlock and currency reward logic unchanged
- Supports queued gacha requests while the machine is busy
- Supports rapid E presses for repeated gacha reservations
- Supports multiple players pressing the gacha machine almost at the same time through a host-side queue
- Resets animator speed when the machine returns to idle
- Uses reflection-based patching to avoid compile-time dependency on cosmetic gacha class names
Client / Host Behavior
This is a client-only mod, but some behavior depends on who has it installed.
| Installed player | Behavior |
|---|---|
| Participant only | Local animation speed-up only. The actual machine return-to-idle timing remains host-dependent. |
| Host only | The machine state can progress faster for the whole room. Queued requests can also be processed by the host. |
| Host and participants | Best result. The room state progresses faster and each player also gets fast local visuals. |
Queued Multi-Use Behavior
The cosmetic gacha machine internally handles one active interaction at a time.
For that reason, this mod does not force true parallel reward processing.
Instead, when multiple players press the machine while it is busy, requests are stored in a queue and processed quickly after the machine becomes ready again.
This avoids reward desync, broken token consumption, and incorrect reward display targets.
Rapid E Press Behavior
If rapid input is enabled, pressing E repeatedly while the machine is busy can reserve additional gacha attempts.
The mod limits queued requests per player and total queue size to avoid accidental infinite reservation.
Configuration
The config file is generated at:
BepInEx/config/REPOJP.FastCosmeticGacha.cfg
General
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| Enable | Enables or disables the mod. | true | false | true |
| ShowDebugLog | Outputs debug logs to the BepInEx console. | false | false | true |
Speed
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| SpeedMode | Selects the speed profile. Valid values: Vanilla, Fast, VeryFast, Instant. | Fast | Vanilla | Instant |
| AnimatorSpeedMultiplier | Multiplies cosmetic gacha animator speed. | 3.0 | 1.0 | 20.0 |
| StateTimerMultiplier | Multiplies gacha state wait timers. Smaller values are faster. | 0.35 | 0.01 | 1.0 |
Skip
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| SkipTokenOutro | Shortens the token outro animation. | true | false | true |
| SkipSpinWait | Shortens spin-related wait states. | true | false | true |
| SkipSEWait | Shortens wait time caused by sound/effect event timing. | true | false | true |
| SkipConfettiWait | Shortens the cosmetic confetti wait. | false | false | true |
| InstantResult | Uses the fastest safe result display flow. | false | false | true |
Result
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| CosmeticResultDisplaySeconds | Cosmetic reward display time. | 1.0 | 0.05 | 10.0 |
| CurrencyResultDisplaySeconds | Currency reward display time. | 0.75 | 0.05 | 10.0 |
| ReturnToIdleSeconds | Delay before returning to idle after a reward result. | 0.15 | 0.01 | 5.0 |
HostEffect
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| AccelerateAuthoritativeStateWhenHost | Allows host-side state timers to be shortened. | true | false | true |
Safety
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| MinimumStateSeconds | Minimum state duration to avoid same-frame state breakage. | 0.05 | 0.01 | 1.0 |
| ResetAnimatorSpeedOnIdle | Resets animator speed to 1 when the gacha machine is idle. | true | false | true |
| DoNotSkipRewardSetState | Keeps reward-confirmation states from being skipped. | true | true | true |
Turbo
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| TurboMode | Applies additional speed correction for very fast gacha flow. | true | false | true |
MultiUse
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| AllowQueuedMultiUse | Enables queued multi-use requests while the machine is busy. | true | false | true |
| QueueLocalPresses | Allows local repeated presses to be queued. | true | false | true |
| QueueRemoteRequests | Allows host-side queued requests from remote players. | true | false | true |
| MaxQueueSize | Maximum total queued requests per machine. | 32 | 1 | 256 |
| MaxQueuedRequestsPerPlayer | Maximum queued requests per player. | 10 | 1 | 100 |
| QueueProcessDelaySeconds | Delay between queued gacha requests. | 0.02 | 0.01 | 2.0 |
| QueueInteractDistance | Maximum distance for queued requests. | 5.0 | 0.5 | 30.0 |
RapidInput
| Setting | Description | Default | Min | Max |
|---|---|---|---|---|
| AllowRapidPress | Enables repeated E press reservation. | true | false | true |
| RapidPressCooldownSeconds | Minimum interval between rapid press reservations. | 0.03 | 0.01 | 1.0 |
Compatibility Notes
This mod does not modify reward contents.
This mod does not change cosmetic unlock probability.
This mod does not change token rarity selection rules.
This mod does not directly edit duplicate cosmetic cash conversion amounts.
For best multiplayer behavior, install it on the host.
Recommended Settings
For normal fast play:
- SpeedMode = Fast
- TurboMode = true
- AllowQueuedMultiUse = true
- AllowRapidPress = true
For maximum speed:
- SpeedMode = Instant
- InstantResult = true
- SkipConfettiWait = true
- QueueProcessDelaySeconds = 0.01
If any UI issue occurs, use VeryFast instead of Instant.
Installation
- Install BepInEx.
- Place the mod DLL in
BepInEx/plugins. - Start the game once to generate the config file.
- Edit
BepInEx/config/REPOJP.FastCosmeticGacha.cfgif needed.
Notes for Developers
The implementation uses Harmony and reflection-based access.
This avoids build errors in environments where cosmetic gacha classes are not directly visible at compile time.
Reward-confirmation states are intentionally preserved to avoid skipping token removal, cosmetic unlock, or currency reward application.
※Mod created by AI
COSMETICS UPDATE V0.4.0対応済み.
FastCosmeticGacha
REPOが好きな日本人のための日本人のみのREPOのDiscordサーバーあります! 参加は以下のリンクから! https://discord.gg/h5ATY4m5bZ
このMODは、クライアント専用の、コスメティックガチャ演出を高速化し、連続予約ガチャにも対応するMODです。
概要
FastCosmeticGachaは、報酬内容、トークン消費ルール、コスメ解放処理を変更せずに、コスメティックトークンガチャの流れを短縮します。
トークン投入、報酬表示、回転待機、コンフェッティ待機、Idle復帰時間、連続ガチャ処理を高速化できます。
参加者だけが導入している場合、主な効果は自分側の見た目の高速化です。
ホストが導入している場合、ガチャ機本体のState進行も高速化され、部屋全体で予約されたガチャ入力を高速に処理できます。
主な機能
- コスメティックガチャ演出の高速化
- SpeedMode対応: Vanilla、Fast、VeryFast、Instant
- 報酬確定Stateを飛ばさずにState待機時間を短縮
- コスメ解放処理と通貨報酬処理は変更しない
- ガチャ機使用中の入力をキューとして予約可能
- E連打による連続ガチャ予約に対応
- 複数人がほぼ同時にガチャ機を押した場合も、ホスト側キューで順番に処理
- Idle復帰時にAnimator速度をリセット
- コスメガチャ関連クラス名を直接参照しないReflectionベースのPatch方式
クライアント / ホスト挙動
このMODはクライアント専用MODですが、導入者によって効果範囲が変わります。
| 導入者 | 挙動 |
|---|---|
| 参加者のみ | 自分側の演出だけ高速化。実際のIdle復帰タイミングはホスト依存 |
| ホストのみ | ガチャ機のState進行を部屋全体で高速化可能。キュー処理もホスト側で実行 |
| ホストと参加者 | 最も効果的。部屋全体のState進行と各自の見た目が両方高速化 |
キュー式同時利用の挙動
コスメティックガチャ機は、内部的に1回につき1人分の入力だけを処理します。
そのため、このMODでは完全な同時並列報酬処理は行いません。
代わりに、複数人が使用中に押した入力をキューへ保存し、ガチャ機が使用可能になった直後に高速で順番処理します。
これにより、報酬ずれ、トークン消費不整合、報酬表示対象の崩れを避けます。
E連打の挙動
RapidInputが有効な場合、ガチャ機の使用中にEを連打すると追加のガチャ実行を予約できます。
誤操作で無限予約に近い状態にならないよう、プレイヤーごとの最大予約数と全体キュー数で制限します。
設定項目
Configファイルは以下に生成されます。
BepInEx/config/REPOJP.FastCosmeticGacha.cfg
General
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| Enable | MODを有効化または無効化します。 | true | false | true |
| ShowDebugLog | BepInExコンソールへデバッグログを出力します。 | false | false | true |
Speed
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| SpeedMode | 速度プロファイルを選択します。指定可能値: Vanilla、Fast、VeryFast、Instant | Fast | Vanilla | Instant |
| AnimatorSpeedMultiplier | コスメティックガチャのAnimator速度倍率です。 | 3.0 | 1.0 | 20.0 |
| StateTimerMultiplier | ガチャStateの待機時間倍率です。小さいほど高速です。 | 0.35 | 0.01 | 1.0 |
Skip
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| SkipTokenOutro | トークン排出演出を短縮します。 | true | false | true |
| SkipSpinWait | 回転関連の待機を短縮します。 | true | false | true |
| SkipSEWait | SEや演出イベント由来の待機時間を短縮します。 | true | false | true |
| SkipConfettiWait | コスメ報酬のコンフェッティ待機を短縮します。 | false | false | true |
| InstantResult | 最速の安全な報酬表示フローを使用します。 | false | false | true |
Result
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| CosmeticResultDisplaySeconds | コスメ報酬の表示秒数です。 | 1.0 | 0.05 | 10.0 |
| CurrencyResultDisplaySeconds | 通貨報酬の表示秒数です。 | 0.75 | 0.05 | 10.0 |
| ReturnToIdleSeconds | 報酬表示後にIdleへ戻るまでの秒数です。 | 0.15 | 0.01 | 5.0 |
HostEffect
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| AccelerateAuthoritativeStateWhenHost | ホスト側のState待機時間短縮を許可します。 | true | false | true |
Safety
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| MinimumStateSeconds | 同一フレーム内のState崩れを防ぐ最小State秒数です。 | 0.05 | 0.01 | 1.0 |
| ResetAnimatorSpeedOnIdle | Idle復帰時にAnimator速度を1へ戻します。 | true | false | true |
| DoNotSkipRewardSetState | 報酬確定Stateをスキップしないようにします。 | true | true | true |
Turbo
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| TurboMode | さらに高速なガチャ進行になるよう補正します。 | true | false | true |
MultiUse
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| AllowQueuedMultiUse | 使用中のガチャ入力をキューとして予約できます。 | true | false | true |
| QueueLocalPresses | 自分の連続入力をキューに入れます。 | true | false | true |
| QueueRemoteRequests | ホスト側でリモート参加者の予約入力を受け付けます。 | true | false | true |
| MaxQueueSize | ガチャ機ごとの最大予約数です。 | 32 | 1 | 256 |
| MaxQueuedRequestsPerPlayer | プレイヤーごとの最大予約数です。 | 10 | 1 | 100 |
| QueueProcessDelaySeconds | 予約ガチャを処理する間隔です。 | 0.02 | 0.01 | 2.0 |
| QueueInteractDistance | 予約入力を許可する最大距離です。 | 5.0 | 0.5 | 30.0 |
RapidInput
| 設定値名 | 設定内容 | 初期値 | 最小値 | 最大値 |
|---|---|---|---|---|
| AllowRapidPress | E連打による予約を有効化します。 | true | false | true |
| RapidPressCooldownSeconds | E連打予約の最小間隔です。 | 0.03 | 0.01 | 1.0 |
互換性メモ
このMODは報酬内容を変更しません。
このMODはコスメ解放確率を変更しません。
このMODはトークンレアリティの選択ルールを変更しません。
このMODは重複コスメ時の通貨変換額を直接変更しません。
マルチプレイで最も安定して効果を出すには、ホストに導入してください。
推奨設定
通常の高速化
- SpeedMode = Fast
- TurboMode = true
- AllowQueuedMultiUse = true
- AllowRapidPress = true
最大速度寄り
- SpeedMode = Instant
- InstantResult = true
- SkipConfettiWait = true
- QueueProcessDelaySeconds = 0.01
UI表示に問題が出る場合は、InstantではなくVeryFastを使用してください。
導入方法
- BepInExを導入します。
- MODのDLLを
BepInEx/pluginsに配置します。 - 一度ゲームを起動してConfigファイルを生成します。
- 必要に応じて
BepInEx/config/REPOJP.FastCosmeticGacha.cfgを編集します。
開発者向けメモ
実装ではHarmonyとReflectionベースのアクセスを使用します。
これにより、コスメガチャ関連クラスがビルド環境で直接見えない場合のビルドエラーを避けています。
トークン削除、コスメ解放、通貨報酬の反映漏れを防ぐため、報酬確定Stateは意図的に残しています。
※AI生成MOD