If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Proto:Syndicate Wars (DOS)

From The Cutting Room Floor
Jump to navigation Jump to search

This page details one or more prototype versions of Syndicate Wars (DOS).

There are at least four demos of Syndicate Wars released: A very early pre-alpha rolling demo, and three different versions of the same playable demo mission.

Pre-Alpha Demo

Syndicate CorpWars PreAlpha-title.png

A pre-alpha self-running demo of Syndicate Wars (called Syndicate: The Corporate Wars) from late 1995 was released as part of an official Bullfrog Christmas Demo CD in 1996. Notably this can be found on the coverdisc of PC Zone issue 37. The demo can also be downloaded from the Syndicate Unofficial Site. Note this download is missing the SNDINST.EXE that had to be run first from the Bullfrog CD, so is missing the sound drivers that program installs to the shared bullfrog.cd directory to make sound effects and music work.

General Differences

  • Only one map is present.
  • A .bat file is included to run the demo. If one tries to run the program with just syn2 -p1, debug text is shown on the screen. The .bat file puts that text into a debug file.
  • By default, the camera constantly rotates. First press of rotation keys disables that auto-rotation.
  • The game uses packet01.gam to control the demo.
  • Loading the executable without any arguments will cause the game to load the built-in editor. The game will complain about a missing file named textwalk.dat, but pressing Escape will skip this error. However, the demo will end on a black screen due to the editor being deliberately prevented from loading in the executable.
  • No HUD is present, possibly except for two purple bars.
  • A limited range of weapon sound effects play, none of which survived to the final game. The in-game music from the original Syndicate also plays throughout.
  • Shadow effects are present on the characters, but moving the camera around reveals that everyone is using the default player sprite as a placeholder for their shadows.
  • Explosions are incomplete. The debris left behind is just a squashed model of the building destroyed. In the final game, there's more debris and fire left behind after explosions.
  • Buildings don't become transparent when the player walks in front of them.
  • All characters turn into bloody corpses when killed. This includes the mechanical spiders.
  • Some of the giant displays are playing part of the intro movie to Magic Carpet 2.
  • The demo creates a folder called bullfrog.cd in the C directory. This is the shared directory created by the Bullfrog Christmas Demo CD and includes a debug file used to track any errors and the demo control files.

Packet mode

The demo does not allow user control of agents, because it starts in packet replay mode. The game translates user input into actions stored within packets; these packets can be exchanged between computers, making multiplayer possible. But since these packets are all that's needed to re-create previous gameplay, they can also be stored on disk, and replayed later. As long as no changes were introduced to the game logic and level data, the game will play out exactly the same from the packet file.

Demo Weapons

If the demo is hacked to allow player control[1], it reveals that there are five playable weapons:

  • Laser
  • Electron Mace
  • Nuclear Grenade
  • Launcher
  • Pistol (according to the editor this is actually the Uzi, despite it being a low power single shot weapon)
  • Minigun

The laser and Electron Mace can be charged by holding down the mouse button to do more damage on release. The Nuclear Grenade destroys buildings but oddly seems to do no damage to NPCs yet. It also bounces back when it collides with objects. Both it and the Launcher make no sound when fired, but unused early sounds for them actually do exist in the SOUND.DAT file.

Accessing the editor via the hacked build also reveals the full list of weapons from this stage of development. These don't seem to work past the ones granted to the player. Some are different even compared to the early strings left in the final game:

Weapon
UZI
MINIGUN
LASER1
LASER_ELEC
ROCKET
NUKE GRENADE
HAND2HAND TASER
FLAMER
CRAZY GAS
KNOCKOUT GAS
ELECTRICITY MINE
EXPLOSIVE MINE
NAPALM MINE
MINI ROCKET
GUIDED MISSILE
BEAM
RAZOR WIRE
PESUADETRON
SONIC BLAST
QUANTUM SEPERATOR
QUANTUM VIBRATOR
STASIS FIELD
ENERGY SHIELD
SOUL GUN

Differences include multiple rocket launcher style weapons, and two cut "quantum" weapons (one of which was likely the early Graviton Gun).

Demo Modifications

The editor also reveals early and quite different cyborg mods for the player's agents, including the fact the epidermis items were originally part of the core modifications available rather than extra bonuses:

Mods
NERVOUS SYSTEM 1
NERVOUS SYSTEM 2
NERVOUS SYSTEM 3
EPIDERMIS 1
EPIDERMIS 2
EPIDERMIS 3
SKELETAL SUBSYSTEM 1
SKELETAL SUBSYSTEM 2
SKELETAL SUBSYSTEM 3
INTERNAL ORGANS 1
INTERNAL ORGANS 2
INTERNAL ORGANS 3

Command line parameters

  • -c - toggles a variable which does not seem to do anything
  • -d - initialize alternate DOS keyboard handler
  • -h - run in hi-resolution mode (640x480)
  • -m<n> - start map number <n>
  • -n<n> - start network game, with <n> players
  • -p<n> - play packet file number <n>, ie. packet01.gam for n=1
  • -q - generate DAT/TAB files from LBM images
  • -r<n> - record packet file number <n>
  • -s<name> - network session name (for multiple games over same network)
  • -t - recompute and save colour tables
  • -u<name> - user name used for per-developer level files

Note: While the above arguments do actually work, they are deliberately overridden by the executable for the demo to only run in packet replay mode (-p).

Controls

  • Arrow Keys - Control camera.
  • I - Zoom in. Shift works as a modifier to speed this up.
  • O - Zoom out. Shift works as a modifier to speed this up.
  • G - Stop demo.
  • R - Increase draw distance.
  • Shift+R Decrease draw distance.
(Source: Reverse engineering by Mefistotelis])

Frames.h File

The source file frames.h is present in the DATA folder, comprising of definitions of the game's animations. Surprisingly nearly all final game characters already have definitions here, with the likes of police and male unguided defined despite the actual graphics not being present in the demo files. The file also has some interesting additions that are not in the final game:

  • There are definitions for a female version of the "Shady Guy" (the uncommon NPCs with the big Chinese-style hats on) that never made it to the final game.
  • There's also an NPC defined with the shortened name "Off". It's after the NPC "Army" (presumably the generic soldiers seen in the final game), so possibly these were some kind of cut military officers.

Fungus

There are debug strings for a function that say "adding new fungus thing". The fungus thing definition shows it had an activation radius. In the final game's item descriptions, the Psycho Gas has a lore entry that says it is based on fungus recovered from the planet Creation. As such it may have worked as some kind of naturally occuring Psycho Gas bomb. The Bullfrog game Dungeon Keeper also had such an object that was also cut.

(Source: Mefistotelis])

Vehicles

The editor allows placing of vehicles on the map. This reveals there seem to be three types of vehicles in the game at this point - the Back to the Future style Delorean car found in the final game (originally an asset from the game Hi-Octane), an angular version of the civilian car seen in the original Syndicate (carried on to the final), and some kind of hover bike similar to the one seen in the final game, only in this version a crude 3D rider is seen. None of the vehicles seem to be operational and merely act as solid obstacles if inserted into a map. They also seem to use early textures (and some appear not textured at all). They also cannot be destroyed. As with the buildings in the pre-alpha they have an odd scale and seem too small compared to the size of the game's characters.

There's also the object file VEH04.NAM that self reports as the 3D object for trains, but there's no way currently to view this/place in-game.

Unused 3D Models

The directory OBJECTS contains the game's various 3D models. However, this entire directory is actually unused. The various buildings and objects seem to be already compiled into .DAT files in the main DATA directory. The objects directory contains a variety of what seem to be intended as only internal files for working on the objects:

  • .NAM - The names of objects in the main .DAT files
  • .DAT and .Dxx - what seem to be the main 3D model files
  • .QAT and Qxx - unknown companion files to the above
  • .Bxx - a handful of 3D objects in what self-identifies as "Bullfrog Standard 3D Object Format". This is a simple ASCII format very similar to basic Wavefront .obj format (a fan-made convertor can be found here)

The .Bxx files are all objects actually used in the demo, such as various buildings and the hoverbike model. The .DAT files are unknown, but based on their accompanying .NAM files, some of them seem to be unused buildings, as well as the unused .QAT file VEH04.QAT that is said to contain the train model not used in the demo.

Editor

The pre-alpha demo contains the code for much of the game's editor system. In fact it loads to this editor if run without any arguments, but is deliberately blocked from starting. A hacked build has been created[1] that allows access to the editor's functions, which are mostly complete. The editor functions with a series of Deluxe Paint style buttons down the left hand edge of the screen, some of which can be clicked and held on to reveal further menu options that pop-out to their right. The editor assumes the operator wants to perform operations on the nearest object to the centre of the camera, and this will flash to indicate the highlighted object. Objects can also be clicked on to confirm this. The D key deletes an object from the map.

Lights Editor
At this stage of development the game had a surprisingly advanced lighting system for its time, allowing a huge number (in the thousands) of light sources in a level. This was greatly toned down in the final game, presumably for performance reasons.

Editor Menus

Load Map
It's possible to save maps and load them using the editor. Maps that exist appear blue on the load screen and can be loaded. They can also then be loaded with the respective number using the -m[n] commandline argument. The editor cannot load final game maps, they can be loaded but appear as gibberish. The final game also cannot successfully load maps created from this editor.

SynPAlpha-EditorLoadMap.png

Load Levels
It's not clear if the load level functionality is working or not. In the final game a level file defines the objectives and NPC placements of a mission. The save level function does not seem to work. However, if levels from the final game are moved here, they seem to be loaded, but no NPCs are placed. The executable also knows these files exist as they appear blue in the list. There are some levels included in the final game that appear to be in a different format to those of the others that may have been created with this version of the editor. The demo seems to be hardcoded to always load a pre-created level file on startup, which is not in the final game format as seen in the menu here.

SynPAlpha-EditorLoadLevel.png

Things Menu
Top level menu for creating NPCs and defining related parts of a level such as their groups.

SynPAlpha-ThingMenu.png

Init Thing > Init Person
This menu allows the creation of a character. Note the Agent graphic is offset here above the box, it should actually appear inside the box in the space next to "person group", where it slowly rotates. The mood allows basic behaviour outside of a specific defined objective, e.g. wander around (for civilians), defend an area, or "psychotic" to simply attack the player or enemy groups on sight. Weapons and Mods bring up drop down menus to grant specific weapons and modifications to the character.

Set Group
Here characters can be added to a group and then told how to behave in relation to members of other groups. The boxes can be clicked on to define these relationships, whereupon they turn red. However it's not understood exactly what these represent.

SynPAlpha-DefineGroup.png

Mission Objectives
These menus allow the definition of mission objectives, to pass or fail a mission. Objectives can both take place at X and Y coordinates, but also at points in time after a level starts. The final screen is the setup for a mission, which of the groups defined is the player's characters, and what map the mission is supposed to take place on.


(Source: Reverse engineering by Mefistotelis])

Pre-Release Demo

SynWars-DemoTitle.png


This is the first release of the playable demo. It was originally given to visitors of Bullfrog's stand at the 1996 European Computer Trade Show[2], and then released on the October 1996 issue of PC Format magazine in the UK (released in September that year). The original release of the demo included the final game's first music track as a 90MB wave file. Electronic Arts refused to provide the demo to American magazines citing "bugs"[3] (likely really the fact the demo has debug mode enabled), so the demo was uploaded by fans onto the internet without the large music file. Most versions found on the internet are this rip and are missing the music. As with the later second demo, it features a single Eurocorp mission named "Tokyo Fuseki" ("Fuseki" referring to a type of opening move strategy in the Japanese board game Go). It also uses the same introduction screen and briefing, with no briefings or information for any other game levels included.

The demo level is unique; while it's actually included in the files of the final game, and defined in the final ALL000.MIS file (as mission 104), it's not playable in the final game during normal play. It involves cleaning up Tokyo from gangs of Unguided killing civilians, and then persuading a Church of the New Epoch scientist.

Oddly, if you try and play the demo by loading missions directly from the command prompt (i.e. main /m104) the game crashes on start. This is also the case with the later demo. If the executable is copied to the final game's directory, it works fine however. Therefore there must be something else (probably missing) in the demo files that stops this from happening.

It's not possible to use weapons more powerful than the laser with the demo executable. This seems to be a deliberate limitation, probably to stop players spoiling the game, as far older pre-release footage shows most of the later weapons being fired. Simulated levels with the demo executable will even give the players late tier weapons, but while they can be fired, they produce no projectiles/beams and do no damage.

The demo has very poor performance compared to the final game.

Build Date

The demo executable contains the following text that appears to be a build date:

Jul 30 1996 18:20:55 

Demo Changes

  • While the demo supports the high res 640x480 mode, it does not include the HUD graphics for the corresponding second higher resolution design that both the second demo and final game include. It simply stretches the 320 x 200 assets to be twice as big. However, if the demo executable is copied to the final game directory it will use the final game high resolution HUD assets correctly, demonstrating full support must have already been written at this point and confirming Mike Man's assertion that the game was designed to be run in high resolution mode first.
  • When enemies are approaching (which would trigger the "danger" music in the final game), a red text indicator saying "DANGER" appears over the top of the first agent health bar
  • The way limited munitions like explosives are represented is slightly different. Each useable bomb is represented with a red dot instead of a turquoise one as in the final game. Consumed explosives also appear as grey here, whereas they are black in the final game.
Demo Final Game
SynWars-Demobombs.png SynWars-bombs.png
  • Dropped explosives use the generic briefcase icon when hovered over with the mouse
  • Adjusting an agent's mood changing fluids makes a kind of electrical buzzing sound, unlike the water bubbling effect used in the final game.
  • Completing a mission displays a message "AGENTS GAINED X DAYS RESEARCH COMPLETE X" with the relevant numbers filled in instead of simply "Mission Complete" as in the final game.

Audio Differences

This demo has a few sounds not found in the later demo or the final game.

These include the following police messages that are missing from the final game:

Sample Message
"Go about your business"
"Nothing to see here"

The demo also features "spot effects" - random atmospheric sounds that would play as the environment was explored and also in menus. These were completely cut for the final game. As with other Bullfrog games the sound effects are highly annotated, and the comments are preserved below:

Sample Comment
"Spot Effect 001"
"Spot Effect 002"
"Spot Effect 003"
"Spot Effect 004"
"Spot Effect 005"

Cut Video

SynWarsDemo-DEMO-13.gif

The file QDATA\DEMO-13.FLI is a totally different in-game advertising video to the one used in the final game. Both are adverts for the unreleased Bullfrog game Creation, but this is a different video that rather than containing what was presumably that game's CGI intro, instead shows footage of real coastline, a girl nodding, and then actual footage of the game.

Debug Functionality

The most significant and interesting part of the demo is that its executable includes debug functionality that was removed from any other release of the game, including the second version of the same demo. This can be seen during play, most notably when dismounting vehicles, where a green box with a message in will very briefly display. Attempting to use the executable with the assets of the final game seems to work fine, and results in various error messages displaying before levels that crash the final game, listing the problems with the level. These message can be advanced through with the escape key. If a bug is fatal, the level will restart rather than crashing the game.

There is other debug functionality that was removed for the final game - if a level has no units in group zero (the player group), the final executable will crash. Here the demo gracefully handles this error by placing four Eurocorp agents in a level at a pre-determined place to the mid-left of a map.

Instigating a Simulated Level with this version of the game also results in very different behaviour compared to the final game (see main game article). Looking in the executable there is a huge amount of text for debug purposes, much of which is amusing, but also gives stern instructions to contact "MD" or "Mark" - presumably programmers Mike Diskette and Mark Adami.

Selected text examples:

add node off map, not bloody likely Tell MD

not player person in myagent Not a player is a player??? MARK!

navigate.c Tell Mark! Serious shit1 navigate.c TELL MARK! SERIOUS SHIT.2

things.c  search too many people Funny face pulled in find_bezier_nav_point 

implement random externally tri_path_init8: Why the hell don't you want the best route? Finding path from %d,%d in triangle %d

VNAV_do: Crap encountered in search! vnav.c We are going from %d to %d

VNAV: Its not a bezier road stupid! vnav.c vnav.c  VNAV init veh %d 

vnav.c Oh dear VNAV_goto is up the creek! From %d to %d is turning %d

Too many nodes cars come into the city on Too many nodes ships come into the city on  dist = %d
 RUN OUT OF ARCS. SHIT. SHIT. SHIT. Bad scanner colour scheme Invalid scanconvert triangle scanner.c scanner.c scanner.c scanner.c What the hell! scanner.c scanner.c scanner.c Strange shit going on in scanner Strange shit going on in scanner scanner.c scanner.c scanner draw transparent x wrong scanner draw transparent y wrong What the hell! NO OBJECTIVE   bad phwoar 

Breakout Minigame Changes

The final game has a secret Breakout style minigame that can be played on mission in London by walking on the podium on the map in front of the big screen and using a Persuadertron. An earlier version of the minigame exists in the demo. No levels take place in London in the demo, but if the demo executable is copied to the directory of the final game and run using the argument main /m8, this will start a mission that begins on the podium. The minigame will begin straight away, without use of the Persuadertron. In the demo, the minigame has slightly different levels, the second level "Just One Chance!" is not seen in the final game, and it seems there are three other cut levels later on as well. Most significantly, the minigame also plays very differently in the beta version of the game. In the final the ball responds to gravity and inertia, usually moving through the air in an arc. In the demo this doesn't happen; the ball behaves like the ball in Breakout or Arkanoid and constantly careens about the screen without any loss of energy. Possibly this was a change to make it less obviously derivative of Arkanoid (which internally even the sound effect comments refer to the minigame as). The earlier ball behaviour also makes the minigame more difficult.

The text in the executable for the minigame is also different and exposes what seems to be a joke that was only half complete in the final game: "CHEAT CODE GRANTED TYPE MARK IS GREAT FOR ALL WEAPONS".

Demo Final Game
ENTERING LEVEL : %d %s BAD LUCK! GAME OVER CONGRATULATIONS CHEAT CODE GRANTED TYPE ARG!!! SHITE BAT STATE MARK IS GREAT FOR ALL WEAPONS DESTROY THE BRICKS JUST ONE CHANCE! FORTIFICATION FACE OFF BRICKY RAINDROPS KEEP... UP THE TUBE LESSER OF TWO EVILS EUROCORP THE BULLFROG CHALLENGE
ENTERING LEVEL : %d %s BAD LUCK! GAME OVER CONGRATULATIONS BONUS GAME COMPLETE BONUS ITEM AWARDED MARK IS GREAT FOR ALL WEAPONS DESTROY THE BRICKS FORTIFICATION BULLFROG FOREVER BRICKY STIFF UPPER LIP RAINDROPS KEEP... DOWN THE SPOUT UP THE TUBE EUROCORP THE BULLFROG CHALLENGE

The demo minigame also uses slightly different sound effects to the final game. They are actually the same sounds, but without the various post-processing effects (echo, etc) applied yet.

ALL000.MIS File and Mission Data

The ALL000.MIS and ALLTEXT.WAD files are somewhat interesting. The former is a very early file, the second oldest known version, beaten only by ALL000.BEN from the final game (which is also from July 1996). It has 107 missions defined, so "The Shining" (mission 108) likely did not exist at this point in time (it can be run successfully on this version of the code if hacked in, however).

ALLTEXT.WAD only has the briefing for the single demo mission, it does not include the briefing for The Shining like the second version of the demo does. In this file (and the demo itself), Bahrain is named Al Manamah. This is also the case in the second version of the demo, and the Official Strategy Guide, but not the final game. This is odd and likely a mistake in the final game - the format of all other locations is a City name rather than Country name (Al Manamah being a City in Bahrain). A similar situation is visible in the final game's files with Honolulu, which is frequently referred to as "Hawaii" only throughout the game files and seems to have been changed to match the format of the other areas late on.

Adrenaline Vault Exclusive Demo

A further demo was released exclusively via the (now defunct) gaming website Adrenaline Vault. This demo includes the following readme file:

The Syndicate Wars demo has been released to the Web by an exclusive arrangement between
Bullfrog US and the Adrenaline Vault Game Site. By downloading this game you agree: not to change,
revise, alter, modify or remove any files contained in the zip package, including but not limited 
to executables, text files or image files. 

The executable file structure is closer to that of the previous Beta demo rather than that of the final game, although it plays as the final game without e.g the beta DANGER text and has the final UI graphics. It includes the following build date inside the executable, confirming it is older than both the final known demo and the final game:

Sep 04 1996 13:03:23

The demo is identical content-wise to the first one, with the same "Tokyo Fuseki" mission playable. However, it seems it was originally intended to have two playable missions, one for Eurocorp, the other for the Church of the New Epoch. To this end it actually includes a briefing for a second mission, set in Bangkok, for the Zealots in its files, as well as the map file for Bangkok and the level for the mission (C003L010.DAT). The ALL000.MIS and allltext.wad files include this new mission (108), giving it the official name of "The Shining" (and indeed the cut briefing references the player "shining" so it must be it).

Other changes:

  • This version of the game's executable has the debug mode removed.
  • Has proper 640x480 support with the higher detail redrawn HUD for that mode included like the final game.
  • Causing a Simulated Level to play shows that this executable behaves like the final game, including the constant rain and instability.
  • Still uses the same SOUND.DAT as per the early demo, including the extra police speech, etc

Cut Church of the New Epoch Mission "The Shining"

This demo includes parts of what would surely have been a second mission that would let players experience the Zealot's faction. The briefing for this mission (called "The Shining") is included in the ALLTEXT.WAD file and defined in the ALL000.MIS file in the demo, and even the actual level itself, and the map it would take place on (03 - Bangkok) are included in the demo's files (. However, it's not possible to choose Church of the New Epoch from the menu in this demo, and completing the Eurocorp mission does not grant access to the Zealot mission.

The demo mission is actually included with the final games' files (and is identical to the file included with the demo), but its briefing is missing there. By combining the two it's possible to recreate the mission in totality. The demo seems hardcoded to only allow Eurocorp as the faction choice, but overwriting the entry for mission 104 in ALL000.MIS with the entry for mission 108 (030B) will cause the game to load the correct mission. One more step must be taken - the briefing text for the Eurocorp mission will still be loaded, so if the Church briefing is copy pasted over it in ALLTEXT.WAD, then it will show up in its place instead.

The mission seems to work fine in the demo, but its performance is even worse than that of the Eurocorp demo. As such it's easier just to play it in the final game using main /M108.

Issue 42 of PC Zone magazine, from September 1996, has a preview of the game that mentions a two-level demo. It's said to include a Church of the New Epoch mission. There was therefore an earlier demo of the game given only to press that almost certainly contained this second mission, that this demo is likely adapted from. The mystery then is why the second mission was not made playable in the public release, and why its files were mostly removed from the subsequent final demo.

Post-Release Demo

This is the third release of a playable demo. It was released after the game was finished on Bullfrog's website as "netdemo.zip" towards the very end of 1996. Files are dated from October 1996, and as such it includes newer versions of some files than even the final game. It still uses the same title screen as the playable pre-release demo. It seems to have been created due to publisher EA's dislike of the state of the first playable demo.

What's odd about this release is it's largely redundant in light of the Adrenaline Vault demo, but has minor changes since that release. The executable has a different structure to the previous two demos, lacking a build date and is now clearly based on the executable for the final game with the Diadem Inc copyright text now present as per the final executable. More revealingly, this demo has the extra zealot mission mostly removed - the map and level files are now gone, but the same ALLTEXT.WAD file is used, so the mission briefing is still included but unseen, presumably in an attempt to clean up the cut mission. A different cut down SOUND.DAT is used with the extra sounds from the first playable demo removed.

  1. 1.0 1.1 File:Swars alpha-executable-hack.zip
  2. Paul Bannister of Online Gaming Review Usenet Post - comp.sys.ibm.pc.games.action September 1996
  3. Steve Bauman of Computer Games Strategy Plus Usenet Post - comp.sys.ibm.pc.games.action September 1996