You are viewing a potentially older version of this package. View all versions.
Exothermic-AllSleepNightSkip-0.1.6 icon

AllSleepNightSkip

Fast-forwards ASKA through the night when every required connected player is asleep.

Date uploaded 2 weeks ago
Version 0.1.6
Download link Exothermic-AllSleepNightSkip-0.1.6.zip
Downloads 53
Dependency string Exothermic-AllSleepNightSkip-0.1.6

This mod requires the following mods to function

BepInEx-BepInExPack_IL2CPP-6.0.755 icon
BepInEx-BepInExPack_IL2CPP

BepInEx pack for IL2CPP x64 Unity games. Preconfigured and ready to use.

Preferred version: 6.0.755

README

AllSleepNightSkip

Fast-forwards ASKA through the night when every required connected player is asleep, then restores normal time at morning.

Features

  • Requires all active players to be asleep by default.
  • Waits 3 real seconds before starting, preventing accidental triggers.
  • Runs on the dedicated server or authoritative host.
  • Stops when morning arrives, somebody wakes, the scene changes, or the safety timeout is reached.
  • Restores the previous time scale on every exit path.
  • Supports configurable sleep percentage, delay, speed and timeout.

Installation

Install the mod on the dedicated server or host using a Thunderstore-compatible mod manager.

Clients do not need the mod when joining a dedicated server.

For manual installation, place the DLL at:

BepInEx/plugins/Exothermic.AllSleepNightSkip/Exothermic.AllSleepNightSkip.dll

BepInEx IL2CPP is required.

Configuration

After the first launch, edit:

BepInEx/config/com.exothermic.aska.allsleepnightskip.cfg

Default configuration:

[General]
Enabled = true

[Sleep]
RequiredSleepFraction = 1
MinimumPlayers = 1
StartDelaySeconds = 3

[FastForward]
TimeScale = 20
MaximumRealSeconds = 120
OnlyAtNight = true
AllowUnknownNightState = true
MorningHour = 6

[Advanced]
AuthorityOnly = true
PlayerScanIntervalSeconds = 1

[Diagnostics]
VerboseLogging = false
DumpDiscoveryOnWorldLoad = false

Lower TimeScale to 8 or 10 if the server stutters during fast-forward.

Troubleshooting

The dedicated-server log should show:

Night fast-forward started
Night fast-forward stopped: morning reached

For additional logging, enable:

[Diagnostics]
VerboseLogging = true
DumpDiscoveryOnWorldLoad = true

Restart the server after changing the configuration.

Notes

ASKA does not currently expose a stable public API for player sleep and world-clock state. The mod uses runtime detection designed for the current game version, so a future ASKA update may require a compatibility update.

CHANGELOG

Changelog

0.1.6

  • Removed developer build instructions from the public Thunderstore README.
  • Simplified installation, configuration, and troubleshooting information for server owners.
  • No gameplay or runtime behaviour changes from 0.1.5.

0.1.5

  • Added recursive inspection of ASKA's _interactionAgent, current interaction, action, state, pose, and moveset object graph.
  • Recognises active SleepInteraction, BedInteraction, InBed, WakeUpInteraction, sleeping state enums, and equivalent renamed objects.
  • Added guarded animator-clip detection without invoking invalid animator layers on the headless server.
  • Added CharacterAska(Clone) as a dedicated-server player-root fallback when IsPlayer() reports false.
  • Expanded the discovery dump with a bounded recursive interaction/state graph for future ASKA updates.
  • Discovery repeats up to twice at 15-second intervals while sleep remains unknown, so entering a bed after world load is captured.
  • Compact scan diagnostics now include the closest interaction graph values when no sleep signal is found.

0.1.4

  • Added a dedicated-server Character.Spawned registry so player objects are captured as ASKA creates them.
  • Added exact-type discovery for ASKA's SSSGame.Character IL2CPP wrapper, including inactive live scene instances.
  • Added playerProbe= diagnostics with tracked, exact-type, broad, tagged, and accepted counts.
  • Fixed ASKA's Directional Light MOON being interpreted as morning instead of night.
  • Retained broad and tag-based discovery fallbacks for clients and future ASKA updates.

0.1.3

  • Removed the unreliable active-scene-name gate that could silently stop all scans on ASKA dedicated servers.
  • Diagnostics now log before authority/player gates, so players=0, NotAuthority, and scene mismatches are visible.
  • Added an unconditional NightSkipBehaviour is active startup line.
  • Discovery waits until at least one player is visible instead of consuming the one-shot dump too early.
  • Startup now prints the effective diagnostic and authority settings.

0.1.2

  • Fixed Linux/Gale builds failing with CS0656 for NullableAttribute and NullableContextAttribute.
  • Removed nullable-reference metadata that conflicts with ASKA's generated Il2Cppmscorlib.dll.
  • Replaced record/init-only types with ordinary structs/properties for broader IL2CPP compiler compatibility.

0.1.0

  • Initial experimental ASKA/BepInEx IL2CPP release.
  • Detects active player characters and ranked sleep signals at runtime.
  • Requires a configurable fraction of connected players to be asleep.
  • Authority-only time acceleration with dedicated-server detection.
  • Reflective world-clock discovery and directional-sun fallback.