From 5ef67634d012eed8a7551f6fab22d2eef607174d Mon Sep 17 00:00:00 2001 From: zwitschi Date: Sat, 30 May 2026 13:03:09 +0200 Subject: [PATCH] Add initial build workflow, project configuration, and asset structure for Chemo-Sim --- .gitea/workflows/build.yml | 57 +++++++++++++++++++++++++++ .gitignore | 25 ++++++++---- CHANGELOG.md | 3 ++ assets/audio/ambient/.gitkeep | 0 assets/audio/ui/.gitkeep | 0 assets/fonts/.gitkeep | 0 assets/models/.gitkeep | 0 assets/shaders/.gitkeep | 0 assets/textures/.gitkeep | 0 export_presets.cfg | 70 +++++++++++++++++++++++++++++++++ export_templates/.gitkeep | 0 project.godot | 30 ++++++++++++++ scenes/hospital/.gitkeep | 0 scenes/menus/.gitkeep | 0 scenes/minigames/.gitkeep | 0 scenes/symptoms/.gitkeep | 0 scenes/treatment_ui/.gitkeep | 0 scripts/character/.gitkeep | 0 scripts/game_systems/.gitkeep | 0 scripts/minigame_logic/.gitkeep | 0 scripts/ui_controllers/.gitkeep | 0 scripts/utils/.gitkeep | 0 22 files changed, 178 insertions(+), 7 deletions(-) create mode 100644 .gitea/workflows/build.yml create mode 100644 CHANGELOG.md create mode 100644 assets/audio/ambient/.gitkeep create mode 100644 assets/audio/ui/.gitkeep create mode 100644 assets/fonts/.gitkeep create mode 100644 assets/models/.gitkeep create mode 100644 assets/shaders/.gitkeep create mode 100644 assets/textures/.gitkeep create mode 100644 export_presets.cfg create mode 100644 export_templates/.gitkeep create mode 100644 project.godot create mode 100644 scenes/hospital/.gitkeep create mode 100644 scenes/menus/.gitkeep create mode 100644 scenes/minigames/.gitkeep create mode 100644 scenes/symptoms/.gitkeep create mode 100644 scenes/treatment_ui/.gitkeep create mode 100644 scripts/character/.gitkeep create mode 100644 scripts/game_systems/.gitkeep create mode 100644 scripts/minigame_logic/.gitkeep create mode 100644 scripts/ui_controllers/.gitkeep create mode 100644 scripts/utils/.gitkeep diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..be40d63 --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,57 @@ +name: Build + +on: + push: + branches: [main] + pull_request: + branches: [main] + workflow_dispatch: + +env: + GODOT_VERSION: "4.3" + PROJECT_NAME: chemo-sim + +jobs: + build: + name: Export ${{ matrix.platform }} + runs-on: ubuntu-latest + container: + image: barichello/godot-ci:4.3 + strategy: + fail-fast: false + matrix: + include: + - platform: windows + preset: "Windows Desktop" + output: chemo-sim.exe + - platform: linux + preset: "Linux" + output: chemo-sim.x86_64 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + lfs: true + + - name: Install export templates + run: | + mkdir -p ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable + cp -r /root/.local/share/godot/export_templates/${GODOT_VERSION}.stable/* \ + ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable/ || true + + - name: Import project (build resource cache) + run: godot --headless --import + continue-on-error: true + + - name: Export ${{ matrix.platform }} + run: | + mkdir -p build/${{ matrix.platform }} + godot --headless --export-release "${{ matrix.preset }}" build/${{ matrix.platform }}/${{ matrix.output }} + + - name: Upload artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ env.PROJECT_NAME }}-${{ matrix.platform }} + path: build/${{ matrix.platform }}/ + if-no-files-found: error + retention-days: 14 diff --git a/.gitignore b/.gitignore index f14e2d4..d1b14b7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,25 @@ # instructions .github/instructions/ -# GoDot files +# Godot 4+ specific (do NOT ignore project.godot — it must be tracked) +.godot/ +.import/ *.import -*.godot +export.cfg +export_credentials.cfg +*.translation -# OS files +# Local toolchain (downloaded Godot editor + export templates) +tools/ + +# Build outputs +build/ +!build/.gitkeep +bin/ +obj/ + +# OS / editor cruft .DS_Store Thumbs.db - -# Build files -bin/ -obj/ \ No newline at end of file +*.swp +*~ \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..b92a322 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +# Chemo-Sim — A First-Person Chemo Treatment Simulator + +Changelog for Chemo-Sim. See [README.md](README.md) for game overview and [docs/DEVELOPMENT_ROADMAP.md](docs/DEVELOPMENT_ROADMAP.md) for development plans. diff --git a/assets/audio/ambient/.gitkeep b/assets/audio/ambient/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/audio/ui/.gitkeep b/assets/audio/ui/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/fonts/.gitkeep b/assets/fonts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/models/.gitkeep b/assets/models/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/shaders/.gitkeep b/assets/shaders/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/textures/.gitkeep b/assets/textures/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..984469e --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,70 @@ +[preset.0] + +name="Windows Desktop" +platform="Windows Desktop" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/windows/chemo-sim.exe" +encryption_include_filters="" +encryption_exclude_filters="" +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=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +binary_format/architecture="x86_64" +codesign/enable=false +application/modify_resources=true +application/icon="" +application/console_wrapper_icon="" +application/icon_interpolation=4 +application/file_version="" +application/product_version="0.1.0" +application/company_name="chemo-sim" +application/product_name="chemo-sim" +application/file_description="You Get Chemo" +application/copyright="" +application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 + +[preset.1] + +name="Linux" +platform="Linux" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/linux/chemo-sim.x86_64" +encryption_include_filters="" +encryption_exclude_filters="" +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 +binary_format/architecture="x86_64" +ssh_remote_deploy/enabled=false diff --git a/export_templates/.gitkeep b/export_templates/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..a0cb3de --- /dev/null +++ b/project.godot @@ -0,0 +1,30 @@ +; 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="chemo-sim" +config/version="0.1.0" +run/main_scene="" +config/features=PackedStringArray("4.3", "Forward Plus") +config/icon="res://icon.svg" + +[display] + +window/size/viewport_width=1920 +window/size/viewport_height=1080 +window/size/mode=0 +window/stretch/mode="canvas_items" +window/stretch/aspect="keep" + +[rendering] + +renderer/rendering_method="forward_plus" +renderer/rendering_method.mobile="mobile" diff --git a/scenes/hospital/.gitkeep b/scenes/hospital/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scenes/menus/.gitkeep b/scenes/menus/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scenes/minigames/.gitkeep b/scenes/minigames/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scenes/symptoms/.gitkeep b/scenes/symptoms/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scenes/treatment_ui/.gitkeep b/scenes/treatment_ui/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scripts/character/.gitkeep b/scripts/character/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scripts/game_systems/.gitkeep b/scripts/game_systems/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scripts/minigame_logic/.gitkeep b/scripts/minigame_logic/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scripts/ui_controllers/.gitkeep b/scripts/ui_controllers/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/scripts/utils/.gitkeep b/scripts/utils/.gitkeep new file mode 100644 index 0000000..e69de29