From 97a92fd86bca508065a393656891f27fdb459642 Mon Sep 17 00:00:00 2001 From: 2ndbeam <2ndbeam@disroot.org> Date: Mon, 14 Jul 2025 17:13:10 +0300 Subject: [PATCH] Initial commit --- .gitignore | 5 ++++ base/assets/example.svg | 1 + base/assets/example.svg.import | 37 ++++++++++++++++++++++++ base/scenes/example.tscn | 11 +++++++ base/scripts/example.gd | 10 +++++++ base/scripts/example.gd.uid | 1 + export_presets.cfg | 41 ++++++++++++++++++++++++++ icon.svg | 1 + icon.svg.import | 37 ++++++++++++++++++++++++ main.tscn | 7 +++++ project.godot | 16 ++++++++++ utils/build_release.sh | 53 ++++++++++++++++++++++++++++++++++ 12 files changed, 220 insertions(+) create mode 100644 .gitignore create mode 100644 base/assets/example.svg create mode 100644 base/assets/example.svg.import create mode 100644 base/scenes/example.tscn create mode 100644 base/scripts/example.gd create mode 100644 base/scripts/example.gd.uid create mode 100644 export_presets.cfg create mode 100644 icon.svg create mode 100644 icon.svg.import create mode 100644 main.tscn create mode 100644 project.godot create mode 100755 utils/build_release.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c20fa8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +# Godot 4+ specific ignores +.godot/ +/android/ + +build/ diff --git a/base/assets/example.svg b/base/assets/example.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/base/assets/example.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/base/assets/example.svg.import b/base/assets/example.svg.import new file mode 100644 index 0000000..cb6cd35 --- /dev/null +++ b/base/assets/example.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://jpma60j2uv5m" +path="res://.godot/imported/example.svg-4eb437f973a0202cf01e71550e4e730d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://base/assets/example.svg" +dest_files=["res://.godot/imported/example.svg-4eb437f973a0202cf01e71550e4e730d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/base/scenes/example.tscn b/base/scenes/example.tscn new file mode 100644 index 0000000..62bfe53 --- /dev/null +++ b/base/scenes/example.tscn @@ -0,0 +1,11 @@ +[gd_scene load_steps=3 format=3 uid="uid://dm58bxgelaulw"] + +[ext_resource type="Texture2D" uid="uid://deo07la7tmn3r" path="res://icon.svg" id="1_o34ws"] +[ext_resource type="Script" uid="uid://gf7nffb353sa" path="res://base/scripts/example.gd" id="1_otk24"] + +[node name="Example" type="Node2D"] +script = ExtResource("1_otk24") + +[node name="Icon" type="Sprite2D" parent="."] +position = Vector2(65, 65) +texture = ExtResource("1_o34ws") diff --git a/base/scripts/example.gd b/base/scripts/example.gd new file mode 100644 index 0000000..40ec45d --- /dev/null +++ b/base/scripts/example.gd @@ -0,0 +1,10 @@ +extends Node2D + + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + print('hello, gryadki!') + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(_delta: float) -> void: + pass diff --git a/base/scripts/example.gd.uid b/base/scripts/example.gd.uid new file mode 100644 index 0000000..e6e84ae --- /dev/null +++ b/base/scripts/example.gd.uid @@ -0,0 +1 @@ +uid://gf7nffb353sa diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..f1f57a7 --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,41 @@ +[preset.0] + +name="Linux/x86_64" +platform="Linux" +runnable=true +advanced_options=true +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="build/*" +exclude_filter="build/*" +export_path="./build/rotdp.x86_64" +patches=PackedStringArray() +encryption_include_filters="" +encryption_exclude_filters="" +seed=0 +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.0.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=true +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +binary_format/architecture="x86_64" +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="#!/usr/bin/env bash +export DISPLAY=:0 +unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" +\"{temp_dir}/{exe_name}\" {cmd_args}" +ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash +kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") +rm -rf \"{temp_dir}\"" diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..1053068 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://deo07la7tmn3r" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/main.tscn b/main.tscn new file mode 100644 index 0000000..92f6b6d --- /dev/null +++ b/main.tscn @@ -0,0 +1,7 @@ +[gd_scene load_steps=2 format=3 uid="uid://bxf4x8hp870i6"] + +[ext_resource type="PackedScene" uid="uid://dm58bxgelaulw" path="res://base/scenes/example.tscn" id="1_ig7tw"] + +[node name="Main" type="Node2D"] + +[node name="Example" parent="." instance=ExtResource("1_ig7tw")] diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..ace4e09 --- /dev/null +++ b/project.godot @@ -0,0 +1,16 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=5 + +[application] + +config/name="Revenge of the Red Dragon Pon of the Red Dragon Pon of the Red Dragon Pon" +run/main_scene="uid://bxf4x8hp870i6" +config/features=PackedStringArray("4.4", "Forward Plus") +config/icon="res://icon.svg" diff --git a/utils/build_release.sh b/utils/build_release.sh new file mode 100755 index 0000000..d7587ca --- /dev/null +++ b/utils/build_release.sh @@ -0,0 +1,53 @@ +#!/bin/bash +GODOT_PATH="godot" +EXPORT_PATH="build" +EXPORT_NAME="rotdp.x86_64" +LOG_NAME="log.txt" +BUILD_PROFILE="release" + +while getopts "g:p:n:l:d" opt; do + case $opt in + g) + GODOT_PATH="$OPTARG" + ;; + p) + EXPORT_PATH="$OPTARG" + ;; + n) + EXPORT_NAME="$OPTARG" + ;; + l) + LOG_NAME="$OPTARG" + ;; + d) + BUILD_PROFILE="debug" + ;; + esac +done + +# Checking if godot executable exist +builtin type -P "$GODOT_PATH" &> /dev/null + +if [ $? -ne 0 ]; then + echo "\"$GODOT_PATH\" does not exist." + exit 1 +fi + +# godot exports builds with path relative to project.godot +if [ ! -e project.godot ]; then + echo "project.godot does not exist in current location. Please ensure that you are executing this script from project root folder." + exit 1 +fi + +if [ ! -d "$EXPORT_PATH" ]; then + mkdir $EXPORT_PATH + echo "Created directory $EXPORT_PATH." +fi + +godot \ + --headless \ + --export-$BUILD_PROFILE Linux/x86_64 \ + $EXPORT_PATH/$EXPORT_NAME \ + > $EXPORT_PATH/$LOG_NAME +echo "Built game for Linux (x86_64) at $(pwd)/$EXPORT_PATH/$EXPORT_NAME. +Log located at $(pwd)/$EXPORT_PATH/$LOG_NAME."