The procedural generation for my game, The Train Tunnels, utilizes GeometryService.SubtractAsync to remove a volume from the upper and lower walls. When the procedrual generation fails, it attempts to retry until it succeeds, however, as seen in the video, it doesn’t produce an error and instead still retains the volume that is supposed to be deleted from the walls. My game heavly uses GeometryService.SubtractAsync, which allows players to traverse the tunnels, but with the function producing these results, players are unable to play the game at all. The last time I updated the game was on 04/10/2025, so I couldn’t have broken anything between now and then.
Expected behavior
The results from the GeometryService.SubtractAsync function should resemble what’s shown in the video below. This video was taken in a separate game within Studio called The Train Tunnels Testing. While the function may perform correctly within Studio, the results in-game are identical to that of the main game, which is definitely weird.