Compare commits
30 Commits
80f2860ba1
...
0.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
| 6370bb5b09 | |||
| 751a3b1a17 | |||
| 3aa520203e | |||
| 4a27ae75d3 | |||
| 756281ab0b | |||
| 651abb6fef | |||
| 6b91985c84 | |||
| b58012bb90 | |||
| b983f41f75 | |||
| d788285d18 | |||
| 4a6703f79a | |||
| 560b04bba2 | |||
| 7522d45bbd | |||
| 80c905bcef | |||
| ba84004adc | |||
| 966951654a | |||
| 905c2d7666 | |||
| de51310f94 | |||
| 82e3ca5182 | |||
| d8f6478b18 | |||
| 8ae9b00b5a | |||
| aa4a8e9fb3 | |||
| ef88e5e91d | |||
| 075521b991 | |||
| 99b2a8bbe3 | |||
| 11dd732cd0 | |||
| 3bbefa9647 | |||
| e7e628992a | |||
| de01511619 | |||
| aae15b0b50 |
@@ -12,19 +12,73 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
preset: ["Windows Desktop", "Linux/X11", "macOS"]
|
preset: ["Windows", "Linux/X11", "Web"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Extract version and body from CHANGELOG
|
||||||
|
id: changelog
|
||||||
|
run: |
|
||||||
|
# Extract the latest released version (skip Unreleased)
|
||||||
|
LATEST=$(grep -E '^## \[[0-9]+\.[0-9]+\.[0-9]+\]' CHANGELOG.md | head -n1 | sed -E 's/^## \[([0-9]+\.[0-9]+\.[0-9]+)\].*/\1/')
|
||||||
|
|
||||||
|
if [ -z "$LATEST" ]; then
|
||||||
|
echo "No released version found in CHANGELOG.md"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Released version found: $LATEST"
|
||||||
|
echo "version=$LATEST" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
# Extract the body: lines until the next ## header
|
||||||
|
BODY=$(awk -v ver="$LATEST" '
|
||||||
|
$0 ~ "^## \\[" ver "\\]" {found=1; next}
|
||||||
|
found && $0 ~ "^## \\[" {exit}
|
||||||
|
found {print}
|
||||||
|
' CHANGELOG.md)
|
||||||
|
|
||||||
|
# Trim leading/trailing empty lines
|
||||||
|
BODY=$(echo "$BODY" | sed '/^\s*$/d')
|
||||||
|
|
||||||
|
# Output body safely for GitHub Actions
|
||||||
|
echo "body<<EOF" >> $GITHUB_OUTPUT
|
||||||
|
echo "$BODY" >> $GITHUB_OUTPUT
|
||||||
|
echo "EOF" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
# Create Release also creates an Tag
|
||||||
|
# - name: Create git tag
|
||||||
|
# uses: alazhar/gitea-action-autotag@v1
|
||||||
|
# with:
|
||||||
|
# tag: ${{ steps.changelog.outputs.version }}
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
id: build
|
id: build
|
||||||
uses: mlm-games/godot-build-action@v1
|
uses: mlm-games/godot-build-action@v1.3.1
|
||||||
with:
|
with:
|
||||||
EXPORT_PRESET_NAME: ${{ matrix.preset }}
|
EXPORT_PRESET_NAME: ${{ matrix.preset }}
|
||||||
|
INSTALL_BLENDER: "true"
|
||||||
|
BLENDER_VERSION: "5.0.0"
|
||||||
|
VERBOSE_IMPORT: "false"
|
||||||
|
|
||||||
|
- name: Normalize build path
|
||||||
|
id: normalize
|
||||||
|
run: echo "path=$(realpath ${{ steps.build.outputs.build }})" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Upload builds
|
- name: Upload builds
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v5
|
||||||
with:
|
with:
|
||||||
name: ${{ matrix.preset }}-build
|
name: godot-${{ matrix.preset }}-v${{ steps.changelog.outputs.version }}
|
||||||
path: ${{ steps.build.outputs.build }}
|
path: ${{ steps.normalize.outputs.path }}
|
||||||
|
|
||||||
|
- name: Create Release
|
||||||
|
uses: akkuman/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
server_url: ${{ vars.SERVER_URL }}
|
||||||
|
tag_name: "${{ steps.changelog.outputs.version }}"
|
||||||
|
name: Release ${{ steps.changelog.outputs.version }}
|
||||||
|
body: ${{ steps.changelog.outputs.description }}
|
||||||
|
files: |
|
||||||
|
godot-${{ matrix.preset }}-v${{ steps.changelog.outputs.version }}
|
||||||
|
draft: false
|
||||||
|
token: ${{ secrets.GITEA_TOKEN }}
|
||||||
|
|||||||
31
CHANGELOG.md
Normal file
31
CHANGELOG.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||||
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
|
||||||
|
## [0.0.1] - 2026-03-15
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- First inital release of the Expremerts
|
||||||
|
- Created Changelog
|
||||||
|
- Added pipline for sonar
|
||||||
|
- Added pipline for releases
|
||||||
|
- Created UI Elements to exit the game
|
||||||
|
- added four minigames to test
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
### Removed
|
||||||
@@ -1,16 +1,20 @@
|
|||||||
[preset.0]
|
[preset.0]
|
||||||
|
|
||||||
name="Godot Experiments"
|
name="Web"
|
||||||
platform="Web"
|
platform="Web"
|
||||||
runnable=true
|
runnable=false
|
||||||
advanced_options=false
|
|
||||||
dedicated_server=false
|
dedicated_server=false
|
||||||
custom_features=""
|
custom_features=""
|
||||||
export_filter="all_resources"
|
export_filter="all_resources"
|
||||||
include_filter=""
|
include_filter=""
|
||||||
exclude_filter=""
|
exclude_filter="*.blend"
|
||||||
export_path="dist/Experements.html"
|
export_path=""
|
||||||
patches=PackedStringArray()
|
patches=PackedStringArray()
|
||||||
|
patch_delta_encoding=false
|
||||||
|
patch_delta_compression_level_zstd=19
|
||||||
|
patch_delta_min_reduction=0.1
|
||||||
|
patch_delta_include_filters="*"
|
||||||
|
patch_delta_exclude_filters=""
|
||||||
encryption_include_filters=""
|
encryption_include_filters=""
|
||||||
encryption_exclude_filters=""
|
encryption_exclude_filters=""
|
||||||
seed=0
|
seed=0
|
||||||
@@ -42,4 +46,123 @@ progressive_web_app/icon_180x180=""
|
|||||||
progressive_web_app/icon_512x512=""
|
progressive_web_app/icon_512x512=""
|
||||||
progressive_web_app/background_color=Color(0, 0, 0, 1)
|
progressive_web_app/background_color=Color(0, 0, 0, 1)
|
||||||
threads/emscripten_pool_size=8
|
threads/emscripten_pool_size=8
|
||||||
threads/godot_pool_size=4
|
threads/godot_pool_size=4
|
||||||
|
|
||||||
|
[preset.1]
|
||||||
|
|
||||||
|
name="Linux/X11"
|
||||||
|
platform="Linux"
|
||||||
|
runnable=true
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter="*.blend"
|
||||||
|
export_path="<null>"
|
||||||
|
patches=PackedStringArray()
|
||||||
|
patch_delta_encoding=false
|
||||||
|
patch_delta_compression_level_zstd=19
|
||||||
|
patch_delta_min_reduction=0.1
|
||||||
|
patch_delta_include_filters="*"
|
||||||
|
patch_delta_exclude_filters=""
|
||||||
|
encryption_include_filters=""
|
||||||
|
encryption_exclude_filters=""
|
||||||
|
seed=0
|
||||||
|
encrypt_pck=false
|
||||||
|
encrypt_directory=false
|
||||||
|
script_export_mode=2
|
||||||
|
|
||||||
|
[preset.1.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/s3tc_bptc=true
|
||||||
|
texture_format/etc2_astc=false
|
||||||
|
shader_baker/enabled=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
|
||||||
|
pkill -x -f \"{temp_dir}/{exe_name} {cmd_args}\"
|
||||||
|
rm -rf \"{temp_dir}\""
|
||||||
|
|
||||||
|
[preset.2]
|
||||||
|
|
||||||
|
name="Windows"
|
||||||
|
platform="Windows Desktop"
|
||||||
|
runnable=true
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter="*.blend"
|
||||||
|
export_path=""
|
||||||
|
patches=PackedStringArray()
|
||||||
|
patch_delta_encoding=false
|
||||||
|
patch_delta_compression_level_zstd=19
|
||||||
|
patch_delta_min_reduction=0.1
|
||||||
|
patch_delta_include_filters="*"
|
||||||
|
patch_delta_exclude_filters=""
|
||||||
|
encryption_include_filters=""
|
||||||
|
encryption_exclude_filters=""
|
||||||
|
seed=0
|
||||||
|
encrypt_pck=false
|
||||||
|
encrypt_directory=false
|
||||||
|
script_export_mode=2
|
||||||
|
|
||||||
|
[preset.2.options]
|
||||||
|
|
||||||
|
custom_template/debug=""
|
||||||
|
custom_template/release=""
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/s3tc_bptc=true
|
||||||
|
texture_format/etc2_astc=false
|
||||||
|
shader_baker/enabled=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=true
|
||||||
|
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}'"
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
[ext_resource type="PackedScene" uid="uid://jynlgkm41y8d" path="res://Levels/space_move.tscn" id="3_lquwl"]
|
[ext_resource type="PackedScene" uid="uid://jynlgkm41y8d" path="res://Levels/space_move.tscn" id="3_lquwl"]
|
||||||
[ext_resource type="PackedScene" uid="uid://caj5t8q1fii5m" path="res://Levels/pid_test.tscn" id="4_7mycd"]
|
[ext_resource type="PackedScene" uid="uid://caj5t8q1fii5m" path="res://Levels/pid_test.tscn" id="4_7mycd"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cycayd4l7k7s4" path="res://Levels/Recuration.tscn" id="5_lquwl"]
|
[ext_resource type="PackedScene" uid="uid://cycayd4l7k7s4" path="res://Levels/Recuration.tscn" id="5_lquwl"]
|
||||||
|
[ext_resource type="Script" uid="uid://lh1hhx4q8nlu" path="res://quit_game_component.gd" id="6_7mycd"]
|
||||||
|
|
||||||
[node name="Main" type="Control" unique_id=834120395]
|
[node name="Main" type="Control" unique_id=834120395]
|
||||||
layout_mode = 3
|
layout_mode = 3
|
||||||
@@ -62,3 +63,11 @@ text = "Recuration"
|
|||||||
script = ExtResource("1_ig7tw")
|
script = ExtResource("1_ig7tw")
|
||||||
level = ExtResource("5_lquwl")
|
level = ExtResource("5_lquwl")
|
||||||
metadata/_custom_type_script = "uid://bel5yfuiqithe"
|
metadata/_custom_type_script = "uid://bel5yfuiqithe"
|
||||||
|
|
||||||
|
[node name="Button5" type="Button" parent="VBoxContainer" unique_id=630288499]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Exit Experements"
|
||||||
|
|
||||||
|
[node name="QuitGame" type="Node" parent="VBoxContainer/Button5" unique_id=1111277542]
|
||||||
|
script = ExtResource("6_7mycd")
|
||||||
|
metadata/_custom_type_script = "uid://lh1hhx4q8nlu"
|
||||||
|
|||||||
@@ -24,6 +24,11 @@ config/icon="res://icon.svg"
|
|||||||
|
|
||||||
BackToMain="*res://back_to_main.gd"
|
BackToMain="*res://back_to_main.gd"
|
||||||
|
|
||||||
|
[filesystem]
|
||||||
|
|
||||||
|
import/blender/enabled.android=true
|
||||||
|
import/blender/enabled.web=true
|
||||||
|
|
||||||
[input]
|
[input]
|
||||||
|
|
||||||
w={
|
w={
|
||||||
|
|||||||
14
quit_game_component.gd
Normal file
14
quit_game_component.gd
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
class_name QuitGame
|
||||||
|
|
||||||
|
@onready var button: Button = get_parent() as Button
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
button.pressed.connect(_on_button_pressed)
|
||||||
|
button.name = button.text
|
||||||
|
|
||||||
|
|
||||||
|
func _on_button_pressed() -> void:
|
||||||
|
get_tree().quit(0)
|
||||||
1
quit_game_component.gd.uid
Normal file
1
quit_game_component.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://lh1hhx4q8nlu
|
||||||
Reference in New Issue
Block a user