From 0c76705cca147a0253c2dcc5f816d98ec425f47f Mon Sep 17 00:00:00 2001 From: Jonas Reith Date: Thu, 27 Aug 2026 09:31:59 +0200 Subject: [PATCH] Populate regions 2-6 with the region-1 template, chain all 6 gates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Extends the proven region-1 pattern (6 placeholder POIs + a gate) to the remaining 5 outer regions, and rewires the gate chain to match the confirmed progression plan: visit all 6 outer regions in order, then reach the center — not "region 1 unlocks the center directly" as it was built initially. - Repurposed the old GateToCenter into GateR1toR2 (still gated on region1_pois, now leads into region 2 instead of the center). - Added GateR2toR3 .. GateR5toR6, each gated on its own region's POI group, sitting just off the radial ridge between two regions (2.5 units perpendicular offset — a hard analytical lower bound on clearance, since border props' jitter+radius can reach at most ~0.75 units off the ridge centerline). - Added GateR6toCenter (gated on region6_pois) at the region-6 table edge, using the same positioning approach as the original center gate. - 30 new POI instances (R2_Ort1..R6_Ort6), positions computed by rotating region 1's verified-safe (angle-offset, radius) template by 60° per region rather than re-deriving hex geometry by hand again — region 1's own Ort6 mistake was exactly this kind of hand-arithmetic error, not repeating it this time. Verified headless: all 6 groups have exactly 6 POIs; every gate stays locked ("Verschlossen", non-interactive) until its whole group is visited, then unlocks and its "Ja" teleports the player to exactly target_position — checked for all 6 gates in sequence. Also measured actual distance from every gate to the nearest border-prop hitbox across 3 independent runs (border placement is randomized each scene load) — consistently 1.3-2.2 units clear, no overlaps. --- world/island.tscn | 187 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 184 insertions(+), 3 deletions(-) diff --git a/world/island.tscn b/world/island.tscn index 22d1d2e..033badd 100755 --- a/world/island.tscn +++ b/world/island.tscn @@ -240,10 +240,191 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 28.37, -3.1, 22.17) poi_name = "Ort 6" marker_color = Color(0.7, 0.3, 0.9, 1) -[node name="GateToCenter" parent="." instance=ExtResource("5_gate")] -transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 13.856, 0.129, 8.0) +[node name="GateR1toR2" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 17.1651, -2.2714, 24.7308) +poi_name = "Weiter zum nächsten Gebiet" +required_group = "region1_pois" +target_position = Vector3(12.8349, -2.0714, 27.2308) + +[node name="R2_Ort1" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.4705, -1.2143, 24.1481) +poi_name = "Ort 1" +marker_color = Color(1, 0.2, 0.2, 1) + +[node name="R2_Ort2" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.4705, -1.2143, 24.1481) +poi_name = "Ort 2" +marker_color = Color(1, 0.6, 0.1, 1) + +[node name="R2_Ort3" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.7426, -3.4429, 36.1401) +poi_name = "Ort 3" +marker_color = Color(1, 0.95, 0.2, 1) + +[node name="R2_Ort4" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.7426, -3.4429, 36.1401) +poi_name = "Ort 4" +marker_color = Color(0.2, 0.9, 0.3, 1) + +[node name="R2_Ort5" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0, -0.7, 22.0) +poi_name = "Ort 5" +marker_color = Color(0.2, 0.5, 1, 1) + +[node name="R2_Ort6" parent="." instance=ExtResource("5_lquwl") groups=["region2_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.0102, -3.1, 35.6497) +poi_name = "Ort 6" +marker_color = Color(0.7, 0.3, 0.9, 1) + +[node name="GateR2toR3" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, -12.8349, -2.2714, 27.2308) +poi_name = "Weiter zum nächsten Gebiet" +required_group = "region2_pois" +target_position = Vector3(-17.1651, -2.0714, 24.7308) + +[node name="R3_Ort1" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.6777, -1.2143, 17.6777) +poi_name = "Ort 1" +marker_color = Color(1, 0.2, 0.2, 1) + +[node name="R3_Ort2" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.1481, -1.2143, 6.4705) +poi_name = "Ort 2" +marker_color = Color(1, 0.6, 0.1, 1) + +[node name="R3_Ort3" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -25.427, -3.4429, 28.2395) +poi_name = "Ort 3" +marker_color = Color(1, 0.95, 0.2, 1) + +[node name="R3_Ort4" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37.1696, -3.4429, 7.9006) +poi_name = "Ort 4" +marker_color = Color(0.2, 0.9, 0.3, 1) + +[node name="R3_Ort5" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.0526, -0.7, 11.0) +poi_name = "Ort 5" +marker_color = Color(0.2, 0.5, 1, 1) + +[node name="R3_Ort6" parent="." instance=ExtResource("5_lquwl") groups=["region3_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -33.3786, -3.1, 13.4858) +poi_name = "Ort 6" +marker_color = Color(0.7, 0.3, 0.9, 1) + +[node name="GateR3toR4" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, -30.0, -2.2714, 2.5) +poi_name = "Weiter zum nächsten Gebiet" +required_group = "region3_pois" +target_position = Vector3(-30.0, -2.0714, -2.5) + +[node name="R4_Ort1" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.1481, -1.2143, -6.4705) +poi_name = "Ort 1" +marker_color = Color(1, 0.2, 0.2, 1) + +[node name="R4_Ort2" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.6777, -1.2143, -17.6777) +poi_name = "Ort 2" +marker_color = Color(1, 0.6, 0.1, 1) + +[node name="R4_Ort3" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -37.1696, -3.4429, -7.9006) +poi_name = "Ort 3" +marker_color = Color(1, 0.95, 0.2, 1) + +[node name="R4_Ort4" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -25.427, -3.4429, -28.2395) +poi_name = "Ort 4" +marker_color = Color(0.2, 0.9, 0.3, 1) + +[node name="R4_Ort5" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -19.0526, -0.7, -11.0) +poi_name = "Ort 5" +marker_color = Color(0.2, 0.5, 1, 1) + +[node name="R4_Ort6" parent="." instance=ExtResource("5_lquwl") groups=["region4_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -28.3684, -3.1, -22.1638) +poi_name = "Ort 6" +marker_color = Color(0.7, 0.3, 0.9, 1) + +[node name="GateR4toR5" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, -17.1651, -2.2714, -24.7308) +poi_name = "Weiter zum nächsten Gebiet" +required_group = "region4_pois" +target_position = Vector3(-12.8349, -2.0714, -27.2308) + +[node name="R5_Ort1" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6.4705, -1.2143, -24.1481) +poi_name = "Ort 1" +marker_color = Color(1, 0.2, 0.2, 1) + +[node name="R5_Ort2" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.4705, -1.2143, -24.1481) +poi_name = "Ort 2" +marker_color = Color(1, 0.6, 0.1, 1) + +[node name="R5_Ort3" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -11.7426, -3.4429, -36.1401) +poi_name = "Ort 3" +marker_color = Color(1, 0.95, 0.2, 1) + +[node name="R5_Ort4" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.7426, -3.4429, -36.1401) +poi_name = "Ort 4" +marker_color = Color(0.2, 0.9, 0.3, 1) + +[node name="R5_Ort5" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0, -0.7, -22.0) +poi_name = "Ort 5" +marker_color = Color(0.2, 0.5, 1, 1) + +[node name="R5_Ort6" parent="." instance=ExtResource("5_lquwl") groups=["region5_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.0102, -3.1, -35.6497) +poi_name = "Ort 6" +marker_color = Color(0.7, 0.3, 0.9, 1) + +[node name="GateR5toR6" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 12.8349, -2.2714, -27.2308) +poi_name = "Weiter zum nächsten Gebiet" +required_group = "region5_pois" +target_position = Vector3(17.1651, -2.0714, -24.7308) + +[node name="R6_Ort1" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.6777, -1.2143, -17.6777) +poi_name = "Ort 1" +marker_color = Color(1, 0.2, 0.2, 1) + +[node name="R6_Ort2" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 24.1481, -1.2143, -6.4705) +poi_name = "Ort 2" +marker_color = Color(1, 0.6, 0.1, 1) + +[node name="R6_Ort3" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 25.427, -3.4429, -28.2395) +poi_name = "Ort 3" +marker_color = Color(1, 0.95, 0.2, 1) + +[node name="R6_Ort4" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 37.1696, -3.4429, -7.9006) +poi_name = "Ort 4" +marker_color = Color(0.2, 0.9, 0.3, 1) + +[node name="R6_Ort5" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 19.0526, -0.7, -11.0) +poi_name = "Ort 5" +marker_color = Color(0.2, 0.5, 1, 1) + +[node name="R6_Ort6" parent="." instance=ExtResource("5_lquwl") groups=["region6_pois"]] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 33.3786, -3.1, -13.4858) +poi_name = "Ort 6" +marker_color = Color(0.7, 0.3, 0.9, 1) + +[node name="GateR6toCenter" parent="." instance=ExtResource("5_gate")] +transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 13.8564, 0.1286, -8.0) poi_name = "Tor zur Mitte" -target_position = Vector3(9.959, 0.5, 5.75) +required_group = "region6_pois" +target_position = Vector3(9.9593, 0.5, -5.75) [node name="Node3D" type="Node3D" parent="." unique_id=597556846] transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 3.6214647, -0.23645921, 0.47627413)