summaryrefslogtreecommitdiffstats
path: root/hacks/config/maze.xml
blob: 83b5b926cd74f04ff1259d9cb0a3069fa9ab3a8e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?xml version="1.0" encoding="ISO-8859-1"?>

<screensaver name="maze" _label="Maze">

  <command arg="-root"/>

  <video href="https://www.youtube.com/watch?v=-u4neMXIRA8"/>

  <hgroup>
   <vgroup>
    <number id="delay" type="slider" arg="-solve-delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="10000"
            convert="invert"/>

    <select id="generator">
      <option id="mrandom" _label="Random maze generator"/>
      <option id="m0"      _label="Depth-first backtracking maze generator"
                           arg-set="-generator 0"/>
      <option id="m1"      _label="Wall-building maze generator (Prim)"
                           arg-set="-generator 1"/>
      <option id="m2"      _label="Set-joining maze generator (Kruskal)"
                           arg-set="-generator 2"/>
    </select>

    <hgroup>
     <select id="ignorance">
       <option id="smart" _label="Head toward exit"/>
       <option id="dumb"  _label="Ignorant of exit direction"
               arg-set="-ignorant"/>
     </select>

    </hgroup>

    <hgroup>
     <number id="grid-size" type="spinbutton" arg="-grid-size %"
             _label="Grid size" low="0" high="100" default="0"/>
     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
    </hgroup>

   </vgroup>

   <vgroup>
    <number id="pre-delay" type="slider" arg="-pre-delay %"
            _label="Linger before solving"
            _low-label="0 seconds" _high-label="10 seconds"
            low="0" high="10000000" default="2000000"/>

    <number id="post-delay" type="slider" arg="-post-delay %"
            _label="Linger after solving"
            _low-label="0 seconds" _high-label="10 seconds"
            low="0" high="10000000" default="4000000"/>

    <xscreensaver-updater />

   </vgroup>
  </hgroup>


  <_description>
Generates random mazes, with three different algorithms: Kruskal,
Prim, and a depth-first recursive backtracker.  It also solves them.
Backtracking and look-ahead paths are displayed in different colors.

https://en.wikipedia.org/wiki/Maze_generation_algorithm
https://en.wikipedia.org/wiki/Maze_solving_algorithm

Written by Martin Weiss, Dave Lemke, Jim Randell, Jamie Zawinski,
Johannes Keukelaar, and Zack Weinberg; 1985.
  </_description>
</screensaver>