DayNight4010
Valheim 1.0.12: true configurable day/night (40/10 default), normal production time, synced minimap countdown. Required on server and all clients.DayNight4010 2.0.0
Valheim 1.0.12 · BepInExPack_Valheim 5.4.2350 · Default 40-minute day / 10-minute night.
2.0.0 is required on the server AND every client. Jötunn is not required.
Polski
Co zmienia wersja 2.0.0?
Prawdziwy dzień trwa domyślnie 40 minut, a noc 10 minut. Gra nadal rozpoznaje dzień, noc i poranek; to nie jest wyłącznie zmiana oświetlenia. Zegar używany przez produkcję działa w normalnym tempie. Mod nie spowalnia już ZNet.UpdateNetTime, dlatego rośliny, fermentacja, pieczenie i inne procesy oparte na sekundach świata nie otrzymują spowolnionego czasu.
Pozostaje licznik pod małą minimapą, konfiguracja czasu każdej fazy i napisy PL/EN. Ukrycie licznika nie wyłącza synchronizacji. Nowy kalendarz jest wymagany u wszystkich graczy. Brak zgodnej wersji lub utrata synchronizacji powoduje rozłączenie po około 30 sekundach; szczegóły są w logu.
Warunki produkcji nadal obowiązują: temperatura, miejsce, wiatr, paliwo i wymagania pory dnia. Wydłużona prawdziwa pora dnia może zmieniać czas dostępności zjawisk dziennych/nocnych. Sen nadal pomija czas do następnego poranka, a procesy mogą nadrobić pominięty czas jak w zwykłej grze. Nie oznacza to identycznego rezultatu każdej mechaniki i dowolnych innych modów względem krótszej doby.
Aktualizacja w r2modman od razu, z ZIP
- Zamknij Valheim. Zapisz kopię BepInEx/config/local.daynight4010.cfg, jeśli masz własne ustawienia.
- Otwórz profil, w którym grasz. W Installed wyłącz starą wersję DayNight4010.
- Otwórz menu zarządzania profilem (kliknij nazwę profilu) i wybierz Import local mod. W starszym układzie opcję znajdziesz w Settings → Profile.
- Wskaż cały Ezvay-DayNight4010-2.0.0.zip. Nie wybieraj Import profile i nie rozpakowuj ZIP do tego importu.
- Jeśli manager pyta o dane: Author Ezvay, Name DayNight4010, Version 2.0.0.
- Sprawdź Installed: aktywna ma być tylko wersja 2.0.0. Stare wpisy, w tym ewentualny LocalMods-DayNight4010, pozostaw wyłączone lub usuń po zrobieniu kopii ustawień.
- Uruchom Start modded dopiero po aktualizacji serwera. Pozostali gracze wykonują tę samą aktualizację.
ZIP zawiera cztery pliki: manifest, README, ikonę i DLL. Nie zawiera konfiguracji, testów ani bibliotek gry. Istniejące ustawienia pozostają na miejscu; przy nowej instalacji konfiguracja powstanie po uruchomieniu. BepInEx musi już być zainstalowany w profilu.
Aktualizacja na hostingu
- Zatrzymaj serwer i zrób kopię świata oraz konfiguracji.
- Rozpakuj ZIP na swoim komputerze. Plik plugins/DayNight4010.dll wgraj zamiast dotychczasowej DLL do BepInEx/plugins/DayNight4010/ na serwerze. Jeżeli stara DLL znajduje się w innym podfolderze, podmień ją tam. W BepInEx/plugins może pozostać tylko jedna kopia DayNight4010.dll.
- Zachowaj BepInEx/config/local.daynight4010.cfg.
- Uruchom serwer i połącz się klientem 2.0.0.
- W logu serwera szukaj SERVER CALENDAR ACTIVE i swoich czasów. W logu klienta: SERVER CALENDAR SYNCED.
Kalendarz istniejącego świata
Przy pierwszym uruchomieniu 2.0.0 z graczem mod zachowuje numer dnia i położenie w cyklu z wersji 1.x / vanilla, bez przesuwania globalnych znaczników czasu produkcji. Zapisuje osobny plik: BepInEx/config/DayNight4010/world-<UID>.calendar
Dołącz ten folder do kopii zapasowych świata. Nie kasuj go podczas aktualizacji. Przy przenoszeniu serwera przenieś go razem ze światem. Zmiana czasów po restarcie zachowuje bieżący numer dnia i fazę; poprzedni stan trafia do pliku .bak. Po odtworzeniu starszej kopii świata używaj pasującej kopii kalendarza, zwłaszcza jeżeli zmieniałeś ustawienia długości dnia.
Dotychczasowy postęp produkcji zostaje zachowany; mod nie wyrównuje wstecz opóźnień powstałych podczas korzystania z wersji 1.x. Usunięcie moda / powrót do wersji 1.x przywraca stary sposób obliczania numeru dnia, więc może on się zmienić. Do pełnego cofnięcia aktualizacji użyj kopii świata i konfiguracji sprzed aktualizacji.
Ustawienia
Plik BepInEx/config/local.daynight4010.cfg:
[General]
Enabled = true
[Cycle]
DayMinutes = 40
NightMinutes = 10
[HUD]
ShowCountdown = true
Language = pl
FontSize = 20
OffsetY = 8
Cycle i Enabled ustawia serwer. Po zmianie zrestartuj serwer. Każda faza: 1–1440 minut. Ustawienia lokalne Cycle nie nadpisują serwera. HUD jest lokalny; Language = en daje napisy angielskie. Nie łącz z innym modem sterującym zegarem lub kalendarzem.
Publikacja aktualizacji na Thunderstore
Wgraj ten ZIP przez stronę publikacji pod tą samą drużyną Ezvay. Manifest ma tę samą nazwę DayNight4010 i wyższą wersję 2.0.0. Utworzy to aktualizację istniejącego moda. Po pojawieniu się wersji w katalogu r2modman gracze mogą aktualizować ją z managera. Lokalny import ZIP nie publikuje niczego w Thunderstore.
Weryfikacja
Kompilacja i testy logiki przeszły. Sprawdzono sygnatury podmienianych metod i pól w lokalnej bibliotece 1.0.12. Nie wykonano testu działającego klienta i serwera ani wyglądu HUD w grze. Pierwszą próbę wykonaj na kopii świata: sprawdź numer dnia, licznik, pełny dzień/noc, sen, krótką produkcję oraz restart. Naturalne przejścia oświetlenia/logiki zachowują wygładzanie vanilla, więc mogą minimalnie odstawać od granicy licznika.
English
Version 2.0.0
Default 40 real minutes of day and 10 of night, using the actual game calendar/day-night logic. Production world seconds run normally: this version no longer slows ZNet.UpdateNetTime. Plants, fermentation, cooking and other timestamp-based systems therefore receive normal elapsed seconds.
Includes the minimap countdown and configurable phase durations. Hiding the HUD does not disable synchronization. The server and every client require the same version (2.0.0). Missing or stale synchronization disconnects the peer after approximately 30 seconds; inspect logs for details. No Jötunn dependency.
Normal production requirements remain, including heat, space, wind, fuel and time-of-day conditions. Longer actual day/night windows can still affect phase-dependent mechanics. Sleeping advances to the next morning and can advance production through the skipped time as in vanilla. This does not guarantee identical outcomes for every mechanic or third-party mod.
Local r2modman update
- Close Valheim and back up your existing config if customized.
- Select your profile and disable the old DayNight4010 entry in Installed.
- Open profile management by clicking the profile name, then Import local mod. Older layouts expose it under Settings → Profile.
- Select the complete Ezvay-DayNight4010-2.0.0.zip. Do not use Import profile.
- If prompted: Author Ezvay, Name DayNight4010, Version 2.0.0.
- Keep only 2.0.0 enabled, including disabling any old LocalMods copy.
- Update the server and all other clients, then use Start modded.
The ZIP contains only manifest, README, icon and DLL. It does not overwrite configuration. Fresh configurations are generated at startup. Install BepInExPack_Valheim 5.4.2350 in the profile.
Server update
Stop the server and back up world/configuration. Replace the existing DayNight4010.dll with plugins/DayNight4010.dll from the ZIP, normally under BepInEx/plugins/DayNight4010/. Keep exactly one DLL copy and preserve BepInEx/config/local.daynight4010.cfg. Restart and connect with a 2.0.0 client. Look for SERVER CALENDAR ACTIVE on the server and SERVER CALENDAR SYNCED on clients.
Persistent calendar / migration
First activation with a player preserves the existing day number and phase without changing production timestamps. State is stored separately in BepInEx/config/DayNight4010/world-<UID>.calendar.
Back up this folder with your world and retain it on updates or server moves. Duration changes on restart preserve current day/phase and retain a .bak of the previous calendar. Restore matching world/calendar backups, particularly after duration changes. Already-earned production progress is retained; previous 1.x slowdowns are not retroactively compensated. Removing this mod or reverting to 1.x can change the displayed day number; a full rollback requires your pre-upgrade world/config backup.
Settings
Use the example above. Enabled and Cycle are server-controlled; restart after changing them. Each phase allows 1–1440 minutes. HUD options are local; Language = en selects English. Do not combine with competing clock/calendar mods.
Publishing
Upload this ZIP under the existing Ezvay team. The manifest retains DayNight4010 and uses version 2.0.0. Once indexed, users can update from r2modman. Local ZIP import does not publish the update. Official instructions: https://wiki.thunderstore.io/mods/updating-a-package
Validation
Compilation and calendar logic tests passed. Target method/field signatures were checked against local Valheim 1.0.12 assemblies. No live client/server or Unity HUD test has been performed. Test on a world copy first: day number, countdown, full phase lengths, sleep, short production task and restart. Vanilla phase smoothing can slightly offset visible transitions from the countdown boundary.


