The flaw in mine is that it finds the distance to the wall, and finds the height it should draw proportional to that distance. To illustrate the flaw, imagine you are facing a wall, your view is perpendicular to the wall. The wall should appear rectangular. However, since the distance to the wall at the edge of your view is greater, it is drawn smaller. The applet does have some formulas to help correct this, but it still isn't perfect.
Just get out a sheet of paper and start drawing the triangles for this stuff :P. Then just find the projection of the ray that hit the wall onto the player's view vector then just use the right distance instead of trying to fix the wrong distance. Also just do the math to calculuate where the next border is and test that instead of hoping a certain distance and checking if you are in a wall yet. The nasty thing about that though is that you need to make 4 different cases one for each quadrant.
They are essentially the same, the difference being the display size. You're probably noticing the flaws of the BYOND version being amplified.
You mean your monitor isn't a sphere? C'mon Theo, its 2003, psh =P
The flaw in mine is that it finds the distance to the wall, and finds the height it should draw proportional to that distance. To illustrate the flaw, imagine you are facing a wall, your view is perpendicular to the wall. The wall should appear rectangular. However, since the distance to the wall at the edge of your view is greater, it is drawn smaller. The applet does have some formulas to help correct this, but it still isn't perfect.