Difference between revisions of "Driller"
Neuromancer (talk | contribs) m |
Neuromancer (talk | contribs) |
||
(35 intermediate revisions by 3 users not shown) | |||
Line 10: | Line 10: | ||
resolution=320x200, 16 colors (DOS, EGA)| | resolution=320x200, 16 colors (DOS, EGA)| | ||
engine=[[Freescape]]| | engine=[[Freescape]]| | ||
support= Since ScummVM | support= Since ScummVM 2.7.0| | ||
purchase=No | purchase=No | ||
}} | }} | ||
'''Driller''' is | '''Driller''' is an action/adventure game featuring scaling and rotating polygon graphics. You're the sole voyager happening upon an abandoned space station that's ready to explode from the pressure of dangerous vapors building up inside. For each sector, you must locate the build-up area, then drill to release the pressure. Features 18 different areas to explore, each with its own unique laws of physics and logic, and a number of secret rooms and hidden levels to discover. | ||
The game was | The game was released in the US under the name '''Space Station Oblivion''' due to trademark issues with '''Driller''' name. | ||
==Installation== | ==Installation== | ||
For more information on how ScummVM uses game data files, see the [https://docs.scummvm.org/en/latest/use_scummvm/game_files.html user documentation]. | For more information on how ScummVM uses game data files, see the [https://docs.scummvm.org/en/latest/use_scummvm/game_files.html user documentation]. | ||
Driller was [[Driller/Releases| released in a number of platforms]] over the years. Depending on release you have, you need to copy different files. | Driller was [[Driller/Releases| released in a number of platforms]] over the years. Depending on release you have, you need to extract and/or copy different files. | ||
===ZX Spectrum releases=== | |||
If the ZX Spectrum release is from a tape, it [https://timwolverson.wordpress.com/2016/05/10/how-to-convert-zx-spectrum-programs-from-cassette-tape-to-tzx-files/ should be saved first from the original cassette into a tzx file]. Make sure you save the complete disk, not just a single program from it. | |||
Once the tape is saved, you will need to extract three files: | |||
* The title screen image, which should be renamed as "driller.zx.title" and has exactly 6912 bytes. | |||
* The game data, which should be renamed as "driller.zx.data" and is around 37k bytes. | |||
* The border image, which should be renamed as "driller.zx.border" and has exactly 6912 bytes. | |||
These files <b>will appear in order</b> so you should which one, using their size. | |||
==== Windows ==== | |||
In Windows, you can use a freeware program called [https://www.alessandrogrussu.it/tapir/ Tapir] to view and extract tzx files. | |||
1. Download [https://www.alessandrogrussu.it/tapir/ the program], unzip and execute tapir.exe | |||
2. Open the tzx file | |||
3. Select the first file from the list above (check its size and order to determinate which one it is) and double click on it. | |||
4. It will open a new window. Click on "Save as file" and select the corresponding name. For instance, the first one is driller.zx.title. | |||
5. Repeat this process, but selecting the other two files, making sure they are properly named. | |||
Once the files are extracted, use ScummVM to add them as a game. | |||
==== Linux/MacOS ==== | |||
If you are on Linux or MacOS (or even in Windows, but you are confortable using the command line), you can [https://github.com/shred/tzxtools install tzxtools] and extract the three required files. For instance, for the original Incentive release (1987), you can inspect their files using the <code>tzxls</code> command: | |||
<code> $ tzxls driller.tzx | |||
... | |||
5 Turbo Speed Data Block 6912 bytes of bogus header | |||
6 Turbo Speed Data Block 37590 bytes of bogus header | |||
7 Turbo Speed Data Block 6912 bytes of bogus header | |||
</code> | |||
In order to extract these files, use the <code>tzxcat</code> command: | |||
<code> | |||
tzxcat driller.tzx -b 5 > driller.zx.title | |||
tzxcat driller.tzx -b 6 > driller.zx.data | |||
tzxcat driller.tzx -b 7 > driller.zx.border | |||
</code> | |||
Other releases will require to extract other file numbers. | |||
For the Musical 1 release (1991) run: | |||
<code> | |||
tzxcat driller.tzx -b 4 > driller.zx.title | |||
tzxcat driller.tzx -b 5 > driller.zx.data | |||
tzxcat driller.tzx -b 6 > driller.zx.border | |||
</code> | |||
For the VirtualWorlds release (1991) run: | |||
<code> | |||
tzxcat driller.tzx -b 6 > driller.zx.title | |||
tzxcat driller.tzx -b 7 > driller.zx.data | |||
tzxcat driller.tzx -b 8 > driller.zx.border | |||
</code> | |||
using the image of the tape 1 side B disk. | |||
If the ZX Spectrum release is from a disk, extract the DRILL.KEV file and rename it as <code>driller.zx.data</code> | |||
ScummVM should detect that single extracted file as the game and allow to play it. | |||
===Amstrad CPC releases=== | |||
All the Amstrad CPC releases [https://simonowen.com/samdisk/cmd_copy/ should be saved first from the original cassette/disk into a Extended dsk file]. | |||
Once the data is saved, use [https://github.com/damieng/DiskImageManager Disk Image Manager] to open the image and extract the following files: | |||
* dscn1.bin | |||
* dscn2.bin | |||
* drill.bin | |||
Make sure the files are '''extracted with header'''. | |||
Using these files, ScummVM should detect it as the game to play it. | |||
===Commodore 64 releases=== | |||
Commodore 64 releases are not supported yet, either for Driller nor for other Freescape games yet. It is very hard to get access to the files from the original releases since their data is heavily protected by anti-cheats. Once that is solved, the support should be easy to add. | |||
===DOS releases=== | ===DOS releases=== | ||
Line 38: | Line 138: | ||
* egatitle.rl | * egatitle.rl | ||
For both, only | For both, only EGA and CGA rendering modes are supported so far. | ||
===Amiga releases=== | ===Amiga releases=== | ||
For the Amiga | For getting the files for playing the Amiga releases, the files should be copied from the disk. One way to do it is to dump the disk and then [https://github.com/jsummers/deark use deark to extract them]. There are two known releases: the original one (retail) and the Kixx release (budget). For the retail release, copy the following file: | ||
* driller | * driller | ||
Line 56: | Line 156: | ||
===AtariST releases=== | ===AtariST releases=== | ||
For the AtariST release, | For getting the files for playing the AtariST releases, the files should be copied from the disk. One way to do it is to dump the disk and then [https://github.com/jsummers/deark use deark to extract them]. There are two known releases: the original one (retail) and the Kixx release (budget). For both of them, just extract "x.prg" file. | ||
Additionally, there is [https://www.mobygames.com/game/37202/virtual-worlds-the-3d-game-collection/ the Virtual Worlds release], which features several other Freescape games, but the files are packed so they cannot be used directly in ScummVM. However, there is a way to unpack them using the [https://hatari.tuxfamily.org/ debugger from the hatari emulator]: | |||
1. Run <code>hatari -D disk.img</code> using the second disk, which contains Driller. As soon as it starts, it will bring the debugging console. | |||
2. In the debugging console, run <code>a $14d9a</code>. Then run the <code>c</code> command exactly 27 times. | |||
3. Check the hatari window: the execution will continue and ask the user to select the game, press "1" to start Driller. | |||
4. The breakpoint will stop the execution. In the debugging console, execute the <code>savebin X.PRG $150e8 293062</code> command. | |||
You can now use <code>quit</code> command to exit hatari. | |||
If you executed the steps correctly, ScummVM should be able to run the game from the extracted binary. | |||
These instructions only applies to the international release, since the U.S release ("Space Station Oblivion") is not supported yet for AtariST. | |||
===Other releases and demos=== | ===Other releases and demos=== | ||
[[Driller/Demos| Some demos are also supported]], following [[Driller/Demos| the corresponding instructions]]. We collected all the [https://downloads.scummvm.org/frs/demos/freescape/ supported Freescape demos], in case you want to test them. If you find an unsupported demo, please [https://bugs.scummvm.org/ open an issue] or [https://www.scummvm.org/contact/ contact us]. | |||
[[Driller/Demos| | |||
==Improvements== | ==Improvements== | ||
Line 72: | Line 184: | ||
* It can be played using the restored music from the original compositor Matt Gray. From the original Driller releases, only the C64 version has music. Other releases are completely silent, despite their hardware could play music. This is likely related with the resource constrains of the release, more than an artistic design. Fortunately, ScummVM allows to play Driller with the intended music. To enable this feature, you must own the song "Driller Theme" from the [https://mattgray1.bandcamp.com/album/the-best-of-reformation album The Best Of Reformation] (you can either buy the complete album or just the individual song). Place the song "Driller Theme" in the same directory as the data files from any Driller release (several formats are supported including mp3, ogg, flac) and ScummVM will automatically use it as music during gameplay. | * It can be played using the restored music from the original compositor Matt Gray. From the original Driller releases, only the C64 version has music. Other releases are completely silent, despite their hardware could play music. This is likely related with the resource constrains of the release, more than an artistic design. Fortunately, ScummVM allows to play Driller with the intended music. To enable this feature, you must own the song "Driller Theme" from the [https://mattgray1.bandcamp.com/album/the-best-of-reformation album The Best Of Reformation] (you can either buy the complete album or just the individual song). Place the song "Driller Theme" in the same directory as the data files from any Driller release (several formats are supported including mp3, ogg, flac) and ScummVM will automatically use it as music during gameplay. | ||
* It features improved bounding box collisions and more precise driller rig placement. The technical limitations at the time did not | * It features improved bounding box collisions and more precise driller rig placement. The technical limitations at the time did not allow to have precise calculations, but the ScummVM implementation is not limited in that sense. | ||
==Cheats== | |||
The original game actually contains a few cheats hidden in the levels bytecode. They should work correctly in ScummVM. | |||
* Shooting the ground when you enter Obsidian from Amethyst recharges the shield. This cheat was submitted by Incentive to a [https://worldofspectrum.org/archive/magazines/crash/52#60 ZX Spectrum game magazine]: | |||
"For unlimited shield, proceed to Obsidian and laser the southern end of the ground" | |||
However, it does NOT work in the ZX Spectrum release of Driller but instead it will work all the releases except the ZX Spectrum one. This was a mistake on their side. There is a similar cheat in the Opal level, but this one works in the ZX Spectrum release as well. | |||
While this was not confirmed by any of the game developers, it looks like this was a shortcut that allows to explore all the areas of the game for debugging without getting into the jet later in the game. | * In the DOS, Amiga and AtariST releases, it is possible to change into the jet mode if the player shoots the door of the storage in the first area a number of times (this depends on the specific release, but it should be enough shooting 25 times or less). While this was not confirmed by any of the game developers, it looks like this was a shortcut that allows to explore all the areas of the game for debugging without getting into the jet later in the game. | ||
Besides the [[Freescape#Cheats| general Freescape cheats]], this engine also implements some specific Driller cheats: | Besides the [[Freescape#Cheats| general Freescape cheats]], this engine also implements some specific Driller cheats: | ||
Line 87: | Line 204: | ||
==Bugs== | ==Bugs== | ||
Freescape games allowed a level of freedom in movement that was ahead of their time. As expected, with the increased complexity of their engine, it also included some bugs. This is an incomplete list of bugs in the original implementation, indicating if the bug is already fixed in ScummVM | Freescape games allowed a level of freedom in movement that was ahead of their time. As expected, with the increased complexity of their engine, it also included some bugs. This is an incomplete list of bugs in the original implementation, indicating if the bug is already fixed (<span style="color:green;">✓</span>) or not fixed (<span style="color:red;">✗</span>) in ScummVM: | ||
<span style="color:red;">✗</span> The player can step into the geometry. To reproduce: | <span style="color:red;">✗</span> The player can step into the geometry. To reproduce: | ||
Line 96: | Line 213: | ||
3. Go back to the previous area. You will be teleported inside the wall. | 3. Go back to the previous area. You will be teleported inside the wall. | ||
<span style="color:red;">✗</span> The player can rise the level of their vehicle even if there is no room above it. This was fixed in the following Freescape games. | |||
<span style="color:green;">✓</span> Palette swaps are not preserved when moving between areas or re-loading. To reproduce: | <span style="color:green;">✓</span> Palette swaps are not preserved when moving between areas or re-loading. To reproduce: | ||
Line 107: | Line 226: | ||
<span style="color:red;">✗</span> No palette swap special effect is played when the player takes damage in Mitral. It is unclear if this is a bug or not, but the color used for the special effect in Mitral is invalid (21). | <span style="color:red;">✗</span> No palette swap special effect is played when the player takes damage in Mitral. It is unclear if this is a bug or not, but the color used for the special effect in Mitral is invalid (21). | ||
== | <span style="color:red;">✗</span> Climbing on top of something, and then shooting to destroy that thing will not make the player fall. This was fixed in the following Freescape games. | ||
==Guides and Walkthroughs== | |||
Driller is not exactly the same in different platforms. While the areas are the same, they feature puzzles with different solutions. | Driller is not exactly the same in different platforms. While the areas are the same, they feature puzzles with different solutions. | ||
We compile a list of walkthroughs for different platforms: | We compile a list of walkthroughs for different platforms: | ||
* [https://www.youtube.com/watch?v=bo0zrgaqrvI | * [https://www.youtube.com/watch?v=bo0zrgaqrvI ZX Spectrum] | ||
* [http://c64.tin.at/_single_files/drillersolution.sol.txt | * [http://c64.tin.at/_single_files/drillersolution.sol.txt Commodore 64] | ||
* [https://gamefaqs.gamespot.com/sinclair/952764-driller/faqs/75579 | * [https://gamefaqs.gamespot.com/sinclair/952764-driller/faqs/75579 DOS] | ||
* [https://www.youtube.com/watch?v=_5wx1tHQ1vo | * [https://www.youtube.com/watch?v=_5wx1tHQ1vo AtariST] | ||
==Related== | |||
* [[Driller/Demos]] | |||
* [[Driller/Internals]] | |||
==External links== | ==External links== | ||
*[https://www.mobygames.com/game/space-station-oblivion MobyGames entry for | *[https://www.mobygames.com/game/4933/space-station-oblivion/ MobyGames entry for {{PAGENAME}}] | ||
*[https://en.wikipedia.org/wiki/Driller_(video_game) Wikipedia article on | *[https://en.wikipedia.org/wiki/Driller_(video_game) Wikipedia article on {{PAGENAME}}] | ||
*[https://www.scummvm.org/screenshots/other/freescape:driller/ Screenshots] | |||
[[Category:Freescape Games]] | [[Category:Freescape Games]] | ||
[[Category:Supported Games]] | [[Category:Supported Games]] |
Latest revision as of 17:05, 24 August 2024
Driller | ||
---|---|---|
First release | 1987 | |
Also known as | Space Station Oblivion | |
Developed by | Incentive Software | |
Published by | Incentive Software | |
Distributed by | Incentive Software, Epyx, Musical 1 S.A., System 4, The Hit Squad, Kixx | |
Platforms | DOS, Amiga, AtariST, Commodore64, ZX Spectrum, AmstradCPC | |
Resolution | 320x200, 16 colors (DOS, EGA) | |
Engine | Freescape | |
Support | Since ScummVM 2.7.0 | |
Available for Purchase |
No |
Driller is an action/adventure game featuring scaling and rotating polygon graphics. You're the sole voyager happening upon an abandoned space station that's ready to explode from the pressure of dangerous vapors building up inside. For each sector, you must locate the build-up area, then drill to release the pressure. Features 18 different areas to explore, each with its own unique laws of physics and logic, and a number of secret rooms and hidden levels to discover.
The game was released in the US under the name Space Station Oblivion due to trademark issues with Driller name.
Installation
For more information on how ScummVM uses game data files, see the user documentation.
Driller was released in a number of platforms over the years. Depending on release you have, you need to extract and/or copy different files.
ZX Spectrum releases
If the ZX Spectrum release is from a tape, it should be saved first from the original cassette into a tzx file. Make sure you save the complete disk, not just a single program from it.
Once the tape is saved, you will need to extract three files:
- The title screen image, which should be renamed as "driller.zx.title" and has exactly 6912 bytes.
- The game data, which should be renamed as "driller.zx.data" and is around 37k bytes.
- The border image, which should be renamed as "driller.zx.border" and has exactly 6912 bytes.
These files will appear in order so you should which one, using their size.
Windows
In Windows, you can use a freeware program called Tapir to view and extract tzx files.
1. Download the program, unzip and execute tapir.exe
2. Open the tzx file
3. Select the first file from the list above (check its size and order to determinate which one it is) and double click on it.
4. It will open a new window. Click on "Save as file" and select the corresponding name. For instance, the first one is driller.zx.title.
5. Repeat this process, but selecting the other two files, making sure they are properly named.
Once the files are extracted, use ScummVM to add them as a game.
Linux/MacOS
If you are on Linux or MacOS (or even in Windows, but you are confortable using the command line), you can install tzxtools and extract the three required files. For instance, for the original Incentive release (1987), you can inspect their files using the tzxls
command:
$ tzxls driller.tzx
...
5 Turbo Speed Data Block 6912 bytes of bogus header
6 Turbo Speed Data Block 37590 bytes of bogus header
7 Turbo Speed Data Block 6912 bytes of bogus header
In order to extract these files, use the tzxcat
command:
tzxcat driller.tzx -b 5 > driller.zx.title
tzxcat driller.tzx -b 6 > driller.zx.data
tzxcat driller.tzx -b 7 > driller.zx.border
Other releases will require to extract other file numbers. For the Musical 1 release (1991) run:
tzxcat driller.tzx -b 4 > driller.zx.title
tzxcat driller.tzx -b 5 > driller.zx.data
tzxcat driller.tzx -b 6 > driller.zx.border
For the VirtualWorlds release (1991) run:
tzxcat driller.tzx -b 6 > driller.zx.title
tzxcat driller.tzx -b 7 > driller.zx.data
tzxcat driller.tzx -b 8 > driller.zx.border
using the image of the tape 1 side B disk.
If the ZX Spectrum release is from a disk, extract the DRILL.KEV file and rename it as driller.zx.data
ScummVM should detect that single extracted file as the game and allow to play it.
Amstrad CPC releases
All the Amstrad CPC releases should be saved first from the original cassette/disk into a Extended dsk file.
Once the data is saved, use Disk Image Manager to open the image and extract the following files:
- dscn1.bin
- dscn2.bin
- drill.bin
Make sure the files are extracted with header.
Using these files, ScummVM should detect it as the game to play it.
Commodore 64 releases
Commodore 64 releases are not supported yet, either for Driller nor for other Freescape games yet. It is very hard to get access to the files from the original releases since their data is heavily protected by anti-cheats. Once that is solved, the support should be easy to add.
DOS releases
For the DOS release, copy the following files:
- driller.exe
- drill?.exe
- scn1?.dat
Regarding the US releases, which was called Space Station Oblivion, copy the following files:
- oblivion.exe
- drill?.exe
- cgatitle.rl
- egatitle.rl
For both, only EGA and CGA rendering modes are supported so far.
Amiga releases
For getting the files for playing the Amiga releases, the files should be copied from the disk. One way to do it is to dump the disk and then use deark to extract them. There are two known releases: the original one (retail) and the Kixx release (budget). For the retail release, copy the following file:
- driller
For the Kixx release, copy the following files:
- driller
- console.neo
- demo.cmd
- lift.neo
- soundfx
AtariST releases
For getting the files for playing the AtariST releases, the files should be copied from the disk. One way to do it is to dump the disk and then use deark to extract them. There are two known releases: the original one (retail) and the Kixx release (budget). For both of them, just extract "x.prg" file.
Additionally, there is the Virtual Worlds release, which features several other Freescape games, but the files are packed so they cannot be used directly in ScummVM. However, there is a way to unpack them using the debugger from the hatari emulator:
1. Run hatari -D disk.img
using the second disk, which contains Driller. As soon as it starts, it will bring the debugging console.
2. In the debugging console, run a $14d9a
. Then run the c
command exactly 27 times.
3. Check the hatari window: the execution will continue and ask the user to select the game, press "1" to start Driller.
4. The breakpoint will stop the execution. In the debugging console, execute the savebin X.PRG $150e8 293062
command.
You can now use quit
command to exit hatari.
If you executed the steps correctly, ScummVM should be able to run the game from the extracted binary.
These instructions only applies to the international release, since the U.S release ("Space Station Oblivion") is not supported yet for AtariST.
Other releases and demos
Some demos are also supported, following the corresponding instructions. We collected all the supported Freescape demos, in case you want to test them. If you find an unsupported demo, please open an issue or contact us.
Improvements
Beyond the general Freescape engine improvements, Driller was re-implemented with the following new features:
- It can be played using the restored music from the original compositor Matt Gray. From the original Driller releases, only the C64 version has music. Other releases are completely silent, despite their hardware could play music. This is likely related with the resource constrains of the release, more than an artistic design. Fortunately, ScummVM allows to play Driller with the intended music. To enable this feature, you must own the song "Driller Theme" from the album The Best Of Reformation (you can either buy the complete album or just the individual song). Place the song "Driller Theme" in the same directory as the data files from any Driller release (several formats are supported including mp3, ogg, flac) and ScummVM will automatically use it as music during gameplay.
- It features improved bounding box collisions and more precise driller rig placement. The technical limitations at the time did not allow to have precise calculations, but the ScummVM implementation is not limited in that sense.
Cheats
The original game actually contains a few cheats hidden in the levels bytecode. They should work correctly in ScummVM.
- Shooting the ground when you enter Obsidian from Amethyst recharges the shield. This cheat was submitted by Incentive to a ZX Spectrum game magazine:
"For unlimited shield, proceed to Obsidian and laser the southern end of the ground"
However, it does NOT work in the ZX Spectrum release of Driller but instead it will work all the releases except the ZX Spectrum one. This was a mistake on their side. There is a similar cheat in the Opal level, but this one works in the ZX Spectrum release as well.
- In the DOS, Amiga and AtariST releases, it is possible to change into the jet mode if the player shoots the door of the storage in the first area a number of times (this depends on the specific release, but it should be enough shooting 25 times or less). While this was not confirmed by any of the game developers, it looks like this was a shortcut that allows to explore all the areas of the game for debugging without getting into the jet later in the game.
Besides the general Freescape cheats, this engine also implements some specific Driller cheats:
- Automatic drilling: it allows to drill in any part of the areas and always obtain 100%.
Bugs
Freescape games allowed a level of freedom in movement that was ahead of their time. As expected, with the increased complexity of their engine, it also included some bugs. This is an incomplete list of bugs in the original implementation, indicating if the bug is already fixed (✓) or not fixed (✗) in ScummVM:
✗ The player can step into the geometry. To reproduce:
1. Start the game, start walking straight and cross to next area just next to the wall.
2. Turn left and walk a few step.
3. Go back to the previous area. You will be teleported inside the wall.
✗ The player can rise the level of their vehicle even if there is no room above it. This was fixed in the following Freescape games.
✓ Palette swaps are not preserved when moving between areas or re-loading. To reproduce:
1. Start the game and go to the storage area in Obsidian.
2. Shoot the lights.
3. Leave the area and re-enter. The lights are on again. Saving and re-loading in that area will have the same effect.
✗ No palette swap special effect is played when the player takes damage in Mitral. It is unclear if this is a bug or not, but the color used for the special effect in Mitral is invalid (21).
✗ Climbing on top of something, and then shooting to destroy that thing will not make the player fall. This was fixed in the following Freescape games.
Guides and Walkthroughs
Driller is not exactly the same in different platforms. While the areas are the same, they feature puzzles with different solutions. We compile a list of walkthroughs for different platforms: