commit eb537b7579cc48f2f91345544dcf25f1dbffc6c0 Author: Zaytha Date: Sun Jul 6 04:16:54 2025 -0700 Inital Commit diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..f28239b --- /dev/null +++ b/.editorconfig @@ -0,0 +1,4 @@ +root = true + +[*] +charset = utf-8 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8ad74f7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitea/workflows/godot-ci.yml b/.gitea/workflows/godot-ci.yml new file mode 100644 index 0000000..2f4f83e --- /dev/null +++ b/.gitea/workflows/godot-ci.yml @@ -0,0 +1,84 @@ +# This is an edtied version of abarichello's automation script for gitea and godot mono +# https://github.com/abarichello/godot-ci/blob/master/.github/workflows/godot-ci.yml + +name: "godot-ci export" +on: push + +# NOTE: If your `project.godot` is at the repository root, set `PROJECT_PATH` below to ".". + +env: + GODOT_VERSION: 4.4 + EXPORT_NAME: test-project + PROJECT_PATH: "." + ACTIONS_RUNNER_DEBUG: true + ACTIONS_STEP_DEBUG: true + +jobs: + export-windows: + name: Windows Export + runs-on: ubuntu-22.04 # Use 22.04 with godot 4 + container: + image: barichello/godot-ci:mono-4.4.1 # change to mono + steps: + # Doing this becuase barichello/godot-ci:4.4 doesn't have nodejs installed, may need to make own docker image in the future + # By default ubuntu-22.04 has nodejs 12, but we need a more modern version for the actions/checkout@v4 + - name: Install Node.js + run: | + apt-get update + apt-get install -y curl + curl -fsSL https://deb.nodesource.com/setup_18.x | bash - + apt-get install -y nodejs + - name: Checkout + uses: https://gitea.com/actions/checkout@v4 + with: + lfs: true + - name: Setup + run: | + mkdir -v -p ~/.local/share/godot/export_templates/ + mkdir -v -p ~/.config/ + - name: Windows Build + run: | + mkdir -v -p build/windows + EXPORT_DIR="$(readlink -f build)" + cd $PROJECT_PATH + godot --headless --verbose --export-release "Windows Desktop" "$EXPORT_DIR/windows/$EXPORT_NAME.exe" + + - name: Upload Artifact + uses: https://gitea.com/actions/upload-artifact@v3 # using v3 ad v4 has issues wwith gitea + with: + name: windows + path: build/windows + + + export-linux: + name: Linux Export + runs-on: ubuntu-22.04 # Use 22.04 with godot 4 + container: + image: barichello/godot-ci:4.4 + steps: + # Doing this becuase barichello/godot-ci:4.4 doesn't have nodejs installed, may need to make own docker image in the future + # By default ubuntu-22.04 has nodejs 12, but we need a more modern version for the actions/checkout@v4 + - name: Install Node.js + run: | + apt-get update + apt-get install -y curl + curl -fsSL https://deb.nodesource.com/setup_18.x | bash - + apt-get install -y nodejs + - name: Checkout + uses: https://gitea.com/actions/checkout@v4 + with: + lfs: true + - name: Setup + run: | + mkdir -v -p ~/.local/share/godot/export_templates/ + - name: Linux Build + run: | + mkdir -v -p build/linux + EXPORT_DIR="$(readlink -f build)" + cd $PROJECT_PATH + godot --headless --verbose --export-release "Linux" "$EXPORT_DIR/linux/$EXPORT_NAME.x86_64" + - name: Upload Artifact + uses: https://gitea.com/actions/upload-artifact@v3 # using v3 ad v4 has issues wwith gitea + with: + name: linux + path: build/linux \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..aed7305 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +# Godot 4+ specific ignores +.godot/ +/android/ + +build/bin/linux/* +build/bin/windows/* \ No newline at end of file diff --git a/build/.gdignore b/build/.gdignore new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/build/.gdignore @@ -0,0 +1 @@ + diff --git a/build/build_dependencies/export_templates/linux_debug.x86_64 b/build/build_dependencies/export_templates/linux_debug.x86_64 new file mode 100644 index 0000000..d05fbfc Binary files /dev/null and b/build/build_dependencies/export_templates/linux_debug.x86_64 differ diff --git a/build/build_dependencies/export_templates/linux_release.x86_64 b/build/build_dependencies/export_templates/linux_release.x86_64 new file mode 100644 index 0000000..9590120 Binary files /dev/null and b/build/build_dependencies/export_templates/linux_release.x86_64 differ diff --git a/build/build_dependencies/export_templates/windows_debug_x86_64.exe b/build/build_dependencies/export_templates/windows_debug_x86_64.exe new file mode 100644 index 0000000..e319c7f Binary files /dev/null and b/build/build_dependencies/export_templates/windows_debug_x86_64.exe differ diff --git a/build/build_dependencies/export_templates/windows_release_x86_64.exe b/build/build_dependencies/export_templates/windows_release_x86_64.exe new file mode 100644 index 0000000..ddda53e Binary files /dev/null and b/build/build_dependencies/export_templates/windows_release_x86_64.exe differ diff --git a/demo_scene.tscn b/demo_scene.tscn new file mode 100644 index 0000000..afb746e --- /dev/null +++ b/demo_scene.tscn @@ -0,0 +1,37 @@ +[gd_scene load_steps=5 format=3 uid="uid://bgpec3avuotkt"] + +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_no5d7"] +sky_top_color = Color(0.340506, 0.443905, 0.662582, 1) +sky_horizon_color = Color(0.628525, 0.659459, 0.743124, 1) +sky_curve = 0.0100479 +ground_bottom_color = Color(0.146184, 0.166523, 0.282504, 1) +ground_horizon_color = Color(0.628525, 0.659459, 0.743124, 1) +ground_curve = 0.00482968 + +[sub_resource type="Sky" id="Sky_iapjp"] +sky_material = SubResource("ProceduralSkyMaterial_no5d7") + +[sub_resource type="Environment" id="Environment_8n7uv"] +background_mode = 2 +sky = SubResource("Sky_iapjp") +tonemap_mode = 2 +glow_enabled = true + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_ayuu8"] + +[node name="Node3D" type="Node3D"] + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] +transform = Transform3D(-0.866025, -0.433013, 0.25, 0, 0.5, 0.866025, -0.5, 0.75, -0.433013, 0, 0, 0) +light_color = Color(0.990309, 0.988062, 0.983629, 1) +shadow_enabled = true + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("Environment_8n7uv") + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +transform = Transform3D(0.796688, 0.604391, 0, -0.604391, 0.796688, 0, 0, 0, 1, 0, 0, 0) +mesh = SubResource("CapsuleMesh_ayuu8") + +[node name="Camera3D" type="Camera3D" parent="."] +transform = Transform3D(-0.998152, 0, -0.0607699, 0, 1, 0, 0.0607699, 0, -0.998152, 0, 0, -2.11699) diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..0677ee0 --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,114 @@ +[preset.0] + +name="Windows Desktop" +platform="Windows Desktop" +runnable=true +advanced_options=true +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/bin/windows/videogame.exe" +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="build/build_dependencies/export_templates/windows_debug_x86_64.exe" +custom_template/release="build/build_dependencies/export_templates/windows_release_x86_64.exe" +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" +codesign/enable=false +codesign/timestamp=true +codesign/timestamp_server_url="" +codesign/digest_algorithm=1 +codesign/description="" +codesign/custom_options=PackedStringArray() +application/modify_resources=false +application/icon="" +application/console_wrapper_icon="" +application/icon_interpolation=4 +application/file_version="" +application/product_version="" +application/company_name="" +application/product_name="" +application/file_description="" +application/copyright="" +application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 +application/d3d12_agility_sdk_multiarch=true +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="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}' +$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}' +$trigger = New-ScheduledTaskTrigger -Once -At 00:00 +$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries +$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings +Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true +Start-ScheduledTask -TaskName godot_remote_debug +while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 } +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue" +ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue +Remove-Item -Recurse -Force '{temp_dir}'" +dotnet/include_scripts_content=false +dotnet/include_debug_symbols=true +dotnet/embed_build_outputs=false + +[preset.1] + +name="Linux" +platform="Linux" +runnable=true +advanced_options=true +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/bin/linux/videogame.x86_64" +patches=PackedStringArray() +encryption_include_filters="" +encryption_exclude_filters="" +seed=0 +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.1.options] + +custom_template/debug="build/build_dependencies/export_templates/linux_debug.x86_64" +custom_template/release="build/build_dependencies/export_templates/linux_release.x86_64" +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}\"" +dotnet/include_scripts_content=false +dotnet/include_debug_symbols=true +dotnet/embed_build_outputs=false 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..004bc73 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cvi27gs7y7lrm" +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/project.godot b/project.godot new file mode 100644 index 0000000..69883f1 --- /dev/null +++ b/project.godot @@ -0,0 +1,20 @@ +; 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="Godotv4.4.1 Mono Actions" +run/main_scene="uid://bgpec3avuotkt" +config/features=PackedStringArray("4.4", "Forward Plus") +config/icon="res://icon.svg" + +[dotnet] + +project/assembly_name="Godotv4.4.1 Mono Actions"