It is currently 26 Apr 2024, 04:36
   
Text Size

What to install for the almost-classic Shandalar experience?

MicroProse's Shandalar Campaign Game, now with new cards & a new look!

Moderators: BAgate, drool66, Aswan jaguar, gmzombie, stassy, CCGHQ Admins

What to install for the almost-classic Shandalar experience?

Postby ToxicFrog » 18 Feb 2016, 11:13

I recently got the craving to play Shandalar again and, maybe, actually beat it this time. Imagine my delight upon finding that there's still an active community fixing and improving it! But now, after spending a while reading the forums, I'm more than a little confused as to what I should actually be installing.

What I'm after is -- more or less -- the original game, with as many graphics/UI/stability/bugfix/QoL improvements as I can get away with, but without adding huge piles of additional cards, especially ones that the AI can't/won't use.

As far as I can tell, I have four(!) options. I summarize them here, along with the installation procedure; hopefully someone can tell me if I have anything catastrophically wrong.

Manalink 1.3.2

The original game with unofficial patch 1.3.2 applied for things like WinME compatibility. As vanilla as it gets. There's also a version floating around (packaged by CirothUngol) that includes Jiansonz's enemy decks overhaul.

Install: unpack and play.

Shandalar 2010

Based on Manalink 2. Includes compatibility fixes for WinXP. As far as I can tell, the Shandalar part is largely unchanged.

Install: mount 2010 ISO, run installer, then apply 2009->2011 patch.

Shandalar 2012

Based on Manalink 1.3.2, but includes graphics/sound upgrades and the Deck Overhaul. No idea what compatibility fixes, if any, are included. Considered deprecated in favour of Shandalar 2015 by the author, CirithUngol.

Install: install ML 1.3.2, then unpack the 2012delta patch over it.

Shandalar 2015

Based on Manalink 3, the result of Korath's tireless work to update Shandalar. Includes hundreds (thousands?) of new cards, but most of them either aren't in AI decks or the AI doesn't understand how to use effectively (yet), so this gives the player something of an advantage. Lots of bugfixes, lots of configuration options. I think that artwork/UI overhauls compatible with ML3 will also work with S2015. I don't know if it includes Jiansonz's decks, or some other deck overhaul, or the vanilla decks.

Install: (deep breath) install Manalink 3: Portals to Theros, update to Fate Reforged (but not any later version), install UI mods (Sharlack's/Sonic's), then unpack the latest stable S2015 (Thieves' Hideout 3 as of right now) over it. Then install card art + updates. Then edit shandalar.ini to disable sets to taste.



Based on this, I think what I probably want is Shandalar 2015, with Sharlack's widescreen UI and the latest card art pack from Sonic, but with the following [Sets] configuration:
Code: Select all
[Sets]
--The Dark=enable
Fourth Edition=enable
Astral=enable
--=disable
which will enable everything up to and including 4E, except Fallen Empires, in addition to the Shandalar-exclusive Astral set.

Does this make sense? Is this a good approach if I just want to play (and hopefully finish) Shandalar with some modern accoutrements?
ToxicFrog
 
Posts: 3
Joined: 18 Feb 2016, 09:13
Has thanked: 0 time
Been thanked: 1 time

Re: What to install for the almost-classic Shandalar experie

Postby Korath » 18 Feb 2016, 11:50

ToxicFrog wrote:which will enable everything up to and including 4E, except Fallen Empires, in addition to the Shandalar-exclusive Astral set.
It'll do that, yes, but you'll still get a different card list than the original Shandalar - it'll add in a bunch of pre-Fallen-Empires cards that were skipped by MicroProse, and a handful of later cards that are flagged as belonging to the "Promo" set. Better to set all sets as disabled in [Sets] and then add the individual cards in the [Enable] section. There's a list here that you should almost be able to just paste in. (The cards with accents in their names will need to be replaced by their id numbers, and you may need to trim out the tokens.)

You'll also get the wrong cards assigned to dungeons, so you'd have to replace the [DungeonTreasure] section further down as well. The original list was:
| Open
Ali from Cairo
Ancestral Recall
Black Lotus
Braingeyser
Balance
Berserk
Candelabra of Tawnos
Copy Artifact
Cyclopean Tomb
Demonic Tutor
Feldon's Cane
Forcefield
Fork
Ivory Tower
Library of Alexandria
Mind Twist
Mishra's Workshop
Mox Emerald
Mox Jet
Mox Pearl
Mox Ruby
Mox Sapphire
Regrowth
Sol Ring
Time Vault
Time Walk
Timetwister
Wheel of Fortune
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: What to install for the almost-classic Shandalar experie

Postby ToxicFrog » 18 Feb 2016, 17:01

Ok, got it installed and mostly working.

For the curious, here's the procedure I used:
  • unpacked Manalink 1.3.2
  • unpacked and merged, in this order:
    • Korath's ML3 Portals to Theros distribution
    • ML3 Fate Reforged patch
    • Sarlack's Widescreen Graphics
    • Shandalar Thieves' Hideout 3
    • Sonic's CardArt 2012 and the 2012-2014, 2015/03, and 2015-12 updates
  • edited shandalar.ini to set Window=2 and set up card availability as discussed upthread.

I'm running it on Linux under Wine on a 3K screen, so I ran into some speedbumps that people probably won't hit on windows.

The first is that the patches don't agree with the original game -- or with each other! -- on what case to use for filenames. This means that you have to normalize the case of everything before you merge it, or you'll end up with (e.g.) three copies of cardart/cardback.pic, with different capitalization. No idea which one, if any, wine ends up loading; it's safer to make sure there's only one. Solved by writing a small script to normalize all file and directory names to lowercase before merging.

The second is that wine -- as usual -- copes exceptionally poorly with display mode switches. You have to run run winecfg and enable "emulate a virtual desktop", or it'll melt down at the first mode switch and you'll have to restart X to recover.

The third is that $PWD has to be $SHANDALAR/program/ when you run shandalar.exe. It looks for resources in $PWD rather than in $(dirname $0), so if those aren't the same thing when it runs, it'll raise a bunch of errors about cardart files and then exit. In particular, this means that `wine c:/shandalar/program/shandalar.exe` will do the wrong thing; you need to `cd .wine/drive_c/shandalar/program && wine shandalar.exe`.

With all this out of the way, the game starts up and runs mostly fine. I have found what appears to be a legit bug (not a wine issue), though: contrary to what the docs say, Window=2 doesn't stop the facemaker from forcing the resolution to 1024x768. This would probably be merely annoying on windows, but wine never really recovers (even in virtual desktop mode), and the UI kind of comes apart once the facemaker exits. Fortunately, the workaround is easy: design character, then immediately save and exit. Subsequently loading the game doesn't invoke the facemaker and the resolution is left untouched.

Unfortunately, the "mostly" is that once I get into duel mode, the wheels come off. With virtual desktop mode enabled at 1920x1080, it looks amazing, but my hand vanishes as soon as I click anywhere outside the hand subwindow, and it doesn't come back until my next draw phase. This makes it effectively impossible to play anything. If I turn off virtual desktop mode so that it's running at 2880x1620, it displays the duel interface and then locks up completely.

That said, I think it almost certain that this is not a problem with Shandalar, but with wine. AIUI, Duel does some exceptionally nasty things with GDI, and wine tends to have a lot of trouble dealing correctly with stupid GDI tricks -- much more work has gone into OGL/D3D support, and other GDI games (such as Diablo 1 and the Geneforge series) have similar issues. (My guess here is that the subwindows are actually distinct GDI windows, and wine isn't respecting whatever Duel does to make them always-on-top, or the background always-on-bottom.)

At home I have a win7 machine with a 1680x1050 display, so I'll give it a shot on that when I get home tomorrow and report back. :)
ToxicFrog
 
Posts: 3
Joined: 18 Feb 2016, 09:13
Has thanked: 0 time
Been thanked: 1 time

Re: What to install for the almost-classic Shandalar experie

Postby Korath » 19 Feb 2016, 02:28

ToxicFrog wrote:contrary to what the docs say, Window=2 doesn't stop the facemaker from forcing the resolution to 1024x768.
It's prevented more robustly in the Nomad's Bazaar version. If restarting after starting a new game is more annoying than having it ignore your config and never changing resolution, you can backport it into Thieves' Hideout by copying NB's FaceMaker-nores.exe over FaceMaker.exe.
ToxicFrog wrote:AIUI, Duel does some exceptionally nasty things with GDI
You don't know a tenth of it. :(
ToxicFrog wrote:(My guess here is that the subwindows are actually distinct GDI windows, and wine isn't respecting whatever Duel does to make them always-on-top, or the background always-on-bottom.)
They're distinct windows, yes, as is just about everything else moveable on the screen.

They're not actually forced to be topmost at all; instead, the background window clips their paint areas with WS_CLIPCHILDREN so they get drawn even when the background is logically on top. I can probably prevent the background window from raising itself when clicked, or make the subwindows actually be topmost like they appear, and I'd expect either would be enough; but then, AFAIK the WS_CLIPCHILDREN method is entirely proper and lots of more basic things would break if wine didn't support it, so who knows. If you file bugs about this and the cwd issue and I'll try to get to them when my life's less hectic.
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: What to install for the almost-classic Shandalar experie

Postby ToxicFrog » 19 Feb 2016, 22:15

That's so much worse than I had imagined.

I'd be shocked if wine didn't support WS_CLIPCHILDREN at all, but some cursory examination of the bug tracker there are at least some situations where it's not supported or doesn't function correctly. And if there's a game that seems destined to trigger wacky edge cases in the GDI implementation, it's probably this one.

Windows trip report: copying the install over from Linux really did not work; I suspect that permissions got screwed up somehow. Even once I fixed the obvious problem (none of the executables were +x), there was serious graphical corruption and it was extremely crash-happy.

I went through the entire install process again on windows and now it seems to be working just fine, though! Although wizard mode is wrecking me.

I'll try to get those bugs filed tonight.

E: filed bugs: CWD, WS_CLIPCHILDREN.
ToxicFrog
 
Posts: 3
Joined: 18 Feb 2016, 09:13
Has thanked: 0 time
Been thanked: 1 time


Return to Shandalar

Who is online

Users browsing this forum: No registered users and 34 guests


Who is online

In total there are 34 users online :: 0 registered, 0 hidden and 34 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 34 guests

Login Form