Early Macromedia Director titles are supported now

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

User avatar
sev
ScummVM Lead
Posts: 2305
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Early Macromedia Director titles are supported now

Post by sev »

After 5 years of active development, we are glad to finally announce the first MacroMind/Macromedia Director-based games to be supported.

Iskrich, a GSoC student, laid down the engine’s first lines of code, based on the initial reverse engineering efforts of fuzzie, which she wrote in Python as part of the continuity project. Then, the work was continued by sev in 2017 when Lingo compiler development was started and stevenhoefel started adding Director 5-related code. In 2018, there was practically no development, but in 2019, moralrecordings made some advancements for Director 4. Finally, in 2020 and 2021, there was a big chunk of development, first by npjg and djsrv, then by sheep and djsrv, while rvanlaar set up a continuous integration buildbot for the project.

Long story short, after 3738 commits, we are now announcing support for Director 2-based titles such as Spaceship Warlock. Selected Director 3-based titles may work, and in particular, we support L-ZONE.

Grab your CDs and give these titles a go. We are also actively collecting info on any Director-based (and Shockwave) titles that we catalogue on our Wiki, so, please, help us with this task.

We are actively working on deepening Director 3 compatibility, particularly the original Journeyman Project and advancing with Director 4 support, having Meet MediaBand and Chop Suey as our primary test targets.

For running the games you will need the latest daily build of ScummVM. And as usual, if you see any issues, please file them in the issue tracker.
User avatar
eriktorbjorn
ScummVM Developer
Posts: 3560
Joined: Mon Oct 31, 2005 7:39 am

Re: Early Macromedia Director titles are supported now

Post by eriktorbjorn »

sev wrote: Tue Aug 17, 2021 12:58 pm Long story short, after 3738 commits, we are now announcing support for Director 2-based titles such as Spaceship Warlock. Selected Director 3-based titles may work, and in particular, we support L-ZONE.
Are there any further instructions on how to get these games running? I was able to get the Windows version of Spaceship Warlock to work long ago, but it's less obvious (to me) which files I need in which format from the Macintosh CD.

Edit: After installing the Python 3 "machfs" package manually (since it wasn't packaged for Debian, as far as I can tell), I was able to get dumper-companion.py running. I had already ripped the CD to an .iso file to speed things up while experimenting, so this worked to dump all the files:

Code: Select all

dumper-companion.py iso sswarlock.iso output
Where "output" was an empty folder. This apparently dumped everything on the CD into the output folder. But unlike the hfsutils tools I had used in the past, MacBinary files did not get a .bin extension to label them as such, so it's hard to tell which files were dumped as what. Oh well, as long as ScummVM knows...

It also dumped folders that I almost certainly don't need, such as "Trash", "Desktop Folder" and "Total Distortion DEMO!!". It would be nice to know what can be safely removed.

In the end, ScummVm would let me add the game but complained about it:

Code: Select all

The game in 'output' seems to be an unknown game variant.

Please report the following data to the ScummVM team at https://bugs.scummvm.org/ along with the name of the game you tried to add and its version, language, etc.:

Matched game IDs for the director engine: warlock-mac

  {"Spaceship Warlock™", 0, "cfa68a1bc49251497ebde18e5fc9c217", 273371},
User avatar
KainXVIII
Posts: 81
Joined: Mon Feb 11, 2008 10:00 pm
Location: Russia

Re: Early Macromedia Director titles are supported now

Post by KainXVIII »

ScummVM complains in console window that SS Warlock "Could not find classicmacfonts.dat. Falling back to built-in fonts!", both in win and mac versions. Is it normal behavior?
User avatar
Praetorian
ScummVM Developer
Posts: 882
Joined: Tue May 08, 2007 8:54 am
Location: Greece
Contact:

Re: Early Macromedia Director titles are supported now

Post by Praetorian »

KainXVIII wrote: Tue Aug 31, 2021 4:13 pm ScummVM complains in console window that SS Warlock "Could not find classicmacfonts.dat. Falling back to built-in fonts!", both in win and mac versions. Is it normal behavior?
This classicmacfonts.dat file is available in Mac OS 7 disk images. You don't need the file to run the games (since the engines will use fallback fonts) but arguably the experience is "better" with the classic mac fonts.

There is a developer tool in our repository (devtools/create_classicmacfonts.sh), basically a shell script, which can extract this file (see comments at the start of the script file for instructions and alternatives) -- I think it's only been tested on Mac OS).
create_classicmacfonts.sh, create_japanesemacfonts.sh
_____________________________________________________
Scripts for extracting fonts from Classic MacOS images freely
available from apple.com. Used in Director, MacVenture, SCUMM
and WAGE engines.
User avatar
KainXVIII
Posts: 81
Joined: Mon Feb 11, 2008 10:00 pm
Location: Russia

Re: Early Macromedia Director titles are supported now

Post by KainXVIII »

Praetorian wrote: Wed Sep 01, 2021 1:49 pm
KainXVIII wrote: Tue Aug 31, 2021 4:13 pm ScummVM complains in console window that SS Warlock "Could not find classicmacfonts.dat. Falling back to built-in fonts!", both in win and mac versions. Is it normal behavior?
This classicmacfonts.dat file is available in Mac OS 7 disk images. You don't need the file to run the games (since the engines will use fallback fonts) but arguably the experience is "better" with the classic mac fonts.

There is a developer tool in our repository (devtools/create_classicmacfonts.sh), basically a shell script, which can extract this file (see comments at the start of the script file for instructions and alternatives) -- I think it's only been tested on Mac OS).
create_classicmacfonts.sh, create_japanesemacfonts.sh
_____________________________________________________
Scripts for extracting fonts from Classic MacOS images freely
available from apple.com. Used in Director, MacVenture, SCUMM
and WAGE engines.
This old font is copyrighted or what? I can't just download somewhere?
But thanks, i will try to make this dat manually 8)
User avatar
sev
ScummVM Lead
Posts: 2305
Joined: Wed Sep 21, 2005 1:06 pm
Contact:

Re: Early Macromedia Director titles are supported now

Post by sev »

KainXVIII wrote: Wed Sep 01, 2021 2:24 pm This old font is copyrighted or what?
Yes, the script mentioned above downloads disk images from apple.com, but those are in a form of self-extracting files which require end-user to accept Apple EULA. Thus, we cannot provide the file for direct download (we wish we could).


Eugene
User avatar
heidi.wenger
Posts: 7
Joined: Sun Oct 03, 2021 11:19 pm

Re: Early Macromedia Director titles are supported now

Post by heidi.wenger »

Very nice! Looks like it means also those classic Moomin games from Finland <3
philthethrill
Posts: 59
Joined: Tue Aug 22, 2017 7:55 am

Re: Early Macromedia Director titles are supported now

Post by philthethrill »

I have the CD of the game Victor Vector and the Hypnotic Harp. I’m able to add it, and ScummVM recognizes it, but when I start it, ScummVM crashes. There is no error message. I just go back to the desktop after ScummVM closes.
User avatar
Raziel
ScummVM Porter
Posts: 1539
Joined: Tue Oct 25, 2005 8:27 am
Location: a dying planet
Contact:

Re: Early Macromedia Director titles are supported now

Post by Raziel »

Do you get console output or a console log?
Can you try starting scummvm with a debug flag "-d 5" f.e. and see if there is something printed?
philthethrill
Posts: 59
Joined: Tue Aug 22, 2017 7:55 am

Re: Early Macromedia Director titles are supported now

Post by philthethrill »

I’m using the ScummVM daily build, and I tried pressing Ctrl+Alt+D, but I couldn’t access the debugger. I even checked the keymapper to make sure I was pressing the right keys. I used my phone to record a video of the console output so I don’t miss anything. This is what it says.

User picked target ‘vharp-win’ (engine ID ‘director’, game ID ‘vvharp’)…
Looking for a plugin supporting this target… Macromedia Director
WARNING:punycode_decode: overflow1!
Running Victor Vector & Yondo: The Hypnotic Harp (English)
Hypnotic.exe: 88f47406f34ec36e751a64f7c76f2c4, 370272 bytes
WARNING: SearchSet::add: archive ‘E:\HYPNOTIC\’ already present!
Starting v300 Director game
WARNING: Could not find classicmacfonts.dat. Falling back to built-in fonts!
WARNING: Lingo Inited!
-- “Now loading LINGO.INI 20/9/21 2:57 PM”
-- “This computer is running in 8-bit color depth.”
WARNING: Lingo ::openXLib: Unimplemented xlib: ‘dpwqtw’!
WARNING: Lingo ::openXLib: Unimplemented xlib: ‘dpwavi’!
WARNING: Movie is from later version v310!
Switching to Director v310
Reloading builtins
WARNING: Lingo ::closeXlib: Unimplemented xlib: ‘dpwqtw’!
WARNING: Lingo ::openXLib: Unimplemented xlib: ‘dpwqtw’!
WARNING: Lingo ::closeXlib: Unimplemented xlib: ‘dpwavi’!
WARNING: Lingo ::openXLib: Unimplemented xlib: ‘dpwavi’!
WARNING: Score::startLoop(): Movie has no frames!
WARNING: processEvents: request to access frame 1 of 0!
WARNING: processEvents: request to access frame 1 of 0!
WARNING: processEvents: request to access frame 1 of 0!

After that ScummVM closes, and I’m back at the desktop.
User avatar
KainXVIII
Posts: 81
Joined: Mon Feb 11, 2008 10:00 pm
Location: Russia

Re: Early Macromedia Director titles are supported now

Post by KainXVIII »

Praetorian wrote: Wed Sep 01, 2021 1:49 pm
KainXVIII wrote: Tue Aug 31, 2021 4:13 pm ScummVM complains in console window that SS Warlock "Could not find classicmacfonts.dat. Falling back to built-in fonts!", both in win and mac versions. Is it normal behavior?
This classicmacfonts.dat file is available in Mac OS 7 disk images. You don't need the file to run the games (since the engines will use fallback fonts) but arguably the experience is "better" with the classic mac fonts.

There is a developer tool in our repository (devtools/create_classicmacfonts.sh), basically a shell script, which can extract this file (see comments at the start of the script file for instructions and alternatives) -- I think it's only been tested on Mac OS).
create_classicmacfonts.sh, create_japanesemacfonts.sh
_____________________________________________________
Scripts for extracting fonts from Classic MacOS images freely
available from apple.com. Used in Director, MacVenture, SCUMM
and WAGE engines.
By the way devtools/create_classicmacfonts.sh link is no longer working. Anyway, i don't have Mac OS to extract these fonts :cry:
User avatar
Praetorian
ScummVM Developer
Posts: 882
Joined: Tue May 08, 2007 8:54 am
Location: Greece
Contact:

Re: Early Macromedia Director titles are supported now

Post by Praetorian »

KainXVIII wrote: Fri Feb 03, 2023 9:54 am By the way devtools/create_classicmacfonts.sh link is no longer working. Anyway, i don't have Mac OS to extract these fonts :cry:
The create_classicmacfonts.sh script has been integrated in the dumper-companion.py python script.

There's quick instructions on the usage of this script with python3 (and one or two additional libraries installed depending if you are on Mac OS or other OS).
https://docs.scummvm.org/en/latest/use_ ... files.html

Apparently there's a browser version as well (see the documentation page above), but personally I haven't tested that as of yet, and don't know if it covers macfonts as well.

The "--help" output indicates that it should be easy enough to run it:

Code: Select all

usage: dumper-companion.py [-h] {iso,dir,str,createmacfonts} ...

positional arguments:
  {iso,dir,str,createmacfonts}
    iso                 Dump HFS ISOs
    dir                 Punyencode all files and dirs in place
    str                 Convert strings or standard in to or from punycode
    createmacfonts      Creates classicmacfonts.dat from Mac OS 7 system images

options:
  -h, --help            show this help message and exit
As mentioned above Mac OS 7 disk images should be freely available from Apple. ScummVM cannot distribute them, but you should be able to find them there. Also, I think the script will attempt to download an English image from an official Apple site, but I am unsure if the link is deprecated (I have not tested this).
User avatar
KainXVIII
Posts: 81
Joined: Mon Feb 11, 2008 10:00 pm
Location: Russia

Re: Early Macromedia Director titles are supported now

Post by KainXVIII »

Praetorian wrote: Fri Feb 03, 2023 11:16 am
KainXVIII wrote: Fri Feb 03, 2023 9:54 am By the way devtools/create_classicmacfonts.sh link is no longer working. Anyway, i don't have Mac OS to extract these fonts :cry:
The create_classicmacfonts.sh script has been integrated in the dumper-companion.py python script.

There's quick instructions on the usage of this script with python3 (and one or two additional libraries installed depending if you are on Mac OS or other OS).
Thanks, it turned out to be easier than i thought! Installed Python + machfs, then i just launched "dumper-companion.py createmacfonts" in command line and now i have my original mac fonts, worked in Windows 10 environment (i hope they are worth it) :lol:
PS - or maybe i don't, classicmacfonts.dat is only 22 bytes long and it seems empty :shock:

Code: Select all

Downloading System 7.0.1 image...done
Data len is: 4836709
Decompressing...done
Reading Fonts.image...
Compressing Athens...
Traceback (most recent call last):
  File "D:\Downloads\mac\dumper-companion.py", line 794, in <module>
    exit(f(args))
         ^^^^^^^
  File "D:\Downloads\mac\dumper-companion.py", line 686, in create_macfonts
    with io.BytesIO() as fonts_bytesio:
         ^^
NameError: name 'io' is not defined. Did you mean: 'id'?
User avatar
Praetorian
ScummVM Developer
Posts: 882
Joined: Tue May 08, 2007 8:54 am
Location: Greece
Contact:

Re: Early Macromedia Director titles are supported now

Post by Praetorian »

KainXVIII wrote: Fri Feb 03, 2023 12:56 pm Thanks, it turned out to be easier than i thought! Installed Python + machfs, then i just launched "dumper-companion.py createmacfonts" in command line and now i have my original mac fonts, worked in Windows 10 environment (i hope they are worth it) :lol:
PS - or maybe i don't, classicmacfonts.dat is only 22 bytes long and it seems empty :shock:

Code: Select all

Downloading System 7.0.1 image...done
Data len is: 4836709
Decompressing...done
Reading Fonts.image...
Compressing Athens...
Traceback (most recent call last):
  File "D:\Downloads\mac\dumper-companion.py", line 794, in <module>
    exit(f(args))
         ^^^^^^^
  File "D:\Downloads\mac\dumper-companion.py", line 686, in create_macfonts
    with io.BytesIO() as fonts_bytesio:
         ^^
NameError: name 'io' is not defined. Did you mean: 'id'?
This might be a bug for us to fix.
Can you try replacing the line 686:

Code: Select all

with io.BytesIO() as fonts_bytesio:
with:

Code: Select all

with BytesIO() as fonts_bytesio:
in the script and run it again?
Basically remove the "io." prefix before the "BytesIO()"
Please keep the spacing and indents as they are, as python is very picky and depending on these.
User avatar
KainXVIII
Posts: 81
Joined: Mon Feb 11, 2008 10:00 pm
Location: Russia

Re: Early Macromedia Director titles are supported now

Post by KainXVIII »

Praetorian wrote: Fri Feb 03, 2023 6:48 pm in the script and run it again?
Yup, now its working!
Post Reply