News

Jorsys
Jorvik Systems is a site dedicated to modding and reverse engineering WarCraft I, WarCraft II and StarCraft I. The goal is to provide tools, documentation and tutorials to facilitate understanding of what's going on under the hood in these classic games, as well as collections of mods to change them.
30 year anniversary of WarCraft II: Beyond the Dark Portal
Posted by Ojan

Today, May 16, marks the 30 year anniversary of the release of Warcraft II: Beyond the Dark Portal. The game is an expansion set for Warcraft II: Tides of Darkness, which was released December 1995.

Both Warcraft: Orcs from 1994, and Humans and Warcraft II: Tides of Darkness had been major hits for Blizzard Entertainment, the company that created the games. Their press-release proudly stated that "We have been overwhelmed by the tremendous success of Warcraft II, and since the game’s release, we have been flooded with requests for an add-on disk," said Allen Adham, president and founder of Blizzard Entertainment. "With the expansion disk, players extend their Warcraft experience as they delve into the Orcs' homeland for the first time to experience a entirely new set of challenges."

While Warcraft II: Beyond the Dark Portal was only in development for a few months, and during that time was passed from one studio to another, it still came to be very popular among gamers. Its raw feature set is maybe not so much to boost with, but it arguably marked a turning point in Blizzard Entertainment's game design philosophy, and RTS campaign design as a whole.

Warcraft II: Beyond the Dark Portal

Development

During the mid 1990s, Blizzard Entertainment was still a small studio. The development team for Warcraft II: Tides of Darkness, had only been six core programmers and two support programmers.1

Blizzard Entertainment saw economic success with both Warcraft: Orcs and Humans, and with Warcraft II: Tides of Darkness, but while it was a rising star in the industry, it was far from an economic behemoth. They thus needed to follow up with more releases. Patrick Wyatt, the Producer of Warcraft: Orcs and Humans, writes this in one of his very interesting articles about his experiences:

Blizzard’s business strategy was driven by Allen Adham, the company’s president. Allen was a student of both gaming and business, and under the tutelage of Bob Davidson (CEO of Davidson and Associates, the educational software company that first acquired Blizzard), they planned the company’s development pipeline with a keen eye towards maximizing the revenue and profit of our studio, as would any corporate leader. [...] Allen endeavored to build a pipeline with predictable game releases[...]
Patrick Wyatt
2012-09-27

There is surprisingly little information available on how Warcraft II: Beyond the Dark Portal came to be. After Warcraft II: Tides of Darkness was released in December 1995, the company started working on StarCraft, grinding to release it by the end of 1996 (it was eventually released in May 1998).2 To make sure they could capitalize on the success of Tides of Darkness, they wanted to make a follow up game.3

In 1995, they had contracted Cyberlore Studios to develop an expansion for WarCraft II. Letting another developer handle the work had seemed like a win-win: All Cyberlore had to do was whip up multiplayer maps and a single-player campaign that continued the base game’s story while Blizzard’s internal team devoted its full attention to StarCraft, their next real-time strategy game. During a milestone check-in with Cyberlore, however, Blizzard’s managers had deemed the work subpar. They cancelled the contract, finished the add-on pack, Beyond the Dark Portal, themselves, and resolved that only an in-house team could nurture a Blizzard property to an acceptable level of quality.
David L Craddock
2018-06-29

In retrospect, the game might be something of a turningpoint, where instead of simply pushing out the game, Blizzard dedicated people and effort into raising it to their standards, even as these people were direly needed on other projects. One might here see the seed of Blizzard's mentality of "it'll be ready when it's ready" and obsessing over quality. They did not again reach out to other studios to contract away their work, and they also went against conventional wisdom and decided to miss their target of releasing Diablo for Christmas 1996, instead pushing it off until January 1997, so that they could make sure it held their standards.4 And StarCraft famously was "two months from release" for fourteen months.1

Meeting Grom Hellscream in Draenor

New features

The game brings a new tileset, representing the Orc homeworld of Draenor. Online play was in its infancy and widely inaccessible in 1996, so the new single player campaign of 12 Human and 12 Orc missions, in addition to 50 custom maps, were very welcome by players.

The game most memorably introduces several heroes. They don't have abilities beyond what normal units have, but they are much tougher and more dangerous, although most missions that feature them also require them to stay alive through the game. They can be seen as "proto-heroes" and paved the way for characters in later games — and of course Warcraft III, released in 2002, would heavily expand on the concept.

The campaign itself is rather varied for the time and given the game engine constraints. The basics of most missions are to build up your base, create an army and conquer the AI opponents, but a few levels offer variation. Some missions include rescuing units and moving them to safety on the map; there are no-build missions where you make your way with a small force through hostile territory; and one mission where an Orc clan betrays their kin and joins the Humans, letting you play as the opposite race.

Blizzard created a little bonus song, I'm a Medieval Man, as a homage to Comand and Conquer's Mechanical Man. One can listen to the song by inserting the Warcraft CD into a audio CD player, or by typing the "cheat code" disco in the game. The lyrics to the song are from Warcraft: Orcs and Humans, funnily enough.

Personally, I find it a bit interesting that no new units, buildings or abilities were introduced. Especially as the game is symmetrical in the sense that the two races are nearly perfectly mirrored (apart from the spells, which while they differ still show quite the symmetry). It seems like it would have been an easy task to add in pairs of new Human and Orc units without needing to worry too much about game balance. I'm speculating, but probably the development time was too limited to allow for this.

Today's view by players

While Warcraft II: Tides of Darkness started with plenty of easy levels that gradually grew more demanding, Warcraft II: Beyond the Dark Portal is known for being unforgiving right from the start. Many on Reddit, such as MDoc84, share their frustration about the campaign difficulty: "I've NEVER been able to beat Beyond the Dark Portal. The difficulty curve comparted to Tides of Darkness is insane". From the same reddit-thread:

The difficulty is pretty absurd, I never made it anywhere without cheats. It's an issue that game devs and modders run into. I call it skill inflation:

The testers/team, when making the expansion pack, have likely sank hundreds of hours into the game by that point. They tuned it to what felt like a reasonable challenge to them, but back then you couldn't get public feedback as easily before the game got released. Could be too, that the members of the public they did talk to were diehards as well.

CaptainMoonunitsxPry
2026-03-04

There are indeed also plenty of these die-hard fans who showcase the opposite thoughts. One of my all-time favourite videos on YouTube is this absolutely insane lossless speedrun by texture3D, where they play Orc mission 12 without losing a single unit, and doing so at absolutely incredible speed. It is pure art to watch how they pulverize the AI.

I also highly recommend watching Admiral Iddy play through the entire Warcraft II: Beyond the Dark Portal campaign lossless. He makes it clear just how grueling it is to attempt such a feat.

Deathwing on the last mission of the Orc campaign

Modding

The modding community at the time had already been dissecting the games files and data archives. One of the major milestones was when Mordraug (Peter Hatch) mapped out parts of the memory of the game executable, enabling Merlin (Cameron Buschardt) to write his famous tool WarHack, which allowed users to change the commands and tech trees of units.

For those still interested, I can highly recommend visiting the Warcraft II Forums, a community of players, modders and mappers who are still going strong.

Later versions

Blizzard would continue to capitalize on the game and release it in several bundles and versions:

  • WarCraft: Battle Chest, released in 1996, was a bundle which included WarCraft: Orcs and Humans, WarCraft II: Tides of Darkness, and WarCraft II: Beyond the Dark Portal.
  • WarCraft II: The Dark Saga, released in 1997, was a port for the Sega Saturn and PlayStation consoles by Electronic Arts, including the campaigns from both Tides of Darkness and Beyond the Dark Portal.
  • WarCraft II: Battle.net Edition, released in 1999, ported the game's code to Microsoft Windows, fixed some minor bugs, and enabled multiplayer support via Blizzard's online service, Battle.net.
  • WarCraft II: Remastered, released in November 2024, is modern remaster of Tides of Darkness and Beyond the Dark Portal, with improved graphics and updated controls.
Scraping the web
Posted by Ojan

Apologies for the silence here. I've been keeping myself busy whenever time allows, by scraping the remains of various community forums.

It started off in late March when I noticed by chance that the Campaign Creations forums were down. These forums hold decades of community talk, culture and knowledge, and once someone stops paying the bills or maintain the servers, all of that is gone from the face of the Internet. The Internet Archive does a valiant job in backing up sites, but especially forums can be quite lacking in their backups. Fortunately, the Campaign Creations forums went back online soon enough, but I had already decided to swing into action.

I have thus been busy creating scripts to fetch all of the Campaign Creations forums, and Staredit Networks. The fetching is the easy part; I also am trying to convert the forums into json-format, and the posts into Markdown. The latter, turning HTML into Markdown, is quite complicated, as especially on Staredit — people have been using all sorts of markup tags to add "flavour" to their posts. Trimming that away is rather laboursome.

I thus far have the whole of the Campaign Creations forums, the Staredit forums, and all news items from Camelot Systems between 1998 and 1999, as well as 2002. I'm currently fetching and parsing the news items from 2000 and 2001.


So what is the point and the plan? Well, I see value in just keeping this available for the sake of it. It contains lots of knowledge, and holds intristic value due to the culture embodied within. As long as Campaign Creations and Staredit are online, I'll let the backups reside on my harddrive. I intend to do the same with the war2.ru forums (in addition, there seems to be another Russian language forum here). For the other sites, I'd love to try to host forum copies though.

There are several other sites and forums of interest. If the Internet Archive has it, I'd like to scrape and parse these places:

  • WarDraft forums
  • CamSys forums
  • Soverign Modding Empire
  • SAMods
  • ShadowFlare's Realm
  • Infoceptor

If you have suggestions of more places that are relevant for the modding community for StarCraft I, WarCraft I and WarCraft II, then reach out to me!

mpqcli 0.9.9 is out
Posted by Ojan

Yesterday, Thomas Laurenson released version 0.9.9 of mpqcli, a release packed with bugfixes. As previously covered here, mpqcli is a tool for creating and modding MPQ files, used for loading custom data into games.

Fixed in version 0.9.9:

  • Potential path traversal attack in extract subcommand.
  • Empty MPQ archive name when directory supplied with trailing slash.
  • Bug where MPQ internal files were added with create subcommand.
  • Signature being added automatically when not requested.
  • Potential DWORD overflow in add subcommand.

Find version 0.9.9 of mpqcli here.

Chkdraft 2.11 released
Posted by Ojan

TheNitesWhoSay recently released version 2.1 of the StarCraft I map editor Chkdraft.

News in version 2.11:

  • Fix minimap unit position issue for maps with a dimension of 192.
  • Fix a crash on carbot due to certain images/anims not being present on the skin.
  • Support unicode for command line arguments (fixes "Open With" Chkdraft issues for certain maps).

News in version 2.10:

  • Support unicode for command line arguments (the "Open With" menu option in windows).

Version 2.11 is available here.

mpqcli 0.9.8 is out
Posted by Ojan

Yesterday, Thomas Laurenson released version 0.9.8 of mpqcli, mostly containing changes contributed by me. When adding files, there is now support for overwriting existing files, as well as for specifying the path within the archve. Archives can also be created from a single file rather than requiring the user to giv a directory. Finally, some memory leaks have been fixed and all file handles are now properly closed.

The full changelist is as follows:

Added:

  • The create subcommand now supports a single file
  • The add and create subcommands have additional arguments for specifiying the file location in the MPQ archive (filename-in-archive, directory-in-archive and path)
  • The add subcommand can now overwrite existing files if requested (overwrite)

Fixed:

  • Several memory leaks

Find version 0.9.8 of mpqcli here.

One year anniversary of Jorvik Systems
Posted by Ojan

Time flies, and today not only marks the Spring Equinox, but also the one year anniversary of Jorvik Systems.

Jorvik Systems

The website itself has progressed slower than I anticipated, and I had wanted to have more content up on the site by now. However, I have focused the time available on creating tools and software instead. Below is a list of the Blizzard-related software projects I have created and contributed to during this time.

Project Description
IronTBL A tool to convert StarCraft and WarCraft II TBL files to text files.
IronGRP A tool to convert StarCraft, WarCraft I and WarCraft II GRP files to PNG using a PAL color palette.
IronImage Converts IMG files (images) and CUR files (cursors) from WarCraft I and II to PNGs and vice versa.
mpqcli A command line tool to create, add, remove, list, extract, read, and verify MPQ archives using the StormLib library.
MPQDraft MPQDraft allows in-memory patching of Blizzard game data files, added features through plugins, and creation of self-executing mods.
MpqFileLister MPQDraft plugin to list all files the games access.
namebreak-cuda Application to brute-force the names of files inside MPQ archives.

Overall, I'm very happy with that amount of output. As for the site, a major event was in December, when I wrote a piece about the thirty year anniversary of Warcraft II: Tides of Darkness, a post which stayed on the front page of Hacker News for 24 hours and generated quite some site views.

Things have been slow with the site lately, as I've been on vacation with extended travel for a while now. That is about to wrap up in not too long, so I anticipate that I will have some more free time to spend on the site and tools, hopefully.

mpqcli 0.9.7 is out
Posted by Ojan

Yesterday, Thomas Laurenson released version 0.9.7 of mpqcli. I have contributed all the changes in this release, some of which turned out pretty big.

The major thing in this release is game profiles. By using the --game option, you can have mpqcli target the specified game, using the correct compression methods and settings. This allows it to be used to create archives and add files to MPQs for StarCraft I and WarCraft II and all the other games. Great news for us old school guys still digging around in the nineties games!

The full changelist is as follows:

Added:

  • Game profile support for create and add subcommands via -g/--game option
  • Game profiles for Diablo, StarCraft, Warcraft, WoW, and more
  • Game setting override options for create subcommand
  • Compression override options for add subcommand
  • Support for unfamiliar/unknown locales via raw hex LCID
  • Additional built-in locales: ptBR, esMX, ptPT

Fixed

  • Subcommands now properly verify locale before operating on files
  • Error messages now include locale context in remove, extract, and read.
  • MPQ archives are now properly closed across all subcommands
  • Non-zero exit codes returned on failure in extract and remove
  • list subcommand now shows long output when properties are requested

Changed

  • Improved locale printing and display throughout

Find version 0.9.7 of mpqcli here.

(As an aside, when travelling to New Zealand a few weeks ago, I met up with Thomas Laurenson and had a drink with him. Really nice guy!)

Three new Chkdraft releases
Posted by Ojan

In rapid succession, TheNitesWhoSay has released version 2.07, 2.08 and 2.09 of the StarCraft I map editor Chkdraft.

News in version 2.07:

  • Have units on classic minimaps render with the appropriate sizes
  • Add ability to render classic minimap webps in map_gfx_utils
  • Fix resource coloring on classic minimaps

News in version 2.08:

  • Add ability to create locations for sprite units
  • Accurate mini-map unit display sizes
  • Fix map and minimap color displays for remastered colors, fix resource minimap color
  • Fix create location menu options updating the layer but not the dropdown box to locations
  • Fix trigger string-clearing issue
  • Fix actions being added to history when trigger values were unchanged
  • Fix blank strings showing up in string suggestions after opening a map with fragmented strings
  • Fix resources not reciprocal respecting the mineral distance flag with resource depots
  • Fix display of carrier shadows
  • Fix a crash that occurred when using non-empty default triggers with new maps

News in version 2.09:

  • Improved load time for large scenarios (3-5 times faster)
  • Triggering performance improved for maps with large trigger quantities
  • Fixed a crash that occurred when compiling text for an individual trigger from the trigger gui
  • Fixed a bug where the string editor edited game strings when it should edit editor strings

Version 2.09 is available here.

Chkdraft 2.06 released
Posted by Ojan

TheNitesWhoSay have released version 2.06 of Chkdraft yesterday, a map editor for StarCraft I. The tool describes itself as "A remake-in-progress of the beloved Scmdraft to fill the holes left behind".

News in version 2.06:

  • Support for DatExt mods and Cosmonarchy in particular
  • Add profiles json files and the profiles UI, including live-reloading, replacing the old settings.ini file
  • Add ability to drop-to-open multiple map files at once
  • Add ability to customize the unit and sprite trees in the profiles json
  • Add ability to treat a regular filesystem folder like a casc or mpq for data loading
  • Now relies on a stable release of nf hist
  • Clang can now be used on linux to compile map_gfx_utils and generate pictures of maps
  • Many bugfixes (including and beyond those of recent pre-releases) especially those related to profiles and sounds

The release is available here.

MPQDraft 2026-02-04 released
Posted by Ojan

I just made a small fix to MPQDraft. Before, when creating SEMPQs (self-executing MPQs), it used to force you to specify an MPQ and optionally plugins. Now, either an MPQ or plugins are required, i.e. you can now omit MPQs if you specify plugins. This functionality is used by Cosmonarchy, which utilises a hot-loader plugin that downloads the latest MPQs on the fly, allowing frequent updating without having to rely on re-distribution of SEMPQs.

Also in this release are translation of the GUI into Swedish and Korean. Both are AI-translated, with the former language quickly verified by myself while the latter is completely unverified. If you have corrections or want to contribute a new translation, then please reach out.

See the MPQDraft page here, for a download link.

Jorsys news