Skip to content
shadows — Multiplayer Shadowy Halloween Maze Game!
Profile icon

Welp, I misread the timestamp on the bramjam, so I guess I can't submit this, but I'm posting it here anyway! ( @bramley that is right, correct?)

This was a little experiment in raycasting and FOV graphics. The goal is to get to the green light at the end of the maze... the problem is that you only have a tiny lantern which casts light in one direction! So, it's basically a maze game where you can't see the goal, only what you could see in real life. Sounds fun, eh? :D

There is a server, so you can race your friends to the end. Additionally, you can drop beacons to help others out... provided that you're going the right way!

Gameplay Images

Screen Shot 2020-10-31 at 12.53.00 PM
Screen Shot 2020-10-31 at 12.52.49 PM
Screen Shot 2020-10-31 at 12.52.21 PM


  • WASD/Arrow keys to move
  • SPACE to drop beacon


You are viewing a single comment. View All
Profile icon

@realTronsi OH gosh no, that's not at all what I'm doing. It's just "do math and boom insta-get the coordinate of intersect":

// the math part const den = (x1 - x2) * (y3 - y4) - (y1 - y2) * (x3 - x4); if (den == 0) { return; } const t = ((x1 - x3) * (y3 - y4) - (y1 - y3) * (x3 - x4)) / den; const u = -((x1 - x2) * (y1 - y3) - (y1 - y2) * (x1 - x3)) / den; if (t > 0 && t < 1 && u > 0) { const pt = new p5.Vector(x1 + t * (x2 - x1), y1 + t * (y2 - y1)); return pt; } else { return; }

And I still don't really get how having it on the server would help. It'll just mean a lot more socket traffic. And doing those calculations has basically no performance drag on the client.