Tales from the workshop
About great challenges and not so great things.
Some status updates for the upcoming APX 80 release. And some topics I need to talk about.
More robust deployments
The deployments are now more robust, which especially improves the user expierience on low performance computers and virtual machines.
Live weather
Like for real, this time. APX can now include and configure the commonly used live weather plugin for servers, providing the required framework to include real weather to servers, configured from the web interface.
Users don't have to start anything, APX takes care of that as the server starts/ stops.
Content and version fingerprinting
Especially when you are running schedules you might have issues with the same content being reinstalled without having actual changes. To solve this, APX will now create fingerprints of files after each deployment. This includes the mods and own updates (e. g. liveries) aswell. If the files did not change on an update, the deployment will be aborted (unless you force it). This reduces the downtime needed for maintenance to the level actually needed to include new updates.
Speedtest
A user mentioned that it's a bit annoying that events need to have bandwith settings, especially when you are not that familiar with networking. For this, APX will do a single speedtest at start to identify the network speeds. If upstream and downstream in an event are set to 0 kbps, the values from the speedtest will be used.
Wiki updates
I refreshed some pages in the manual to represent the current state. This includes deprecation of some articles as they don't represent the current state anymore.
Facing more and more challenges: The platform
Now to the unpleasant part number 1.
I am now working about three years on this project. Since a bit over a year, I am working on APX in the state we currently see, including the web interface.
I know that all code has issues, which is literally the nature of  software. Some quirks can be "fixed" using workarounds or can be solved completely with research and help of other users. I also know that some of my approaches utilized in APX are not the gold standard, which might cause some issues. But that is not the topic I want to address here as my issues need to be solved by me and not by somebody else.
Some issues, including rFactor 2's hard-to-understand verbosity make it more and more hard to understand and implement corresponding features into APX to deal with them. There might be a point where it's just not possible to deal with these issues anymore or the implementation for "fixes" is not worth the effort. I am always wondering about the only small or only low communication level S397 shows. I want to stay fair here and won't do any conspiracy theories or any bullshitting why it is like it is. But having more input and support would be great as the community basically is on it's own at the moment.
APX started as a challenge. A challenge with the goal to see how far I can get with it. But what has started as a proof-of-concept is now a software product. A product which could be used. But this products foundation, rFactor 2, seems to be more and more uncertain in terms of it's stability.
Facing more and more challenges: The workshop
Now to the unpleasant part number 2.
The steam workshop. A double-edged-sword. Surely, it's a familiar way for content creators to publish their content, as it's basically serving as Steam's integrated CDN.
This CDN is so hard to handle. Large file downloads? Not working properly due to timeout issues in steamcmd. While this issue is annoying, it somehow can be avoided using file-based-items, even as this basically invalidates APX's web-focused management way. But as long as content creators package their mods in files > 1 GB, this will happen more and more often. Annoying. But I think most of the content creators don't know about this issue at all as it's not that publicly talked about.
Another point is the almost ridiculous inconsistencies among mods. The packaging ranges from completely fine to absolutely insane. Some examples:
Whitespaces and non-alphanumeric chars in folders (WHY!?!?!)
Distributing content over multiple versions (not using the wanted way...)
Adding non-valid data into GDB files
Missing values in configuration files
Encoding issues
Rip-offs from other games (Seriously!??! Copyrights are existing in simracing, too, you know...)
Users wanting to use mods without years of getting an update, basically getting incompatible (how is APX supposed to fix that?)
...
The list is getting longer and longer with each mod. It's hard to adapt packaging to all of these inconsistencies, so at some point I will have to draw a line where some workshop items cannot be supported. But this might be the curse of an open simulation, as rFactor 2 is.
I don't want to close this blog post with such a sour note, but I feel that had to be talked out loud at some point. For me, I will most likely continue to work on APX as a project, but always with having a rip cord to bail out. This rip cord could be pulled by rF2 at some point by itself, when I see no chance to continue working with it. This point is not reached yet.
On the other hand: Such a rip cord exist on all of the free-time-one-man-show projects, you know 🤗
More information about this project:
Websiet: https://apx.chmr.eu
Join the discussion: https://discord.gg/qwSkeAM
Photo by Barn Images on Unsplash
Photo by Towfiqu barbhuiya on Unsplash
Photo by Jens Herrndorff on Unsplash