da4e1420ee
checkpoint / checkpoint (push) Successful in 1m40s
All players spawned at the exact same PlayerSpawn point and were on the same collision layer, so two overlapping CharacterBody3Ds triggered a physics depenetration shove that could launch one through the 1-unit-thick floor. - server.gd: golden-angle spawn spread -- each join lands ~1m+ from the others, growing outward, never exactly repeating. - server_player.tscn + player.tscn: players on collision layer 2, mask 1 (world only) -- players no longer collide with each other at all (fine for a social game; also removes the shove). - player_spawner.gd + player.gd: hard safety net -- if y < -10 (any tunnel-through), snap back to the spawn instead of falling forever. Verified: 3 server players spawn 1.15m+ apart, none fall, all rest on the floor. 2p multiplayer + network_client smokes green. Client-side -- rebuild the exe. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015jtxAiu5dAW4WxCNdGkrkJ
33 lines
919 B
Plaintext
33 lines
919 B
Plaintext
[gd_scene load_steps=4 format=3 uid="uid://player_scene_001"]
|
|
|
|
[ext_resource type="Script" path="res://scripts/player.gd" id="1_player"]
|
|
|
|
[sub_resource type="CapsuleMesh" id="CapsuleMesh1"]
|
|
radius = 0.35
|
|
height = 1.6
|
|
|
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape1"]
|
|
radius = 0.35
|
|
height = 1.6
|
|
|
|
[node name="Player" type="CharacterBody3D"]
|
|
collision_layer = 2
|
|
collision_mask = 1
|
|
script = ExtResource("1_player")
|
|
|
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
|
shape = SubResource("CapsuleShape1")
|
|
|
|
[node name="CapsuleMesh" type="MeshInstance3D" parent="."]
|
|
mesh = SubResource("CapsuleMesh1")
|
|
|
|
[node name="CameraPivot" type="Node3D" parent="."]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.2, 0)
|
|
|
|
[node name="SpringArm3D" type="SpringArm3D" parent="CameraPivot"]
|
|
spring_length = 3.5
|
|
margin = 0.2
|
|
|
|
[node name="Camera3D" type="Camera3D" parent="CameraPivot/SpringArm3D"]
|
|
current = true
|