-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.txt
77 lines (65 loc) · 2.4 KB
/
README.txt
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
72
73
74
75
76
77
ET2Solver - Eternity 2 Puzzle Solver
Author: Joe Cotroneo
Created: 2009-2010
License: Apache 2.0
Warranties: None
Status
------
Experimental, some things work, some may have bugs.
Description
-----------
This is a hodge podge of ideas I had when exploring the Eternity 2 Puzzle back in 2009-2010.
Features
--------
Backtracking Solver with logging/stats tracking (not optimized for performance, places 130k tiles/sec on 16x16 board using single gen9 i7 cpu core)
Note: Solver2 (2x2) is incomplete
Interactive mode editor/solver
Board generator - generate E2 like boards of various sizes
Board designer - create your own custom board designs
Notes
-----
Tile notation - I found it easier to use ascii characters A-V to identify each tile pattern, rather than the numeric form used in other solvers
- : edge pattern
A..E : border patterns (24 pattern halves each)
F..J : inner patterns group 1 (48 patterns halves each)
K..V : inner patterns group 2 (50 patterns halves each)
Building From Source
--------------------
Language: C#
Framework: .NET 4.8 (originally developed using SharpDevelop)
# dotnet build
Instructions
------------
open bin/ET2Solver-debug.exe
Manual / Interactive Solver
---------------------------
1. select Load/Save tab
2. load a tileset
3. select Board tab
4. click the board cell where you wish to place a tile
5. click the Search button to find matching available tiles
6. click any of the results in the sidebar to place the tile
Remove a tile from the board: middle click
Rotate a tile: right click
Run Auto Solver on 10x10 using valid border as hint
---------------------------------------------------
The border is copied as-is from the solved board to test the theory of being able to solve the puzzle when using the correct border as a hint.
A solution will be found within approx 34.6m iterations
You can pause the backtracker and view the board to see current progress, then resume
1. select Load/Save tab
2. select board layout 10x10
3. click Set layout
4. load 10x10x4x10_61 tileset
5. click Load Model, open file 'border'
6. click Board tab, confirm that border has been loaded
7. click Set Model as Hint
8. select Solver1 tab
9. enable randomize dataset
10. select Solve Method: 10x10_border_rows
11. click Start
Auto pause when solution found
------------------------------
1. enable score trigger
2. enter score trigger (eg. enter 100 for 10x10, or 256 for 16x16)
3. select pause when triggered
4. start solver