Aleph One 1.9 is now available from https://alephone.lhowon.org
Highlights of this release include Classic Marathon 2 on Steam, dedicated servers, the return of automatic demo playback, and more authentic gameplay options for Marathon 2 and Marathon Infinity.
Check out the full release notes here: https://github.com/Aleph-One-Marathon/alephone/releases/tag/release-20240712
@treellama congrats on getting it on Steam! A huge achievement to be sure!
Aleph One 1.8 is available from https://alephone.lhowon.org/
The major new feature for this release is support for Steam and achievements. The standalone builds see a few changes and bug fixes as well.
Apple should go out of their way to make it easy to emulate classic Mac OS on modern Apple devices. Whether by providing an approved source of ROMs and system software, or just stating that it’s fine to distribute those things on the App Store. I don’t think they really care about those things existing online, so why not make them more accessible? It’d be fun, educational, and just a good thing to do.
VOD now available: https://youtu.be/v7-tWz8RnM4?si=-3Q7YN3dknP9rzI6
Tonight on Tuesday Night Avara, I’m testing Head (@tra) and Lucifer’s spawn-killing prevention measures for the first time while simultaneously trying not to lose my temper after KeeL kills me for the hundredth time. https://www.twitch.tv/avara_silverfox
Left: August 6, 2018
Right: August 8, 2018
@croc@avara.dev somehow found and fixed a matrix multiplication error (I transposed two subscripts), ending my weeks-long suffering, and instantly fixing BSP rendering. It was a four character change, but seeing actual Avara BSPs rendered completely reinvigorated the port. We also introduced a new JSON format for BSPs, so we could stop reading them out of resource forks.
@tra OK, but like, is the music itself free to distribute? Can we bundle it in Avara on a license screen? 🤔
@mcc @vertigo it absolutely did! The game read the PICT/QuickDraw opcodes to assign colors, positions, and/or dimensions to objects. Additional properties (including position/size for the third dimension) were specified via text blocks within the PICT data. It’s almost like the PICT was machine code for some level-building VM. Pretty brilliant! These days we use a much more boring XML-based format, but…QuickDraw isn’t exactly around anymore.
@mcc I wasn’t really familiar with Symantec back in the 90s, but something about that name made my brain itch. Looked it up, and Avara was originally written for Symantec’s THINK C compiler! The first thing @vertigo had to do was convert it all to C++. We’ve also developed new asset formats (and conversion utilities from the old formats) so unfortunately GreatWorks may no longer be directly compatible. Can it output plain text files? 😆
In other news I've just discovered there's a port of Avara to modern computers based on a source release authorized by Ambrosia and they have a Discord, so don't expect to hear from me for the next nine to eighteen months, I'll be busy https://github.com/avaraline/Avara
My work on this project is frequently motivated by something I want to be able to do as a level designer. Sometimes, the work itself inspires me to create a new level as a showcase! Around the time of the transparent rendering fixes, I made an updated version of my old KOTH map, Mill. The new version is called Don Quixote, features multiple recessed glass platforms, fixes the Z-fighting on the teleporters, and replaces the KOTH logic with my updated solution which supports all 8 teams.
Once the other devs were satisfied with the rendering refactor (it went through a couple design iterations), I decided I'd try my hand at enhancing the renderer. I've been slowly laying the ground work for deferred rendering, and one of the steps is to render transparent geometry once the opaque geometry is completed. This, combined with sorting the transparent faces (with extra help from Head) has finally rounded several rough edges with rendering transparent geometry! Before and after:
Going to try logging updates and thoughts here from now on. Thanks to @vertigo for setting things up! I've already talked briefly about refactoring asset management elsewhere, but shortly after that I refactored Avara's rendering code as well and learned a lot about OpenGL in the process. An interesting side effect is that it appeared to reduce app memory usage by roughly a third. Here are some boring before/after shots to show that nothing (aside from code quality) changed.