# Seagull Game

A long time ago, the first versions of Seagull Game were a prototype, just enough of a workload
to serve as an example while on my AWS Solutions Architect apprenticeship. But with the economic
crash of 2025 came a loss of my job and a lot of excess free time, so I'm making this into a
real deal game that you can play, in an attempt to preserve my rapidly dwindling sanity.

## Build
### Prerequisites
* Python (>= 3.11 oughta do it)
* TCL/Tk (for `tkinter` Python module, used by PyInstaller splash screen)
* A working Rust toolchain, incl. `cargo`, to build [Rant]
* rsync (or rclone in Windows)
* On Linux, `tar` and `zstd` are used to cache intermediate build steps into archives. `zip` is also used to generate `.pak` files.

### Linux
Simply run `./build-desktop.sh`, followed by `./build-pak.sh` to build seagull.pak.

### Windows
A script is in progess to automate this, but is not yet fully ready. Here's the broad strokes routine:

* Install [Python from python.org][cpython-win]. Non standard variants such as ActivePython are not supported.
* Install [rclone] and [Rust][rust-downloads]. For Rust, scroll down to the bottom of the first table: you probably want `x86_64-pc-windows-msvc`, as an MSI file.
* Create a folder called "build" wherever you checked out this repository, and open a PowerShell terminal there.
* `python -m venv pyvenv`, then `Scripts\activate.ps1`

[Rant]: https://github.com/rant-lang/rant
[cpython-win]: https://www.python.org/downloads/windows/
[rclone]: https://rclone.org/downloads/
[rust-downloads]: https://forge.rust-lang.org/infra/other-installation-methods.html