Windows Vista Games in Server 2008

Forums Operating Systems Windows Server 2008 Wish List Progress Windows Vista Games in Server 2008

Viewing 27 reply threads
  • Author
    Posts
    • #42934
      Arris
      Moderator

        Description:
        * The games Chess Titan, FreeCell, Hearts, InkBall, Mahjong Titans, Minesweeper, Purble Place, Solitaire and Spider Solitaire for Windows Server 2008. [Vista Ultimate game Tinker works!]
        * [s:1aruj83x]Games Explorer in Windows Server 2008.[/s:1aruj83x] [Solved]

        Solution
        Smartie77 got them all working! 🙂 See his extended installation instructions [localurl=viewtopic.php?p=7750#p7750:1aruj83x]here[/localurl:1aruj83x]. :geek:

      • #45481

        How does chess run? That is the only game in Vista I would really ever play!

      • #45482

        well what happened to me, is I put the files on the desktop, extracted the rars, and then double click on each on they will create the folder C:/Program FilesMicrosoft Games which each one will go in you will need the Vista_Emulation.dll file in System 32 and gameUX.dll (Not Sure What Its Called) in the same directory. My problem is I can get all games to work apart from Minesweep, but some games like solitaire when you close the games I get an error about solitaire haveing a error and had to close.

        I have tried to take the games from Vista, and the GameUX registry file, and applied it to server 2008, then I get an error about Xinput9_1_0.dll, and reinstalling it might fix the error, I’ve tried downloading some and adding them, but they never worked, then I took the file from a vista machine, and applied it to server 2008 and the games just wouldnt load.

      • #45483

        Inkball and freecell work but solitaire and a few others complain about vista emulation.dll which I’ve put in system32.

      • #45484

        @eLLioTT wrote:

        Inkball and freecell work but solitaire and a few others complain about vista emulation.dll which I’ve put in system32.

        Try putting emulation.dll in C:WindowsSysWOW64

        I have been out of town.

      • #45485

        I was wondering… why don’t we just search the web for some free clones of these games and make a package for server 2008? For example this minesweeper clone.

      • #45486
        Arris
        Moderator

          That’s a good idea! I am next: a replacement for Chess Titans!
          Name: Brutal Chess
          License type: Freeware
          Download: http://sourceforge.net/project/showfiles.php?group_id=139550&package_id=159434&release_id=480669
          Screenshot:

        • #45487

          For those of you using vista’s tokens.dat I wanna say that the SP1 versions of the vista games ARE WORKING! If you really want to play and don’t care much about server functions (vista’s tokens.dat disables server manager) then start using it right now.

        • #45488

          I’m confused.

          According to mwk_soul

          For those of you using vista’s tokens.dat I wanna say that the SP1 versions of the vista games ARE WORKING! If you really want to play and don’t care much about server functions (vista’s tokens.dat disables server manager) then start using it right now.

          I copied vista’s tokens.dat and I still can’t get the games to work. What am I missing?

        • #45489

          For solitaire, you can try PySol.
          http://pygames.sourceforge.net/

        • #45490

          I’m currently trying to make the games work in Vista.

          so far I’ve figured out that it queries SLGetWindowsInformationDWORD to check if you’re allowed to play the game.

          have a look through this list (speciflcally anything starting with Shell-) to see how it knows.

          Now, I made a fake DLL that just returns 1 but this causes slui.exe to fire and tell me that the program isn’t made for my edition of windows, so something else is in this crap.

          However, an alternative method of attack would be through this

          if anyone is familiar with using GetProcAddress then I heartily recommend giving it a punt… I’ve tried but it just throws an exception and crashes although it *IS* getting the address of the function (it’s in ntkrnl.exe or ntkrnlpa.exe and various others depending on your installation, see your system32 folder)

          Anyway… if we were able to read it out, we should be able to write it back too, hopefully without firing off the license tampering mechanism.

        • #45491
          Arris
          Moderator

            Hey Olipro (Olly Professional? ;)),

            Nice findings! Didn’t know there are also functions like ExGetLicenseTamperStat and ExSetLicenseTamperState to determine if someone is trying to circumvent the license checks. Maybe it’s possible to set a breakpoint in the ExSetLicenseTamperState function and watch in the Call Stack where it does some check before the TamperState is set using IDA Pro or Syser Debugger (successor of SoftICE) but there is also a possibility your system locks-up. Then I think you should use the Windows kernel debugger but I don’t have any experience with that.

            Will take a look at this again when I have some more time.

            Thanks for the info you provided! 🙂

            Arris

          • #45492

            @Arris wrote:

            Hey Olipro (Olly Professional? ;)),

            Nice findings! Didn’t know there are also functions like ExGetLicenseTamperStat and ExSetLicenseTamperState to determine if someone is trying to circumvent the license checks. Maybe it’s possible to set a breakpoint in the ExSetLicenseTamperState function and watch in the Call Stack where it does some check before the TamperState is set using IDA Pro or Syser Debugger (successor of SoftICE) but there is also a possibility your system locks-up. Then I think you should use the Windows kernel debugger but I don’t have any experience with that.

            Will take a look at this again when I have some more time.

            Thanks for the info you provided! 🙂

            Arris

            I do use Ollydbg, but the name’s not from that, pure coincidence 😛

            The TamperState functions only get invoked if you try editing the registry entry or similar – they won’t have a bearing on your ability to play the MS games.

            however, you could NOP out any references to SetTamperState in SPSYS.sys and then start tampering and see what you get.

            In any case, if we want to read out the LicenseData, we’ll have to write our own .sys file to read it and write it back, but through this method we could quite feasibly apply full rights to run the games and quite probably anything else that takes our fancy.

            I get the feeling this crap is probably populated in tokens.dat – however, as test, I tried changing the name from Shell-InBoxGames-FreeCell-EnableGame to feclient-EfsEnabled (since obviously Server 2008 has EFS) but unfortunately, it still knew that I wasn’t allowed to play… so there must be something more, again, free to play about.

          • #45493

            Just had a play around with getting the vista games working and withing 5 minutes i was playing minesweeper 🙂

            The solution was simple. I opened up minesweeper.exe in IDA, started debugging it and seen where it was exiting.
            I noticed it was taking a jmp after querying the slui thing that olipro mentioned, so all i did was placed 5 No Operation bytes (0x90) at the jmp and hey presto, it works!

            This also worked for the rest of the games, although the cardgames requires CardGames.dll in the system32 directory. and every other game apart from minesweeper has only 2 bytes to NOP.

            For your reference, heres the memory addresses of the places to NOP:

            • Freecell: 0x1026C15 (2 bytes)
            • Hearts: 0x102B557 (2 bytes)
            • Minesweeper: 0x10252F9 (5 bytes)
            • Purple Place: 0x1059BD2 (2 bytes)
            • Solitaire: 0x102B8BA (2 bytes)
            • Spider Solitaire: 0x1029059 (2 bytes)

            Unfortunately i havn’t been able to try the other games since my laptop runs Vista Home Basic (so no funky aero or chess titans :()
            Hope somebody can get the rest using this as a reference 🙂

          • #45494
            Arris
            Moderator

              Good job! Sounds really convincing and checked some games including Spider Solitaire yesterday but it looks like the executables differ every Service Pack so I don’t see any jmp instructions there:

              Windows Vista SP0 x86 English (en_windows_vista_x86_dvd_X12-34293.iso)

              Windows Vista SP1 x86 English (en_windows_vista_with_service_pack_1_x86_dvd_x14-29594.iso)

              Haven’t tested Vista SP2 because I don’t have an ISO of that version yet… Will try it tomorrow or saturday.

              Can you specify exactly what Architecture, Service Pack and Language (Shouldn’t be the problem because of the .mui files) you are using?

              Thanks in advance! I’m sure with your help we ‘ll get these games working on Windows Server 2008! 😎

              Like to hear from you soon! 🙂

              Arris

            • #45495

              Ah sorry, didn’t realise they change with every service pack.

              The addresses are from executable on Vista Home Basic x86 SP2 – English.

              I imagine the jmp will be in the same sort of place in the other executables so heres a screenshot of where i found it (shown the the 2 nop’s). This is in spider solitaire:

              As you can see from that it queries if your able to play the game, then jumps to the function below if you can. Otherwise it would usually jump to a leave and retn at the end of the function.

            • #45496
              Arris
              Moderator

                Sorry for my late reply! It’s weird indeed that they also have new executables for the Vista Games every Service Pack but I expect their buildservers use a new version of the compiler every time they create a new release so that explains the differences. However, after modifying the conditional jumps into nop’s it still refuses to start the game.

                I will look at this again when I have some spare time because until August 1st I’m very busy with a full time internship and beside that doing research in stack- and heapbased overflows in Windows.

                Btw: which Windows Server 2008 Edition/Architecture are you using?

                Arris

              • #45497

                hi
                I got most of the vista games run in server 2008 by using this links: http://www.wincert.net/forum/index.php?showtopic=6013
                (This link: http://www.4shared.com/dir/14281223/d52c5ee5/All_Vista_Games_For_Xp.html and then “Vista Games for XP Part 1(-3) – Fixed.zip)
                Minesweeper, Spider Solitaire and Purble Place didn’t work for me.

              • #45498

                Not been here for a while as i’ve been busy doing other things. Recently got sent a copy of Inkball and asked if i could make that work on 2008, which i have done 🙂

                Inkball is slightly differant to get working on 2008 since it doesn’t run a normal check. The advantage though is that IDA pulls in symbols from the microsoft symbol server making it easier to read and crack. To get inkball working you just need to throw a few NOPs after the ‘CanRunInkball’ call. NOP every byte until you get to where the jnz points to (55 bytes down on the copy sent to me) and hey presto, it works!

                I have no idea which service pack this version of inkball came from. I am currently using Windows server 2008 Enterprise SP2 and these games work fine. Its a shame we cant distribute these executables else i’d throw up a link to a handful of vista games.

              • #45499
                Arris
                Moderator

                  @VRocker wrote:

                  To get inkball working you just need to throw a few NOPs after the ‘CanRunInkball’ call. NOP every byte until you get to where the jnz points to (55 bytes down on the copy sent to me) and hey presto, it works!

                  Nice! That sounds really easy. 🙂 However I won’t try it yet because I currently have other priorities like creating the Windows Server 2008 R2 manual. Hope we can use the knowledge we gathered by playing with Windows Server 2008 also for the new R2! :geek:

                • #45500
                • #45501

                  Has anyone tried porting any Windows 7 games or media player12 over yet?

                • #45502

                  For mahjong here is In-Poculis Mahjong (no obligation to pay for the 120 levels!)
                  http://www.in-poculis.com

                • #45503

                  ok, here is how ( for x86 32bit Sp2 ) :

                  to be on the safe side you should have all important runtimes and DirectX installed, like a universal pack called AiO runtimes ( all in one runtimes ) .. google for it. It installs Xinput,DirectX,Net 1.1 to 3.5.1, all c++ and so on. Pretty safe and conveniant .

                  0.) install opensource/freeware 7zip for opening the wim files http://www.7zip.org – its useful as you see :

                  1. ) take your Vista iso / CD and navigate to the sources folder.

                  2. ) Open the INSTALL.WIM file by rightclicking it and select open with 7zip.

                  3.) Inside the wim you notice numbered directories. Each directory is a Vista edition. for me Number 3 was the folder for ULTIMATE which contains all the games I was interested in.

                  4.) Inside the [3] directory you see now all the folders of a Vista installation like Users,Windows,Program Files etc..

                  5.) We need a few files from that System32 directory and the complete “Program FilesMicrosoft Games” Folder from the opened install.wim — you can drag and drop them from the opened 7zip window to your desktop for instance.

                  FROM “Program Files” in Vista :

                  drag and drop the “microsoft games” folder to your desktop.

                  6.) FROM SYSTEM32 in Vista :

                  joy.cpl

                  Xinput_9_1_0.dll

                  dmusic.dll

                  Cardgames.dll

                  wpc.dll

                  GameUX.dll

                  GameUXLegacyDFS.dll
                  place the above on your desktop or a safe folder, they all go later in your system32 folder.

                  Now make a Folder EN-US or whatever Vista Source Language Code you are using ( I have a english vista cd but a german server one, which is not a problem – every NT6.x System has all the En-US, de-DE folders already. But you need to put the correct MUI files into their native folders.

                  From Inside the opened System32 Folder of Vistas Wim in 7zip you navigate to the EN-US folder of Vista – We need these MUI files :

                  joy.cpl.mui

                  wpc.dll.mui

                  GameUX.dll.mui
                  — drag and drop these 3 to your EN-US folder on the desktop.

                  Now we need a patched slc file – get a working one here :

                  http://msftguy.blogspot.com/2008/07/snipping-tool-on-server-2008-no-love.html

                  extract it ( slc.dll) to the desktop and keep it safe.. its the key file that makes this possible. ( Even running other vista tools on Server.. )

                  This SLC.dll needs to be copied into the “Microsoft games” subdirectories, e.g. into Minesweeper folder,Chess folder, Inkball folder and so on.. in every game there has to be this exact slc.dll .. DO NOT PUT THIS file into your Windows or System32 directory– only in the games folders

                  7.) Now close the Vista Wim, 7zip. You should have the Microsoft Games Folder, the dlls,cpls and the EN-US folder on your desk

                  the following tasks need admin rights or UAC working :

                  move/copy the single files from your desktop ( except SLC.dll ) to your (Server 2008 ) system32 directory

                  move the EN-US folder into the same system32 directory, when asked if you want to merge it, say yes.

                  move the prepared “Microsoft Games” folder to your Server08 “C:program files” folder.

                  Open a cmd prompt as admin

                  cd to c:windowsSystem32 if it isnt already

                  registering the ne 😀 😀 eded files :

                  regsvr32 gameux.dll

                  regsvr32 dmusic.dll

                  that’s it.

                  Now you can make shortcuts from C:program filesMicrosoft GamesGame_namegame.exe to your desktop and they will all run. Note : they wont show up in Game Explorer, but it is needed..

                • #45480
                  Arris
                  Moderator

                    Great job, smartie77! :geek: As you can see by looking at the number of views of this topic, this is a much requested feature 🙂 Updated the main page of the win2008workstation manual and the [localurl=viewtopic.php?f=11&t=60:tpu0u7ks]main topic[/localurl:tpu0u7ks].

                  • #45504

                    @Arris wrote:

                    Great job, smartie77! :geek: As you can see by looking at the number of views of this topic, this is a much requested feature 🙂 Updated the main page of the win2008workstation manual and the [localurl=viewtopic.php?f=11&t=60:2wftgehg]main topic[/localurl:2wftgehg].

                    Wow. Thanks, I feel honoured, Administrator !

                    forgive me the complicated way of explaining stuff.. I am a Linux guy usually and german speaking .. tweaking an OS or add features never supposed into them is one of my favorite hobbies.. vliting vistas, reconfiguring servers , fiddling in the registry hives, I am also one of these crazy people that put OSX on PCs and so on.. therefore this game thing was easy to figure out. So, now it is shared with everyone for their pleasure.

                    Some screenies where they might visualize what I am trying to say.. I tend to be over-technical or over-simplifying things, forgive me that please 😆 ..

                    Once again, thank you and I will try to see what else can be added here.

                    About My Intention :
                    2008 was and still is the very best Vista-Replacement ( Home Premium 64 was preinstalled on my Laptop and I hate it – I dislike Win7 too ) and the only 32bit OS that lets you use all Ram without forcing the 64bit madness of Windows ( slow and full of bugs – also I need 16bit support on Win ) . In Linux a standard feature to have a pae kernel available.. in Microsofts world it needs a server os.. crazy world, but however – Plus Server is way securer and can be hardened like hell for restricted users, and now that MSE 2.0 installs on it – well, safe,secure,nice and performance. With full gaming support and without the 64bit overhead of having double directories, exes and services . What else we need for a modern windows box – lean and mean but secure .. the next best thing to Linux ( which is the best of course ) 😉

                  • #45505
                    Arris
                    Moderator

                      @smartie77 wrote:

                      Wow. Thanks, I feel honoured, Administrator !

                      Please just call me Arris 🙂

                      @smartie77 wrote:

                      forgive me the complicated way of explaining stuff.. I am a Linux guy usually and german speaking .. tweaking an OS or add features never supposed into them is one of my favorite hobbies.. vliting vistas, reconfiguring servers , fiddling in the registry hives, I am also one of these crazy people that put OSX on PCs and so on.. therefore this game thing was easy to figure out. So, now it is shared with everyone for their pleasure.

                      Sounds we have quite similar interests, except for the Linux part which I still have to get more familiar with. I think you will also have fun reading the Windows Internals book (Authors which created ProcMon/ProcExp etc.) which also dives into the structure of Windows with the kernel and its dependencies, objects, threads, registry, services, WMI, drivers, DCOM etc. :geek: I find it a very interesting book to read! 🙂

                      @smartie77 wrote:

                      I tend to be over-technical or over-simplifying things, forgive me that please 😆 ..

                      I recognize that, take a look at the 2008/2008 R2 manuals for example 😉 All information should be understandable by everyone, so I think you did a good job.

                      See you around! 😎

                    • #45506

                      Hi Smartie77:
                      I have tried numerous times to use your method for installing and using Microsoft’s games on my Server 2008 R2, 64-bit server. I have been repeatedly unsuccessful. I have followed your instructions to the letter.
                      Upon attempting to run one of the games, any of the games, nothing occurs. The applications do not open, as far as I can tell don’t even try to open.
                      I have all of the requisite runtime files downloaded, have extracted the necessary DLL’s, etc., from a Windows 7 disk.
                      Is there any information you can add that might help? Have you tried or heard of anyone successfully trying to run Windows 7 games in a Server 2008, R2 64-bit environment?
                      Thank you.

                  Viewing 27 reply threads
                  • You must be logged in to reply to this topic.