Compare commits

...

4 commits

45 changed files with 1075 additions and 235 deletions

3
.gitattributes vendored
View file

@ -1,2 +1,5 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf
*.psd filter=lfs diff=lfs merge=lfs -text
*.fbx filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored
View file

@ -1,3 +1,4 @@
# Godot 4+ specific ignores
.godot/
/android/
Builds

View file

@ -1,12 +1,55 @@
@icon("uid://3ugrjpybrl4e")
extends RigidBody3D
class_name Boat
@export var max_thrust_force: float = 2048*3.0
@export var max_steering: float = 50.0
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
var steering: float = 0 # steering rudder angle in radians
var thrust_force: float = 0 # forward thrust force in Newtons
var cam_rotation:Vector3
var is_docked: bool = false
var submerged := false
func _ready():
add_to_group("boats",true)
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(_delta: float) -> void:
pass
func _physics_process(delta):
## Code for user-input movement
if thrust_force >0.0:
apply_central_force(self.global_transform.basis.x.normalized() * Vector3(1, 0, 1) * thrust_force * delta)
#apply_torque(Vector3.UP * steering * delta)
apply_torque(global_transform.basis.y.normalized() * steering ) # for sideways motion
reset_forces()
func _process(_delta):
if Input.get_action_strength("move_forward") > 0.0:
thrust()
if Input.get_action_strength("turn_right") > 0.0:
steer_right()
if Input.get_action_strength("turn_left") > 0.0:
steer_left()
if Input.get_action_strength("camera_left") > 0.0:
cam_rotation += Vector3(0.0,1.0,0.0)*_delta
if Input.get_action_strength("camera_right") > 0.0:
cam_rotation += Vector3(0.0,-1.0,0.0)*_delta
func thrust(_strength:=1.0):
if not is_docked:
thrust_force = max_thrust_force
func steer_right(_strength:=1.0):
if not is_docked:
steering = -PI * max_steering
func steer_left(_strength:=1.0):
if not is_docked:
steering = PI * max_steering
func reset_forces():
thrust_force = 0
steering = 0

67
Boats/boat.tscn Normal file
View file

@ -0,0 +1,67 @@
[gd_scene load_steps=6 format=3 uid="uid://bdfqifxsvpts4"]
[ext_resource type="Script" uid="uid://cjo6l2ykgvn4e" path="res://Boats/boat.gd" id="1_q76at"]
[ext_resource type="PackedScene" uid="uid://bu6chp8qribgy" path="res://Boats/cartoon-boat/source/boat 4.fbx" id="2_bmmu8"]
[ext_resource type="Script" uid="uid://cnfkxclrq0i0s" path="res://Boats/buyancy_probe.gd" id="3_dd4jx"]
[sub_resource type="GDScript" id="GDScript_dd4jx"]
script/source = "extends Node3D
func _process(_delta):
pass
#global_rotation = $\"../..\".cam_rotation
"
[sub_resource type="BoxShape3D" id="BoxShape3D_g5njt"]
size = Vector3(5.26923, 1, 3.88843)
[node name="Boat" type="RigidBody3D"]
mass = 50.0
script = ExtResource("1_q76at")
max_thrust_force = 3000.0
max_steering = 150.0
metadata/_custom_type_script = "uid://cjo6l2ykgvn4e"
[node name="boat 4" parent="." instance=ExtResource("2_bmmu8")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -4.8577)
[node name="CamRoot" type="Node3D" parent="boat 4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.02675, 1.50566, 4.94378)
script = SubResource("GDScript_dd4jx")
[node name="SpringArm3D" type="SpringArm3D" parent="boat 4/CamRoot"]
transform = Transform3D(0.489698, 0.510696, -0.706672, -0.000524942, 0.810677, 0.585494, 0.871892, -0.286344, 0.397255, 0, 0, 0)
collision_mask = 0
spring_length = 10.0
[node name="Camera3D" type="Camera3D" parent="boat 4/CamRoot/SpringArm3D"]
transform = Transform3D(1, 0, 5.96046e-08, 0, 1, -1.04308e-07, 0, 2.98023e-08, 1, 1.78167, 1.43974, 8.17264)
current = true
[node name="BuyancyProbe" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.15306, 1.02582, 1.3511)
script = ExtResource("3_dd4jx")
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.933215, 1.32675, -1.50793)
script = ExtResource("3_dd4jx")
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.95977, 1.07616, 1.18863)
script = ExtResource("3_dd4jx")
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.95977, 0.847872, -0.88629)
script = ExtResource("3_dd4jx")
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.789459, 1.27738, 0)
shape = SubResource("BoxShape3D_g5njt")

View file

@ -1,8 +1,11 @@
@icon("uid://ck86evu4iyhyg")
@tool
extends Marker3D
class_name BuyancyProbe
## How much force is applied upward
@export var float_strength: float = 10.0
@export var max_float_force:float = 500.0
var currentdepth:float
@export_category("Debug")
@ -20,6 +23,8 @@ var height_scale: float
@onready var OceanNode:Ocean = get_tree().get_first_node_in_group("Ocean")
var Oceantime:float
@onready var parentRigid:RigidBody3D = get_parent()
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
if ocean_mat != null:
@ -33,12 +38,18 @@ func _ready() -> void:
sphere_preview.mesh = debug_sphere
func _physics_process(_delta: float) -> void:
var depth = get_wave_height(global_position,Oceantime) - global_position.y
print(depth)
if depth > 0.0:
var float_force = get_parent().mass
get_parent().apply_force(Vector3.UP * gravity * depth * float_force ,global_position-get_parent().global_position)
if not Engine.is_editor_hint():
var depth = get_wave_height(global_position,Oceantime) - global_position.y
#print(depth)
if depth > 0.0 && parentRigid != null:
var float_force = parentRigid.mass * float_strength
parentRigid.gravity_scale = 0.3
parentRigid.angular_damp = 5.0
parentRigid.apply_force(Vector3.UP * clamp(gravity * depth * float_force,-max_float_force,max_float_force) ,global_position-parentRigid.global_position)
else:
parentRigid.gravity_scale = 1.0
parentRigid.angular_damp = 0.0
func _process(_delta: float) -> void:
if OceanNode != null:
Oceantime = OceanNode.wave_time
@ -53,9 +64,10 @@ func _process(_delta: float) -> void:
func get_wave_height(world_position: Vector3, time: float) -> float:
var uv_x = wrapf(world_position.x / noise_scale + time * wave_speed, 0, 1)
var uv_y = wrapf(world_position.z / noise_scale + time * wave_speed, 0, 1)
var pixel_pos = Vector2(uv_x * noise.get_width(), uv_y * noise.get_height())
return OceanNode.global_position.y + noise.get_pixelv(pixel_pos).r * height_scale;
if noise != null:
var pixel_pos = Vector2(uv_x * noise.get_width(), uv_y * noise.get_height())
return OceanNode.global_position.y + noise.get_pixelv(pixel_pos).r * height_scale;
return world_position.y
func update_param():
if ocean_mat != null:
@ -64,3 +76,9 @@ func update_param():
noise_scale = ocean_mat.get_shader_parameter("noise_scale")
wave_speed = ocean_mat.get_shader_parameter("wave_speed")
height_scale = ocean_mat.get_shader_parameter("height_scale")
func _get_configuration_warnings():
var warnings = []
if get_parent() is not RigidBody3D:
warnings.append("This node need to be a direct child of a RigidBody3D")
return warnings

BIN
Boats/cartoon-boat/source/boat 4.fbx (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,50 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bu6chp8qribgy"
path="res://.godot/imported/boat 4.fbx-4f459f3d14e15dbdd6449d0939ad6231.scn"
[deps]
source_file="res://Boats/cartoon-boat/source/boat 4.fbx"
dest_files=["res://.godot/imported/boat 4.fbx-4f459f3d14e15dbdd6449d0939ad6231.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
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=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={
"materials": {
"lambert1": {
"use_external/enabled": true,
"use_external/path": "uid://b0r2c7455ns2l"
}
},
"nodes": {
"PATH:AnimationPlayer": {
"import/skip_import": true
}
}
}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1

View file

@ -0,0 +1,61 @@
[gd_resource type="VisualShader" load_steps=9 format=3 uid="uid://5is85o5k05lb"]
[ext_resource type="Texture2D" uid="uid://b3htar5wp3ag2" path="res://Boats/cartoon-boat/textures/boat_4_lambert1_BaseColor.png" id="1_igkxg"]
[ext_resource type="Texture2D" uid="uid://conebiij3gpe8" path="res://Boats/cartoon-boat/textures/boat_4_lambert1_Metalness.png" id="2_c0qec"]
[ext_resource type="Texture2D" uid="uid://cqu3udiqdiw5u" path="res://Boats/cartoon-boat/textures/boat_4_lambert1_Normal.png" id="3_ygw4n"]
[ext_resource type="Texture2D" uid="uid://brltubuleyx6p" path="res://Boats/cartoon-boat/textures/boat_4_lambert1_Roughness.png" id="4_yj6bl"]
[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_v2np7"]
texture = ExtResource("1_igkxg")
[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_y2thm"]
texture = ExtResource("2_c0qec")
[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_2d07w"]
texture = ExtResource("3_ygw4n")
[sub_resource type="VisualShaderNodeTexture" id="VisualShaderNodeTexture_fban5"]
texture = ExtResource("4_yj6bl")
[resource]
code = "shader_type spatial;
render_mode blend_mix, depth_draw_opaque, cull_back, diffuse_toon, specular_toon;
uniform sampler2D tex_frg_2;
uniform sampler2D tex_frg_5;
uniform sampler2D tex_frg_4;
void fragment() {
// Texture2D:2
vec4 n_out2p0 = texture(tex_frg_2, UV);
// Texture2D:5
vec4 n_out5p0 = texture(tex_frg_5, UV);
// Texture2D:4
vec4 n_out4p0 = texture(tex_frg_4, UV);
// Output:0
ALBEDO = vec3(n_out2p0.xyz);
ROUGHNESS = n_out5p0.x;
NORMAL = vec3(n_out4p0.xyz);
}
"
modes/diffuse = 3
modes/specular = 1
nodes/fragment/2/node = SubResource("VisualShaderNodeTexture_v2np7")
nodes/fragment/2/position = Vector2(40, 20)
nodes/fragment/3/node = SubResource("VisualShaderNodeTexture_y2thm")
nodes/fragment/3/position = Vector2(-40, 360)
nodes/fragment/4/node = SubResource("VisualShaderNodeTexture_2d07w")
nodes/fragment/4/position = Vector2(-40, 680)
nodes/fragment/5/node = SubResource("VisualShaderNodeTexture_fban5")
nodes/fragment/5/position = Vector2(-400, 440)
nodes/fragment/connections = PackedInt32Array(2, 0, 0, 0, 5, 0, 0, 3, 4, 0, 0, 8)

View file

@ -0,0 +1,7 @@
[gd_resource type="ShaderMaterial" load_steps=2 format=3 uid="uid://b0r2c7455ns2l"]
[ext_resource type="Shader" uid="uid://5is85o5k05lb" path="res://Boats/cartoon-boat/textures/boat.tres" id="1_ydsd6"]
[resource]
render_priority = 0
shader = ExtResource("1_ydsd6")

BIN
Boats/cartoon-boat/textures/boat_4_lambert1_BaseColor.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b3htar5wp3ag2"
path.s3tc="res://.godot/imported/boat_4_lambert1_BaseColor.png-c115378871e9c14ec1968c2847d8cb2a.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Boats/cartoon-boat/textures/boat_4_lambert1_BaseColor.png"
dest_files=["res://.godot/imported/boat_4_lambert1_BaseColor.png-c115378871e9c14ec1968c2847d8cb2a.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
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=0

BIN
Boats/cartoon-boat/textures/boat_4_lambert1_Metalness.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://conebiij3gpe8"
path.s3tc="res://.godot/imported/boat_4_lambert1_Metalness.png-b09edd3d302acb8e51ce4c4cff9fe7de.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Boats/cartoon-boat/textures/boat_4_lambert1_Metalness.png"
dest_files=["res://.godot/imported/boat_4_lambert1_Metalness.png-b09edd3d302acb8e51ce4c4cff9fe7de.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
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=0

BIN
Boats/cartoon-boat/textures/boat_4_lambert1_Normal.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cqu3udiqdiw5u"
path.s3tc="res://.godot/imported/boat_4_lambert1_Normal.png-f950f375cb3203315d9984306087da8f.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Boats/cartoon-boat/textures/boat_4_lambert1_Normal.png"
dest_files=["res://.godot/imported/boat_4_lambert1_Normal.png-f950f375cb3203315d9984306087da8f.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
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=0

BIN
Boats/cartoon-boat/textures/boat_4_lambert1_Roughness.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://brltubuleyx6p"
path.s3tc="res://.godot/imported/boat_4_lambert1_Roughness.png-47634d56a8d31c3aeafe4adb7842f89b.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Boats/cartoon-boat/textures/boat_4_lambert1_Roughness.png"
dest_files=["res://.godot/imported/boat_4_lambert1_Roughness.png-47634d56a8d31c3aeafe4adb7842f89b.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
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=0

BIN
Boats/wooden-boat/source/untitled.fbx (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,38 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://dnxg7m7qb17m2"
path="res://.godot/imported/untitled.fbx-885fefb9c878ef12b4480941c30cc4bf.scn"
[deps]
source_file="res://Boats/wooden-boat/source/untitled.fbx"
dest_files=["res://.godot/imported/untitled.fbx-885fefb9c878ef12b4480941c30cc4bf.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
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=true
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={}
fbx/importer=0
fbx/allow_geometry_helper_nodes=false
fbx/embedded_image_handling=1

BIN
Boats/wooden-boat/textures/Untitled.png (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://lsn1rdgt1ahf"
path.s3tc="res://.godot/imported/Untitled.png-256d0bdd70e310aad901568479012ae9.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Boats/wooden-boat/textures/Untitled.png"
dest_files=["res://.godot/imported/Untitled.png-256d0bdd70e310aad901568479012ae9.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
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=0

View file

@ -49,10 +49,12 @@ shader_parameter/shore_fade = 0.165
shader_parameter/shore_intensity = 0.7
shader_parameter/metallic = 0.0
shader_parameter/roughness = 0.02
shader_parameter/water_alpha_fade = 4.407
shader_parameter/water_alpha_max = 3.791
shader_parameter/texture_normal = SubResource("NoiseTexture2D_d50os")
shader_parameter/texture_normal2 = SubResource("NoiseTexture2D_ca8p6")
shader_parameter/wave = SubResource("NoiseTexture2D_cuet1")
shader_parameter/wave_time = 21.1359
shader_parameter/wave_time = 82.8805
shader_parameter/wave_direction = Vector2(2, 0)
shader_parameter/wave_2_direction = Vector2(0, 0.9)
shader_parameter/time_scale = 0.02

View file

@ -12,6 +12,8 @@ uniform float shore_fade = 1.0;
uniform float shore_intensity = 1.0;
uniform float metallic : hint_range(0.0, 1.0) = 0;
uniform float roughness : hint_range(0.0, 1.0) = 0.02;
uniform float water_alpha_fade : hint_range(0.0, 5.0) = 1.0;
uniform float water_alpha_max : hint_range(0.001, 15.0) = 1.0;
uniform sampler2D texture_normal;
uniform sampler2D texture_normal2;
@ -80,9 +82,17 @@ void fragment() {
float fresnel = fresnel(5.0, NORMAL, VIEW);
vec3 surface_color = mix(albedo, albedo2, fresnel);
vec3 depth_color_adj = mix(edge_color, color, step(edge_scale, z_dif));
// Compute the world-space position from the depth texture as before.
vec4 alpha_depth_world_pos = INV_PROJECTION_MATRIX * vec4(SCREEN_UV * 2.0 - 1.0, texture(DEPTH_TEXTURE, SCREEN_UV).r, 1.0);
alpha_depth_world_pos.xyz /= alpha_depth_world_pos.w;
// Calculate water_alpha based on how far VERTEX.z is from the depth sample.
float water_alpha = clamp(1.0 - smoothstep(clamp(alpha_depth_world_pos.z + water_alpha_fade,0.0,water_alpha_max+alpha_depth_world_pos.z), alpha_depth_world_pos.z, VERTEX.y), 0.0, 1.0) ;
ALBEDO = clamp(surface_color + depth_color_adj + shore_color * shore_intensity,vec3(0),vec3(1.0));
ALPHA = 1.0;
ALPHA = water_alpha;
METALLIC = metallic;
ROUGHNESS = roughness;
NORMAL_MAP = normal_blend;

View file

@ -1,6 +1,6 @@
[gd_resource type="PlaneMesh" load_steps=2 format=3 uid="uid://c82xwqk7ljku0"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShaderl.tres" id="1_vta1j"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShader_Calm.tres" id="1_vta1j"]
[resource]
resource_name = "OceanTile_Main"

View file

@ -1,6 +1,6 @@
[gd_resource type="PlaneMesh" load_steps=2 format=3 uid="uid://wes0mbjy8mno"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShaderl.tres" id="1_0jqxu"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShader_Calm.tres" id="1_0jqxu"]
[resource]
resource_name = "OceanTile_Main"

View file

@ -1,6 +1,6 @@
[gd_resource type="PlaneMesh" load_steps=2 format=3 uid="uid://coql6l6v4cybp"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShaderl.tres" id="1_4jiw1"]
[ext_resource type="Material" uid="uid://cf3lxmfb2d7c8" path="res://Ocean/OceanShader_Calm.tres" id="1_4jiw1"]
[resource]
resource_name = "OceanTile_Main"

12
Ocean/WeatherManager.gd Normal file
View file

@ -0,0 +1,12 @@
@icon("uid://ckjj2o5jcfcy")
extends Node
class_name WeatherManager
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -0,0 +1 @@
uid://3ympc26kcuul

View file

@ -1,4 +1,5 @@
@tool
@icon("uid://nwanoqn5yas8")
extends Node3D
class_name Ocean

View file

@ -1,10 +1,12 @@
[gd_scene load_steps=13 format=3 uid="uid://bhwuawppmqk4"]
[gd_scene load_steps=15 format=3 uid="uid://bhwuawppmqk4"]
[ext_resource type="Script" uid="uid://cdnrxp6nu1wor" path="res://Ocean/ocean.gd" id="1_xncsh"]
[ext_resource type="PlaneMesh" uid="uid://wes0mbjy8mno" path="res://Ocean/OceanTile_PlaneMesh_Main.tres" id="2_7sjql"]
[ext_resource type="PlaneMesh" uid="uid://coql6l6v4cybp" path="res://Ocean/OceanTile_PlaneMesh_Near.tres" id="2_ydaaq"]
[ext_resource type="PlaneMesh" uid="uid://c82xwqk7ljku0" path="res://Ocean/OceanTile_PlaneMesh_Far.tres" id="3_spien"]
[ext_resource type="Script" uid="uid://cnfkxclrq0i0s" path="res://Boats/buyancy_probe.gd" id="5_spien"]
[ext_resource type="Script" uid="uid://3ympc26kcuul" path="res://Ocean/WeatherManager.gd" id="6_kisq7"]
[ext_resource type="PackedScene" uid="uid://bdfqifxsvpts4" path="res://Boats/boat.tscn" id="7_0g14k"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_xncsh"]
sky_top_color = Color(0.191699, 0.357914, 1, 1)
@ -24,6 +26,7 @@ sdfgi_enabled = true
glow_enabled = true
fog_enabled = true
fog_sky_affect = 0.699
volumetric_fog_enabled = true
[sub_resource type="BoxMesh" id="BoxMesh_spien"]
size = Vector3(5, 0.2, 5)
@ -38,6 +41,7 @@ size = Vector3(0.3, 0.8, 0.3)
size = Vector3(0.3, 0.8, 0.3)
[node name="OpenWorld" type="Node3D"]
metadata/_edit_lock_ = true
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_q57bq")
@ -46,638 +50,592 @@ environment = SubResource("Environment_q57bq")
transform = Transform3D(-0.149535, -0.420992, 0.894653, 0, 0.904827, 0.425779, -0.988756, 0.0636691, -0.135304, 0, 1.45796, 0)
light_color = Color(0.969986, 0.876638, 0.798898, 1)
shadow_enabled = true
metadata/_edit_lock_ = true
[node name="Ocean" type="Node3D" parent="." groups=["Ocean"]]
script = ExtResource("1_xncsh")
metadata/_custom_type_script = "uid://cdnrxp6nu1wor"
metadata/_edit_lock_ = true
[node name="OceanTile25" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile00" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile26" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile01" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile27" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile02" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, -10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile28" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile03" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, 0)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile29" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile04" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, 10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile30" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile05" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile31" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile06" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -30, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile32" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile07" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile33" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile08" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile34" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile09" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, -10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile35" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile10" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, 0)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile36" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile11" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, 10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile37" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile12" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile38" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile13" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile39" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile14" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile40" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile15" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile41" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile16" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, -10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile42" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile17" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, 0)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile43" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile18" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, 10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile44" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile19" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile45" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile20" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile46" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile21" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile47" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile22" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile48" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile23" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile49" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile24" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
mesh = ExtResource("2_7sjql")
metadata/_edit_lock_ = true
[node name="OceanTile50" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile25" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile51" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile26" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile52" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile27" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile53" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile28" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile54" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile29" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile55" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile30" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, -10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile56" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile31" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, 0)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile57" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile32" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, 10)
mesh = ExtResource("2_ydaaq")
metadata/_edit_lock_ = true
[node name="OceanTile58" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile33" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile59" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile34" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile60" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile35" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile61" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile36" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile62" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile37" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, -10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile63" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile38" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, 0)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile64" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile39" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, 10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile65" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile40" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile66" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile41" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile67" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile42" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, -30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile68" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile43" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, -20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile69" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile44" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, -10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile70" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile45" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, 0)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile71" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile46" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, 10)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile72" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile47" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, 20)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="OceanTile73" type="MeshInstance3D" parent="Ocean"]
[node name="OceanTile48" type="MeshInstance3D" parent="Ocean" groups=["OceanTiles"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 30, 0, 30)
mesh = ExtResource("3_spien")
metadata/_edit_lock_ = true
[node name="Boat" type="RigidBody3D" parent="."]
[node name="Props" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.331476, 2.65347)
mass = 10.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0588136, 0)
mesh = SubResource("BoxMesh_spien")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props"]
shape = SubResource("BoxShape3D_kisq7")
[node name="BuyancyProbe" type="Marker3D" parent="Boat"]
[node name="BuyancyProbe" type="Marker3D" parent="Props"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, -0.5, 2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, -0.5, -2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, -0.5, 2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, -0.5, -2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat2" type="RigidBody3D" parent="."]
[node name="Props2" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.6813, 0.331476, 0.403838)
mass = 10.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat2"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0588136, 0)
mesh = SubResource("BoxMesh_spien")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat2"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props2"]
shape = SubResource("BoxShape3D_kisq7")
[node name="BuyancyProbe" type="Marker3D" parent="Boat2"]
[node name="BuyancyProbe" type="Marker3D" parent="Props2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, -0.5, 2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat2"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, -0.5, -2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat2"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, -0.5, 2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat2"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, -0.5, -2)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat3" type="RigidBody3D" parent="."]
[node name="Props3" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.0411781, -0.999152, 0, 0.999152, 0.0411781, 0.938181, 0.543982, -10.4465)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat3"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props3"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat3"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props3"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat3"]
[node name="BuyancyProbe" type="Marker3D" parent="Props3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat3"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat3"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat3"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat4" type="RigidBody3D" parent="."]
[node name="Props4" type="RigidBody3D" parent="."]
transform = Transform3D(0.676837, -0.735508, -0.0303125, 0, 0.0411781, -0.999152, 0.736133, 0.676263, 0.0278709, 3.69887, 0.543982, -9.62207)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat4"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props4"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat4"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props4"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat4"]
[node name="BuyancyProbe" type="Marker3D" parent="Props4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat4"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat4"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat4"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat5" type="RigidBody3D" parent="."]
[node name="Props5" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.0411781, -0.999152, 0, 0.999152, 0.0411781, 4.62591, 0.543982, 2.98498)
mass = 2.0
mass = 5.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat5"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props5"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat5"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props5"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat5"]
[node name="BuyancyProbe" type="Marker3D" parent="Props5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat5"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat5"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat5"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props5"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat6" type="RigidBody3D" parent="."]
[node name="Props6" type="RigidBody3D" parent="."]
transform = Transform3D(0.676837, -0.735508, -0.0303125, 0, 0.0411781, -0.999152, 0.736133, 0.676263, 0.0278709, 7.3866, 0.543982, 3.8094)
mass = 2.0
mass = 5.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat6"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props6"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat6"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props6"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat6"]
[node name="BuyancyProbe" type="Marker3D" parent="Props6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat6"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat6"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat6"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props6"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat7" type="RigidBody3D" parent="."]
[node name="Props7" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.0411781, -0.999152, 0, 0.999152, 0.0411781, 4.62591, 0.543982, -13.9738)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat7"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props7"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat7"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props7"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat7"]
[node name="BuyancyProbe" type="Marker3D" parent="Props7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat7"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat7"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat7"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props7"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat8" type="RigidBody3D" parent="."]
[node name="Props8" type="RigidBody3D" parent="."]
transform = Transform3D(0.676837, -0.735508, -0.0303125, 0, 0.0411781, -0.999152, 0.736133, 0.676263, 0.0278709, 7.3866, 0.543982, -13.1494)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat8"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props8"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat8"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props8"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat8"]
[node name="BuyancyProbe" type="Marker3D" parent="Props8"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat8"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props8"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat8"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props8"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat8"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props8"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat9" type="RigidBody3D" parent="."]
[node name="Props9" type="RigidBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 0.0411781, -0.999152, 0, 0.999152, 0.0411781, -24.7833, 0.543982, 20.1903)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat9"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props9"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat9"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props9"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat9"]
[node name="BuyancyProbe" type="Marker3D" parent="Props9"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat9"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props9"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat9"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props9"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat9"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props9"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Boat10" type="RigidBody3D" parent="."]
[node name="Props10" type="RigidBody3D" parent="."]
transform = Transform3D(0.676837, -0.735508, -0.0303125, 0, 0.0411781, -0.999152, 0.736133, 0.676263, 0.0278709, -22.0226, 0.543982, 21.0147)
mass = 2.0
[node name="MeshInstance3D" type="MeshInstance3D" parent="Boat10"]
[node name="MeshInstance3D" type="MeshInstance3D" parent="Props10"]
mesh = SubResource("BoxMesh_kisq7")
[node name="CollisionShape3D" type="CollisionShape3D" parent="Boat10"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="Props10"]
shape = SubResource("BoxShape3D_0g14k")
[node name="BuyancyProbe" type="Marker3D" parent="Boat10"]
[node name="BuyancyProbe" type="Marker3D" parent="Props10"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe2" type="Marker3D" parent="Boat10"]
[node name="BuyancyProbe2" type="Marker3D" parent="Props10"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, -0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe3" type="Marker3D" parent="Boat10"]
[node name="BuyancyProbe3" type="Marker3D" parent="Props10"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="BuyancyProbe4" type="Marker3D" parent="Boat10"]
[node name="BuyancyProbe4" type="Marker3D" parent="Props10"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4, 0.5, 0)
script = ExtResource("5_spien")
float_strength = 5.0
float_strength = 2.0
show_probe = true
metadata/_custom_type_script = "uid://cnfkxclrq0i0s"
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(0.817859, -0.4492, 0.35962, 0, 0.62497, 0.780649, -0.575419, -0.63846, 0.511137, 8.74584, 11.0902, 11.4458)
current = true
[node name="WeatherManager" type="Node" parent="."]
script = ExtResource("6_kisq7")
[node name="Boat" parent="." instance=ExtResource("7_0g14k")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.13393, 0, -0.448954)

67
export_presets.cfg Normal file
View file

@ -0,0 +1,67 @@
[preset.0]
name="Windows Desktop"
platform="Windows Desktop"
runnable=true
advanced_options=false
dedicated_server=false
custom_features=""
export_filter="scenes"
export_files=PackedStringArray("res://OpenWorld.tscn")
include_filter=""
exclude_filter="*.psd"
export_path="Builds/ChatBoat.exe"
patches=PackedStringArray()
encryption_include_filters=""
encryption_exclude_filters=""
seed=0
encrypt_pck=false
encrypt_directory=false
script_export_mode=1
[preset.0.options]
custom_template/debug=""
custom_template/release=""
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=true
application/icon=""
application/console_wrapper_icon=""
application/icon_interpolation=4
application/file_version=""
application/product_version=""
application/company_name="Astucious Ferret Games"
application/product_name="ChatBoat"
application/file_description=""
application/copyright="Lucas Peter"
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}'"

View file

@ -1 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16">
<title>Nodes</title>
<style>
.s0 { fill: #000000 }
</style>
<g id="-e-game">
<path fill-rule="evenodd" class="s0" d="m9.2 14.4q0 0 0 0 0 0-0.1 0zm0 0c0.7-0.1 1.2-0.6 1.6-1q0.1-0.2 0.3-0.2 0.2 0.1 0.3 0.2c0.4 0.7 1.1 0.9 2 1 0.2 0 0.3 0.2 0.3 0.4 0 0.2-0.2 0.3-0.4 0.3-0.9-0.1-1.7-0.3-2.3-0.9q-0.2 0.3-0.6 0.5 0.2 0 0.3 0c0.2 0.1 0.4 0.2 0.4 0.5 0 0.2-0.2 0.3-0.4 0.3q-1.6-0.2-2.6-1c-0.7 0.7-1.8 0.9-3 1-0.2 0-0.4-0.2-0.4-0.4 0-0.2 0.1-0.3 0.3-0.4q0.4 0 0.7 0-0.3-0.2-0.6-0.5c-0.5 0.6-1.3 0.8-2.2 0.9-0.2 0-0.4-0.1-0.4-0.3-0.1-0.2 0.1-0.4 0.3-0.4 0.8-0.1 1.6-0.3 2-1q0.1-0.1 0.2-0.2 0.2 0 0.4 0.2c0.3 0.4 0.8 1 1.6 1q0 0 0 0 0.5-0.2 0.8-0.6 0.1-0.2 0.2-0.2 0.2 0 0.3 0.1 0.4 0.4 0.9 0.7zm3-3.3c0-0.2 0.1-0.4 0.3-0.5 0.2 0 0.4 0.1 0.4 0.3 0.2 0.6 0.3 1 0.7 1.2 0.3 0.3 0.8 0.4 1.6 0.4 0.2 0 0.4 0.1 0.4 0.4 0 0.2-0.2 0.3-0.4 0.3-1 0.1-1.6-0.1-2.1-0.5-0.5-0.3-0.7-0.9-0.9-1.6zm-1.5-0.9c0-0.2 0.2-0.4 0.4-0.3 0.2 0 0.4 0.2 0.4 0.4-0.2 1.2-0.9 1.8-1.8 2.2-0.2 0-0.4 0-0.5-0.2 0-0.2 0.1-0.4 0.2-0.5 0.7-0.3 1.2-0.7 1.3-1.6zm-1.7-1q-0.3 0.2-0.5 0.3-0.3 0-0.6-0.3c-0.1-0.1-0.3-0.4-0.3-0.5-0.3 0-0.6 0-0.6 0q-0.2 0-0.4-0.1-0.1-0.2 0-0.4c0 0 1.2-2.6 5.6-2.5 1.6 0.1 2.1 1.4 2.4 2.9 0.1 0.8 0.2 1.6 0.3 2.2 0.1 0.3 0.2 0.5 0.5 0.6 0.2 0.1 0.2 0.3 0.1 0.5-0.1 0.2-0.3 0.3-0.5 0.2-0.3-0.2-0.6-0.6-0.8-1.1-0.2-0.6-0.2-1.5-0.4-2.3 0-0.5-0.5-0.9-0.5-0.7 0 0.2-0.1 0.4-0.3 0.4-0.4 0-0.7 0.2-1.1 0.4-0.4 0.3-0.8 0.6-1.1 0.7-0.3 0.1-0.6 0-0.8-0.3q-0.2-0.2-0.4-0.4c0.2 0.4 0.3 1 0 1.7-0.2 0.6-0.8 1.3-2.2 1.6-0.8 0.2-1.6 0.1-2.4 0-0.7-0.2-1.4-0.4-2.2-0.4-0.9 0-1.6 0.7-1.6 0.7-0.1 0.1-0.4 0.1-0.5 0q-0.1-0.1-0.1-0.3v-3.4q0-0.2 0.1-0.3c0 0 0.6-0.4 1.1-0.6 0.2-0.1 0.5-0.2 0.7-0.2 0.2 0 0.4 0.2 0.6 0.4q0.1 0.1 0.2 0.3c0 0 0 0.1 0 0.1q0.1 0 0.2 0 0.2 0 0.3-0.1 0.4 0 0.7 0.1 0.2 0.1 0.4 0.4c0.2 0.1 0.3 0.3 0.4 0.4 0.2 0.1 0.4 0.2 0.7 0.4q0.3 0.1 0.5 0.4c0.2 0.3 0.3 1.1 0.4 1.4q0.2 0 0.3 0c1.1-0.3 1.6-0.7 1.7-1.2 0.2-0.3 0.1-0.7 0.1-1zm-4.3-4.9c0.2 0 0.4 0.1 0.4 0.3v0.4c0 0.2-0.1 0.3-0.3 0.4l0.8 3.5q-0.2-0.1-0.3-0.2c-0.1-0.1-0.2-0.3-0.4-0.5q-0.2-0.3-0.4-0.4-0.3-0.1-0.7-0.1-0.1 0.1-0.3 0.1-0.1 0-0.1 0c-0.1 0-0.1-0.1-0.1-0.2q-0.1-0.1-0.2-0.3c-0.2-0.2-0.4-0.4-0.6-0.4-0.2 0-0.5 0.1-0.7 0.2-0.2 0.1-0.5 0.3-0.7 0.4l0.5-2.1c-0.1-0.1-0.3-0.2-0.3-0.4v-0.4c0-0.2 0.2-0.3 0.4-0.3h3zm6.3 3.6c0.2-0.2 0.4-0.4 0.8-0.3 0.2 0.1 0.4-0.1 0.4-0.3 0.1-0.2-0.1-0.4-0.3-0.4-0.6-0.2-1 0-1.4 0.5-0.2 0.1-0.2 0.3 0 0.5 0.1 0.1 0.3 0.1 0.5 0zm-6.3-5.5v1.1h-3v-1.1zm-1.8-1.8c0.2-0.1 0.4-0.1 0.6 0l1 1h-2.6z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 994 B

After

Width:  |  Height:  |  Size: 2.5 KiB

9
icons/Boat.svg Normal file
View file

@ -0,0 +1,9 @@
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 14" width="16" height="14">
<title>-e-Boat</title>
<style>
.s0 { fill: #fc7f7f }
</style>
<g id="-e-Boat">
<path class="s0" d="m7 11l2.7 1.1c1.1 0.4 2.4 0.4 3.5 0l2.8-1.1q0.1-0.1 0.2-0.1v1.4l-2.5 1c-1.4 0.6-3 0.6-4.5 0l-2.7-1.1c-1.1-0.4-2.4-0.4-3.5 0l-3 1.2v-1.4l2.5-1c1.4-0.6 3-0.6 4.5 0zm1.1-11c0.4 0 0.7 0.3 0.7 0.7v0.7h2c0.7 0 1.4 0.6 1.4 1.3v3l1.3 0.4-1.1 5.5c-0.8 0.2-1.7 0.2-2.4-0.2l-2.8-1c-1.2-0.5-2.5-0.7-3.7-0.4l-0.8-3.9 1.4-0.4v-3c0-0.7 0.6-1.3 1.3-1.3h2v-0.7c0-0.4 0.3-0.7 0.7-0.7zm-0.7 2.7h-2v2.7l2-0.5zm3.4 0h-2v2.2l2 0.5z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 631 B

37
icons/Boat.svg.import Normal file
View file

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3ugrjpybrl4e"
path="res://.godot/imported/Boat.svg-75bc0fadb884e0e75bf1a31ed1c977a6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icons/Boat.svg"
dest_files=["res://.godot/imported/Boat.svg-75bc0fadb884e0e75bf1a31ed1c977a6.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

BIN
icons/Nodes.psd (Stored with Git LFS) Normal file

Binary file not shown.

14
icons/Ocean.svg Normal file
View file

@ -0,0 +1,14 @@
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16">
<title>-e-Ocean</title>
<style>
.s0 { fill: #fc7f7f }
.s1 { fill: #fc7f7f;stroke: #fc7f7f;stroke-miterlimit:100 }
</style>
<g id="-e-Ocean">
<path class="s0" d="m7.9 11.1l-0.5-0.6c0.7-0.6 0.9-1.1 0.8-2.3l0.7-0.1c0.2 1.4-0.1 2.2-1 3z"/>
<path class="s0" d="m6.2 14.5v-0.8c2.1 0 3.5-1.7 3.6-1.7 0-0.1 0.6-0.7 1.5-0.8q0.9 0 1.7 0.9l-0.6 0.5q-0.6-0.6-1.1-0.6c-0.6 0-1 0.5-1 0.5 0 0-1.7 2-4.1 2z"/>
<path class="s0" d="m3.1 12.1c-0.2 0-0.5-0.1-0.6-0.3-0.5-0.5-0.4-1.4-0.3-1.8 0-0.2 0.1-0.3 0.3-0.3 0.1 0 0.2 0 0.3 0.2 0.1 0.2 0.4 0.5 0.8 0.8 0.2 0.2 0.3 0.4 0.3 0.6q0 0.3-0.2 0.6-0.3 0.2-0.6 0.2zm-0.5-1.7c-0.1 0.3 0 0.8 0.2 1.1q0.1 0.2 0.3 0.2c0.1 0 0.2-0.1 0.2-0.1q0.1-0.1 0.1-0.3 0-0.1-0.1-0.2c-0.3-0.2-0.6-0.5-0.7-0.7z"/>
<path class="s1" d="m8.4 14.9c-1.9 0-3.6-0.7-4.8-2l-0.4-0.4 0.5-0.2c1.1-0.5 1.8-1.3 1.8-1.3 0.1-0.1 0.7-0.7 1.5-0.7q0.9-0.1 1.7 0.8 0.6 0.7 1.3 0.9l-0.3 0.7q-0.8-0.3-1.5-1.1-0.6-0.6-1.2-0.6c-0.5 0-0.9 0.5-0.9 0.5 0 0-0.6 0.7-1.6 1.2 1.1 0.9 2.4 1.4 3.9 1.4 3.3 0 6-2.7 6-6q0-0.5-0.1-1.1c-0.3-1.4-1.2-2.1-2-2.2-1-0.1-1.9 0.4-2.1 1.2-0.7 2.4-2.1 3.1-3.1 2.9-0.6-0.2-1.2-0.7-1.2-1.5-0.8 1.3-1.8 2.1-2.9 2.1-0.7 0-1.3-0.4-1.7-1-0.6-1.1-0.3-2.8 0.8-4.4 1.7-2.6 4.4-3.1 6.3-3.1 1.8 0 3.5 0.8 4.8 2.2 0.9 0.9 1.5 2.1 1.8 3.4q0.1 0.6 0.1 1.5c0 3.7-3 6.8-6.7 6.8zm0-13.2c-1.8 0-4.1 0.5-5.7 2.8-0.9 1.4-1.2 2.8-0.7 3.6 0.2 0.4 0.6 0.7 1 0.7 0.9-0.1 1.8-0.9 2.5-2.2 0.3-0.7 0.6-0.7 0.8-0.6 0.3 0.1 0.5 0.5 0.4 0.8-0.2 0.8 0.1 1.2 0.6 1.3 0.7 0.2 1.7-0.5 2.1-2.3 0.3-1.2 1.6-2 3-1.8q0.4 0.1 0.8 0.3c-1.1-1.6-2.9-2.6-4.8-2.6z"/>
<path class="s0" d="m11.9 10.5c-0.1-0.2-0.1-0.4 0-0.5 0.7-1 0.4-2.3 0.2-2.9 0-0.2 0.1-0.4 0.3-0.5 0.2-0.1 0.4 0 0.5 0.2 0.2 0.8 0.5 2.3-0.4 3.6-0.1 0.2-0.4 0.2-0.6 0.1z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

37
icons/Ocean.svg.import Normal file
View file

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://6w31a2gju6bi"
path="res://.godot/imported/Ocean.svg-6c6a877658fd7781c0618a503ad7db85.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icons/Ocean.svg"
dest_files=["res://.godot/imported/Ocean.svg-6c6a877658fd7781c0618a503ad7db85.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

9
icons/Ocean2.svg Normal file
View file

@ -0,0 +1,9 @@
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 11" width="14" height="11">
<title>-e-Ocean2</title>
<style>
.s0 { fill: #fc7f7f }
</style>
<g id="-e-Ocean2">
<path fill-rule="evenodd" class="s0" d="m14 6.2c-0.5 1.2-1.4 2.2-2.6 3.1-1.5 1-3.5 1.7-5.6 1.7-2.1 0-3.8-0.7-5-1.7q-0.5-0.5-0.8-0.9c0.4-0.1 0.9-0.1 1.3-0.1 1.2 0.1 2.4 0.1 3.6-0.8q0.3-0.3 0.6-0.6c0.4-0.6 0.7-1.2 0.7-1.9 0-0.6-0.2-1.1-0.7-1.6q-0.2-0.2-0.4-0.3 0.3-0.1 0.6-0.3c0.9-0.5 1.2-0.6 1.2-0.5 0 0-0.1 0.2-0.3 0.4q0 0.1-0.1 0.2c-0.2 0.3-0.2 0.4-0.1 0.5 0.2 0.1 0.4 0 0.8-0.2 0.9-0.4 2.5-1.1 3.5 0.1-0.6-0.1-1.2 0-1.8 0.2q-0.6 0.3-1.1 0.7-0.2 0.3-0.1 0.4c0.2 0.1 0.6 0 1 0 0.2-0.1 0.4-0.2 0.4-0.1 0 0-0.3 0.1-1.1 0.5q-0.4 0.1-0.5 0.4 0 0.1 0.1 0.3 0.1 0.1 0.3 0.1c0.3 0.1 0.7 0.1 1.3-0.2q0 0 0 0.1c0.4 0.3 0.5 0.8 0.4 1.2q-0.1 0.7-0.8 1.3 0 0 0 0-0.1 0.1-0.2 0.1c-0.9 0.8-1.9 0.7-2.9 0.7-0.8 0-1.6-0.1-2.3 0.3q-0.1 0.1 0 0.2 0 0 0.1 0c0.7-0.3 1.4-0.3 2.1-0.3 1.1 0 2.1 0.1 3.2-0.7q0-0.1 0.1-0.1 0 0 0 0c0.6-0.5 0.9-1 1-1.5 0-0.5-0.1-1-0.5-1.4q0.2-0.1 0.3-0.1c0.5-0.3 0.7-0.4 0.7-0.4 0.1 0 0 0.2 0 0.3q-0.1 0.2-0.1 0.5c-0.1 0.2 0 0.3 0.2 0.3 0.2 0 0.4-0.1 0.7-0.2 0.5-0.2 1.3-0.6 1.7-0.1 0.3 0.3 0.3 0.8 0.2 1.2-0.2 0.4-0.6 0.8-0.9 1.1-1.3 1-2.7 1.3-3.9 1.5-0.7 0.2-1.3 0.3-1.7 0.6q-0.1 0 0 0.1 0.1 0.1 0.2 0.1c0.3-0.3 0.9-0.4 1.6-0.5 1.1-0.3 2.6-0.6 3.9-1.7 0.4-0.3 0.8-0.7 1-1.2 0.2-0.4 0.2-0.9-0.2-1.4-0.6-0.5-1.4-0.2-2 0.1-0.2 0.1-0.4 0.2-0.5 0.2q-0.1 0-0.1-0.1 0.1-0.3 0.1-0.4c0.1-0.3 0.1-0.4 0.1-0.5-0.1-0.2-0.4-0.1-1.1 0.3q-0.2 0.1-0.4 0.2 0 0 0 0c-0.6 0.2-1 0.3-1.2 0.2q-0.1 0-0.2-0.1 0-0.1 0-0.1 0-0.1 0.2-0.2c1.1-0.5 1.4-0.7 1.3-0.8 0-0.2-0.3-0.1-0.6-0.1-0.3 0.1-0.7 0.1-0.8 0.1q0 0 0.1-0.1 0.4-0.4 1-0.6c0.6-0.2 1.2-0.3 1.9-0.2q0.8 0.1 1.5 0.5 0 0 0 0 0.2 0.1 0.3 0.2c0.6 0.5 1 1.1 1.3 1.9q0 0 0 0.1zm-11.6-4.3q0 0 0 0 0 0.1-0.1 0.3-0.1 0.1-0.3 0.3 0 0 0 0-0.2 0.1-0.4 0.1-0.2 0-0.2-0.1-0.1-0.1 0-0.3 0.1-0.1 0.3-0.3 0.2-0.1 0.4-0.1 0.2 0 0.3 0.1zm8.7 1.4c-1.1-1.5-3-0.7-4-0.3-0.3 0.1-0.5 0.2-0.5 0.2q0 0 0.1-0.2 0.1-0.1 0.1-0.2c0.2-0.3 0.4-0.5 0.3-0.7-0.1-0.1-0.5-0.1-1.5 0.5q-0.4 0.2-0.8 0.4 0 0 0 0c-0.8 0.3-1.4 0.4-1.8 0.3q-0.2-0.1-0.3-0.2-0.1-0.1 0-0.2 0-0.2 0.4-0.4c1.5-0.7 2-1 1.9-1.1 0-0.1-0.4-0.1-0.9 0-0.5 0.1-1.1 0.2-1.2 0.1q-0.1 0 0.1-0.2 0.6-0.6 1.5-0.9c0.9-0.4 1.9-0.5 3-0.4 1.1 0.2 2.1 0.6 3 1.3 0.7 0.6 1.4 1.3 1.7 2.4q-0.5-0.3-1.1-0.4zm-4.3 2.3c-0.2 0.5-0.4 1-0.8 1.2q-0.1 0.1 0 0.1 0 0.1 0.1 0.1c0.4-0.3 0.7-0.8 0.8-1.4 0.2-0.5 0.2-1.1 0-1.5q-0.1-0.1-0.1 0-0.1 0-0.1 0.1c0.2 0.3 0.2 0.9 0.1 1.4zm0.9 0.6q0 0.1 0 0.2c0 0.4-0.3 0.8-0.7 1.1-0.5 0.2-1 0.4-1.5 0.5q-0.2 0-0.4 0.1-0.1 0-0.1 0 0 0.1 0 0.1 0.2 0 0.5 0c0.5-0.1 1.1-0.3 1.6-0.6 0.4-0.3 0.8-0.7 0.8-1.2q0-0.1 0-0.2 0-0.1-0.1-0.1-0.1 0-0.1 0.1zm3.5 0.4c0 0.4-0.1 0.8-0.4 1.1-0.2 0.3-0.6 0.6-1 0.7q-0.1 0-0.2 0 0 0 0 0.1 0 0.1 0.1 0.1 0 0 0.1 0c0.5-0.2 0.9-0.5 1.2-0.8 0.3-0.4 0.4-0.8 0.4-1.2q0-0.1 0-0.1 0-0.1-0.1-0.1-0.1 0-0.1 0.1 0 0.1 0 0.1zm-3.1 1.3c-0.4 0.2-0.8 0.3-1.3 0.4q-0.1 0-0.1 0.1 0 0 0.1 0c0.5 0 1-0.2 1.4-0.4 0.4-0.2 0.7-0.5 0.7-0.8q0-0.1-0.1-0.1-0.1 0-0.1 0.1c0 0.2-0.3 0.5-0.6 0.7zm-5.3-4q0.1 0.2 0 0.5-0.2 0.2-0.5 0.4-0.3 0.2-0.6 0.2-0.3 0.1-0.4-0.1-0.2-0.2 0-0.5 0.2-0.2 0.5-0.4 0.3-0.2 0.6-0.2 0.3 0 0.4 0.1z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

37
icons/Ocean2.svg.import Normal file
View file

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://nwanoqn5yas8"
path="res://.godot/imported/Ocean2.svg-c7e900944be56916999acf20e410aafc.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icons/Ocean2.svg"
dest_files=["res://.godot/imported/Ocean2.svg-c7e900944be56916999acf20e410aafc.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

9
icons/Probe.svg Normal file
View file

@ -0,0 +1,9 @@
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14">
<title>-e-Probe</title>
<style>
.s0 { fill: #fc7f7f }
</style>
<g id="-e-Probe">
<path id="Probe" fill-rule="evenodd" class="s0" d="m6.6 0h0.8c0.6 0 0.8 0.5 0.8 0.5h1.3c1.1 0 2.1 0.5 2.9 1.2 0.7 0.8 1.2 1.8 1.2 2.9v1.2c0.2 0.2 0.4 0.5 0.4 0.8v0.8c0 0.3-0.2 0.6-0.4 0.8v1.3c0 1.1-0.5 2.1-1.2 2.9-0.8 0.7-1.8 1.2-2.9 1.2h-1.3c-0.2 0.2-0.5 0.4-0.8 0.4h-0.8c-0.3 0-0.6-0.2-0.8-0.4h-1.3c-1.1 0-2.1-0.5-2.9-1.2-0.7-0.8-1.2-1.8-1.2-2.9v-1.3c-0.2-0.2-0.4-0.5-0.4-0.8v-0.8c0-0.3 0.2-0.6 0.4-0.8v-1.2c0-1.1 0.5-2.1 1.2-2.9 0.8-0.7 1.8-1.2 2.9-1.2h1.3c0 0 0.2-0.5 0.8-0.5zm1.6 0.5q0 0 0 0zm0.1 0.7v1.8c0 0.5-0.4 1-0.9 1h-0.8c-0.5 0-0.9-0.5-0.9-1v-1.8h-1.2c-0.9 0-1.8 0.4-2.4 1-0.6 0.6-1 1.5-1 2.4v1.1h1.9c0.5 0 1 0.4 1 0.9v0.8c0 0.5-0.5 0.9-1 0.9h-1.9v1.2c0 0.9 0.4 1.8 1 2.4 0.6 0.6 1.5 1 2.4 1h1.2v-1.9c0-0.5 0.4-1 0.9-1h0.8c0.5 0 0.9 0.5 0.9 1v1.9h1.2c0.9 0 1.8-0.4 2.4-1 0.6-0.6 1-1.5 1-2.4v-1.2h-1.9c-0.5 0-1-0.4-1-0.9v-0.8c0-0.5 0.5-0.9 1-0.9h1.9v-1.1c0-0.9-0.4-1.8-1-2.4-0.6-0.6-1.5-1-2.4-1zm1.8 7.7q0-0.1 0.1-0.1h2.3q0.1 0 0.1 0.1 0 0 0 0.1c-0.6 1.7-2 3.1-3.7 3.7q-0.1 0-0.1 0 0-0.1 0-0.1v-2.3q0-0.1 0-0.1 0.8-0.5 1.3-1.3zm-5 1.4v2.3q0 0 0 0.1-0.1 0-0.1 0c-1.8-0.6-3.1-2-3.7-3.7q-0.1-0.1 0-0.1 0-0.1 0.1-0.1h2.3q0 0 0.1 0.1 0.4 0.8 1.3 1.3 0 0 0 0.1zm-1.4-5.1h-2.3q-0.1 0-0.1-0.1-0.1 0 0-0.1c0.6-1.7 1.9-3.1 3.7-3.7q0 0 0.1 0 0 0.1 0 0.1v2.3q0 0.1 0 0.1-0.9 0.5-1.3 1.3-0.1 0.1-0.1 0.1zm8.9-0.1q0 0.1-0.1 0.1h-2.3q-0.1 0-0.1-0.1-0.5-0.8-1.3-1.3 0 0 0-0.1v-2.3q0 0 0-0.1 0 0 0.1 0c1.7 0.6 3.1 2 3.7 3.7q0 0.1 0 0.1z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

37
icons/Probe.svg.import Normal file
View file

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ck86evu4iyhyg"
path="res://.godot/imported/Probe.svg-788444d16b202938a7211927a742dea3.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icons/Probe.svg"
dest_files=["res://.godot/imported/Probe.svg-788444d16b202938a7211927a742dea3.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

11
icons/Weather.svg Normal file
View file

@ -0,0 +1,11 @@
<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 11" width="12" height="11">
<title>-e-Weather</title>
<style>
.s0 { fill: #fc7f7f }
.s1 { fill: #8da5f3 }
</style>
<g id="-e-Weather">
<path id="Cloud" class="s0" d="m11.9 8.9c0 1.2-0.9 2.2-2.1 2.2h-7.2c-2.5 0-2.6-1.2-2.6-2.6 0-1.4 1.1-2.5 2.6-2.5h0.5c0.4-1.5 1.7-2.6 3.3-2.6 1.9 0 3.4 1.5 3.4 3.4 1.2 0 2.1 1 2.1 2.1z"/>
<path id="Sun" class="s1" d="m4.7 0h-0.9v1.3h0.9zm2.9 1.5l-0.6-0.6-0.9 0.9 0.6 0.6zm-5.5 4.1q0.2-0.1 0.5-0.1h0.2c0.5-1.5 2-2.5 3.6-2.5q0 0 0.1 0c-0.5-0.8-1.3-1.3-2.2-1.3-1.5 0-2.6 1.1-2.6 2.5q0 0.8 0.4 1.4zm0.3-3.8l-0.9-0.9-0.6 0.6 0.9 0.9zm-1.1 2h-1.3v0.9h1.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 683 B

37
icons/Weather.svg.import Normal file
View file

@ -0,0 +1,37 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ckjj2o5jcfcy"
path="res://.godot/imported/Weather.svg-7b5f0f3c54711a8b10e89f516b3e247c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icons/Weather.svg"
dest_files=["res://.godot/imported/Weather.svg-7b5f0f3c54711a8b10e89f516b3e247c.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

7
icons/icons_credits.md Normal file
View file

@ -0,0 +1,7 @@
All icons are modified to follow the style of the official icons ([found here](https://github.com/godotengine/godot/blob/master/editor/icons/))
- Boat by Nathaniel S. from <a href="https://thenounproject.com/browse/icons/term/boat/" target="_blank" title="Boat Icons">Noun Project</a> (CC BY 3.0)
- ocean wave by Giorgio Pallini from <a href="https://thenounproject.com/browse/icons/term/ocean-wave/" target="_blank" title="ocean wave Icons">Noun Project</a> (CC BY 3.0)
- wave by Ishaq_hmad from <a href="https://thenounproject.com/browse/icons/term/wave/" target="_blank" title="wave Icons">Noun Project</a> (CC BY 3.0)
- weather by Chehuna from <a href="https://thenounproject.com/browse/icons/term/weather/" target="_blank" title="weather Icons">Noun Project</a> (CC BY 3.0)
- Life Saver by popcornarts from <a href="https://thenounproject.com/browse/icons/term/life-saver/" target="_blank" title="Life Saver Icons">Noun Project</a> (CC BY 3.0)
- Ocean by Soni Sokell from <a href="https://thenounproject.com/browse/icons/term/ocean/" target="_blank" title="Ocean Icons">Noun Project</a> (CC BY 3.0)

View file

@ -11,6 +11,8 @@ config_version=5
[application]
config/name="ChatBoat"
config/version="0.1"
config/tags=PackedStringArray("games")
run/main_scene="uid://bhwuawppmqk4"
config/features=PackedStringArray("4.4", "Forward Plus")
config/icon="res://icon.svg"
@ -27,6 +29,54 @@ window/vsync/vsync_mode=0
[global_group]
Ocean="Oceans"
OceanTiles=""
[input]
move_forward={
"deadzone": 0.2,
"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":87,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":5,"axis_value":1.0,"script":null)
]
}
move_backward={
"deadzone": 0.2,
"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":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":4,"axis_value":1.0,"script":null)
]
}
turn_right={
"deadzone": 0.2,
"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":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null)
]
}
turn_left={
"deadzone": 0.2,
"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":65,"key_label":0,"unicode":113,"location":0,"echo":false,"script":null)
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null)
]
}
camera_right={
"deadzone": 0.2,
"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":1.0,"script":null)
]
}
camera_left={
"deadzone": 0.2,
"events": [Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":-1.0,"script":null)
]
}
[physics]
3d/run_on_separate_thread=true
3d/physics_engine="Jolt Physics"
jolt_physics_3d/simulation/bounce_velocity_threshold=2.0
3d/default_linear_damp=0.5
3d/default_angular_damp=1.5
3d/sleep_threshold_angular=0.174533
common/physics_interpolation=true
[rendering]