To develop O21, you'll need .NET 10 SDK (or a later version).
Execute the following shell command:
$ dotnet buildTo run the development build of the game with the custom data directory, execute the following shell command:
$ dotnet run --project O21.Game start <downloaded-data-directory>So far, the simplest way to play the original game is from PlayMiniGames.
If the game sound is too loud and annoys you, you can disable it via the main menu. Unfortunately, PlayMiniGames' version of Windows 3.x doesn't seem to support Cyrillic, so you won't be able to read the actual names of the menu items. So, just open the first item of the main menu, and disable all the checkboxes there if you want to completely disable the in-game sound.
Download it from the Internet Archive.
SHA256 hash of the U-95.zip file is 7F884B5FCCF65198F510905C41AF06BE1715E3482B123BBB8149D51FAE6A1460.
See the documentation on the original resources.
To run image export from a NE file (DLL or EXE), run the game with the following arguments:
$ dotnet run O21.Game -- export <path-to-ne-file> <path-to-output-dir>This will create a bunch of .bmp files in the output directory containing the game sprites.
If the CI asks you to update the file licenses, follow one of these:
- Update the headers manually (look at the existing files), something like this:
(accommodate to the file's comment style if required).
// SPDX-FileCopyrightText: %year% %your name% <%your contact info, e.g. email%> // // SPDX-License-Identifier: MIT
- Alternately, use REUSE tool:
$ reuse annotate --license MIT --copyright '%your name% <%your contact info, e.g. email%>' %file names to annotate%
(Feel free to attribute the changes to "O21 contributors https://github.com/ForNeVeR/O21" instead of your name in a multi-author file, or if you don't want your name to be mentioned in the project's source: this doesn't mean you'll lose the copyright.)
If the automation asks you to update the file encoding (line endings or UTF-8 BOM) in certain files, run the following PowerShell script (PowerShell Core is recommended to run this script):
$ pwsh -File Scripts/Test-Encoding.ps1 -AutoFixThe -AutoFix switch will automatically fix the encoding issues, and you'll only need to commit and push the changes.
If you want to update the GitHub Actions used in the project, edit the file that generated them: scripts/github-actions.fsx.
Then run the following shell command:
$ dotnet fsi scripts/github-actions.fsx