Disaster Control
Control skull disasters with in-game presets, safe castle targeting, cyclic skulls and optional skull rerolls. Vanilla by default. Preview: custom-match reconnects are blocked; see README for verification limits.
By Mikhasan
| Last updated | 12 hours ago |
| Total downloads | 5 |
| Total rating | 0 |
| Categories | AI Generated Mods Tools |
| Dependency string | Mikhasan-Disaster_Control-0.9.1 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack_IL2CPP
BepInEx pack for IL2CPP x64 Unity games. Preconfigured and ready to use.
Preferred version: 6.0.788README
Disaster Control
By Mikhasan. Independent Dice Kingdoms mod for Windows x64 and BepInEx 6 IL2CPP build 788.
0.9.1 preview. Vanilla on first installation. Replace the previous DLL; do not install duplicate copies. The 0.9.0 configuration path and existing option names are retained. Every human player needs the same new version for modified network matches.
Открытие и управление
Нажми штатную шестерёнку → Disaster Control в лобби или матче. Большая кнопка поверх шкалы удалена. Вкладка использует окно, фон и оформление кнопок игры. Прокрути список до переключателя русского / английского языка. Нажатие на значение меняет параметр; ручное изменение включает Custom.
В одиночной партии изменения применяются в начале следующего сбора урожая. Уже выбранные и выполняющиеся катастрофы сохраняют прежние правила. До этой границы игровая логика и шкала используют текущие правила, а вкладка показывает подготовленные изменения.
В сетевой партии хост меняет правила до старта; участники видят правила хоста. После старта изменения заблокированы. Quick Match и обучение сохраняют оригинальные правила. Личные настройки клиента не применяются к чужому лобби.
Переброс заменяет текущий результат кубика. Шкала использует реальные ожидающие начисления черепа плюс уже зафиксированные черепа острова. Завершение старой анимации больше не создаёт лишний череп на шкале. Попытки, исследования, вероятности граней и начисление ресурсов остаются штатными.
Controls and presets
Open native gear settings → Disaster Control in a solo/custom lobby or match. Click values to cycle them; scroll for individual events and the language button. Solo edits wait for the next harvest; network rules lock before match start.
| Preset | Settings |
|---|---|
| Vanilla | Original targeting, Multi-Meteor lobby option, excess skulls, attempts and intensity; all events enabled; no custom meteor cap. |
| Balanced | Protect Castle, cyclic thresholds, at most one meteor per island trigger, original intensity, skull rerolls off. |
| Peaceful | All 12 skull disasters off, Protect Castle, SingleMeteor, skull rerolls on; independent starvation unchanged. |
| Chaos | Native Multi-Meteor forced on, at most 32 meteors per island trigger, Disease/Revolt multipliers 200%, original targeting, skull rerolls off. |
| Custom | Manual edits. Selecting Custom retains current values, including Chaos Multi-Meteor. |
Meteor and skull rules
VanillaTargeting retains native seeded targeting. ProtectCastle excludes the real occupied castle cells and the complete circular blast radius, including edge contacts. Other buildings can be destroyed. SaferTargeting prefers two extra tiles of clearance, falling back to ordinary castle-safe points. Enumeration is bounded and deterministic from the occurrence seed. Castle cells are read once per impact instead of repeatedly enumerating native buildings for every tile. Each subsequent impact evaluates the current terrain.
Coordinates change before visuals and damage. No safe grass tile means that meteor completes without an impact. No castle restoration or immunity to normal combat is added. Unexpected targeting adapter failures explicitly leave the affected session rather than silently continuing with different terrain.
Vanilla excess skulls follows the native lobby option, with an explicit force-on switch. Modified rules cap overflow at MeteorLimit; completely Vanilla rules do not. SingleMeteor and NoExcessMeteors both preserve the threshold meteor and remove additional meteors in this game build. CyclicDisasters repeats the inclusive native range 1–12: 12 = Meteorite, 13 = Robbers, 14 = Disease, 24 = Meteorite. The same mapping drives the gauge and actual selection. Stored skull resources are never rewritten for this mapping. A disabled event is skipped, not replaced by the next enabled event.
Disease and Revolt controls scale actual native parameters, capped at 100% actual effect. Disease is separate from Plague. Revolt removes military points (swords), not wood/gold/food. Returning to Vanilla restores original shared parameters and preserves original icon colors.
Native event audit
Native target/team selection, visuals, delays and seeded execution are retained. Disabled occurrences are filtered before selection and guarded before their native iterator can change state. Independent Starvation is excluded from disabling.
| Skulls | Event | Native scope / effects |
|---|---|---|
| 1 | Robbers | One enemy; eligible resources removed from target and stolen resources transferred. |
| 2 | Disease | Self; eligible houses marked with disease using percentageAffected. |
| 3 | Lightning | One enemy; StormDisaster tile effects using nbTile. |
| 4 | Fire | Self; FireDisaster building effects. |
| 5 | Thunderstorm | One enemy; StormDisaster effects using its own nbTile. |
| 6 | Revolt | Self; percentage loss of military points and resource particles. |
| 7 | Tornado | Two enemies; native building destruction and tornado visual. |
| 8 | Plague | Self; affected-house state with an independent percentage. |
| 9 | Satanism | Two enemies; native SatanismDisaster house conversion and visual. |
| 10 | Pirates | Self; percentage loss of eligible resources. |
| 11 | Tsunami | Native all-enemy scope; coastal tile destruction, radius and travel timing. |
| 12 | Meteorite | Self; seeded impact and terrain/building destruction within radius. |
Results continue through original MLAPI RPC and island snapshots. No separate RNG or alternative resource ledger is introduced.
Multiplayer restrictions
The host requires acknowledgements of session, increasing revision, rules digest, mod version, game binary and native disaster parameters from every connected human peer. Pending connections block modified start too. Delayed acknowledgements from an earlier A → B → A edit cannot approve the new revision. Clients reject older revisions and preserve their personal hosting preferences.
Incompatible or unmodified clients block modified start. After custom rules have been sent, returning to Vanilla also waits for confirmation that peers discarded those rules. With an unmodified peer, create a fresh Vanilla lobby in that case. Completely Vanilla network rules retain original mixed-client behavior. Joining/reconnecting after modified start remains blocked. Started solo sessions also reject late joins to protect queued solo changes. Mid-match network rule negotiation, late snapshot restoration and host migration are not implemented.
Installation and configuration
Install BepInEx IL2CPP build 788, then extract this ZIP into the game directory. Plugin path: BepInEx/plugins/DisasterControl/DiceKingdoms.DisasterControl.dll. No Modding Kit, All Civilizations or cosmetic mod is required. Do not install test probes.
Configuration: BepInEx/config/io.github.mikhasan.dicekingdoms.disastercontrol.cfg. Close the game for manual editing, choose Preset = Custom, then edit Rules / Disasters. Language accepts en or ru. Named presets restore their defined settings. Unknown enum values and out-of-range numbers normalize to valid settings; invalid network rules are rejected. New ForceMultiMeteor is acquired automatically by old Chaos configurations.
The declared loader dependency is BepInEx-BepInExPack_IL2CPP-6.0.788. The ZIP contains only manifest, README, original 256×256 icon and plugin DLL. No game binaries or interop assemblies are redistributed. Package preparation does not mean publication or registration of a Dice Kingdoms community on Thunderstore.
Verification and limits
Target: installed Dice Kingdoms Steam build 13999222, UI v1.0.4 / internal Application.version 0.4, Unity 2021.3.36f1, Windows x64, BepInEx IL2CPP build 788.
Native fixtures reproduce the old skull mismatch and compare real replacement yields, gauge/cache, resource commit and selected catastrophe. They cover skull→resource, skull→skull, batches, resource→skull, attempt exhaustion, queued solo changes, 100 repeated harvest accounting resets, session reset, disabling all 12 events, cyclic boundaries and large counts. Meteor fixtures compare the real castle-footprint helper on seeded impacts, actual terrain destruction and no-safe-coordinate completion. Configuration fixtures exercise real BepInEx files, old settings, invalid values and reloads. Clean-package checks exclude all other mods; coexistence checks include All Civilizations and Village Audio Overhaul.
Two real local game processes over MLAPI/UNET confirmed pregame synchronization, stale-ACK rejection, edit locks, identical terrain after the native meteor RPC, and identical dice, yields and attempts after a native network reroll. This is not remote Steam party certification.
Mathematical assertions are supplementary, not proof of full gameplay coverage. Repeated accounting cycles are not 100 complete played matches. Full long matches, every enabled catastrophe/technology/civilization combination, all small/expanded island geometries, remote Steam transport and visual acceptance at different resolutions remain unverified. No Computer Use, input emulation or mouse/keyboard control was used. Headless fixtures emit stock rendering/interface warnings; no claim of an entirely clean visual-runtime log is made.
This remains a 0.9.1 prerelease while those scenarios and late reconnect support are unfinished.