Releases: brianmiller/phvalheim-server
2.13
Summary for 2.13 release
This release resolves the following regressions and bugs:
- #45 (broken Launch link on Admin page)
- #46 (broken Launch link on Admin page)
- #43 (broken Launch link on Admin page)
- #35 (broken Launch link on Admin page)
- #41 (custom seed doesn't work)
- Spelling error in the client download window "looking other builds?" should be "looking for other builds?"
- Latest client download version detection corrected to pull latest client release instead of an unsorted array
- Added new log exclusions
- Added -oldconsole to world start command
- Add logic to remove "unstripped_corlib" directories from world, post BepInEx 5.4.2100
Commits related to this release
2.12
Summary for 2.12 release
Note: This release upgrades the internal MySQL database engine and cannot be rolled back. This means you will not be able to run PhValheim <2.11 after running >=2.11. Make sure you have a recent backup of your entire stateful data directory before proceeding!
Note: When upgrading from <=2.10 , upon first start of this release, phvalheim's engine will set all worlds to "update" mode. This will force the game engines and mods for all worlds to be updated to the latest release of each component. This first start-up is critical to ensure proper conversion of the database schema and associated keys+values. Be patient! I've only see this to be noticeable with 15+ worlds. The web UI may appear to be unresponsive.
You can watch engine logs by navigating to:
http://<your phvalheim-server>:<your phvalheim admin port>/readLog.php?logfile=phvalheim.log#bottom
-
Admin UI changes
- Adjust: changed new_world.php and edit_world.php loading screens (blur to spinners)
- Bug: corrected a condition where duplicate mods would appear when a mod is user unselected but required as a dependency.
-
Commits related to this release
8ee6cda2 changed new_world and edit_world loading screens, fixed mod duplicates
2.11
Summary for 2.11 release
Note: This release upgrades the internal MySQL database engine and cannot be rolled back. This means you will not be able to run PhValheim <2.11 after running >=2.11. Make sure you have a recent backup of your entire stateful data directory before proceeding!
Note: When upgrading from <=2.10 , upon first start of this release, phvalheim's engine will set all worlds to "update" mode. This will force the game engines and mods for all worlds to be updated to the latest release of each component. This first start-up is critical to ensure proper conversion of the database schema and associated keys+values. Be patient! I've only see this to be noticeable with 15+ worlds. The web UI may appear to be unresponsive.
You can watch engine logs by navigating to:
http://<your phvalheim-server>:<your phvalheim admin port>/readLog.php?logfile=phvalheim.log#bottom
-
Engine changes
- Adjust: changed how environment variables are loaded and passed between user contexts
- New: added crossplay libraries
- Bug: fixed file system errors when creating a new world after deleting the last world
- Bug: fixed order of operation execution logic for database updates. Updates are now applied in order of released versions.
- Bug: fixed Steam symlink logic to only create when links don't exist.
-
Admin UI changes
- Adjust: implemented CSS refresh attributes (reload CSS files if they've changed)
- Adjust: improved admin interface styling
- Adjust: added new log exclusions and highlighters
- New: admin interface addition to view mods in a running world
- New: admin interface for "Add World" (rapid table sorting, rapid search, dependency labels, last updated and latest version for all mods). Related to #2.
- New: admin interface for "Edit Mods" (rapid table sorting, rapid search, dependency labels, last updated and latest version for all mods). Related to #2.
- New: "Add World" and "Edit World" interfaces will now "lock" on first submit, preventing multiple submissions.
- New: added world name confirmation and validation (if a world name is already in use, display an error).
- New: added world and seed string character restrictions. I.e., no spaces or special chars are allowed. Related to #4.
-
Database changes
- Adjust: deprecated "worlds=>thunderstore_mods_all", added "worlds=>thunderstore_mods_deps"
-
Public UI changes
- Adjust: implemented CSS refresh attributes (reload CSS files if they've changed)
- New: login page (removed local auth HTML, added about page, changed Steam icon to green)
-
Docker Hub
docker pull theoriginalbrian/phvalheim-server:latest
-
Commits related to this release
2b871d49 added new_world and edit_world page blur on load and submission
d131d097 testing new screen blanker
e4c83593 Update README.md
735a4f61 fixed duplicates in modsViewer
8879f59a sorted modsViewer, fixed duplicates in mod editor
86eac227 Update README.md
4f8c0415 updated tsmods_seed.sql
21993c12 Update README.md
8c4a3f64 javascript adjustments
2c70f1ab fonts
2a5b6a85 adjusted modViewer execution order of operation
7ccd4f8e reworked mod viewer logic
56f265b1 pre-release is done, new changelog generator added to devtools
2023e7fb added css refresh attrs to all pages
a4279b33 minor changes
0f7514a2 new login screen
e9559bf5 new login screen
12d16c14 added javascript to control when tables are cleared and buttons are disabled upon submission
5f022d83 loads of fixes and changes
4073e92e typo
c5cd4e39 admin ui overhaul
2c16d207 new mod editor
2.10
Summary for 2.10 release
-
Engine changes
- Disabled log rotation for supervisor.d managed services.
- Implemented new custom log rotator.
- Implemented new custom time zone setter and normalized time zone across all of phvalheim-server. I.e., logs, public and admin interfaces.
- Implemented new backend process idle/running/error indicators.
- phvalheim-server now respects the passed
$TZ
variable from the Docker start command. - Added log exclusions for noisy and irrelevant messages
-
Admin UI changes
- Table organization (worlds, commands, stats, logs)
- New dedicated log files for: Thunderstore syncs, World backups and Log rotation.
- Normalized CSS and theme
- New backend statistics table
-
Database changes
- New: settings table (
maxLogSize
,backupsToKeep
) - Default
maxLogSize
is set to 1MB (1,000,000 bytes) - Default
backupsToKeep
is set to 24. - New: systemstats columns (
tsSyncLocalLastRun
,tsSyncRemoteLastRun
,worldBackupLastRun
,utilizationMonitorLastRun
,logRotaterLastRun
,tsSyncLocalLastExecStatus
,tsSyncRemoteLastExecStatus
,worldBackupLastExecStatus
,logRotateLastExecStatus
,utilizationMonitorLastExecStatus
)
- New: settings table (
-
Commits related to this release
8dc1af56 (HEAD -> master, origin/master) added log exclusions
b8b75269 adjusting phvalheimprep echo statement language
dded908f adjusting phvalheimprep echo statement language
c83f48cd reordering dbUpdates and phvalheimprep
15512919 idle state
d9bcb73a setting idle state as default on engine start
78e974f1 reworking timezone
37f52da7 reworking timezone
b7a779f9 timezone
30254615 timezone tuning
db1e8c54 timezone tuning
ec890b78 timezone work
8c0b3669 moving time on admin page
8fb23f03 finishing touches to 2.10
b64c25ca reworking admin ui
7c65e7f8 reworking admin ui
797ff383 reworing admin ui
6ebe6b8c prepping for 2.10
cf084c9e lots of changes
c84e3a90 reworking logs and settings
2d2f551a updated tsmods_seeds.sql
-
Docker Hub
docker pull theoriginalbrian/phvalheim-server:latest
2.9
PhValheim Server v2.9 brings the following changes:
-
New: Thunderstore database sync has been extended to include remote syncing with PhValheim's GitHub page. This is in addition to the local sync every 12hrs. The driving force for this change was when IronGate's last update broke BepInEx, it broke all PhValheim worlds for up to 12hrs before the Thunderstore database sync ran again and updating the BepInEx metadata and making the fixed version available for world updates. This remote sync runs every 15 minutes.
-
New: custom_configs_secure has been added to all worlds. This allows private config files to only reside on the server and never be copied to remote clients. E.g., Discord webhook URLs that contain authorization tokens.
-
New: systemstats database table now includes last run times for background PhValheim processes
-
New: systemstats database table now includes a column to keep track of Thunderstore updates and executions
-
New: systemstats database table is now being updated with cpuModel (future use)
-
Adjust: Backups run every 60 minutes instead of every 30 minutes.
-
Adjust: MySQL timezone is now set to UTC
-
Adjust: MySQL information_schema_expiration has been disabled
-
Fix: supervisor logs now rotate after reaching 1MB in size
Release candidate pull tag: theoriginalbrian/phvalheim-server:rc
Latest pull tag: theoriginalbrian/phvalheim-server:latest
2.8
2.7
A new world progression tracker has been added to PhValheim. This feature required changes to all three components, phvalheim-server, client and companion.
Screenshots of the new hungHead feature
Head Hung
Client BepInEx console
Public Interface
Note: If you see this: clear your browser cache or wait until your browser decides to do it automatically.
- For Google Chrome: F12 -> network tab -> disable cache -> reload the page
Minor changes
- Sorted public UI by online status and name
- Cleaned up engine log output
Related Commits
- phvalheim-server: d386403
- phvalheim-server: 4c136d2
- phvalheim-server: 2b2f19e
- phvalheim-server: bc3044f
- phvalheim-client: brianmiller/phvalheim-client@03e2e9e
- phvalheim-client: brianmiller/phvalheim-client@3c1c903
- phvalheim-client: brianmiller/phvalheim-client@9832f42
- phvalheim-companion: brianmiller/phvalheim-companion@e03f9f8
- phvalheim-companion: brianmiller/phvalheim-companion@12f2fd7
- phvalheim-companion: brianmiller/phvalheim-companion@354cdff
See https://github.com/brianmiller/phvalheim-companion for more info.
2.6
This release of phvalheim-server v2.6 brings userAgent detection downloaders and native Linux support. Thank you @solaris765 for your contribution to the client. This is the first release with Linux support and I'm sure we'll need to polish it along the way.
phvalheim-server and phvalheim-client release highlights:
phvalheim-server v2.6
- Reworked public frontend to accommodate a fancy new userAgent download menu
phvalheim-client v2.0.7
-
Linux clients!
- .deb, .rpm and universal .tar.gz packages
-
Repackaged Windows client
- Packages .NET runtime into a single executable with phvalheim-client
- Moved to .msi instead of self-extracting exec to mitigate false-positive anti-virus triggers
- Note: I'll maintain a copy of the old .exe client installer until <=phvalheim-server v2.5 ages out.
-
Build process
- We now have a complete build revamp for the client that results in .msi, .deb, .rpm, and .tar.gz packages in respective docker containers to maintain native library compatibility.
I've tested Ubuntu 22.10, Fedora 34, Fedora 35 and Fedora 37 with their respective packages and the universal tarball. Everything seems to be working properly. I'll be focusing on bug fixes and any issues that come in and building a flatpak option for the Steam Deck 🤞 .
2.5
2.4
This release resolves #10 and implements a new server-side mod "phvalheim-companion."
Screenshots of #10 solution:
PhValheim Companion brings new capability to PhValheim by exposing internal real-time telemetry from each world provision by PhValheim to the backend service. This allows us to keep track of server stops, starts, joins, deaths, etc...
Here's an example of world events and backend communication: the output below is seen from a world log. Each world will now send real-time data to PhValheim's backend's new adminAPI interface (adminAPI.php). This API will be extended as more features are added.
PhValheim Companion: [Sent] {"action":"start","world":"mytestworld22"}
PhValheim Companion: [Received] Backend response:OK
PhValheim Companion: [Sent] {"action":"join","world":"mytestworld22","citizen":"Boogeyman"}
PhValheim Companion: [Received] Backend response:OK