# News
{{begin-aboutbox}}
Jorvik Systems is a site dedicated to modding and reverse engineering WarCraft&nbsp;I, WarCraft&nbsp;II and StarCraft&nbsp;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.
{{end-aboutbox}}


{{begin-newsitem |time=2026-06-23T17:40:33Z |title=PyMS Updates |author=Ojan |categories=StarCraft I, modding, tools |summary=PyMS updated for Python 3, and now has MIT license}}

For StarCraft I modders, one of the best set of tools has for a long time been {{highlight |text=PyMS}}, a graphical tool suite that allows several file types to be modded.

The author, {{highlight |text=poiuy_qwert}}, has been hard at work converting the source from Python 2 to Python 3, and writes:

{{beginquote |quote-source=poiuy_qwert}}
Hey all, I've been putting a lot of work into the python3 version of PyMS recently, but again I only have time to work on the tools not to actually use them, so I need to lean on others to use/test the programs and report any issues. If anyone is able to play with them please let me know!
{{endquote}}

See [here](https://github.com/poiuyqwert/PyMS#issuesfeedback) for how to raise any issues.

Also, while the source of {{highlight |text=PyMS}} has been available for a long time, it has so far been without any explicit license, but {{highlight |text=poiuy_qwert}} just now released it under the MIT license.

Find the Python 3 branch of {{highlight |text=PyMS}} on [GitHub](https://github.com/poiuyqwert/PyMS/tree/python3).
{{end-newsitem}}


{{begin-newsitem |time=2026-06-14T13:03:48Z |title=IronTBL 2.0.0 |author=Ojan |resources=irontbl.png |categories=StarCraft I, WarCraft II, modding, tools, IronTBL |summary=Released IronTBL 2.0.0}}

StarCraft I and Warcraft II use TBL files to store game strings for things such as unit names, dialog strings, game tips, mission dialogs etc. Roughly a year ago, I wrote a little utility, [IronTbl](https://github.com/sjoblomj/IronTBL) to convert these TBL files to TXT files and back.

I recently decided to give {{highlight |text=IronTBL}} some love and fixed some minor bugs and issues, and spent some time hardening it. So with that, version 2.0.0 is now out.

{{img |file=irontbl.png |title=IronTBL}}

The previous `--mode` flag is now replaced by proper subcommands {{dash}} since this is a breaking change for the interface, I bumped the version to 2.0.0 even though the release doesn't offer any new features.

{{highlight |text=IronTBL}} 2.0.0 is available on [GitHub](https://github.com/sjoblomj/irontbl/releases/tag/v2.0.0).
{{end-newsitem}}


{{begin-newsitem |time=2026-06-07T17:48:50Z |title=mpqcli 0.9.10 turned into 0.10.0 |author=Ojan |categories=StarCraft I, WarCraft II, modding, tools |summary=mpqcli 0.9.10 removed and 0.10.0 released in its place}}

{{highlight |text=Thomas Laurenson}} seems to have figured that yesterday's 0.9.10 release of {{highlight |text=mpqcli}} merited a version bump, since it is a rather big release.

He also included a contribution by me to add the `compact` subcommand which defragments an MPQ archive, thus shrinking it in size if it contains any gaps from previous `add`s or `remove`s.

So, version 0.9.10 is not available anymore, but instead [version 0.10.0 of mpqcli](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.10.0) is out!
{{end-newsitem}}


{{begin-newsitem |time=2026-06-06T09:19:57Z |title=mpqcli 0.9.10 is out |author=Ojan |categories=StarCraft I, WarCraft II, modding, tools |summary=mpqcli 0.9.10 released}}

{{highlight |text=Thomas Laurenson}} just released [version 0.9.10 of mpqcli](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.10.0) two hours ago. As previously covered here, {{highlight |text=mpqcli}} is a tool for creating and modding MPQ files, used for loading custom data into games.

Both {{highlight |text=Thomas Laurenson}} and myself have made several contributions to the release, which is rather large:

**Added**

- Support passing multiple files to the `add` and `remove` subcommands
- Support reading file paths from stdin in the `add` and `remove` subcommands
- Support adding entire directories with the `add` subcommand
- Add an `--update` flag to the `add` subcommand. When given, files whose archived size matches the on-disk size won't be added to save time.

**Fixed**

- `extract` subcommand now reports an error when the output directory cannot be created
- Path traversal guard in `extract` uses fully resolved paths, closing a potential bypass
- Crash when reading strong signatures from malformed or truncated archives
- Docker glibc image updated to ubuntu:24.04
- Adding files is now ordered and operating system agnostic
- `add` subcommand now returns non-zero exit codes on failure
- Error messages now include StormLib error codes
- Duplicate error messages removed
- Makefile build targets corrected

**Changed**

- The `--path` flag on add now acts as an archive path prefix when a directory is given, and the full name when a file is given.

**Removed**

- `--filename-in-archive` and `--directory-in-archive`. They are now replaced by a unified `--path` flag

Find [version 0.9.10 of mpqcli here](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.10.0).
{{end-newsitem}}


{{begin-newsitem |time=2026-05-28T17:53:13Z |title=Chkdraft 2.12 released |author=Ojan |categories=StarCraft I, tools |summary=Chkdraft 2.12 is out with bugfixes}}

Yesterday, {{highlight |text=TheNitesWhoSay}} released version 2.12 of the StarCraft I map editor {{highlight |text=Chkdraft}}.

It is a small bugfix with a single change:

- Fix a trigger action display-text issue where the move unit to/from locations were swapped

Version 2.12 is available [here](https://github.com/TheNitesWhoSay/Chkdraft/releases/tag/2.12).
{{end-newsitem}}


{{begin-newsitem |time=2026-05-16T10:19:51Z |title=30 year anniversary of WarCraft II: Beyond the Dark Portal |author=Ojan |resources=war2btdp-small.jpg, war2btdp-1.png, war2btdp-2.png |categories=WarCraft II |summary=It is today 30 years ago since WarCraft II: Beyond the Dark Portal was released}}

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](https://www.jorsys.org/archive/december_2025.html#newsitem_2025-12-09T07:42:19Z).

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](https://web.archive.org/web/19961030103516/http://blizzard.com/library/docs/96-05-ex.htm) 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 {{highlight |text=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.

{{img |file=war2btdp-small.jpg |title=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. {{highlight |text=Patrick Wyatt}}, the Producer of Warcraft: Orcs and Humans, writes this in [one of his very interesting articles](https://www.codeofhonor.com/blog/starcraft-orcs-in-space-go-down-in-flames/) about his experiences:

{{beginquote |quote-source=Patrick Wyatt |quote-time=2012-09-27}}
Blizzard’s business strategy was driven by {{highlight |text=Allen Adham}}, the company’s president. {{highlight |text=Allen}} was a student of both gaming and business, and under the tutelage of {{highlight |text=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. [...] {{highlight |text=Allen}} endeavored to build a pipeline with predictable game releases[...]
{{endquote}}

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]

{{beginquote |quote-source=David L Craddock |quote-time=2018-06-29}}
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.
{{endquote}}

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]

{{img |file=war2btdp-1.png |title=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 {{dash}} 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](https://www.youtube.com/watch?v=sbAFuDqmoEg), as a homage to Comand and Conquer's [Mechanical Man](https://www.youtube.com/watch?v=iGuuOdD6iY). 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](https://www.reddit.com/r/warcraft2/comments/1rkoz2f/beyond_the_dark_portal_is_too_unforgiving_to_be/), such as {{highlight |text=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:

{{beginquote |quote-source=CaptainMoonunitsxPry |quote-time=2026-03-04}}
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. 
{{endquote}}

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](https://www.youtube.com/watch?v=uixW4CoA1Eg) absolutely insane *lossless speedrun* by {{highlight |text=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](https://www.youtube.com/watch?v=DwhH3iftJ5I) 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.

{{img |file=war2btdp-2.png |title=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 {{highlight |text=Mordraug}} (Peter Hatch) mapped out parts of the memory of the game executable, enabling {{highlight |text=Merlin}} (Cameron Buschardt) to write his famous tool {{highlight |text=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](https://forum.warcraft2.online), 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.


[1]: https://www.codeofhonor.com/blog/tough-times-on-the-road-to-starcraft/
[2]: https://www.codeofhonor.com/blog/starcraft-orcs-in-space-go-down-in-flames/
[3]: https://www.polygon.com/features/2018/6/29/17517376/diablo-hellfire-expansion-behind-the-scenes-trouble/
[4]: https://www.hachettebookgroup.com/titles/jason-schreier/play-nice/9781538725443/
{{end-newsitem}}


{{begin-newsitem |time=2026-05-02T07:55:36Z |title=Scraping the web |author=Ojan |categories=site |summary=I'm scraping forums for content}}

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](https://www.campaigncreations.org/forum/) 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](https://archive.org) does a valiant job in backing up sites, but especially forums can be quite lacking in their backups. Fortunately, the {{highlight |text=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 {{highlight |text=Campaign Creations}} forums, and [Staredit Networks](https://www.staredit.net). 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 {{highlight |text=Staredit}} {{dash}} 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 {{highlight |text=Campaign Creations}} forums, the {{highlight |text=Staredit}} forums, and all news items from {{highlight |text=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 {{highlight |text=Campaign Creations}} and {{highlight |text=Staredit}} are online, I'll let the backups reside on my harddrive. I intend to do the same with the [war2.ru forums](https://forum.war2.ru) (in addition, there seems to be another Russian language forum [here](https://www.war2.ru/modules/newbb_plus/)). 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:

- {{highlight |text=WarDraft forums}}
- {{highlight |text=CamSys forums}}
- {{highlight |text=Soverign Modding Empire}}
- {{highlight |text=SAMods}}
- {{highlight |text=ShadowFlare's Realm}}
- {{highlight |text=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!](../who.html)
{{end-newsitem}}


{{begin-newsitem |time=2026-04-06T09:06:29Z |title=mpqcli 0.9.9 is out |author=Ojan |categories=StarCraft I, WarCraft II, modding, tools |summary=mpqcli 0.9.9 released, with bugfixes}}

Yesterday, {{highlight |text=Thomas Laurenson}} released [version 0.9.9 of mpqcli](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.9.9), a release packed with bugfixes. As previously covered here, {{highlight |text=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](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.9.9).
{{end-newsitem}}


{{begin-newsitem |time=2026-04-02T03:49:03Z |title=Chkdraft 2.11 released |author=Ojan |categories=StarCraft I, tools |summary=Chkdraft 2.11 is out with bugfixes}}

{{highlight |text=TheNitesWhoSay}} recently released version 2.11 of the StarCraft I map editor {{highlight |text=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).

Back in late February, he also released version 2.10:

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

Version 2.11 is available [here](https://github.com/TheNitesWhoSay/Chkdraft/releases/tag/2.11).
{{end-newsitem}}


{{begin-newsitem |time=2026-03-23T03:06:28Z |title=mpqcli 0.9.8 is out |author=Ojan |categories=StarCraft I, WarCraft II, modding, tools |summary=mpqcli 0.9.8 released, with overwrite and convenience support}}

Yesterday, {{highlight |text=Thomas Laurenson}} released [version 0.9.8 of mpqcli](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.9.8), 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](https://github.com/TheGrayDot/mpqcli/releases/tag/v0.9.8).
{{end-newsitem}}


## Jorsys news
* [News archive](archive.html)
* [News feed](feed.html)
