Skip to content

OpenSE4 0.7.0

Pre-release
Pre-release

Choose a tag to compare

@lowlevelmetal lowlevelmetal released this 03 Oct 07:03
· 166 commits to main since this release

OpenSE4 is an open-source engine for Space Empires IV Deluxe. It plays the classic game on your own installed copy of Space Empires IV Deluxe and contains nothing from the original game.

OpenSE4 is not affiliated with, endorsed by or sponsored by the game's publishers.

What changed since 0.6.1

Network and play-by-e-mail games

  • Encrypted connections.
    • Every network game is encrypted.
    • The game remembers each host's key and refuses an impostor. If a host's key changes, you see both fingerprints and must confirm twice.
    • A join password is built into the encryption itself.
  • Passwords never travel.
    • Empire and join passwords are turned into keys with a slow, salted hash (Argon2id), so a captured login can't be replayed and guessing is expensive.
    • Reset Passwords now gives 12 digits instead of 6.
  • Private e-mail turn files.
    • Each player gets a turn file with only their own view of the game, encrypted for them and signed by the host.
    • Orders files are signed and encrypted for the host.
    • Other players can't read your turn in a shared folder, and a forged turn file is refused.
  • Reconnects.
    • A player whose connection drops mid-turn reconnects and carries on.
    • Orders and commands that got no answer are sent again, and nothing is carried out twice.
  • Desyncs are caught and repaired.
    • If a player's copy of the game drifts from the host's, both see which turn and which part of the game differed.
    • The player's copy is repaired from the host's state, and the event is written to opense4.log.
  • Random seeds. Hosted games now draw the galaxy seed from the system's secure random source, so the map can't be worked out from the start time.
  • Server options. opense4-server --no-password-migration refuses to move OpenSE4 0.6 passwords automatically, and password-verifier prepares a password for a setup file.

Windows in the original's layouts

  • Setup. Game Setup, Empire Setup, Quick Start and Load Game look and work as in the original.
    • Empire Setup gains an e-mail box, and Change Email in Empire Status works.
    • Quick Start lists the races in the original's order, eight to a page.
  • Every list has the original's scroll arrows and a thumb.
  • Management windows. Research, Intelligence, Empire Status, Colonies, Designs, Create Design, Help and the Galaxy Map follow the original's positions.
    • Borders is a window of its own.
    • The Weapons Report export writes the original's four files.
  • Battle windows.
    • Tactical Combat and the Combat Piece Report sit at the original's positions.
    • Combat Replay uses the Tactical Combat frame, and its Options use check boxes.
    • Ground Combat shows the original's grids.
  • Endings appear as they happen: a defeated player sees Lose, then Human Dead. Conquering the galaxy offers to keep playing.
  • Players window.
    • Neutral empires can be handed to and from computer control.
    • A network host can switch any empire.

Rules and computer players

  • New games use the original's defaults: random computer and neutral players, Catastrophic events at most, and the original's victory values. Quick Start rolls its opponents as the original does.
  • Home systems are spread exactly as the original spreads them. This came out of a comparison of 544 of the original's galaxies with ours, which agreed on every other measure.
  • Computer players defend and attack like the original's.
    • When threatened, they send only nearby defence fleets and keep their attack fleets back.
    • They build their first ships in the original's order.
    • Idle ships can start battles.
    • They measure distances the way the original does.
    • They now lose and take colonies at close to the original's rate, and their early ships come on the same turns.

Testing

  • Input scripts. opense4 --input-script=FILE plays scripted clicks and keys through the game's real input, and --record-input writes a script from a session you play.
    • 23 scripts play every tutorial end to end under the tutorial lock, the training games, the manual and the mouse-only features.
    • They found and fixed Esc and Enter not closing windows in tutorials, three tutorial steps that couldn't be completed, and list arrows that drifted.

Compatibility

0.7.0 does not play with 0.6.x (network protocol 5 instead of 4), and 0.6 saves can't be loaded (save format 7). Both players need 0.7.0. Releases that share protocol 5 play together.

Games moving from 0.6 to 0.7:

  • Network: each player confirms the host's key once before their old password is upgraded.
  • Play by e-mail: the host runs opense4-server pbem turn-files once, and each player chooses a new password on their next turn.

Downloads

File For
OpenSE4-0.7.0-windows-x86_64-setup.exe 64-bit Windows 10 and 11: the installer
OpenSE4-0.7.0-windows-x86_64.zip 64-bit Windows 10 and 11: the same programs to run from any folder
OpenSE4-0.7.0-linux-x86_64.tar.gz 64-bit Linux with glibc 2.34 or later (Ubuntu 22.04, Debian 12, Fedora 35, RHEL 9, SteamOS 3 and newer)
OpenSE4-0.7.0-SHA256SUMS.txt SHA-256 checksums of the three downloads

Every download holds three programs:

  • the game (opense4);
  • the dedicated server for network and play-by-e-mail games (opense4-server);
  • a data checker (opense4-datacheck).

Libraries, our own fonts, the manual and the lessons are built in. The game needs a GPU with Vulkan or OpenGL 3.3.

Running it

  • Windows: run the installer, then start OpenSE4 from the Start menu, or unpack the zip and run opense4.exe. Neither is code-signed yet, so Windows SmartScreen may warn the first time ("More info", then "Run anyway").
  • Linux: unpack and run ./opense4, or run ./install-desktop-entry.sh once to start it from your desktop's application list.

The game looks for a Steam install of Space Empires IV Deluxe. See README.md for other locations and command-line options (opense4 --help).

Known limitations

  • This is still an early build, marked as a pre-release.
  • Computer players hold slightly fewer colonies by turn 100 than the original's (about 15.7 against 17.0 per empire). This follows how many enemy colonies sit inside their territories, which is still being investigated.
  • Windows builds are tested in CI and under Wine. The executables aren't code-signed.
  • In network and e-mail games, every battle is resolved strategically, as in the original.

License

OpenSE4 is free software under the GNU General Public License, version 3 or later. The Noto Sans fonts are under the SIL Open Font License. THIRD_PARTY_NOTICES.txt in each download lists the bundled libraries and their licences, including Monocypher (BSD-2-Clause / CC0) for the encryption.