Perfect and Revenge

26 posts / 0 new
Last post
WayneCa
Offline
Joined: 2014-07-13

@ben: OK, as for what I did, exactly.

1. I downloaded sokodup from the ysokoban site.
2. As per instructions, I unzipped the archive file into a folder in my sokoban folder. (Well, the instructions didn't specify where other than somewhere on my drive).
3. Reading the ReadMe.txt file, I found the various ways to specify the command line.
4. Scrolling down abit further I found:

No installation. Just put executable in some directory.
Create subdirectory with name Collections.
Put there (in collections) all collections that you have and
want to test new collections with (all files will be used, i.e.
with any extension).

go to console (dos prompt) and type:

sokodup filename > report.log

You will get report for all levels from filename which are equal
(rotated, flipped, with dead walls or man moved to a different location)
to some level from any collection which is in directory collection.
And filename will be tested that it does not contain equal level internally.

5. I created the Collections folder (I noticed the capitalization and plurality of the name specified above) and copied my tribute puzzle file into it.
6. I put copies of the Boxxle 1 and Boxxle 2 files that I downloaded here into the sokodup folder.
7. I clicked the Start button and typed cmd.exe and pressed [ENTER] to open the command line window.
8. In the command window I first cd'd to the sokodup folder, then typed: sokodupcmd Boxxle-01-(108).txt > report.log (as per instruction stated above, except the command filename is SokoDupCmd.exe, and typing in sokodup results in an error).
9. The result, immediately, was:

The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail.

10. Checking the event log (Start->Administrative Tools->Computer Management->Event Viewer->Summary of Administrative Events->33 SideBySide Application) reveals:

Activation context generation failed for "C:\Users\LBHIPRESENTER#10\Documents\Sokoban\sokodup\SokoDupCmd.exe". Dependent Assembly Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" could not be found. Please use sxstrace.exe for detailed diagnosis.

11. Running sxstrace.exe results in built-in help specifying various options. Since I know nothing of this utility I went no further.

ben
Offline
Joined: 2012-04-02

According to Microsoft....

You are missing the Visual C++ 2005 Sp1 Runtime (x86):

http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en

Download and install it and you can run the application.

ben
Offline
Joined: 2012-04-02

You can update the Visual C++ 2005 Sp1 Runtime like I mentioned above and that should work.

The author just updated SokoDup to not require using DLL.
If you download the latest version from the SokoDup page, it should also work.

Usually, the way I run SokoDup is like this...
say that you extracted sokodupcmd.exe to c:\sokodup\
then copy all the level files to c:\sokodup\collections\

then run from c:\sokodup\

sokodupcmd -* -c > output.txt

Open output.txt with any text editor (for example notepad) to view the results.

I did a run earlier comparing the Boxxle, Boxxle II and Original sets.
It shows that all levels from the Boxxle and Boxxle II are unique.
These levels from the Original are duplicates (those not shown are unique):

Reading Collections\Original_50.xsb (50 levels)
dup(1) 1 ( 13 - 23) == 12 ( 148 - 158) from Boxxle_I_108.xsb
dup(2) 2 ( 27 - 36) == 31 ( 432 - 441) from Boxxle_I_108.xsb
dup(3) 3 ( 40 - 49) == 33 ( 465 - 474) from Boxxle_I_108.xsb
dup(4) 6 ( 86 - 96) == 35 ( 494 - 504) from Boxxle_I_108.xsb
dup(5) 11 ( 170 - 184) == 65 ( 1074 - 1088) from Boxxle_I_108.xsb
dup(6) 12 ( 188 - 200) == 71 ( 1183 - 1195) from Boxxle_I_108.xsb
dup(7) 14 ( 220 - 235) == 72 ( 1201 - 1216) from Boxxle_I_108.xsb
dup(8) 16 ( 258 - 272) == 78 ( 1312 - 1326) from Boxxle_I_108.xsb
dup(9) 17 ( 276 - 289) == 64 ( 1055 - 1068) from Boxxle_I_108.xsb
dup(10) 26 ( 439 - 450) == 50 ( 776 - 787) from Boxxle_I_108.xsb
dup(11) 29 ( 488 - 500) == 104 ( 1794 - 1806) from Boxxle_I_108.xsb
dup(12) 31 ( 521 - 536) ~= 48 ( 738 - 753) from Boxxle_I_108.xsb
dup(13) 32 ( 540 - 554) == 44 ( 660 - 674) from Boxxle_I_108.xsb
dup(14) 33 ( 558 - 572) == 38 ( 545 - 559) from Boxxle_I_108.xsb
dup(15) 34 ( 576 - 590) == 41 ( 603 - 617) from Boxxle_I_108.xsb
dup(16) 38 ( 650 - 660) == 82 ( 1397 - 1407) from Boxxle_I_108.xsb
dup(17) 40 ( 683 - 698) == 99 ( 1700 - 1715) from Boxxle_I_108.xsb
dup(18) 42 ( 720 - 732) == 81 ( 1374 - 1391) from Boxxle_I_108.xsb
dup(19) 43 ( 736 - 746) == 36 ( 510 - 520) from Boxxle_I_108.xsb
dup(20) 46 ( 785 - 800) == 98 ( 1679 - 1694) from Boxxle_I_108.xsb
dup(21) 47 ( 804 - 814) == 100 ( 1721 - 1731) from Boxxle_I_108.xsb
dup(22) 48 ( 818 - 833) == 33 ( 483 - 495) from Boxxle_II_120.xsb
dup(23) 49 ( 837 - 851) == 66 ( 1094 - 1108) from Boxxle_I_108.xsb
dup(24) 50 ( 855 - 870) == 103 ( 1773 - 1788) from Boxxle_I_108.xsb

Perfect and Revenge themselves are unique, but they have many overlaps
with the two Boxxle sets and the Original set.

WayneCa
Offline
Joined: 2014-07-13

According to Microsoft....

You are missing the Visual C++ 2005 Sp1 Runtime (x86):

http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en

Download and install it and you can run the application.

I downloaded and installed the missing rutime and the program still fails to run with the same error. I will try downloading the latest sokodup and see what it does, but I only downloaded the copy I have a few days ago. Hope the one there now is newer.

Edit: It is newer and it runs fine. I will post a new thread with the observations I have made thus far, and will include the info I glean from using sokodup in addition to the duplicate finder function in YASC.

WayneCa
Offline
Joined: 2014-07-13

When I started up my computer this morning there was an update waiting for me in Windows Update. It turned out to be:

Security Update for Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package (KB2538242)

I ran the original sokodup after installing this update and it worked perfectly. Apparently there is a bug in the redistributable that has issues in Vista. This update fixes it.

Pages