Compare commits

...

8 Commits

Author SHA1 Message Date
1c7abeb0d9 tutorial is set up and final lift as well
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 20s
Create tag and build when new code gets to main / Export (push) Successful in 4m49s
2025-10-29 18:48:49 +01:00
97828ecdda tutorial is set up and final lift as well
Some checks failed
Create tag and build when new code gets to main / BumpTag (push) Successful in 20s
Create tag and build when new code gets to main / Export (push) Has been cancelled
2025-10-29 18:47:52 +01:00
9d8877cc67 fov fix
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 16s
Create tag and build when new code gets to main / Export (push) Successful in 4m49s
2025-10-28 14:12:32 +01:00
fd7b55452b basic tutorial layout 2025-10-28 14:08:41 +01:00
1cafe6e96d removing import clause on windows export
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 13s
Create tag and build when new code gets to main / Export (push) Successful in 4m30s
2025-10-27 10:41:32 +01:00
ea8821b41a back to base main menu
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 12s
Create tag and build when new code gets to main / Export (push) Successful in 7m51s
2025-10-27 10:15:00 +01:00
8338ce3dd9 trying to change the autoload class name and extends order to fix release issue
Some checks failed
Create tag and build when new code gets to main / BumpTag (push) Successful in 12s
Create tag and build when new code gets to main / Export (push) Has been cancelled
2025-10-27 10:14:11 +01:00
39f45d418f trying to add a console to release
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 12s
Create tag and build when new code gets to main / Export (push) Successful in 7m32s
2025-10-27 09:49:52 +01:00
19 changed files with 1339 additions and 412 deletions

View File

@@ -57,18 +57,18 @@ jobs:
- name: Build Windows
run: |
mkdir -v -p build/windows
godot --headless --verbose --build-solutions --import --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe
godot --headless --verbose --build-solutions --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe
zip -r Windows.zip build/windows
- name: Linux Build
run: |
mkdir -v -p build/linux
godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
zip -r Linux.zip build/linux
- name: Mac Build
run: |
mkdir -v -p build/mac
godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
zip -r Mac.zip build/mac
# - name: Linux Build
# run: |
# mkdir -v -p build/linux
# godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
# zip -r Linux.zip build/linux
# - name: Mac Build
# run: |
# mkdir -v -p build/mac
# godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
# zip -r Mac.zip build/mac
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
@@ -79,21 +79,21 @@ jobs:
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Windows.zip
buildChannel: windows
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Linux.zip
buildChannel: linux
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Mac.zip
buildChannel: mac
# - name: Upload to Itch
# uses: KikimoraGames/itch-publish@v0.0.3
# with:
# butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
# itchUsername: ${{ env.ITCHIO_USERNAME }}
# itchGameId: ${{ env.ITCHIO_GAMEID }}
# buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
# gameData: Linux.zip
# buildChannel: linux
# - name: Upload to Itch
# uses: KikimoraGames/itch-publish@v0.0.3
# with:
# butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
# itchUsername: ${{ env.ITCHIO_USERNAME }}
# itchGameId: ${{ env.ITCHIO_GAMEID }}
# buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
# gameData: Mac.zip
# buildChannel: mac

View File

@@ -1,5 +1,5 @@
class_name SceneLoaderClass
extends Node
class_name SceneLoaderClass
## Autoload class for loading scenes with an optional loading screen.
signal scene_loaded

Binary file not shown.

File diff suppressed because one or more lines are too long

28
assets/lift/lift.gd Normal file
View File

@@ -0,0 +1,28 @@
extends Node3D
var lift_already_used : bool = false
@export var end_location : Vector3 = Vector3.ZERO
@export var lift_time : float = 1.0
@onready var button: MeshInstance3D = $Cylinder_001
func start_climbing() -> void:
var elevator_tween = get_tree().create_tween()
elevator_tween.set_ease(Tween.EASE_IN_OUT)
elevator_tween.set_trans(Tween.TRANS_CUBIC)
elevator_tween.tween_property(self, "global_position", end_location, lift_time)
func _on_area_3d_body_entered(body: Node3D) -> void:
if lift_already_used:
return
if is_instance_of(body, CharacterBody3D):
lift_already_used = true
var button_tween = get_tree().create_tween()
var button_final_pos = button.global_position + Vector3.DOWN * 0.35
button_tween.tween_property(button, "global_position", button_final_pos, 0.3)
button_tween.tween_callback(start_climbing)

1
assets/lift/lift.gd.uid Normal file
View File

@@ -0,0 +1 @@
uid://c1w84vh3bqijr

BIN
assets/lift/lift.glb Normal file

Binary file not shown.

View File

@@ -0,0 +1,42 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://cc2vcuaulfks3"
path="res://.godot/imported/lift.glb-e7e66d0f097e30a0a067073f130adce8.scn"
[deps]
source_file="res://assets/lift/lift.glb"
dest_files=["res://.godot/imported/lift.glb-e7e66d0f097e30a0a067073f130adce8.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/root_script=null
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_name_suffixes=true
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
materials/extract=0
materials/extract_format=0
materials/extract_path=""
_subresources={}
gltf/naming_version=2
gltf/embedded_image_handling=1

33
assets/lift/lift.tscn Normal file

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View File

@@ -5,11 +5,11 @@ bus/1/name = &"Music"
bus/1/solo = false
bus/1/mute = false
bus/1/bypass_fx = false
bus/1/volume_db = -6.5788474
bus/1/volume_db = -15.794972
bus/1/send = &"Master"
bus/2/name = &"SFX"
bus/2/solo = false
bus/2/mute = false
bus/2/bypass_fx = false
bus/2/volume_db = -10.074136
bus/2/volume_db = -8.798218
bus/2/send = &"Master"

View File

@@ -72,11 +72,11 @@ script_export_mode=2
custom_template/debug=""
custom_template/release=""
debug/export_console_wrapper=1
debug/export_console_wrapper=2
binary_format/embed_pck=false
texture_format/s3tc_bptc=true
texture_format/etc2_astc=false
shader_baker/enabled=false
shader_baker/enabled=true
binary_format/architecture="x86_64"
codesign/enable=false
codesign/timestamp=true

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=16 format=3 uid="uid://dmkw8cmalm5k"]
[gd_scene load_steps=17 format=3 uid="uid://dmkw8cmalm5k"]
[ext_resource type="PackedScene" uid="uid://bei4nhkf8lwdo" path="res://player_controller/PlayerController.tscn" id="1_2vsi6"]
[ext_resource type="Texture2D" uid="uid://ca4kkq3w8cd4n" path="res://assets/sky/sky_15_2k.png" id="2_ruo5i"]
@@ -12,6 +12,7 @@
[ext_resource type="AudioStream" uid="uid://f8cvr5s041ej" path="res://assets/audio/ambiance/637083__nox_sound__ambiance_nature_night_cricket_calm_loop_stereo.wav" id="10_eca4n"]
[ext_resource type="PackedScene" uid="uid://dip6cce5gtwi8" path="res://assets/greyboxing/guard_tower.tscn" id="11_wctvs"]
[ext_resource type="PackedScene" uid="uid://c066hc7yu36wx" path="res://assets/water/water.tscn" id="12_i2xii"]
[ext_resource type="PackedScene" uid="uid://gir68sk3762e" path="res://assets/lift/lift.tscn" id="13_eca4n"]
[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_feb1n"]
panorama = ExtResource("2_ruo5i")
@@ -28,10 +29,11 @@ tonemap_mode = 4
ssao_enabled = true
ssil_enabled = true
sdfgi_use_occlusion = true
fog_light_color = Color(1, 1, 1, 1)
fog_density = 0.001
fog_sky_affect = 0.121
volumetric_fog_enabled = true
fog_enabled = true
fog_light_color = Color(0.9955967, 0.83634025, 0.69151855, 1)
fog_sun_scatter = 0.5
fog_density = 0.002
fog_sky_affect = 0.184
volumetric_fog_density = 0.004
volumetric_fog_emission = Color(1, 1, 1, 1)
volumetric_fog_anisotropy = 0.6
@@ -39,7 +41,7 @@ volumetric_fog_anisotropy = 0.6
[node name="Main" type="Node3D"]
[node name="Player" parent="." instance=ExtResource("1_2vsi6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -9.21207, 64.344444, -41.363285)
transform = Transform3D(0.9481796, 0, -0.31773496, 0, 1, 0, 0.31773496, 0, 0.9481796, -4.1827703, -33.37261, 18.473116)
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_1bvp3")
@@ -77,3 +79,8 @@ pause = ExtResource("10_0ari0")
[node name="BackgroundMusicPlayer" parent="." instance=ExtResource("9_i2xii")]
stream = ExtResource("10_eca4n")
[node name="Lift" parent="." instance=ExtResource("13_eca4n")]
transform = Transform3D(0.9961947, 0, -0.08715574, 0, 1, 0, 0.08715574, 0, 0.9961947, -4.393, 1.693, 0.583)
end_location = Vector3(-4.393, 115, 0.583)
lift_time = 10.0

View File

@@ -212,6 +212,7 @@ one_shot = true
ignore_time_scale = true
[node name="StateChartDebugger" parent="." instance=ExtResource("24_q5h8a")]
visible = false
offset_left = 1524.0
offset_top = 1.0
offset_right = -8.0
@@ -251,15 +252,24 @@ expand_mode = 2
[node name="DashCooldownIndicator" type="ColorRect" parent="UI"]
unique_name_in_owner = true
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 910.0
offset_top = 549.0
offset_right = 1010.0
offset_bottom = 559.0
offset_right = -910.0
offset_bottom = -521.0
grow_horizontal = 2
grow_vertical = 2
[node name="CenterContainer" type="CenterContainer" parent="UI"]
custom_minimum_size = Vector2(1920, 1080)
offset_right = 1919.0
offset_bottom = 1080.0
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_right = -1.0
grow_horizontal = 2
grow_vertical = 2
[node name="CenterIcon" type="TextureRect" parent="UI/CenterContainer"]
material = SubResource("CanvasItemMaterial_2q0ik")

View File

@@ -532,7 +532,7 @@ public partial class PlayerController : CharacterBody3D
public Vector3 ComputeHVelocity(float delta, float accelerationFactor, float decelerationFactor, Vector3? direction = null)
{
var dir = direction ?? HeadSystem.Transform.Basis * _inputMove;
var dir = direction ?? Transform.Basis * HeadSystem.Transform.Basis * _inputMove;
var acceleration = dir.Length() > 0 ? accelerationFactor : decelerationFactor;
@@ -875,7 +875,7 @@ public partial class PlayerController : CharacterBody3D
public Vector3 GetInputGlobalHDirection()
{
var direction = HeadSystem.Transform.Basis * _inputMove;
var direction = Transform.Basis * HeadSystem.Transform.Basis * _inputMove;
return new Vector3(direction.X, 0, direction.Z).Normalized();
}

View File

@@ -15,7 +15,7 @@ warnings/check_invalid_track_paths=false
[application]
config/name="Movement tests"
run/main_scene="uid://br8shfwk2lne0"
run/main_scene="uid://vm22i5sv3p3s"
config/features=PackedStringArray("4.5", "C#", "Forward Plus")
config/icon="res://icon.svg"
@@ -154,7 +154,9 @@ copy_path="res://scenes"
[physics]
common/physics_jitter_fix=0.0
3d/physics_engine="Jolt Physics"
common/physics_interpolation=true
[rendering]

View File

@@ -6,6 +6,7 @@ namespace Movementtests.systems;
public partial class HeadSystem : Node3D
{
private Camera3D _camera;
private Marker3D _cameraAnchor;
[Export(PropertyHint.Range, "0,10,0.1,or_greater")]
public float LookSensitivity { get; set; } = 1f;
@@ -14,6 +15,7 @@ public partial class HeadSystem : Node3D
{
Input.SetMouseMode(Input.MouseModeEnum.Captured);
_camera = GetNode<Camera3D>("CameraSmooth/Camera3D");
_cameraAnchor = GetNode<Marker3D>("CameraAnchor");
}
public void LookAround(Vector2 lookDir, float sensitivitMultiplier = 1f)
@@ -23,11 +25,12 @@ public partial class HeadSystem : Node3D
RotateY(angleForHorizontalRotation);
// Vertical movement of head
Vector3 currentCameraRotation = _camera.Rotation;
Vector3 currentCameraRotation = _cameraAnchor.Rotation;
currentCameraRotation.X += Convert.ToSingle(lookDir.Y * LookSensitivity * sensitivitMultiplier);
currentCameraRotation.X = Mathf.Clamp(currentCameraRotation.X, Mathf.DegToRad(-90f), Mathf.DegToRad(90f));
_camera.Rotation = currentCameraRotation;
_cameraAnchor.Rotation = currentCameraRotation;
_camera.GlobalTransform = _cameraAnchor.GetGlobalTransformInterpolated();
}
public Vector3 GetForwardHorizontalVector()

View File

@@ -16,8 +16,8 @@ script = ExtResource("1_8abgy")
[node name="CameraSmooth" type="Node3D" parent="."]
[node name="Camera3D" type="Camera3D" parent="CameraSmooth"]
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0, 0, 0)
current = true
fov = 90.0
[node name="CLVignette(Layer_1)" type="CanvasLayer" parent="CameraSmooth/Camera3D"]
@@ -57,3 +57,5 @@ mouse_filter = 2
[node name="RayCast3D" type="RayCast3D" parent="CameraSmooth/Camera3D"]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -0.64723)
visible = false
[node name="CameraAnchor" type="Marker3D" parent="."]