Skip to content

Instantly share code, notes, and snippets.

@rvanlaar
Last active November 23, 2019 15:24
Show Gist options
  • Save rvanlaar/d7bd98a23c8c09c9770ab2c7bf4e4e20 to your computer and use it in GitHub Desktop.
Save rvanlaar/d7bd98a23c8c09c9770ab2c7bf4e4e20 to your computer and use it in GitHub Desktop.
Ongoing documentation about the SCUMMVM director engine.

Goals

The wanted outcome is to be able to play safecracker and traitor's gate via https://scummvm.org . To achieve this, there are a few goals:

  • get other people on board
  • Document current knowledge about the format so that other can pick it up quickly.
  • Get a feeling for how Director works and the internal file layout works
  • Figure out what does and doesn't work in the engine
  • Create a plan for adding the missing pieces
  • Implement the missing pieces with first a focus on the demo of The Apartment.
  • Document the Director file format as good as: https://wiki.scummvm.org/index.php?title=AGI/Specifications

Contributing

Want to contribute? Yes :-). Please join the ScummVM discord channel #Director: https://discordapp.com/invite/5D8yTtF There is a public trello board: https://trello.com/b/iQxOkBvI/director Start reading: https://wiki.scummvm.org/index.php?title=Developer_Central

Games

The full list of known games that use Director: https://wiki.scummvm.org/index.php?title=Director/Games

My personal goal is to play these two favorites of mine:

SAFECRACKER

A Daydream software game from 1997. It's about cracking 35 safes in a lush mansion. It's files identify as Direcotor 4 and 5. The executable is Director 5.0.1 https://en.wikipedia.org/wiki/Safecracker_(video_game) https://www.mobygames.com/game/safecracker

Traitors Gate

Also a Daydream software game. It's from 1999. https://en.wikipedia.org/wiki/Traitors_Gate_(video_game) https://www.mobygames.com/game/traitors-gate The files identify as Director 6.0.2.

Director

The blog from: Steven Hoevel: https://modelrail.otenko.com/macromedia-director

Director is a program to make scripted movies. This contains a movie part with Lingo as scripting language. Lingo: https://en.wikipedia.org/wiki/Lingo_(programming_language)

Information about Director, how it works: https://users.cs.cf.ac.uk/Dave.Marshall/Multimedia/node48.html

This resource includes lots of terminology.

Demo of Director games:

https://www.mediafire.com/folder/v3y77rsochkb7/director_games

Plan

  • Document my findings on this GIST
  • Play with Director Files to get a feeling for how they work

Tasks

  • Document getting development and debug enviroment up and running
  • Document how to figure out what a directive does
  • Find and document more information links about Director and Lingo.
  • Update continuity to Python3: https://github.com/scummvm-director/continuity

File Types

CXT Macromedia Director protected (not editable) "Cast" (resource) file DXR Macromedia Director protected (not editable) movie file

Information links

Development blog by iskrich during his Google Summer of Code: https://iskrich.wordpress.com/

Extracting data from DRX files: https://github.com/System25/drxtract/commits/master

Tools for working with Director files: https://github.com/scummvm-director/continuity

Information about the Lingo bytecode: http://fileformats.archiveteam.org/wiki/Lingo_bytecode

Helpfull book: Macromedia Director Lingo Workshop by John Thompson. ISBN: 156830269X

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment