summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortpart <tpart120@proton.me>2024-06-25 21:28:05 +0200
committertpart <tpart120@proton.me>2024-06-25 21:28:05 +0200
commite36ef0b93bb2bf4945b7760fa172cd5f5f06b720 (patch)
treed02bf98ed93fb3fde5c0614eca4db3cc0cfb4ef0
parentb1695155df09a48d801dfb3b0e806f83303a3268 (diff)
downloadhurrycurry-e36ef0b93bb2bf4945b7760fa172cd5f5f06b720.tar
hurrycurry-e36ef0b93bb2bf4945b7760fa172cd5f5f06b720.tar.bz2
hurrycurry-e36ef0b93bb2bf4945b7760fa172cd5f5f06b720.tar.zst
Tweak player speed and acceleration
-rw-r--r--client/player/controllable_player.gd4
-rw-r--r--server/src/customer/movement.rs4
-rw-r--r--test-client/movement.ts4
3 files changed, 6 insertions, 6 deletions
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/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) {