Thread: "Generating additional puzzles for MagicTile"

From: joe.moore.sdsu@gmail.com
Date: Wed, 21 Dec 2016 18:30:49 -0600
Subject: Generating additional puzzles for MagicTile



--94eb2c0934b8991a450544346192
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Joe,

Yes!

All of the puzzles are configured via xml, and you can explore their
definitions in the 'config' directory. There is one file for each unique
tiling + coloring, so each file defines many puzzles. To make you own
puzzles, you can add xml files in the 'config/user' directory.

The easiest way to make some new puzzles is to configure additional
slicings on an existing file. I've never provided a document on this until
now, but I just uploaded a short guide
.

Information about configuring new colorings is here
. However, those
can be quite difficult to get working, and folks who have tried in the past
have even run into limitations of the engine. So while I don't discourage
it, I don't enthusiastically recommend it either. I will support a new
capability soon that will make configuring colorings easier in some cases.

One other thing that might be helpful is the code that defines the
xml, since the comments there describe the node definitions. Look for
member variables with a [DataMember] attribute attached to them in the
following files.

https://github.com/roice3/MagicTile/blob/master/
MagicTile/Puzzle/PuzzleConfig.cs
https://github.com/roice3/MagicTile/blob/master/MagicTile/Puzzle/
PuzzleConfigClass.cs

Feel free to send me private emails if you get stuck or need more direction=
.

Really happy to hear you love MagicTile!

Cheers,
Roice



On Wed, Dec 21, 2016 at 5:10 PM, joe.moore.sdsu@gmail.com [4D_Cubing] <
4D_Cubing@yahoogroups.com> wrote:

>
>
> First post.
>
> Is it possible to generate a new puzzle for MagicTile? If so, are there
> additional libraries available? I'm very familiar with xml concepts and
> can generate xml programmatically if I know what the node definitions are=
.
>
> If this is already covered by a document, please point me to that documen=
t.
>
> Thank you. I love MagicTile!
>
>
>
>
>=20
>

--94eb2c0934b8991a450544346192
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Joe,

Yes!=C2=A0=C2=A0

=
All of the puzzles are configured via xml, and you can explore t=
heir definitions in the 'config' directory.=C2=A0 There is one file=
for each unique tiling + coloring, so each file defines many puzzles.=C2=
=A0 To make you own puzzles, you can add xml=C2=A0files in the 'config/=
user' directory.

The easiest way to make some =
new puzzles is to configure additional slicings on an existing file.=C2=A0 =
I've never provided a document on this until now, but I just uploaded a=
k">short guide.

Information about configuring new col=
orings is target=3D"_blank">here.=C2=A0 However, those can be quite difficult to=
get working, and folks who have tried in the past have even run into limit=
ations of the engine.=C2=A0 So while I don't discourage it, I don't=
enthusiastically recommend it either.=C2=A0 I will support a new capabilit=
y soon that will make configuring colorings easier in some cases.
>
One other thing that might be helpful is the code that defi=
nes the xml,=C2=A0since the comments there describe the node definitions.=
=C2=A0 Look for member variables with a=C2=A0,51);font-family:consolas,"liberation mono",menlo,courier,monospa=
ce;font-size:12px;white-space:pre-wrap">[DataMember]
=C2=A0attribute =
attached to them in the following files.

=3D"https://github.com/roice3/MagicTile/blob/master/MagicTile/Puzzle/Puzzle=
Config.cs" target=3D"_blank">https://github.com/roice3/MagicTile/blob/=
master/MagicTile/Puzzle/PuzzleConfig.cs

=3D"https://github.com/roice3/MagicTile/blob/master/MagicTile/Puzzle/Puzzle=
ConfigClass.cs" target=3D"_blank">https://github.com/roice3/MagicTile/=
blob/master/MagicTile/Puzzle/PuzzleConfigClass.cs
<=
br>
Feel free to send me private emails if you get stuck or need =
more direction.

Really happy to hear you love Magi=
cTile!

Cheers,
Roice

>


O=
n Wed, Dec 21, 2016 at 5:10 PM, target=3D"_blank">joe.moore.sdsu@gmail.com [4D_Cubing] r"><4D_Cu=
bing@yahoogroups.com
>
wrote:
ote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,20=
4);padding-left:1ex">






=20=20=20=20=20=20=20=20

















First post.

Is it possible to generate a new puzzle for MagicTile?=
=C2=A0 If so, are there additional libraries available?=C2=A0 I'm very =
familiar with xml concepts and can generate xml programmatically if I know =
what the node definitions are.

If this is already covered by a docum=
ent, please point me to that document.

Thank you.=C2=A0 I love Magic=
Tile!


06616gmail-m_-4527799558715796217gmail-m_3231932130729004483m_7218597786544=
77022m_5438112575305117237yui-cursor">
























--94eb2c0934b8991a450544346192--




From: mananself@gmail.com
Date: 22 Dec 2016 12:41:54 -0800
Subject: Re: [MC4D] Generating additional puzzles for MagicTile




From: mananself@gmail.com
Date: Fri, 23 Dec 2016 01:54:40 +0100
Subject: Re: [MC4D] Generating additional puzzles for MagicTile



------=_NextPart_000_0009_01D25CBF.864678C0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

I solved the following 10 MagicTiles

eb_MT_ell_sph_dodeca_f111.xml=20
eb_MT_ell_sph_dodeca_v1,2-0-0_v1,5-0-0.xml=20
eb_MT_ell_sph_{3,5}_8_f010_eh00_v100.xml=20
eb_MT_eucl_torus_{3,6}_14_e100.xml=20
eb_MT_eucl_torus_{4,4}_16_v0-0-1,15.xml=20
eb_MT_eucl_torus_{4,4}_8_e0-1,41-0.xml=20
eb_MT_eucl_torus_{4,4}_8_v200.xml=20
eb_MT_eucl_klein_{4,4}_9_f0,33-0-1.xml=20
eb_MT_eucl_torus_{6,3}_16_f0.67-0-1.xml=20
eb_MT_proj_hemi_icosa_f0,33-0-1.xml=20


No first solve among them.

Best regards
Ed
------=_NextPart_000_0009_01D25CBF.864678C0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable



>




I solved the following 10 MagicTiles>

 


cing=3D0=20
cellPadding=3D0 width=3D298 x:str>

98"=20
width=3D298>


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; WIDTH: 224pt; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-R=
IGHT: #ece9d8"=20
height=3D17 width=3D298>size=3D2>eb_MT_ell_sph_dodeca_f111.xml


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17> size=3D2>eb_MT_ell_sph_dodeca_v1,2-0-0_v1,5-0-0.xml


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17> size=3D2>eb_MT_ell_sph_{3,5}_8_f010_eh00_v100.xml


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>eb_MT_eucl_torus_{3,6}_14_e100.xmlD>


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>size=3D2>eb_MT_eucl_torus_{4,4}_16_v0-0-1,15.xml


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>eb_MT_eucl_torus_{4,4}_8_e0-1,41-0.xml>


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>eb_MT_eucl_torus_{4,4}_8_v200.xml>


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>eb_MT_eucl_klein_{4,4}_9_f0,33-0-1.xml>


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17>size=3D2>eb_MT_eucl_torus_{6,3}_16_f0.67-0-1.xml


style=3D"BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; BACKGROUND-COLOR=
: transparent; HEIGHT: 12.75pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8"=
=20
height=3D17> size=3D2>eb_MT_proj_hemi_icosa_f0,33-0-1.xml
BLE>
 

No first solve among them.

 

Best regards

Ed


------=_NextPart_000_0009_01D25CBF.864678C0--




From: Roice Nelson <roice3@gmail.com>
Date: Thu, 22 Dec 2016 22:46:01 -0600
Subject: Re: [MC4D] Generating additional puzzles for MagicTile



--f403045e40641fab6f05444c107e
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Cool puzzle Nan! I've added it to the main distribution.

I debugged the behavior with the beep. It was because the very thick cuts
complicated slicing enough that the engine produced some stickers with zero
area. The program was tracking 15 stickers per face rather than 10 (5 of
them degenerate). I made a code change so that zero area stickers are
removed during puzzle building, which corrects the issue. My apologies -
there's no way to fix up your existing solution file, but your puzzle file
will behave correctly with the latest download. Thanks for stretching the
engine a bit further!

Cheers,
Roice


On Thu, Dec 22, 2016 at 2:41 PM, mananself@gmail.com [4D_Cubing] <
4D_Cubing@yahoogroups.com> wrote:

>
>
> Following the guide, I was able to create "Helicopter Hemi-Dodecahedron".
> The definition and solution files are here:
> https://groups.yahoo.com/neo/groups/4D_Cubing/files/Nan%20Ma
> /MagicTileFiles/
>
>
>
> I intentionally made the cut very thick to remove some pieces. At the end
> of my solve, I didn't hear the beep sound. I don't know if there are more
> pieces than I see, which I didn't solve. Roice, you can load my solution
> file, ctrl-Z and then ctrl-Y to verify there isn't a beep.
>
> About the puzzle, it's the hemi-dodec version of
> TwistyPuzzles.com > Museum > Helicopter Dodecahedron
>
> [image: image] 22>
> TwistyPuzzles.com > Museum > Helicopter Dodecahedr...
>
> Above:Solved Click a thumbnail to see its larger version and description.
> Many people would call this the "True" Helicopter Dodecahedron...
> View on www.twistypuzzles.com
>
> Preview by Yahoo
>
>
>
>
> It contains only those pieces in the original helicopter cube. It's a
> subset of the pieces in E0:1:0 or E0:1:0.11. Compared to E0:1:0, it has t=
he
> "an extra challenge to solving because of an invisible orientation". The
> same challenge is there in E0:1:0.11. I won't say more, but Michael and E=
d
> probably know what that is.
>
> Since my variation has fewer pieces, I think it has a greater
> concentration of challenges. You don't need to handle many tedious 1C
> pieces. I enjoyed solving it without macros in 180 moves.
>
>
>=20
>

--f403045e40641fab6f05444c107e
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Cool puzzle Nan!=C2=A0 I've added it to the main distr=
ibution.

I debugged the behavior with the beep.=C2=A0 It=
was because the very thick cuts complicated=C2=A0slicing enough that the e=
ngine produced some stickers with zero area.=C2=A0 The program was tracking=
15 stickers per face rather than 10 (5 of them degenerate).=C2=A0 I made a=
code change so that zero area stickers are removed during puzzle building,=
which corrects the issue.=C2=A0 My apologies - there's no way to fix u=
p your existing solution file, but your puzzle file will behave correctly w=
ith the latest download.=C2=A0 Thanks for stretching the engine a bit furth=
er!

Cheers,
Roice

iv class=3D"gmail_extra">
On Thu, Dec 22, 201=
6 at 2:41 PM, mana=
nself@gmail.com
[4D_Cubing] <Cubing@yahoogroups.com" target=3D"_blank">4D_Cubing@yahoogroups.com>=
wrote:
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">






=20=20=20=20=20=20=20=20

















Following the guide, I was able to create "Helicopter Hemi-Dodeca=
hedron". The definition and solution files are here:
=3D"nofollow" href=3D"https://groups.yahoo.com/neo/groups/4D_Cubing/files/N=
an%20Ma/MagicTileFiles/" target=3D"_blank">https://groups.yahoo.com/neo/gbr>roups/4D_Cubing/files/Nan%20Ma/MagicTileFiles/

=C2=A0

v>

I intentionally made the cut very thick to remove som=
e pieces. At the end of my solve, I didn't hear the beep sound. I don&#=
39;t know if there are more pieces than I see, which I didn't solve. Ro=
ice, you can load my solution file, ctrl-Z and then ctrl-Y to verify there =
isn't a beep.

About the puzzle, it's the h=
emi-dodec version of
ypuzzles.com/cgi-bin/puzzle.cgi?pkey=3D1722" target=3D"_blank">TwistyPuzzle=
s.com > Museum > Helicopter Dodecahedron
;font-family:"helvetica neue",helvetica,arial,san-serif,roboto" i=
d=3D"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297=
enhancrCard_2" class=3D"gmail-m_6083333719325573209m_-4938330463740494903m_=
3980354071268070297link-enhancr-attachment gmail-m_6083333719325573209m_-49=
38330463740494903m_3980354071268070297link-enhancr-element">
=3D"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297l=
ink-enhancr-element" cellspacing=3D"0" cellpadding=3D"0" style=3D"width:450=
px;height:170px;margin-top:5px;margin-bottom:5px;display:block"> class=3D"gmail-m_6083333719325573209m_-4938330463740494903m_39803540712680=
70297link-enhancr-element">
0354071268070297link-enhancr-element"> ail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297link-en=
hancr-element"> ody>
5573209m_-4938330463740494903m_3980354071268070297link-enhancr-element" sty=
le=3D"height:1px;background-color:rgb(229,229,229)">
6083333719325573209m_-4938330463740494903m_3980354071268070297link-enhancr-=
element" style=3D"height:1px;background-color:rgb(229,229,229)">
>
083333719325573209m_-4938330463740494903m_3980354071268070297link-enhancr-e=
lement" style=3D"width:1px;background-color:rgb(229,229,229)">
=3D"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297l=
ink-enhancr-element" style=3D"width:1px;background-color:rgb(229,229,229)">=
3m_3980354071268070297link-enhancr-element" rowspan=3D"2" style=3D"vertical=
-align:middle;width:168px;height:168px;background-color:rgb(0,0,0)">
lass=3D"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070=
297link-enhancr-element" style=3D"width:168px" align=3D"center"> nofollow" href=3D"http://www.twistypuzzles.com/cgi-bin/puzzle.cgi?pkey=3D17=
22" class=3D"gmail-m_6083333719325573209m_-4938330463740494903m_39803540712=
68070297link-enhancr-card-urlWrapper gmail-m_6083333719325573209m_-49383304=
63740494903m_3980354071268070297link-enhancr-element" style=3D"text-decorat=
ion:none;color:rgb(0,0,0)" target=3D"_blank"> 3D"image"p://www.twistypuzzles.com/museum/large/01722-01.jpg" class=3D"gmail-m_60833=
33719325573209m_-4938330463740494903m_3980354071268070297link-enhancr-thumb=
nail-image gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268=
070297link-enhancr-element" width=3D"168" height=3D"168" style=3D"display: =
block; margin: auto;">
_6083333719325573209m_-4938330463740494903m_3980354071268070297link-enhancr=
-element" style=3D"width:1px;background-color:rgb(229,229,229)">
=3D"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297l=
ink-enhancr-element" style=3D"width:1px;background-color:rgb(229,229,229)">=
3m_3980354071268070297link-enhancr-element" colspan=3D"2" style=3D"width:10=
0%;vertical-align:middle;font-family:"helvetica neue",helvetica,a=
rial,san-serif,roboto">
463740494903m_3980354071268070297link-enhancr-text-part gmail-m_60833337193=
25573209m_-4938330463740494903m_3980354071268070297link-enhancr-element" st=
yle=3D"line-height:16.5px;background-color:rgb(255,255,255);height:130px;wi=
dth:279px">
m_3980354071268070297link-enhancr-element" style=3D"word-wrap:break-word;pa=
dding:7px 20px 0px 14px"> 330463740494903m_3980354071268070297link-enhancr-element gmail-m_6083333719=
325573209m_-4938330463740494903m_3980354071268070297icon gmail-m_6083333719=
325573209m_-4938330463740494903m_3980354071268070297icon-shrink gmail-m_608=
3333719325573209m_-4938330463740494903m_3980354071268070297link-enhancr-tog=
gle">
03m_3980354071268070297link-enhancr-element gmail-m_6083333719325573209m_-4=
938330463740494903m_3980354071268070297icon gmail-m_6083333719325573209m_-4=
938330463740494903m_3980354071268070297icon-close gmail-m_60833337193255732=
09m_-4938330463740494903m_3980354071268070297link-enhancr-delete">
<=
a rel=3D"nofollow" href=3D"http://www.twistypuzzles.com/cgi-bin/puzzle.cgi?=
pkey=3D1722" class=3D"gmail-m_6083333719325573209m_-4938330463740494903m_39=
80354071268070297link-enhancr-card-urlWrapper gmail-m_6083333719325573209m_=
-4938330463740494903m_3980354071268070297link-enhancr-element" style=3D"tex=
t-decoration:none;color:rgb(0,0,0)" target=3D"_blank"> -m_6083333719325573209m_-4938330463740494903m_3980354071268070297link-enhan=
cr-element gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268=
070297link-enhancr-card-title" style=3D"margin:0px 0px 4px;font-weight:norm=
al;font-size:18px;line-height:21px;max-height:43px;color:rgb(0,0,0);overflo=
w:hidden;display:inline-block">TwistyPuzzles.com > Museum > Helicopte=
r Dodecahedr...
color:rgb(153,153,153);max-height:81px;font-family:"helvetica neue&quo=
t;,helvetica,arial,san-serif,roboto;overflow:hidden" class=3D"gmail-m_60833=
33719325573209m_-4938330463740494903m_3980354071268070297link-enhancr-card-=
description gmail-m_6083333719325573209m_-4938330463740494903m_398035407126=
8070297link-enhancr-element">Above:Solved Click a thumbnail to see its larg=
er version and description.
=20=20=20=20=20=20=20=20

Many people would call this the "True" Helicopter Dodecah=
edron...
9m_-4938330463740494903m_3980354071268070297link-enhancr-element" rowspan=
=3D"2" style=3D"width:1px;background-color:rgb(229,229,229)">
"gmail-m_6083333719325573209m_-4938330463740494903m_3980354071268070297link=
-enhancr-element" style=3D"width:1px;background-color:rgb(229,229,229)">iv>
0494903m_3980354071268070297link-enhancr-element" style=3D"width:100%;verti=
cal-align:middle;font-family:"helvetica neue",helvetica,arial,san=
-serif,roboto">
30463740494903m_3980354071268070297link-enhancr-element" style=3D"vertical-=
align:middle;width:100px;font-family:"helvetica neue",helvetica,a=
rial,san-serif,roboto">
463740494903m_3980354071268070297link-enhancr-element gmail-m_6083333719325=
573209m_-4938330463740494903m_3980354071268070297link-enhancr-preview-wrapp=
er" style=3D"padding:9px 20px 12px 0px;max-width:100px;min-width:80px;overf=
low:hidden;text-align:right;line-height:11px;max-height:13px;font-size:0pt"=
> 071268070297link-enhancr-element gmail-m_6083333719325573209m_-493833046374=
0494903m_3980354071268070297link-enhancr-preview-by gmail-m_608333371932557=
3209m_-4938330463740494903m_3980354071268070297link-enhancr-mobile-no-resiz=
e" style=3D"vertical-align:middle;font-size:9px;line-height:11px;color:rgb(=
153,153,153)"> Preview by Yahoo
903m_3980354071268070297link-enhancr-element" colspan=3D"6" style=3D"height=
:1px;background-color:rgb(229,229,229)">
5573209m_-4938330463740494903m_3980354071268070297link-enhancr-element" sty=
le=3D"height:1px;background-color:rgb(229,229,229)">

=C2=A0



It contains =
only those pieces in the original helicopter cube. It's a subset of the=
pieces in E0:1:0 or E0:1:0.11. Compared to E0:1:0, it has the "an ext=
ra challenge to solving because of an invisible orientation". The same=
challenge is there in E0:1:0.11. I won't say more, but Michael and Ed =
probably know what that is.

Since my variation has=
fewer pieces, I think it has a greater concentration of challenges. You do=
n't need to handle many tedious 1C pieces. I enjoyed solving it without=
macros in 180 moves.























--f403045e40641fab6f05444c107e--





Return to MagicCube4D main page
Return to the Superliminal home page