From: Thomas Frohwein Subject: Re: New: Recoil - 3D engine for Real-Time Strategy games To: ports@openbsd.org Date: Sun, 25 Feb 2024 20:33:28 -0500 *ping* I'm still interested in getting this in. Upstream has merged the first set of OpenBSD-specific patches, so this has a decent outlook to be a longer-lived engine port. On Sun, Feb 18, 2024 at 10:37:54AM -0500, Thomas Frohwein wrote: > *ping* > > Attached new tarball with a few changes: > > - update to latest BAR release engine 2314-g9e0bf7d > - disable unmaintained manpages (PR #1291) > - with help from bentley@, remove some unneeded and use > instead of > - fix thinko with xdgConfHome > - limit executable detection to /usr/local/bin/ path to avoid TOCTOU > with prior approach that used access(2) > > ok? > > On Sun, Feb 11, 2024 at 07:04:24PM -0500, Thomas Frohwein wrote: > > Hi, > > > > Please find attached the port of Recoil, the successor of the Spring > > engine. It goes back in lineage to Total Annihilation from the 1990's > > and allows for visually stunning, large-scale RTS battles. > > > > From DESCR: > > > > Recoil is a battle tested open-source RTS engine, successor of Spring. It is > > designed, in its basis, to be able to run the content of the game Total > > Annihilation and deliver a similar, but improved, gaming experience. Games can > > be intense and very large scaled, with fight of, literally, hundreds of units > > and the mods allow very wide arrays of different strategies and tactics. Some > > of the games powered by Recoil: Beyond All Reason, ZeroK, TA Prime and Metal > > Factions. > > > > The README has details on how to install maps and the game-specific > > engines, as well as a lobby application. Not all parts of the Beyond > > ALl Reason experiences can be run (yet?), as their launcher that > > integrates with the lobby and engine is an Electron app, sadly. > > > > A few notes on the port: > > > > - The games that I tested (Zero-K and Beyond All Reason) require a > > data size of at least 4-6G. > > > > - Online multiplayer is untested, but if someone wants to try it out > > please message me. > > > > - Versioning is currently 0.major.minor.etc... as upstream told me of > > their intention to switch to year-month versioning similar to what > > Mesa does. This way, that change wouldn't require EPOCH. > > > > - I'm hoping to keep the port mostly in sync with the versions used by > > Beyond All Reason, as those are getting significant use and attention. > > > > - A few OpenBSD-specific codepaths had to be implemented in patches/, > > for example: getting data dir locations without wordexp, using > > argv[0] for the executable location, enumeration of CPU cores (this > > isn't accounting for SMT at this point), futex(2) instead of syscall > > (SYS_futex...), some pthread non-portable API. > > > > - The bundled Lua 5.1 is too customized and integrated to easily remove > > it in favor of the lua lib from the port. > > > > - Alignment aware memory pools patches from the GH PR have fixed a > > couple of gnarly crashes. > > > > - As far as I know we don't have libunwind available in a way that > > could be used by this port, so those parts of integrated backtraces/ > > crash handling are stubbed. > > > > Make sure to look at the README for using pr-downloader to get maps and > > engines in order to test. > > > > ok? > >