It's kind of complex. Raycasting (in this context) is the art of finding defined blocks by shooting rays out and seeing if they hit anything. Thus, basic trigonometry, good knowledge of BASIC, and time to make maps is required. Do you have these three?