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?

Attachment: recoil-rts.tgz
Description: application/tar-gz

Reply via email to