Rebrand project and refresh title presentation

This commit is contained in:
Alexander Sellite 2026-08-25 17:14:12 -04:00
parent 17fef2c5d4
commit 7ae20789a9
138 changed files with 1511 additions and 1498 deletions

View file

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<gameList>
<game>
<path>./NETfishing.sh</path>
<name>NETfishing</name>
<path>./straywild.sh</path>
<name>straywild</name>
<desc>A relaxed multiplayer fishing game about exploring a small island, catching and collecting fish, customizing your character, and spending time by the water.</desc>
<releasedate>20260804T000000</releasedate>
<developer>NETfishing project</developer>
<developer>straywild project</developer>
<publisher>Independent</publisher>
<genre>adventure, simulation</genre>
<image>./netfishing/screenshot.png</image>
<image>./straywild/screenshot.png</image>
</game>
</gameList>

View file

@ -1,13 +1,13 @@
{
"version": 4,
"name": "netfishing.zip",
"name": "straywild.zip",
"items": [
"NETfishing.sh",
"netfishing/"
"straywild.sh",
"straywild/"
],
"items_opt": null,
"attr": {
"title": "NETfishing",
"title": "straywild",
"porter": [
"Voyager"
],

View file

@ -1,4 +1,4 @@
# NETfishing reads the controller directly. GPTOKEYB is retained only for its
# straywild reads the controller directly. GPTOKEYB is retained only for its
# device-specific force-quit chord, so every keyboard and mouse binding is
# disabled to prevent duplicate input.

View file

@ -16,35 +16,35 @@ source "$controlfolder/control.txt"
[ -f "${controlfolder}/mod_${CFW_NAME}.txt" ] && source "${controlfolder}/mod_${CFW_NAME}.txt"
get_controls
GAMEDIR="/${directory}/ports/netfishing"
GAMEDIR="/${directory}/ports/straywild"
CONFDIR="$GAMEDIR/conf"
PORTS_ROOT="${GAMEDIR%/netfishing}"
SAVEDIR="$PORTS_ROOT/saves/netfishing"
DATA_BOOTSTRAP_DIR="$CONFDIR/data/godot/app_userdata/NETFISHING"
GAME_EXECUTABLE="$GAMEDIR/NETfishing.aarch64"
GAME_LAUNCHER="$GAMEDIR/launch-netfishing.sh"
GPTOKEYB_CONFIG="$GAMEDIR/netfishing.gptk"
PORTS_ROOT="${GAMEDIR%/straywild}"
SAVEDIR="$PORTS_ROOT/saves/straywild"
DATA_BOOTSTRAP_DIR="$CONFDIR/data/godot/app_userdata/straywild"
GAME_EXECUTABLE="$GAMEDIR/straywild.aarch64"
GAME_LAUNCHER="$GAMEDIR/launch-straywild.sh"
GPTOKEYB_CONFIG="$GAMEDIR/straywild.gptk"
CONTROLLER_MAPPING_FILE="$CONFDIR/cache/controller_mapping.txt"
WESTON_DIR="/tmp/netfishing-weston"
WESTON_DIR="/tmp/straywild-weston"
WESTON_RUNTIME="weston_pkg_0.2"
HARBOURMASTER="$controlfolder/harbourmaster"
mkdir -p "$CONFDIR/data" "$CONFDIR/config" "$CONFDIR/cache" "$WESTON_DIR"
chmod +x "$GAME_EXECUTABLE"
# NETfishing uses a predictable save directory beside the port instead of
# straywild uses a predictable save directory beside the port instead of
# presenting a folder picker on a small screen. Preserve an established
# data-root choice when upgrading an existing installation.
NETFISHING_DATA_ENVIRONMENT=()
if [ -f "$SAVEDIR/netfishing_data.json" ] || {
straywild_DATA_ENVIRONMENT=()
if [ -f "$SAVEDIR/straywild_data.json" ] || {
[ ! -f "$DATA_BOOTSTRAP_DIR/data_root_bootstrap.json" ] &&
[ ! -f "$DATA_BOOTSTRAP_DIR/data_root_bootstrap.json.backup" ]
}; then
mkdir -p "$SAVEDIR"
NETFISHING_DATA_ENVIRONMENT+=(
"NETFISHING_DATA_DIR=$SAVEDIR"
"NETFISHING_CREATE_DATA_DIR=1"
straywild_DATA_ENVIRONMENT+=(
"straywild_DATA_DIR=$SAVEDIR"
"straywild_CREATE_DATA_DIR=1"
)
fi
@ -52,7 +52,7 @@ fi
if [ ! -f "$controlfolder/libs/${WESTON_RUNTIME}.squashfs" ]; then
if [ ! -x "$HARBOURMASTER" ]; then
pm_message "NETfishing requires the latest PortMaster and WestonPack runtime."
pm_message "straywild requires the latest PortMaster and WestonPack runtime."
sleep 5
exit 1
fi
@ -78,17 +78,17 @@ cd "$GAMEDIR" || exit 1
GODOT_MUOS_MAPPING="19004ca6010000000100000000010000,muOS-Keys,a:b0,b:b1,x:b3,y:b2,leftshoulder:b4,rightshoulder:b5,lefttrigger:b10,righttrigger:b11,guide:b8,start:b7,back:b6,dpup:h0.1,dpleft:h0.8,dpright:h0.2,dpdown:h0.4,leftx:a0,lefty:a1,leftstick:b9,rightx:a2,righty:a3,rightstick:b12,platform:Linux,"
MUOS_SDL2_GUID="19000000010000000100000000010000"
if [[ "$sdl_controllerconfig" == "${MUOS_SDL2_GUID},"* ]]; then
netfishing_controllerconfig="$GODOT_MUOS_MAPPING"
straywild_controllerconfig="$GODOT_MUOS_MAPPING"
elif [ -n "$sdl_controllerconfig" ]; then
netfishing_controllerconfig="$sdl_controllerconfig"
straywild_controllerconfig="$sdl_controllerconfig"
else
netfishing_controllerconfig="$GODOT_MUOS_MAPPING"
straywild_controllerconfig="$GODOT_MUOS_MAPPING"
fi
printf '%s\n' "$netfishing_controllerconfig" > "$CONTROLLER_MAPPING_FILE"
printf '%s\n' "$straywild_controllerconfig" > "$CONTROLLER_MAPPING_FILE"
NETFISHING_GODOT_OPTIONS=()
NETFISHING_GAME_ENVIRONMENT=()
PERFORMANCE_PROFILE="${NETFISHING_PERFORMANCE_PROFILE:-}"
straywild_GODOT_OPTIONS=()
straywild_GAME_ENVIRONMENT=()
PERFORMANCE_PROFILE="${straywild_PERFORMANCE_PROFILE:-}"
PROFILE_PATH="$CONFDIR/performance_profile"
if [[ -z "$PERFORMANCE_PROFILE" && -r "$PROFILE_PATH" ]]; then
IFS= read -r PERFORMANCE_PROFILE < "$PROFILE_PATH" || true
@ -96,16 +96,16 @@ if [[ -z "$PERFORMANCE_PROFILE" && -r "$PROFILE_PATH" ]]; then
fi
case "$PERFORMANCE_PROFILE" in
normal)
NETFISHING_GAME_ENVIRONMENT+=(
"NETFISHING_PERFORMANCE_PROFILE=normal"
straywild_GAME_ENVIRONMENT+=(
"straywild_PERFORMANCE_PROFILE=normal"
)
;;
light|"")
NETFISHING_GAME_ENVIRONMENT+=(
"NETFISHING_PERFORMANCE_PROFILE=light"
"NETFISHING_LOW_END=1"
straywild_GAME_ENVIRONMENT+=(
"straywild_PERFORMANCE_PROFILE=light"
"straywild_LOW_END=1"
)
NETFISHING_GODOT_OPTIONS+=(
straywild_GODOT_OPTIONS+=(
--single-window
--disable-vsync
--max-fps 30
@ -114,11 +114,11 @@ case "$PERFORMANCE_PROFILE" in
;;
*)
echo "Unknown performance profile '$PERFORMANCE_PROFILE'; using light." >&2
NETFISHING_GAME_ENVIRONMENT+=(
"NETFISHING_PERFORMANCE_PROFILE=light"
"NETFISHING_LOW_END=1"
straywild_GAME_ENVIRONMENT+=(
"straywild_PERFORMANCE_PROFILE=light"
"straywild_LOW_END=1"
)
NETFISHING_GODOT_OPTIONS+=(
straywild_GODOT_OPTIONS+=(
--single-window
--disable-vsync
--max-fps 30
@ -127,10 +127,10 @@ case "$PERFORMANCE_PROFILE" in
;;
esac
# NETfishing reads gameplay input natively. The explicit no-op map prevents
# straywild reads gameplay input natively. The explicit no-op map prevents
# GPTOKEYB from injecting duplicate keyboard or mouse input while retaining
# its device-specific force-quit chord, including on ROCKNIX.
$GPTOKEYB "NETfishing.aarch64" -c "$GPTOKEYB_CONFIG" &
$GPTOKEYB "straywild.aarch64" -c "$GPTOKEYB_CONFIG" &
pm_platform_helper "$GAME_EXECUTABLE"
$ESUDO env CRUSTY_RESOLUTION="${DISPLAY_WIDTH}x${DISPLAY_HEIGHT}" \
@ -139,12 +139,12 @@ $ESUDO env CRUSTY_RESOLUTION="${DISPLAY_WIDTH}x${DISPLAY_HEIGHT}" \
XDG_CONFIG_HOME="$CONFDIR/config" \
XDG_CACHE_HOME="$CONFDIR/cache" \
GODOT_SILENCE_ROOT_WARNING=1 \
"${NETFISHING_DATA_ENVIRONMENT[@]}" \
"${NETFISHING_GAME_ENVIRONMENT[@]}" \
"${straywild_DATA_ENVIRONMENT[@]}" \
"${straywild_GAME_ENVIRONMENT[@]}" \
"$GAME_LAUNCHER" \
"$CONTROLLER_MAPPING_FILE" \
"$GAME_EXECUTABLE" \
"${NETFISHING_GODOT_OPTIONS[@]}" \
"${straywild_GODOT_OPTIONS[@]}" \
--resolution "${DISPLAY_WIDTH}x${DISPLAY_HEIGHT}" \
--fullscreen \
--rendering-driver opengl3_es \