diff --git a/LICENSE.md b/LICENSE.md index b98ddc4..d3cf80f 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Kenney +Copyright (c) 2025 Kenney Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index fee1792..99bc5c8 100644 --- a/README.md +++ b/README.md @@ -22,11 +22,21 @@ This package includes a basic template for a first person shooter in Godot 4.3 ( | Left mouse button | Shoot | | E | Switch weapon | +### Instructions + +1. How to add more weapons? + +Duplicate one of the existing resources in the 'weapons' folder, adjust the properties in the inspector. Select the 'Player' node in the scene and add your new resources to the 'Weapons' array. + +2. How to adjust properties like cooldown, damage and spread? + +Select the resource of the weapon you'd like to change in the 'weapons' folder, adjust the properties in the inspector. + ### License MIT License -Copyright (c) 2024 Kenney +Copyright (c) 2025 Kenney Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/models/blaster.glb.import b/models/blaster.glb.import index d08d5ac..a1b627c 100644 --- a/models/blaster.glb.import +++ b/models/blaster.glb.import @@ -15,9 +15,12 @@ dest_files=["res://.godot/imported/blaster.glb-865d95bc6d15a20a70b45829eaeb4dc5. nodes/root_type="Node3D" nodes/root_name="Scene Root" +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 @@ -31,6 +34,9 @@ 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=0 gltf/embedded_image_handling=1 diff --git a/objects/cloud.gd.uid b/objects/cloud.gd.uid new file mode 100644 index 0000000..1a61904 --- /dev/null +++ b/objects/cloud.gd.uid @@ -0,0 +1 @@ +uid://bfgpo8fvf136p diff --git a/objects/enemy.gd.uid b/objects/enemy.gd.uid new file mode 100644 index 0000000..5bd56dd --- /dev/null +++ b/objects/enemy.gd.uid @@ -0,0 +1 @@ +uid://b6udw8uhlp4ei diff --git a/objects/impact.gd.uid b/objects/impact.gd.uid new file mode 100644 index 0000000..a2ac7a7 --- /dev/null +++ b/objects/impact.gd.uid @@ -0,0 +1 @@ +uid://bwkexrmt718dx diff --git a/objects/player.gd b/objects/player.gd index 7923aae..88e63bb 100644 --- a/objects/player.gd +++ b/objects/player.gd @@ -52,7 +52,7 @@ func _ready(): weapon = weapons[weapon_index] # Weapon must never be nil initiate_change_weapon(weapon_index) -func _physics_process(delta): +func _process(delta): # Handle functions diff --git a/objects/player.gd.uid b/objects/player.gd.uid new file mode 100644 index 0000000..8635813 --- /dev/null +++ b/objects/player.gd.uid @@ -0,0 +1 @@ +uid://cu47grjp072jk diff --git a/project.godot b/project.godot index e7d62ab..6e679a6 100644 --- a/project.godot +++ b/project.godot @@ -13,7 +13,7 @@ config_version=5 config/name="Starter Kit FPS" config/tags=PackedStringArray("starterkit") run/main_scene="res://scenes/main.tscn" -config/features=PackedStringArray("4.3", "Forward Plus") +config/features=PackedStringArray("4.5", "Forward Plus") boot_splash/bg_color=Color(0.92549, 0.92549, 0.960784, 1) boot_splash/image="res://splash-screen.png" config/icon="res://icon.png" @@ -29,8 +29,8 @@ window/size/viewport_height=720 [editor] -movie_writer/mjpeg_quality=1.0 movie_writer/movie_file="D:/Godot/test.avi" +movie_writer/mjpeg_quality=1.0 [input] @@ -104,6 +104,7 @@ weapon_toggle={ "deadzone": 0.5, "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"location":0,"echo":false,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":10,"pressure":0.0,"pressed":true,"script":null) +, Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":3,"canceled":false,"pressed":false,"double_click":false,"script":null) ] } diff --git a/scenes/main-environment.tres b/scenes/main-environment.tres index d313be6..3f7ddea 100644 --- a/scenes/main-environment.tres +++ b/scenes/main-environment.tres @@ -1,18 +1,13 @@ -[gd_resource type="Environment" load_steps=5 format=3 uid="uid://jvmpkdwaeaq"] +[gd_resource type="Environment" load_steps=4 format=3 uid="uid://jvmpkdwaeaq"] -[sub_resource type="Gradient" id="Gradient_tio4a"] -colors = PackedColorArray(0.591319, 0.47222, 0.770854, 1, 0.315871, 0.421528, 0.674528, 1) - -[sub_resource type="GradientTexture2D" id="GradientTexture2D_4e6px"] -gradient = SubResource("Gradient_tio4a") -fill_to = Vector2(0, 1) +[ext_resource type="Texture2D" uid="uid://cb7sdk1i5rx04" path="res://sprites/skybox.png" id="1_u3n42"] [sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_fjheq"] -panorama = SubResource("GradientTexture2D_4e6px") +panorama = ExtResource("1_u3n42") +energy_multiplier = 0.5 [sub_resource type="Sky" id="Sky_7bk1c"] sky_material = SubResource("PanoramaSkyMaterial_fjheq") -radiance_size = 0 [resource] background_mode = 2 @@ -20,7 +15,6 @@ background_color = Color(0.360784, 0.392157, 0.462745, 1) sky = SubResource("Sky_7bk1c") ambient_light_source = 2 ambient_light_color = Color(0.662745, 0.694118, 0.772549, 1) -ambient_light_energy = 1.15 tonemap_mode = 2 ssao_enabled = true ssao_radius = 0.45 @@ -29,5 +23,7 @@ ssao_power = 5.0 glow_enabled = true glow_levels/2 = 0.6 glow_levels/3 = 0.6 -glow_levels/5 = 0.0 +glow_levels/5 = 6.0 glow_intensity = 2.0 +glow_strength = 0.45 +glow_bloom = 0.5 diff --git a/scenes/main.tscn b/scenes/main.tscn index 48122a8..f2413c9 100644 --- a/scenes/main.tscn +++ b/scenes/main.tscn @@ -2,7 +2,7 @@ [ext_resource type="Environment" uid="uid://jvmpkdwaeaq" path="res://scenes/main-environment.tres" id="1_q8fpv"] [ext_resource type="PackedScene" uid="uid://dl2ed4gkybggf" path="res://objects/player.tscn" id="2_elriq"] -[ext_resource type="Script" path="res://scripts/hud.gd" id="3_s8mkj"] +[ext_resource type="Script" uid="uid://by0qn28x1i1jj" path="res://scripts/hud.gd" id="3_s8mkj"] [ext_resource type="FontFile" uid="uid://biqtga8moh7ah" path="res://fonts/lilita_one_regular.ttf" id="3_w27de"] [ext_resource type="PackedScene" uid="uid://dpm3l05d7fu35" path="res://objects/platform.tscn" id="5_3s40e"] [ext_resource type="PackedScene" uid="uid://r7rt7pth4u7o" path="res://objects/wall_low.tscn" id="5_6vel1"] diff --git a/screenshots/screenshot.png b/screenshots/screenshot.png index 305aea5..8597ef5 100644 Binary files a/screenshots/screenshot.png and b/screenshots/screenshot.png differ diff --git a/scripts/audio.gd.uid b/scripts/audio.gd.uid new file mode 100644 index 0000000..99b7fbc --- /dev/null +++ b/scripts/audio.gd.uid @@ -0,0 +1 @@ +uid://d2fg3ewfjx4u4 diff --git a/scripts/hud.gd.uid b/scripts/hud.gd.uid new file mode 100644 index 0000000..5ace8ec --- /dev/null +++ b/scripts/hud.gd.uid @@ -0,0 +1 @@ +uid://by0qn28x1i1jj diff --git a/scripts/weapon.gd.uid b/scripts/weapon.gd.uid new file mode 100644 index 0000000..5bfbe95 --- /dev/null +++ b/scripts/weapon.gd.uid @@ -0,0 +1 @@ +uid://dg01pkkc1c5vd diff --git a/sprites/skybox.png b/sprites/skybox.png new file mode 100644 index 0000000..b4b8004 Binary files /dev/null and b/sprites/skybox.png differ diff --git a/sprites/skybox.png.import b/sprites/skybox.png.import new file mode 100644 index 0000000..60daeac --- /dev/null +++ b/sprites/skybox.png.import @@ -0,0 +1,41 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cb7sdk1i5rx04" +path.bptc="res://.godot/imported/skybox.png-3a75a15c5dbffccdaa926738885bd0eb.bptc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://sprites/skybox.png" +dest_files=["res://.godot/imported/skybox.png-3a75a15c5dbffccdaa926738885bd0eb.bptc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=true +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +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/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=false +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=0