Number grid map?
Blitz3D Forums/Blitz3D Beginners Area/Number grid map?
| ||
Hi people. A while back, I recall playing an "escape the maze" type game. This was a basic game, nothing really special. But what I found interesting was that the mazes were created using a grid of numbers read from a .txt file, looks like this: 11111111 10100011 10001001 10111101 10120001 11111111 0=Empty space, 1=Wall, and 2=Maze exit. I'm wondering, could you do this with Blitz3d, and if so, how is it done? Thanks! Zaraki |
| ||
To do this you would use the file commands (readfile(), readline(), ) and also the string commands (mid$()). eg Something like this should get you started... infile=readfile("your text file here") if infile<>0 then while(not(eof(infile))) myline$=readline(infile) if len(myline)>0 then y=y+1 for x=1 to len(myline) cellvalue=mid(myline,x,1) ;then simply store the cellvalue, x and y values in an array next endif wend closefile infile else runtimeerror("file not found") endif |
| ||
Once I created such a testing game, which uses a similar format. http://users.telenet.be/vge/downloads/MazePack.zip Just extract the file somewhere and run the 3 exe's after each other: - MazeGenerator.exe - MazeConverter.exe - Maze3D.exe The first program (MazeGenerator) creates a bitmap for a randomized maze and saves the bitmap as Maze.bmp. The second program (MazeConverter) reads this bitmap, analyses it and creates the file Maze.dat. This is a simply textfile which you can open in Notepad. Every corridor-type has a different code for it. A straight corridor has a different value than a corner. The final program (Maze3D) reads this Maze.dat and creates a 3D version of the maze for you to walk through. It's not optimized or anything, it was only to have some fun walking around a maze instead of solving it on paper. The entire source-code is supplied as well in the subfolders. |