It's been almost two years since I began developing HappinessMP. Admittedly, only a small portion of this time was dedicated to actual development, as life outside virtual reality demands attention.
I recall starting with the launcher, and with the passage of time and expanding skills, a decision was made to give it a full rewrite and the core a significant refactoring.
Same design, new focus. While the old launcher prioritized neat organization and offering as much as possible, the new focus is on simplicity, effectiveness, and user-friendliness. For example, the server list is now the first thing visible upon launching, eliminating annoying page changes.
Moreover, the new launcher is now based on Webview2 instead of CEF, ensuring better performance, improved compatibility with modern web standards, and seamless updates through Microsoft Edge.
An added feature is the built-in installer, designed primarily to assist first-time users in playing HappinessMP. The installer guides users through all necessary steps for installation, providing active feedback, for instance, when selecting the installation directory.
New Update Policy
Unlike before, where updates and a connection to HappinessMP servers were mandatory, I aim to give full control back to the user. Consequently, an internet connection is only necessary for installation (due to file downloads). Once installed, HappinessMP can be used offline on the LAN.
While updates will still be suggested at startup, they can now be skipped. To prevent compatibility issues between different client and server versions, a new version system is introduced to check compatibility upon joining.
New Project Goals
Considering the extended development time in relation to actual progress, I've decided to adjust project goals downward. This means that some planned features, including the much-requested 'Rockstar Modes', will be dropped.
Regrettably, this decision was necessary to bring the project to a reasonably 'finished' state, given my limited time.
Have a great day. See you next time!