Login. Still WIP, but works.
Install server files. Once logged in, this works.
Add support for experimental in both web and scripts. WIP.
Continuous streaming text web interface for long-running server processes.
Large refactor of the config file. Use arrays instead of delimited strings.
Large refactor of the express server to support the above.
Add Steam API key to env for when we do mod searches.
Customize the bash shell of the web container should we exec into it.
Ignore the env file.
Add streaming text modal for steamcmd operations that run over time with output that will do the same. So far this is just as a test, but it works.
Refactor the store to use actions to set variables that are required to be boolean.
Continue staging test components so when it comes time to do things for real, they'll be ready. Working backwards, always.
Implement Steam login. Needs polish.
Figure out styles. Our index.css is still being loaded before the theme, and its overrides only take effect when those don't set anything in the theme beforehand. Still not working.
Consolidate the config between Vue and express.
Monitor config changes in nodemon.
Everything is WIP.
Replace Bootstrap with Privemue.
Add i18n support. English and Brazilian Portuguese to start.
New UI with Primevue. Use tabbed menu, nice theme, etc..
WIP with Steam login.
Refactor the main page to show the Steam login when none is detected. We can't do anything without it at first. Later, we can detect if the server is installed and allow operations. Or not.
Remove server container. This will be created and maintained by the web container going forward.
Use node 18, as vite requires it.
Use a single package.json for everything. This way it can be installed at the root of the container and not show up in the bind mount.
Refactor store to include actions. We can just define them and call them, instead of using fetch directly everywhere. WIP.
Begin to implement some of the backend methods, like the steam login. It works!
Remove the old code.
Trim down the container to only what it really needs.
Upgrade containers to bookworm.
Upgrade web's node to 20.
Add bercon to the web container.
Remove rcon from the server container.
Remove motd text from config.
Add roadmap and update docs.
Correct output from steamcmd to avoid red herrings by creating a directory it expects as well as providing a shared object it also expects.
Update docs.
Make development work by setting an environment variable.
Set the web container to restart instead of not, should the express server crash.
Copy XML files that are merged when the server starts only when the mpmissions directory exists.
Refactor XML functions for better naming.
Handle display of lists when no mods are installed.
Add support for adding mpmissions for Deer Isle and mpmissions in general via mod integrations.
Add support for Red Falcon Watercraft XML files. WIP.
Add a deer isle DayZ bicycle spawn file.
No more CNDs. All software is now bundled and served from a proper node-based development server.
Switch to using proper Vue files, so we can have proper IDE integration.
Open new port for the dev server mentioned above.
Split status and mod info requests in the back end.
Bypass CORS while developing.
Renamed main container to web.
Added the STEAMAPIKEY environment variable placeholder, as this is necessary when searching for mods.
Refactor locations of scripts and paths.
Rename start scripts to be more consistent with their new locations.
Run the web server under nodemon to prevent manual restarting.
Forget xmlmerge. Switch to xmlstarlet.
Add the two shared objects required to get a release server running. This is just to get around having to host them/fish them up from elsewhere.
Update docs.
Rework directories so there are fewer volumes within volumes.
Keep splitting up the code between the two scripts, removing unused variables, etc..
Add XML file merging integration. WIP.
Fix lack of comma in cfg file that _might_ have been causing issues...
Add command line xml merge tool for when that time comes.
Add Red Falcon Heliz mod as the work-in-progress for getting a turnkey system that merges many different XML files that a full server mod installation will require.
Fix finding a mod by index and use that for all mod operations.
Start re-working how mods are added/removed/activated/deactivated. Split the script up into separate files with distinct functionality. WIP.
Add a template system for handling mod XML files.
Add an express web server to be the provisioning container frontend.
Add lots of comments.
Add TL;DR for turnkey release server install.
Add command line xml merge tool for when that time comes.
Add Red Falcon Heliz mod as the work-in-progress for getting a turnkey system that merges many different XML files that a full server mod installation will require.
Fix finding a mod by index and use that for all mod operations.
Start re-working how mods are added/removed/activated/deactivated.
Add a template system for handling mod XML files.
Add lots of comments.
Remove the default.cfg file as that's just been incorporated into the dayzserver script.
Set some saner defaults in serverDZ.cfg.
Remove the faking of the install.
Integrate steamcmd from Debian.
Updated docs.
Simplify things by consolidating all the bash stuff into dayzserver and removing files where the content has become managed interactively.
Make sure steamcmd has proper permissions in the container.
More updated documentation.
Logging into to Steam, accounting for Steam Guard. These credentials persist throughout the lifetime of the docker volume storing the data.
Adding/removing/managing workshop items. The goal is to also manage the "=mod=" parameter.
Listing the auto-generated RCON password.
Backing up.
Further refine the original dayzserver script. In docker, a lot of the other stuff wasn't necessary so a lot is just being removed.
Install steamcmd into the container in Dockerfile and adjust paths.
Vastly updated docs!
Make all bash changes to the dayzserver script instead of creating a wrapper.
Handle the server config and Battle Eye string substitution.
Add the default.cfg from upstream and handle it locally.