Files
rijads 1ce01d4481 Import the game files from a browser on first start
When /app0/rct2/Data/g1.dat is missing, the title shows a screen with an address and a QR code
and receives the RollerCoaster Tycoon 2 folder from a PC or phone: src/port/upload.c (the DOOM
port's server, keeping subfolders now) stores each file below the game's own folders (Data,
ObjData, Scenarios, Tracks, Landscapes; every part a plain name) and takes a ZIP file of the
folder, which the screen unpacks with libzip. The screen draws with SDL and fonts rendered from
DejaVu Sans at build time (tools/make-font.py), since OpenRCT2 cannot draw before the game files
are there; it starts the game once they are complete.

tools/send.py sends a folder or a ZIP file the way the page does. Console test plans can point
the game at another folder (game) and remove test folders (remove); test/console-import.cfg
imports into /app0/rct2-import. On the console the screen worked and received the Data folder
before the PS5 went to rest; the transfer ran at 2.2 MB/s, so the server now asks for a 1 MiB
receive buffer and writes whole 256 KiB chunks.
2026-10-05 00:14:45 +02:00

12 lines
633 B
Docker

FROM ubuntu:24.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates wget curl unzip xz-utils make cmake ninja-build pkg-config python3 git file xxd \
clang-18 lld-18 llvm-18 libclang-rt-18-dev g++ autoconf automake libtool \
innoextract ccache patch fonts-dejavu-core python3-pil \
libsdl2-dev libicu-dev libzip-dev libpng-dev libzstd-dev nlohmann-json3-dev libflac-dev \
libvorbis-dev libssl-dev libcurl4-openssl-dev libfontconfig-dev libfreetype-dev \
&& rm -rf /var/lib/apt/lists/*
ENV PATH=/usr/lib/llvm-18/bin:$PATH
WORKDIR /src