The PA ring road and the expressway mainline were both at ground level, so the ring parapet stood INSIDE the carriageway (measured -10.0 studs of vertical overlap: a wall in the middle of the road). Reference photos of the real Daikoku Futo PA show the expressway flying OVER the parking apron on pillars, with the PA at ground level and ramps climbing up to meet it. Rebuilt to match: - mainline lifted 38 studs through the junction, eased in/out (max 5.26% grade, within real expressway limits) - PA ring + apron stay at ground level; legacy PARingPillar props removed - both on/off ramps regraded over the full rise with smoothstep easing, segments overlapped 3 studs so wheels can't catch a seam, plus support pillars and edge kerbs where the deck is high Verified in-engine against built parts (tools/diag_daikoku.luau), not just source: clearance now +28.0 studs, both ramps continuous (max step 5.62, no gaps). tools/plot_daikoku.py renders the plan/section for comparison.
49 lines
1.6 KiB
Luau
49 lines
1.6 KiB
Luau
--[[
|
|
check_live_source.luau -- did the pushed CarManager source actually land,
|
|
and is the running session using it?
|
|
|
|
diag_steering still reports "found 4 motors" after a push that reported
|
|
assembled==expected match=true. Two candidate explanations:
|
|
1. the source in the DataModel is stale (push landed elsewhere), or
|
|
2. the source is fresh but require() returned a CACHED module instance
|
|
from earlier in this Play session, so the old build function is live.
|
|
]]
|
|
|
|
local ServerScriptService = game:GetService("ServerScriptService")
|
|
|
|
local out = {}
|
|
local function log(...)
|
|
local parts = {}
|
|
for i = 1, select("#", ...) do
|
|
parts[#parts + 1] = tostring((select(i, ...)))
|
|
end
|
|
table.insert(out, table.concat(parts, " "))
|
|
end
|
|
|
|
local server = ServerScriptService:FindFirstChild("Server", true)
|
|
local mod = server and server:FindFirstChild("CarManager")
|
|
log("module:", mod and mod:GetFullName() or "<not found>")
|
|
|
|
if mod then
|
|
local src = mod.Source
|
|
log("source bytes:", #src)
|
|
log("has REAR-WHEEL DRIVE marker:", tostring(src:find("REAR%-WHEEL DRIVE") ~= nil))
|
|
log("has 'if isFront then\\n\\t\\treturn' guard:", tostring(src:find("isFront then\n\t\treturn") ~= nil))
|
|
end
|
|
|
|
-- How many CarManager-like ModuleScripts exist anywhere? A duplicate copy
|
|
-- would explain a push landing in the wrong place.
|
|
local hits = {}
|
|
for _, d in ipairs(game:GetDescendants()) do
|
|
if d:IsA("ModuleScript") and d.Name == "CarManager" then
|
|
table.insert(hits, d:GetFullName() .. " (" .. #d.Source .. " bytes)")
|
|
end
|
|
end
|
|
log("")
|
|
log("all CarManager ModuleScripts in this DataModel:")
|
|
for _, h in ipairs(hits) do
|
|
log(" " .. h)
|
|
end
|
|
|
|
return table.concat(out, "\n")
|