aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/icon.pngbin0 -> 288403 bytes
-rw-r--r--client/icon.png.import34
-rw-r--r--client/map/items/item.gd2
-rw-r--r--client/map/tile_factory.gd2
-rw-r--r--client/map/tiles/floor.resbin2579 -> 2165 bytes
-rw-r--r--client/map/tiles/floor.tscn2
-rw-r--r--client/menu/arrow.svg1
-rw-r--r--client/menu/arrow.svg.import37
-rw-r--r--client/menu/back.svg.import37
-rw-r--r--client/menu/character_menu.gd15
-rw-r--r--client/menu/character_menu.tscn81
-rw-r--r--client/menu/credits_menu.gd20
-rw-r--r--client/menu/credits_menu.tscn55
-rw-r--r--client/player/character/character.gd14
-rw-r--r--client/player/character/character.tscn16
-rw-r--r--client/player/character/hair_2.resbin0 -> 16368 bytes
-rw-r--r--client/player/character/hair_3.resbin0 -> 19738 bytes
-rw-r--r--client/player/controllable_player.gd4
-rw-r--r--client/project.godot4
-rw-r--r--server/src/customer/movement.rs4
-rw-r--r--test-client/movement.ts4
21 files changed, 263 insertions, 69 deletions
diff --git a/client/icon.png b/client/icon.png
new file mode 100644
index 00000000..fef39b52
--- /dev/null
+++ b/client/icon.png
Binary files differ
diff --git a/client/icon.png.import b/client/icon.png.import
new file mode 100644
index 00000000..628ef36a
--- /dev/null
+++ b/client/icon.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://b1hb26s0blceb"
+path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://icon.png"
+dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.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
diff --git a/client/map/items/item.gd b/client/map/items/item.gd
index cb0cf0b7..cd8fd75e 100644
--- a/client/map/items/item.gd
+++ b/client/map/items/item.gd
@@ -22,7 +22,7 @@ var base: Node3D = Node3D.new()
var progress_instance: ProgressBar3D = preload("res://map/progress.tscn").instantiate()
func _init(owned_by_: Node3D):
- progress_instance.position.y = 2.
+ progress_instance.position.y = 1
progress_instance.visible = false
add_child(progress_instance)
base.position = base_position()
diff --git a/client/map/tile_factory.gd b/client/map/tile_factory.gd
index a9fae032..3ff59640 100644
--- a/client/map/tile_factory.gd
+++ b/client/map/tile_factory.gd
@@ -59,5 +59,5 @@ static func produce(tile_name: String, node_name: String, neighbors: Array) -> T
"grass":
return Grass.new(node_name, neighbors)
var t:
- push_warning("tile tile %s unknown" % t)
+ push_warning("tile %s unknown" % t)
return GenericTile.new(node_name, neighbors, t)
diff --git a/client/map/tiles/floor.res b/client/map/tiles/floor.res
index a57ea088..eaba0c52 100644
--- a/client/map/tiles/floor.res
+++ b/client/map/tiles/floor.res
Binary files differ
diff --git a/client/map/tiles/floor.tscn b/client/map/tiles/floor.tscn
index 24b12da1..61299e3a 100644
--- a/client/map/tiles/floor.tscn
+++ b/client/map/tiles/floor.tscn
@@ -5,6 +5,6 @@
[node name="Floor" type="Node3D"]
[node name="Mesh" type="MeshInstance3D" parent="."]
-transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, -0.25, 0)
+transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
mesh = ExtResource("1_8pd6m")
skeleton = NodePath("")
diff --git a/client/menu/arrow.svg b/client/menu/arrow.svg
new file mode 100644
index 00000000..bafc9e69
--- /dev/null
+++ b/client/menu/arrow.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 70 100"><path stroke="white" stroke-width="10" fill="none" d="M20,20 L50,50 L 20,80" /></svg> \ No newline at end of file
diff --git a/client/menu/arrow.svg.import b/client/menu/arrow.svg.import
new file mode 100644
index 00000000..198224ad
--- /dev/null
+++ b/client/menu/arrow.svg.import
@@ -0,0 +1,37 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://35rd5gamtyqm"
+path="res://.godot/imported/arrow.svg-41f5cc1ac36d42c934f574d48bb6dcd0.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://menu/arrow.svg"
+dest_files=["res://.godot/imported/arrow.svg-41f5cc1ac36d42c934f574d48bb6dcd0.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
diff --git a/client/menu/back.svg.import b/client/menu/back.svg.import
new file mode 100644
index 00000000..c1d3f246
--- /dev/null
+++ b/client/menu/back.svg.import
@@ -0,0 +1,37 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bho8snt36o47u"
+path="res://.godot/imported/back.svg-3e820259a1f002a01cdabc54e94ce8f4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://menu/back.svg"
+dest_files=["res://.godot/imported/back.svg-3e820259a1f002a01cdabc54e94ce8f4.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
diff --git a/client/menu/character_menu.gd b/client/menu/character_menu.gd
index 836dc7c3..e63243e1 100644
--- a/client/menu/character_menu.gd
+++ b/client/menu/character_menu.gd
@@ -15,8 +15,13 @@
#
extends Control
+@onready var character: Character = $Character
+@onready var num_hairstyles := character.hairstyles.keys().size()
+
+var hairstyle := 0
+
func _ready():
- $top_panel/a/username.text = Global.username
+ $VBoxContainer/top_panel/a/username.text = Global.username
func _notification(what):
if what == NOTIFICATION_PREDELETE:
@@ -27,3 +32,11 @@ func _on_back_pressed():
func _on_username_text_changed(new_text):
Global.username = new_text
+
+func _on_character_back_pressed():
+ hairstyle = (hairstyle - 1) % num_hairstyles
+ character.select_hairstyle(hairstyle)
+
+func _on_character_forward_pressed():
+ hairstyle = (hairstyle + 1) % num_hairstyles
+ character.select_hairstyle(hairstyle)
diff --git a/client/menu/character_menu.tscn b/client/menu/character_menu.tscn
index 8c4d0d96..29c9c88f 100644
--- a/client/menu/character_menu.tscn
+++ b/client/menu/character_menu.tscn
@@ -1,9 +1,10 @@
-[gd_scene load_steps=6 format=3 uid="uid://1f7xpirm5d28"]
+[gd_scene load_steps=7 format=3 uid="uid://1f7xpirm5d28"]
[ext_resource type="Theme" uid="uid://b0qmvo504e457" path="res://menu/theme.tres" id="1_ak2pw"]
[ext_resource type="Script" path="res://menu/character_menu.gd" id="1_brhd1"]
[ext_resource type="PackedScene" uid="uid://b3hhir2fvnunu" path="res://player/character/character.tscn" id="3_odq7n"]
[ext_resource type="PackedScene" uid="uid://bg2d78ycorcqk" path="res://menu/scene_transition.tscn" id="4_c0ocf"]
+[ext_resource type="Texture2D" uid="uid://35rd5gamtyqm" path="res://menu/arrow.svg" id="5_kvd7k"]
[sub_resource type="Environment" id="Environment_ex25y"]
background_mode = 1
@@ -28,16 +29,25 @@ transform = Transform3D(0.857401, 0, 0.514649, -0.15367, 0.954381, 0.256012, -0.
[node name="Camera3D" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75, 1.75)
-[node name="guy" parent="." instance=ExtResource("3_odq7n")]
+[node name="Character" parent="." instance=ExtResource("3_odq7n")]
-[node name="top_panel" type="Panel" parent="."]
+[node name="SceneTransition" parent="." instance=ExtResource("4_c0ocf")]
+visible = false
+layout_mode = 1
+
+[node name="VBoxContainer" type="VBoxContainer" parent="."]
layout_mode = 1
-anchors_preset = 10
+anchors_preset = 15
anchor_right = 1.0
-offset_bottom = 113.0
+anchor_bottom = 1.0
grow_horizontal = 2
+grow_vertical = 2
-[node name="a" type="VBoxContainer" parent="top_panel"]
+[node name="top_panel" type="Panel" parent="VBoxContainer"]
+custom_minimum_size = Vector2(0, 100)
+layout_mode = 2
+
+[node name="a" type="VBoxContainer" parent="VBoxContainer/top_panel"]
layout_mode = 1
anchors_preset = 5
anchor_left = 0.5
@@ -48,25 +58,48 @@ offset_right = 216.0
offset_bottom = 110.0
grow_horizontal = 2
-[node name="Label" type="Label" parent="top_panel/a"]
+[node name="Label" type="Label" parent="VBoxContainer/top_panel/a"]
layout_mode = 2
-text = "This Chef is called"
+text = "Username"
horizontal_alignment = 1
-[node name="username" type="LineEdit" parent="top_panel/a"]
+[node name="username" type="LineEdit" parent="VBoxContainer/top_panel/a"]
layout_mode = 2
-[node name="bottom_panel" type="Panel" parent="."]
-layout_mode = 1
-anchors_preset = 12
-anchor_top = 1.0
-anchor_right = 1.0
-anchor_bottom = 1.0
-offset_top = -61.0
-grow_horizontal = 2
-grow_vertical = 0
+[node name="Spacer" type="MarginContainer" parent="VBoxContainer"]
+layout_mode = 2
+size_flags_vertical = 3
+theme_override_constants/margin_left = 50
+theme_override_constants/margin_top = 50
+theme_override_constants/margin_right = 50
+theme_override_constants/margin_bottom = 50
+
+[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/Spacer"]
+layout_mode = 2
+alignment = 1
+
+[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/Spacer/VBoxContainer"]
+layout_mode = 2
+alignment = 1
+
+[node name="Back" type="TextureButton" parent="VBoxContainer/Spacer/VBoxContainer/HBoxContainer"]
+layout_mode = 2
+texture_normal = ExtResource("5_kvd7k")
+flip_h = true
+
+[node name="Spacer" type="Control" parent="VBoxContainer/Spacer/VBoxContainer/HBoxContainer"]
+layout_mode = 2
+size_flags_horizontal = 3
-[node name="back" type="Button" parent="bottom_panel"]
+[node name="Forward" type="TextureButton" parent="VBoxContainer/Spacer/VBoxContainer/HBoxContainer"]
+layout_mode = 2
+texture_normal = ExtResource("5_kvd7k")
+
+[node name="bottom_panel" type="Panel" parent="VBoxContainer"]
+custom_minimum_size = Vector2(0, 75)
+layout_mode = 2
+
+[node name="back" type="Button" parent="VBoxContainer/bottom_panel"]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
@@ -82,9 +115,7 @@ grow_vertical = 2
size_flags_vertical = 8
text = "Back"
-[node name="SceneTransition" parent="." instance=ExtResource("4_c0ocf")]
-visible = false
-layout_mode = 1
-
-[connection signal="text_changed" from="top_panel/a/username" to="." method="_on_username_text_changed"]
-[connection signal="pressed" from="bottom_panel/back" to="." method="_on_back_pressed"]
+[connection signal="text_changed" from="VBoxContainer/top_panel/a/username" to="." method="_on_username_text_changed"]
+[connection signal="pressed" from="VBoxContainer/Spacer/VBoxContainer/HBoxContainer/Back" to="." method="_on_character_back_pressed"]
+[connection signal="pressed" from="VBoxContainer/Spacer/VBoxContainer/HBoxContainer/Forward" to="." method="_on_character_forward_pressed"]
+[connection signal="pressed" from="VBoxContainer/bottom_panel/back" to="." method="_on_back_pressed"]
diff --git a/client/menu/credits_menu.gd b/client/menu/credits_menu.gd
index 3949b5c0..e3ea4c51 100644
--- a/client/menu/credits_menu.gd
+++ b/client/menu/credits_menu.gd
@@ -15,5 +15,25 @@
#
extends Control
+var contributors := ["sofviic", "metamuffin", "nokoe", "tpart"]
+var cc_0 := ["kenney.nl", "Kay Lousberg"]
+var cc_by_3 := {
+ "Glasses": "Jeremy Edelblut"
+}
+
+@onready var label = $Panel/MarginContainer/VBoxContainer/RichTextLabel
+
+func _ready():
+ contributors.shuffle()
+ label.text = "[center][b]undercooked - a game about cooking[/b]\n\ndeveloped by\n\n[b]"
+ label.text += ", ".join(contributors)
+ label.text += "[/b]\n\n"
+
+ for k in cc_by_3.keys():
+ var v = cc_by_3[k]
+ label.text += "[b]\"%s\" %s[/b]\nLicensed under Creative Commons: By Attribution 3.0 License\nhttps://creativecommons.org/licenses/by/3.0/\n\n" % [k, v]
+
+ label.text += "[b]Additional CC0 assets by:[/b]\n" + "\n".join(cc_0)
+
func _on_back_pressed():
$SceneTransition.transition_to("res://menu/main_menu.tscn")
diff --git a/client/menu/credits_menu.tscn b/client/menu/credits_menu.tscn
index 8c2fa5ed..a6536e16 100644
--- a/client/menu/credits_menu.tscn
+++ b/client/menu/credits_menu.tscn
@@ -6,7 +6,7 @@
[ext_resource type="PackedScene" uid="uid://bg2d78ycorcqk" path="res://menu/scene_transition.tscn" id="4_fbbdb"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_p2qmw"]
-bg_color = Color(0, 0, 0, 0.576471)
+bg_color = Color(0, 0, 0, 0.878431)
[node name="CreditsMenu" type="Control"]
layout_mode = 3
@@ -29,46 +29,37 @@ grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_p2qmw")
-[node name="RichTextLabel" type="RichTextLabel" parent="Panel"]
+[node name="MarginContainer" type="MarginContainer" parent="Panel"]
layout_mode = 1
-anchors_preset = 8
-anchor_left = 0.5
-anchor_top = 0.5
-anchor_right = 0.5
-anchor_bottom = 0.5
-offset_left = -222.0
-offset_top = -112.0
-offset_right = 222.0
-offset_bottom = 125.0
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
-bbcode_enabled = true
-text = "[center][b]undercooked - a game about cooking[/b]
-
-by
+theme_override_constants/margin_left = 50
+theme_override_constants/margin_top = 50
+theme_override_constants/margin_right = 50
+theme_override_constants/margin_bottom = 50
-[b]tpart, nokoe, metamuffin[/b]
+[node name="VBoxContainer" type="VBoxContainer" parent="Panel/MarginContainer"]
+layout_mode = 2
-using various models from kenney.nl
-[/center]"
+[node name="RichTextLabel" type="RichTextLabel" parent="Panel/MarginContainer/VBoxContainer"]
+layout_mode = 2
+size_flags_vertical = 3
+theme_override_font_sizes/normal_font_size = 22
+theme_override_font_sizes/bold_font_size = 22
+theme_override_font_sizes/italics_font_size = 22
+theme_override_font_sizes/bold_italics_font_size = 22
+theme_override_font_sizes/mono_font_size = 22
+bbcode_enabled = true
-[node name="back" type="Button" parent="Panel"]
-layout_mode = 1
-anchors_preset = 7
-anchor_left = 0.5
-anchor_top = 1.0
-anchor_right = 0.5
-anchor_bottom = 1.0
-offset_left = -79.0
-offset_top = -65.0
-offset_right = 81.0
-offset_bottom = -34.0
-grow_horizontal = 2
-grow_vertical = 0
+[node name="back" type="Button" parent="Panel/MarginContainer/VBoxContainer"]
+layout_mode = 2
text = "Back"
[node name="SceneTransition" parent="." instance=ExtResource("4_fbbdb")]
visible = false
layout_mode = 1
-[connection signal="pressed" from="Panel/back" to="." method="_on_back_pressed"]
+[connection signal="pressed" from="Panel/MarginContainer/VBoxContainer/back" to="." method="_on_back_pressed"]
diff --git a/client/player/character/character.gd b/client/player/character/character.gd
index 76e7b6b3..dd3e6554 100644
--- a/client/player/character/character.gd
+++ b/client/player/character/character.gd
@@ -29,6 +29,12 @@ var current_animation := "idle"
@onready var default_height = main.position.y
@onready var main_height_target = default_height
+@onready var hairstyles = {
+ "Brown": $Main/Head/Hair,
+ "Blond": $Main/Head/Hair2,
+ "E. Parsley": $Main/Head/Hair3
+}
+
func _ready():
play_animation("idle")
@@ -53,6 +59,14 @@ func _process(delta):
if current_animation != next_animation:
play_animation(next_animation)
+func select_hairstyle(id: int):
+ var target = hairstyles.keys()[id]
+ for k in hairstyles.keys():
+ if k == target:
+ hairstyles[k].show()
+ else:
+ hairstyles[k].hide()
+
func play_animation(name_: String):
current_animation = name_
hand_animations.play(name_)
diff --git a/client/player/character/character.tscn b/client/player/character/character.tscn
index d33a424e..033135cd 100644
--- a/client/player/character/character.tscn
+++ b/client/player/character/character.tscn
@@ -1,4 +1,4 @@
-[gd_scene load_steps=13 format=3 uid="uid://b3hhir2fvnunu"]
+[gd_scene load_steps=15 format=3 uid="uid://b3hhir2fvnunu"]
[ext_resource type="Script" path="res://player/character/character.gd" id="1_12lbh"]
[ext_resource type="ArrayMesh" uid="uid://bnmm01yjwultj" path="res://player/character/main.res" id="2_lxdbd"]
@@ -6,7 +6,9 @@
[ext_resource type="ArrayMesh" uid="uid://r52cylox4imf" path="res://player/character/hand_left.res" id="4_ellbc"]
[ext_resource type="ArrayMesh" uid="uid://csryncouqhwp1" path="res://player/character/head.res" id="5_tyg2e"]
[ext_resource type="ArrayMesh" uid="uid://bsxmxq4dfv2vy" path="res://player/character/hair.res" id="6_rfl5m"]
+[ext_resource type="ArrayMesh" uid="uid://dx7jswwaesok4" path="res://player/character/hair_2.res" id="7_0551e"]
[ext_resource type="ArrayMesh" uid="uid://c2qnwt44x8ujl" path="res://player/character/tie.res" id="7_knv6q"]
+[ext_resource type="ArrayMesh" uid="uid://c5qsthvtf3cta" path="res://player/character/hair_3.res" id="8_2bc5u"]
[sub_resource type="Animation" id="Animation_tdhvg"]
length = 0.001
@@ -591,6 +593,18 @@ transform = Transform3D(1.06667, 0, 0, 0, 1.06667, 0, 0, 0, 1.06667, 0, 0.4, 0)
mesh = ExtResource("6_rfl5m")
skeleton = NodePath("")
+[node name="Hair2" type="MeshInstance3D" parent="Main/Head"]
+transform = Transform3D(1.06667, 0, 0, 0, 1.06667, 0, 0, 0, 1.06667, 0, 0.4, 0)
+visible = false
+mesh = ExtResource("7_0551e")
+skeleton = NodePath("")
+
+[node name="Hair3" type="MeshInstance3D" parent="Main/Head"]
+transform = Transform3D(1.06667, 0, 0, 0, 1.06667, 0, 0, 0, 1.06667, 0, 0.4, 0)
+visible = false
+mesh = ExtResource("8_2bc5u")
+skeleton = NodePath("")
+
[node name="Tie" type="MeshInstance3D" parent="Main"]
transform = Transform3D(0.125, 0, 0, 0, 0.125, 0, 0, 0, 0.125, 0, 0.47772, 0.445265)
mesh = ExtResource("7_knv6q")
diff --git a/client/player/character/hair_2.res b/client/player/character/hair_2.res
new file mode 100644
index 00000000..5d41a4b5
--- /dev/null
+++ b/client/player/character/hair_2.res
Binary files differ
diff --git a/client/player/character/hair_3.res b/client/player/character/hair_3.res
new file mode 100644
index 00000000..911afa30
--- /dev/null
+++ b/client/player/character/hair_3.res
Binary files differ
diff --git a/client/player/controllable_player.gd b/client/player/controllable_player.gd
index 7d143a60..3012f557 100644
--- a/client/player/controllable_player.gd
+++ b/client/player/controllable_player.gd
@@ -18,7 +18,7 @@ class_name ControllablePlayer
extends Player
-const PLAYER_SPEED: float = 25.;
+const PLAYER_SPEED: float = 65.;
var facing = Vector2(1, 0)
var velocity_ = Vector2(0, 0)
@@ -59,7 +59,7 @@ func update(dt: float, input: Vector2):
self.facing = direction + (self.facing - direction) * exp(-dt * 10.);
self.velocity_ += direction * dt * PLAYER_SPEED;
self.position_ += self.velocity_ * dt;
- self.velocity_ = self.velocity_ * exp(-dt * 5.);
+ self.velocity_ = self.velocity_ * exp(-dt * 15.);
collide(dt);
func collide(dt: float):
diff --git a/client/project.godot b/client/project.godot
index 1ce7fb4a..25a17ed4 100644
--- a/client/project.godot
+++ b/client/project.godot
@@ -13,7 +13,9 @@ config_version=5
config/name="undercooked"
run/main_scene="res://menu/main_menu.tscn"
config/features=PackedStringArray("4.2", "Forward Plus")
-config/icon="res://icon.svg"
+boot_splash/bg_color=Color(0.282353, 0.141176, 0.141176, 1)
+boot_splash/image="res://icon.png"
+config/icon="res://icon.png"
[autoload]
diff --git a/server/src/customer/movement.rs b/server/src/customer/movement.rs
index 681b2b67..3fcf37aa 100644
--- a/server/src/customer/movement.rs
+++ b/server/src/customer/movement.rs
@@ -20,7 +20,7 @@ use glam::{IVec2, Vec2};
use std::collections::HashSet;
const PLAYER_SIZE: f32 = 0.4;
-const PLAYER_SPEED: f32 = 25.;
+const PLAYER_SPEED: f32 = 65.;
pub const PLAYER_SPEED_LIMIT: f32 = f32::INFINITY; // 10.;
pub struct MovementBase {
@@ -38,7 +38,7 @@ impl MovementBase {
let rot = self.facing.x.atan2(self.facing.y);
self.vel += direction * dt * PLAYER_SPEED;
self.position += self.vel * dt;
- self.vel = self.vel * (-dt * 5.).exp();
+ self.vel = self.vel * (-dt * 15.).exp();
collide_player(self, map);
PacketS::Position {
diff --git a/test-client/movement.ts b/test-client/movement.ts
index 1ba6fad7..6c2e573d 100644
--- a/test-client/movement.ts
+++ b/test-client/movement.ts
@@ -20,7 +20,7 @@ import { tiles, players, PlayerData } from "./main.ts";
import { V2, normalize, length, sub_v2, lerp_exp_v2_mut } from "./util.ts";
export const PLAYER_SIZE = 0.4;
-export const PLAYER_SPEED = 25;
+export const PLAYER_SPEED = 65;
export function player_movement_update(p: PlayerData, dt: number, input: V2) {
if (length(input) > 0.1) lerp_exp_v2_mut(p.facing, input, dt * 10.)
@@ -30,7 +30,7 @@ export function player_movement_update(p: PlayerData, dt: number, input: V2) {
p.x += p.vel.x * dt
p.y += p.vel.y * dt
collide_player(p, dt)
- lerp_exp_v2_mut(p.vel, { x: 0, y: 0 }, dt * 5.)
+ lerp_exp_v2_mut(p.vel, { x: 0, y: 0 }, dt * 15.)
}
function collide_player(p: PlayerData, dt: number) {