To do this, well, @AqeeAqee and @MrFranko already did all the heavy lifting already and left a comment in the extension referring to this site which covers raycasting: https://lodev.org/cgtutor/raycasting2.html
Ceiling raycasting is just inverted floor raycasting so it wasn’t too tough inverting the logic when I initially ran it from tilemaps like this where the extension was reading from the bottom half of the screen.
The challenge really just came from feeding the editor a tilemap that isn’t currently loaded to avoid users having to create strange assets like the image above. From reading AqeeAqee’s logic on grabbing the tilemaps as textures it turned out to be fairly simple in the end.
As for how I learned to code, just trying a bunch of projects like this. Finding something challenging but exciting to you and failing at it over and over again until you finally get it right. The failures can be quite fun too honestly. Even in this project I had an issue with the z axis that resulted in a hopping ceiling, that was fun.

