• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 09:46
CEST 15:46
KST 22:46
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL Team Map Contest #5: Presented by Monster Energy4Code S RO8 Preview: herO, Zoun, Bunny, Classic7Code S RO8 Preview: Rogue, GuMiho, Solar, Maru3BGE Stara Zagora 2025: Info & Preview27Code S RO12 Preview: GuMiho, Bunny, SHIN, ByuN3
Community News
Code S RO8 Results + RO4 Bracket (2025 Season 2)9BGE Stara Zagora 2025 - Replay Pack2Weekly Cups (June 2-8): herO doubles down1[BSL20] ProLeague: Bracket Stage & Dates9GSL Ro4 and Finals moved to Sunday June 15th13
StarCraft 2
General
TL Team Map Contest #5: Presented by Monster Energy Code S RO8 Results + RO4 Bracket (2025 Season 2) The SCII GOAT: A statistical Evaluation How herO can make history in the Code S S2 finals Jim claims he and Firefly were involved in match-fixing
Tourneys
RSL: Revival, a new crowdfunded tournament series [GSL 2025] Code S: Season 2 - Ro8 - Group A [GSL 2025] Code S: Season 2 - Ro8 - Group B SOOPer7s Showmatches 2025 Sparkling Tuna Cup - Weekly Open Tournament
Strategy
[G] Darkgrid Layout Simple Questions Simple Answers [G] PvT Cheese: 13 Gate Proxy Robo
Custom Maps
[UMS] Zillion Zerglings
External Content
Mutation # 477 Slow and Steady Mutation # 476 Charnel House Mutation # 475 Hard Target Mutation # 474 Futile Resistance
Brood War
General
BGH auto balance -> http://bghmmr.eu/ BW General Discussion Recent recommended BW games FlaSh Witnesses SCV Pull Off the Impossible vs Shu StarCraft & BroodWar Campaign Speedrun Quest
Tourneys
Small VOD Thread 2.0 [Megathread] Daily Proleagues [BSL20] ProLeague Bracket Stage - Day 4 [BSL20] ProLeague Bracket Stage - Day 3
Strategy
I am doing this better than progamers do. [G] How to get started on ladder as a new Z player
Other Games
General Games
Nintendo Switch Thread Stormgate/Frost Giant Megathread Path of Exile Beyond All Reason What do you want from future RTS games?
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
Things Aren’t Peaceful in Palestine US Politics Mega-thread UK Politics Mega-thread Russo-Ukrainian War Thread Vape Nation Thread
Fan Clubs
Maru Fan Club Serral Fan Club
Media & Entertainment
Korean Music Discussion [Manga] One Piece
Sports
NHL Playoffs 2024 TeamLiquid Health and Fitness Initiative For 2023 2024 - 2025 Football Thread Formula 1 Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
A Better Routine For Progame…
TrAiDoS
StarCraft improvement
iopq
Heero Yuy & the Tax…
KrillinFromwales
I was completely wrong ab…
jameswatts
Need Your Help/Advice
Glider
Trip to the Zoo
micronesia
Customize Sidebar...

Website Feedback

Closed Threads



Active: 25471 users

[Guide] IskatuMesk's introduction to Modding

Forum Index > BW General
Post a Reply
1 2 3 Next All
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
Last Edited: 2009-06-02 06:35:07
June 02 2009 06:30 GMT
#1
IskatuMesk's Formal Introduction to Modding

[image loading]


Hi, I'm IskatuMesk! I'm a veteran modder of Starcraft for ten years. I specialize primarily in creation of Total Conversions. I've created a variety of guides and video tutorials in the past, but no true down-to-earth introduction & tutorial. I am creating this guide for the SC2 beta key guide contest.

Today I'm going to give you a shakedown on Starcraft modding, some of the tools you'll be working with, concepts to become acquainted with, and some of the possibilities of Starcraft modding. In this guide I will presume that you don't even know what modding is, much less how to start. By the end of the guide I hope you will have a basic idea of where to go, what to do, and how to best evolve your skills should you be interested in starting a mod. This guide is to be used as a primer for getting started and it doesn't cover intermediate or advanced topics due to the scale of such topics.

First, let's get an idea of what exactly we're going to be doing.

Introduction to Modding

[image loading]


Mods are very different from maps. While a map may contain mod-like elements, it is ultimately still just a map. Mods work by temporarily "patching" the game's memory, not permanently modifying the game itself, but allowing you to play with new elements, such as voice acting, graphics, and computer AI. If you have a friend who possesses the same mod as you, it's perfectly possible to play multiplayer. You generally use Battle.LAN or Hamachi to play multiplayer mods, as they often do not support the most recent version of Starcraft. Downgrading is very easy and quick to do on the fly, however, so don't be discouraged.

However, I have a few words of advice before you begin.

Unless you are truly motivated to start a mod, it's best not to devote time to it. We get so many one-hit wonders that claim they have the greatest idea for a mod, then we never hear from them again. Modding is not a hobby, it's a dedication. There's a few extensive articles out there that get deeper into the subject of team management and dedication.

Here's one written by a good friend of mine, Magic from the Star Alliance.
http://samods.org/articles/tips_for_new_modders

Here's one I wrote a little while ago, geared towards people looking to form large teams, although for Starcraft it's really unnecessary to have a big team.
http://www.campaigncreations.org/forum/index.php?topic=1495.0

This guide will assume that you are motivated, dedicated, and actually ready to invest time into this subject.

Getting started

Perhaps you want to simply rebalance Starcraft. Maybe mutalisks aren't strong enough, and they should fire yamato guns instead of glave wurms. Perhaps you want Carrier interceptors to fly further from the Carrier and attack at a range, like bombers.

How do you begin? Where do you start?

Before you get in over your head, there's a lot of things to consider.

Starcraft is an old game. Really, modding SC is a lot like playing it. It's easy to jump into, but very difficult to master and a lot of that difficulty comes from the limitations of the game. Starcraft's limitations can sometimes work to your advantage, though, as you can do a lot in Starcraft that you can't do in, for example, Warcraft 3. It's that allure that has kept me going for ten years. SC, for example, doesn't allow new races or a larger resolution/color depth, but you can give units 10 different attacks linked to their animations that all occur randomly. You can make projectiles do randomized damage and spawn appropriate effects. You can't have a unit fire more than 2 types of projectiles, but you can spawn weapons at a target's position. You can't have new types of interceptors or scarabs. So on so forth.

There's a few concepts to understand when working with starcraft.

Starcraft functions through archives, called Mpqs. You'll work with these using Winmpq (explained in the next segment). The MPQ contains all of your mod's data. For your data to function, it must assume the name of the file it's replacing. For example, .dat files which contain attributes such as unit health, weapon damage, ect. are under the arr\ directory within stardat and broodat mpq files. In your mpq file, they'll also be under the arr\ directory. Weapons.dat will always be named arr\weapons.dat, units.dat will always be named arr\units.dat.

Because you cannot add new entries to dat files and for the most part cannot tell the game to "read" new units, you are essentially working with what is available and not much else. For most people this should be enough.

Starcraft's graphics are 256-color sprites contained within .grp files. You'll be using Shadowflare's GRP converter to handle these, but you can use Broodkiller's GRPEdit or Retrogrp to preview them. These use a starcraft-specific palette.

The sounds/music are PCM-format .wavs and can accept up to 48,000khz sampling rate, mono and stereo.

Resources, tools, & places of interest

One of the biggest responsibilities as a modder is using the resources and tools available to you to their fullest. The first place to start would be to learn where tools are located, what forums have useful information stowed away, and where's a good place to ask questions.

www.campaigncreations.org - The website I'm hosted at. Oriented mostly around old custom campaigns, I'll be working with the administration to update the website's modding section. My bible is also located in the Starcraft section of the forums and covers some intermediate to advanced topics.
www.samods.org - SA's long past its glory days, but digging deep into the starcraft section may yield some interesting information.
www.staredit.net - The redheaded stepchild of the modding community, SEN is a relatively young website but remains the most active. A good place to look around for simple to intermediate topics, and probably the best place to ask your questions at.
www.broodwarai.com - Possesses an up to date list of modding tools and managed by two friends of mine, Bajadulce and poiuy_qwert. Here is where you'll get the latest tools, and it's also the place to go if you're looking to customize Starcraft's computer AI. Here you can also grab Baja's downgrader, which is not only useful for modding but also for watching old replays.

As with all forums, the Search function is your best friend when dealing with a game that is as old as SC.

"There's so many tools, what do I need!?"

Let's start with the basics. Head on over to broodwarai and grab the following tools. Use your browser's search function.

Datedit
Winmpq
Mpqdraft


Note - If Winmpq doesn't work for you, you'll need to download some runtime files. You can find them here, http://shadowflare.samods.org/dwnload.html#WinMPQ

Okay, let's get started!

Your first mod

In this mod we're going to cause the Mutalisk to shoot yamato gun blasts and do increased damage. Maybe we'll give it some shields and stuff, too.

First thing's first. Create a folder somewhere you have easy access to. I've created a folder called TL Mod Guide on my desktop. Run Winmpq, and click on "new". Navigate to that folder and create a new mpq. I've just called mine TL. So professional! You may note that the mpq isn't actually created yet. Once you start putting files into the mpq, it'll appear. If you close winmpq before you do that, you'll need to make another one.

Now, run Datedit.

[image loading]

Oh sweet mary poppins and tap-dancing christ there's buttons everywhere!

Well, actually, it isn't so bad. I helped design datedit's layout with Broodkiller and we made it as efficient and user-friendly as possible. There's also helpful tooltips that will guide you around, and most of the functions are user-friendly.

Find the Mutalisk in the unit list. Don't touch any of the tabs, yet!

With the Mutalisk selected, let's take a look at his basic attributes.

[image loading]


1.) The Mutalisk's health, shields, and armor. We can enable the Mutalisk to have shields. Click on the box to enable shields and give him 4269 shields.
2.) Build costs and construction time. Note that for units with a lot of health, an extremely short construction time may cause them to appear with reduced health and armor. This is because that just like with buildings, SC will create the unit from 1/* health and raise it until it's max. If it's too fast, like .25 a second, it may not fill the health fast enough. Let's make the Mutalisk take 2 seconds to build, and cost 42/42 minerals/gas.
3.) Weapons. Unlike Warcraft 3, unit weapons are not built into the unit, which is really handy and helps us out. "Max hits" is just for Staredit display and isn't really that useful. We're going to leave this part alone for now. You can use it to make the Mutalisk call upon, say, the Battlecruiser's weapon entries.
4.) Supply. Here you can make the Mutalisk cost 0 supply, or 42 supply. For the moment, let's make him cost 0 supply. There's also the race selector. You can make the Mutalisk cost Terran supply if you wanted to. This area is also important for computer AI. If you had set the Mutalisk to cost Terran supply, even though it costed 0 supply, the AI wouldn't build it.
5.) Space required for transports. As the Mutalisk is an air unit, it costs 255 supply - nothing can transport it. It's perfectly possible to have the Overlord capable of transporting it, though. This doesn't resize wireframes and in some rare cases might cause instability, so be warned.
6.) Scorepoints, for the end-game score board. There was some speculation that AI will target high-point units over low ones, but I've yet to see anything that indicates such behavior.
7.) Size. This determines how much damage weapons that are concussive and explosion will do to the unit. The Mutalisk, being small, takes max damage from Ghosts and reduced damage from Dragoons.
8.) Sight range & Acquisition range. Sight range caps at 11 unless you like crashing Starcraft, but Acquisition range can go on for quite a distance. If you went to the Carrier entry and set this to something like 69 or 42, it'd cause the Interceptors to engage targets at a far larger radius than they currently do.

Feel free to look at the other tabs for the Mutalisk, such as Advanced and Graphics. Clicking on boxes or stuff will display a tooltip explaining their function to you. For the moment, we're going to leave all of this stuff alone.

Go back to the Basic tab and click on one of the arrows next to the Mutalisk's weapons called Jump. This will cause Datedit to swing over to the Weapons.dat editor, selecting the appropriate weapon for you.

[image loading]


I'll explain what you're seeing once more, though the tooltips will probably go more in-depth.

1.) Damage and cooldown. "Factor" determines the amount of projectiles that spawn, but caps out at 2 then resets to 1 when used higher. Set the damage to 42.
2.) Damage types. Setting effect to spell and giving it damage is typically a good way to crash the game as spells are serious voodoo and quite hardcoded. Many spells cannot be used outside of their existing entry, like Mind Control and cannot be used as weapons. So much for my randomly mind-controlling flying larva, huh?
3.) Ranges. See the Siege Tank and such units for an idea of how long the ranges are.
4.) Splash radius. Only works with certain damage types.
5.) Labels. Refers to stat_txt.tbl entries which we'll worry about later.
6.) Behavior and graphic. Let's set the graphic to Yamato Gun and set the behavior to Fly & Follow Target (homing). We could use the Bounce for the Yamato Gun, but it doesn't have animations for it and typically it's not a good idea.
7.) Targeting parameters. Note that if the Mutalisk's projectile is set to only hit air but it has the weapon in both slots in units.dat, it will still attack ground but just not do any damage. Some of these won't work very well, so it's up to you to experiment with them and see how they work. Some spells use the more exotic flags.


Okay, we're ready to try out our new, perfectly balanced Mutalisk! July will thank us for helping him demolish unsuspecting Protoss and Terrans.

If you hit control+S to save, Datedit will ask you if you want to overwrite the default files. The answer is no, obvious. So to go to Save As, and create a new folder called arr\ instead your mod's directory. Go back to the Units tab, and do the same, placing the new units.dat inside your arr directory.

Close Datedit. The reason we close datedit is that if it's loading from the mpq, which you usually do when you have custom graphics and you want to see them in the previews, it takes ownership of the mpq and any changes you make won't be applied to it. The same thing happens when you use Firegraft, or are currently running the mod mpq through Starcraft.

Browse to your new arr directory, and select your two dat files. Slide them into Winmpq. It'll ask you for a directory. Type in arr\ . They should now look like this.

[image loading]


Alright! We're almost ready to give the six Dragons a hernia. We have one last step to do. Once you get used to this, you'll be able to do all of these steps in under a minute.

Find and run Mpqdraft. Go to Load MPQ. Select starcraft in both of the selecting thingies. Click Next. Locate your mpq and make sure the box is ticked. Click next once more. In this window, you can select plugins if you have any that are applicable. Since you don't for the time being, just click finish. It should run Starcraft and when you create a mutalisk in a melee, tvb, or whatever, it'll be horrendously overpowered. If you made any other changes, like Carrier interceptor range, feel free to try them out, too!

Contratulations! You've just made your first amazing mod. You now understand the basics of Starcraft modding and you're in a good position to extend your abilities with the resources provided.

Intermediate topics - the Iscript

Very few modders out there limit their mods to .dat changes and kitbashed graphics. The real fun is creating entirely new effects and utilizing the Iscript to your advantage.

In this section I'm going to briefly introduce you to the iscript. The iscript is a topic that far exceeds the scale of any single guide or article, so I'll make it brief. This assumes you are fairly confident in your abilities with data editing.

First off, what is the iscript? The iscript.bin located under scripts\ is the single most powerful file in all of Starcraft. It controls animations of units through an extremely simple scripting language. With the iscript comes all of the magic of Starcraft. You can do things like spawn effects, trigger attacks in sync with animations, sequence randomized animations, all sorts of stuff like that. It's a really advanced subject when you get into it, so I'll keep it short and sweet.

Perhaps you gave the Vulture an air attack, and it crashed!? Or, maybe you gave the Corsair a ground attack, and it crashed, too!

Why?

They don't have animation entries for those attacks. This is a pretty simple process, so I'll cover it. To do that, we're going to turn our Mutalisk into a sewpah battal croozah.

Go ahead and download icecc from Shadowflare.samods.org. You'll need the Java runtime environment for this. Grab it from here. http://java.com/getjava/

Also, download the Grp pack that I released, here:

http://www.doack.campaigncreations.org/waxdough.rar

A brief preview of what this pack contains -
[image loading]


Of course if you release a mod with any of these, you'll need to credit me/WarGiant appropriately.

For the purpose of this mod, I'll use the Keeper.

Once everything's set up, let's run the IceCCUI.jar file.

[image loading]


Oh goodness! A first glance, this may look as confusing as hell. But, in fact, it's really simple.

The lists of units and such are listed by .dat entries (unrelated to your mod's dat files). Images.dat will contain the most entries, including explosions and stuff. Sprites.dat will contain fewer, as explosions are usually spawned as Image Overlays and don't need sprites, but trails do. Flingy will contain even less - anything that moves, like a missile or a marine, will need a Flingy entry. And, finally, units contains everything listed in units.dat.

Make note that most Heroes, like the hero vulture, share the exact same iscript entry as the Normal vulture. You can confirm this by looking at them in units.dat and images.dat.

Navigate down the list until you find the ZergMutalisk. Select it. Then go down to the "Save to" section and click Browse. Save it as something in your mod directory. Make sure to add a .txt extension to it.
[image loading]


Click "Decompile".

As long as you aren't decompiling from an iscript newer than the default (which can cause problems for icecc, though the game doesn't care), it should never give you an error when you decompile. So, for the moment, you're safe.

If you have any previous scripting or programming experience, iscripting will be painfully simple. If you don't, iscripting will be a little bit of a hurdle, but understanding starcraft's limitations will be more problematic. Really, there is no comprehensive source for anything in regards to Starcraft modding. A lot of it just comes from experience, and as there are so few modders who have ever toyed with the iscript, there isn't exactly a heap of people to attack with questions.

For the purpose of this guide, we'll just worry about our Super Mutalisk.

Open up that txt in your favorite text editor.

I'll now explain what you're looking at.


# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 038 Mutalisk (zerg\mutalid.grp)
.headerstart
IsId 23
Type 12
Init MutaliskInit
Death MutaliskDeath
GndAttkInit MutaliskGndAttkInit
AirAttkInit MutaliskGndAttkInit
Unused1 [NONE]
GndAttkRpt MutaliskGndAttkInit
AirAttkRpt MutaliskGndAttkInit
CastSpell [NONE]
GndAttkToIdle MutaliskGndAttkToIdle
AirAttkToIdle MutaliskGndAttkToIdle
Unused2 [NONE]
Walking MutaliskWalking
WalkingToIdle MutaliskGndAttkToIdle
SpecialState1 [NONE]
.headerend


These are Headers. The IsID is referred inside images.dat. You could have your Mutalisk call a custom id of 420 if you wanted, and this is handy if you are working on a very large project like Armageddon Onslaught and you run out of default ids. The Type refers to how many entries there are. Refer to other units, especially ones with burrowing animations, to see how that works.

The actual headers are ridiculously simple. The first words, like Init and Death, are refering to a Thread, located further down the file. These threads are called when the unit initiates certain orders or actions. When the unit is first spawned, it'll trigger the Init thread. When it dies, it'll trigger the Death thread. These threads can and often will interrupt each other when the game demands it.

IceCC comes with several files that will help you understand the opcodes that we're about to deal with. It'd be rather redundant to go through them all, so I'll just summarize the ones we're going to deal with.

MutaliskInit:
imgul 39 0 42 # MutaliskShad (zerg\mutalid.grp)
playfram 0x00 # frame set 0
waitrand 1 4
MutaliskGndAttkToIdle:
playfram 0x00 # frame set 0
wait 2
playfram 0x11 # frame set 1
wait 2
playfram 0x22 # frame set 2
wait 2
playfram 0x33 # frame set 3
wait 2
playfram 0x44 # frame set 4
wait 2
goto MutaliskGndAttkToIdle


Here we have the Init and To-idle animations.

playfram tells the game to play a Frameset. In the grp, every 17 frames is a frameset, starting from north to south facing right (east). Each frameset is a single frame of animation in the game when used this way. Starcraft mirrors the left direction on its own.

As the Mutalisk has an animation, it has 5 framesets. Each frameset is a single frame of the wing's movement, containing the appropriate direction data. Feel free to grab Shadowflare's grp editor from broodwarai.com and jack the mutalid grp from unit\zerg\mutalid.grp in stardat.mpq to have a look. (Note, winmpq may show a bunch of unknowns. I'll show you how to fix that in a bit)

Anyways, our keeper graphic doesn't have those extra framesets. If we just renamed it to unit\zerg\mutalid.grp in our mpq, it'd just crash because starcraft throws a temper tantrum when units don't have the frames it wants. So, to fix that, let's purge those extra framesets out of the Mutalisk txt file.

Remember when deleting the framesets to remove their accompanying waits as well.

MutaliskInit:
imgul 39 0 42 # MutaliskShad (zerg\mutalid.grp)
playfram 0x00 # frame set 0
waitrand 1 4
MutaliskGndAttkToIdle:
wait 2
goto MutaliskGndAttkToIdle

MutaliskDeath:
playsnd 942 # Zerg\Mutalid\ZMuDth00.WAV
imgol 41 0 0 # MutaliskDeath (zerg\zmuDeath.grp)
wait 1
end

MutaliskGndAttkInit:
playsnd 113 # Bullet\zmuFir00.wav
wait 1
attackwith 1
gotorepeatattk
goto MutaliskGndAttkToIdle

MutaliskWalking:
wait 1
goto MutaliskWalking


This is what we should end up with.

Note the imgols are Image Overlays, the game is effectively spawning these effects in the animation. If we wanted our giant black keeper to have pretty explosions, we'd probably want to spawn a ton of terran explosions with different offsets.

Imgol calls upon an images.dat id, and then has two offsets. We can create a chain of these with some waits. Look up the terran building explosions (probably just called "explosion", see if they use the ofire (orange) palette to be sure) and spawn them with -40 0, 40 0, 0 -40, and 0 40 offsets. Now when the unit dies, it'll create a massive explosion. Horray for explosions!

This is what my script looks like, now.

MutaliskInit:
imgul 39 0 42 # MutaliskShad (zerg\mutalid.grp)
playfram 0x00 # frame set 0
waitrand 1 4
MutaliskGndAttkToIdle:
wait 2
goto MutaliskGndAttkToIdle

MutaliskDeath:
playsnd 942 # Zerg\Mutalid\ZMuDth00.WAV
imgol 334 0 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 40 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 0 40 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 -40 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 40 -40 # MutaliskDeath (zerg\zmuDeath.grp)
wait 3
imgol 334 0 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 80 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 0 80 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 -80 0 # MutaliskDeath (zerg\zmuDeath.grp)
imgol 334 80 -80 # MutaliskDeath (zerg\zmuDeath.grp)
wait 3
end

MutaliskGndAttkInit:
playsnd 113 # Bullet\zmuFir00.wav
wait 1
attackwith 1
gotorepeatattk
goto MutaliskGndAttkToIdle

MutaliskWalking:
wait 1
goto MutaliskWalking


Okay, so we're ready to test. Control+S to save the txt file, and jump back into icecc. Go to the Compiler tab, and find our iscript. For the moment, we want to leave "Merge with default" check on. This will cause our new iscript to be a combined of our mutaloli script and the default, which is what we want. Create a scripts directory in your base folder and save the new file as "iscript.bin"

We don't need to turn off icecc to import our files. Sometimes it'll just turn itself off, though. Possibly because it hates life, or because it was programmed in java and java doesn't like life, either.

Anyways, import our file into our mpq, called scripts\iscript.bin. We also probably want that Keeper grp from the pack. Import it as unit\zerg\mutalid.grp. You'll probably need to rename it once it's imported.

Now our mpq should look like this.

[image loading]


Now, feel free to run the mpq like you did before. The Mutalisk should be a huge black keeper from HW2 and fire a yamato gun.

[image loading]


There you have it! A basic introduction to modding and even iscripting. If there's enough demand, I'll write out some more intermediate/advanced topics.


Extras

Q - Why does stardat ect show up as a ton of unknowns? How do I fix it?

A - You need a listfile. They're actually a bit hard to get now. The Maplantis backup on SEN has them.
http://www.maplantis.org/storage/files/listfiles.zip
To load them in winmpq, go to options, File lists, and Add List.

Q - How do I make selection circles larger/smaller?

A - Sprites.dat.

Q - Strings/names?

A - tblpad. Jack the stat_txt.tbl from patch_rt.mpq (Make sure it's the one with a local id of 0), edit appropriately, and stick into rez\ in your mpq.

Q - I want to learn how to do voice acting/convert graphics!

A - I made some video tutorials that cover these a little bit.

These videos are produced in 1920x1200 resolution.

http://www.doack.campaigncreations.org/Mesk_Soundediting_Ep00.avi
http://www.doack.campaigncreations.org/Mesk_Soundediting_Ep01.avi

http://www.doack.campaigncreations.org/Mesk_PSP_effectconversion.avi

Q - I have some questions...

A - Feel free to ask some! But please, please for the love of god check out those links in the beginning first and use their appropriate search functions. I won't answer anything I know has already been answered.
Shuffleus
Profile Blog Joined November 2008
Australia764 Posts
June 02 2009 06:53 GMT
#2
Holy shit.


Goodbye 1/8 beta keys... *sniff*
| QuanticGaming.com | There is no greater feeling then to find order in the chaos, as you slip the puzzle pieces in place.
Grobyc
Profile Blog Joined June 2008
Canada18410 Posts
June 02 2009 06:57 GMT
#3
On June 02 2009 15:53 MooiSh wrote:
Holy shit.


Goodbye 1/8 beta keys... *sniff*

^
O_O Seriously, I can't win this guide thing lol...

Either way, crazy ass guide man. Like you said, it's not a hobby, it's a devotion, so I'm not too sure I'll actually end up trying this out but that's some pretty insane stuff!
If you watch Godzilla backwards it's about a benevolent lizard who helps rebuild a city and then moonwalks into the ocean.
Perguvious
Profile Blog Joined November 2008
United States1783 Posts
June 02 2009 06:58 GMT
#4
wow. amazing guide.

...AMAZING
2nd1rst
Profile Joined April 2009
United States40 Posts
June 02 2009 07:03 GMT
#5
On June 02 2009 15:53 MooiSh wrote:
Holy shit.


Goodbye 1/8 beta keys... *sniff*


I'd say 2/8. This and the online poker guide have been really interesting and informative.
d3_crescentia
Profile Blog Joined May 2009
United States4054 Posts
June 02 2009 07:08 GMT
#6
Awsome guide.

Man, I used to be into modding SC like 4 years ago... it's funny looking at DatEdit and thinking about how it reminds me of Arsenal back in the day. Is it still possible to make custom buttons/whatever happened to StarGraft?
once, not long ago, there was a moon here
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
Last Edited: 2009-06-02 07:11:04
June 02 2009 07:10 GMT
#7
On June 02 2009 16:08 d3_crescentia wrote:
Awsome guide.

Man, I used to be into modding SC like 4 years ago... it's funny looking at DatEdit and thinking about how it reminds me of Arsenal back in the day. Is it still possible to make custom buttons/whatever happened to StarGraft?


The successor to Stargraft is Firegraft. Firegraft is a really late-coming tool, really. I still used Stargraft for the most part using a memgraft converter to mod 1.10 until I managed to get the guy to make me a 1.10 FG. But yeah. Firegraft is a really nice little tool. Doesn't crash like SG always did.
Aqo[il]
Profile Blog Joined April 2009
Israel183 Posts
Last Edited: 2009-06-02 07:16:42
June 02 2009 07:11 GMT
#8
I can't believe you took the time to write a modding guide. Good job lol.

If at least 1 person fully reads this and uses this knowledge to create a mod, I have to say I'd be surprised. Starcraft modding feels like a thing of the past.

Anyway I'm wondering, do you have a download link for ICE? I know IceCC is the popular choice, but I want to have ICE along with DK's extension to it in my PC.

Also, I just skimmed over the guide, but I didn't see anything but using Smacker Tools to create portraits, or TileEdit to edit Terrains. What gives?
Reavers. Lurkers. Vultures. Defilers. Corsairs. Vessels. Why did they remove all the cool units from SC2...?
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
Last Edited: 2009-06-02 07:13:27
June 02 2009 07:12 GMT
#9
ICE is one of those applications I avoid because it corrupts stuff. But if you want it, it should still be available.

http://www.broodwarai.com/tools/ICE.zip

And yeah. SC modding declined many years ago. Now there's just the few, the devoted.
JWD
Profile Blog Joined October 2007
United States12607 Posts
Last Edited: 2009-06-02 07:17:32
June 02 2009 07:13 GMT
#10
holy shit, it's Firkraag!!!!!!!

mad props

edit: and wyverns!

edit 2: + Show Spoiler [no idea what I'm talking about?] +
[image loading]


Firkraag is the Red Dragon from Baldur's Gate II
✌
Aqo[il]
Profile Blog Joined April 2009
Israel183 Posts
Last Edited: 2009-06-02 07:21:47
June 02 2009 07:19 GMT
#11
On June 02 2009 16:12 IskatuMesk wrote:
ICE is one of those applications I avoid because it corrupts stuff. But if you want it, it should still be available.

http://www.broodwarai.com/tools/ICE.zip

And yeah. SC modding declined many years ago. Now there's just the few, the devoted.

Thanks, this is still lacking DK's edit to ICE but nevertheless it's usable.

It's a common misconception by people who don't use ICE a lot that ICE corrupt stuff. After using both ICE and IceCC a lot I learned to understand ICE better and I can avoid having any corruption problems with it very easily. I find it to be a much better way to edit my iscripts, and if I'm making a mod I'll probably use ICE all the way and only use IceCC for the final iscript in rare occasions.

You know what's a modding tool that we really need? Something that converts a long list of BMPs into 8-bit BMPs with SC's palette indexing. I used to have a batch that did it by copy-pasting into Paint repeatedly and that's what I used to create over 200 GRPs of walking units, but now on my new PC I lost all my modding tools and many stuff like that can't be re-acquired which is a real shame ;/
Reavers. Lurkers. Vultures. Defilers. Corsairs. Vessels. Why did they remove all the cool units from SC2...?
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
June 02 2009 07:20 GMT
#12
Eh. I used ICE waaay back in the day and I found that it corrupted stuff. Maybe it's just the way I did things? I find IceCC to be a lot faster to use in any case.
genryou
Profile Blog Joined February 2009
Malaysia390 Posts
June 02 2009 07:24 GMT
#13
You sir deserve an autowin, really terrific guide.
I, Challenge Everything
Aqo[il]
Profile Blog Joined April 2009
Israel183 Posts
Last Edited: 2009-06-02 07:26:22
June 02 2009 07:24 GMT
#14
The thing with ICE is, you have to pay attention to the offsets. Very often different scripts use the same offset, and you can jump to a different offset by just double-clicking the offset of a script.

However, many times one offset contains another inside of it, so you might get into a point where you're editing one offset and it's affecting another, and sometimes you can delete a value that does not even exist to begin with as a result and kinda fuck the script up, for the lack of a better term. But if you keep track of how the offsets are aligned this should never happen and all your editing will happen flawlessly.

It's hard to explain.. just basically after seeing how scripts are aligned with IceCC, ICE makes a lot more sense when you use it.
Reavers. Lurkers. Vultures. Defilers. Corsairs. Vessels. Why did they remove all the cool units from SC2...?
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
Last Edited: 2009-06-02 07:27:33
June 02 2009 07:25 GMT
#15
On June 02 2009 16:19 Aqo[il] wrote:
You know what's a modding tool that we really need? Something that converts a long list of BMPs into 8-bit BMPs with SC's palette indexing. I used to have a batch that did it by copy-pasting into Paint repeatedly and that's what I used to create over 200 GRPs of walking units, but now on my new PC I lost all my modding tools and many stuff like that can't be re-acquired which is a real shame ;/


This is actually really easy. Check out my video tutorials, I cover batch conversion using Paint Shop Pro.

http://www.doack.campaigncreations.org/Mesk_PSP_effectconversion.avi

In short, the record script function in PSP is great and this program is my #1 graphics handler for Starcraft and other games that use special palettes.

Some of my graphics are 1500 frames long and PSP really simplifies dealing with them.
Aqo[il]
Profile Blog Joined April 2009
Israel183 Posts
Last Edited: 2009-06-02 07:30:57
June 02 2009 07:27 GMT
#16
On June 02 2009 16:25 IskatuMesk wrote:
This is actually really easy. Check out my video tutorials, I cover batch conversion using Paint Shop Pro.

http://www.doack.campaigncreations.org/Mesk_PSP_effectconversion.avi

In short, the record script function in PSP is great and this program is my #1 graphics handler for Starcraft and other games that use special palettes.

So will this help me convert, lets say, 306 24-bit renders that I got out of my renderer, into 306 frames that I can stick into RetroGRP or Shadowflare's thing or whatever people use today and get a proper GRP? That's pretty nifty ^^
I might start making GRPs by request again if this really works comfortably.
Reavers. Lurkers. Vultures. Defilers. Corsairs. Vessels. Why did they remove all the cool units from SC2...?
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
June 02 2009 07:29 GMT
#17
Yep. PSP is great for dealing with SC's graphics. It may not be as powerful as photoshop but the simplicity in dealing with palettes makes it a winner in my book.
MoRe_mInErAls
Profile Blog Joined November 2007
Canada1210 Posts
June 02 2009 07:29 GMT
#18
Powerful move, IskatuMesk. It appears I must resort to my final weapon..

My guide to the incomparable + Show Spoiler +
Pressure Zerg
saikeraku
Profile Joined April 2009
Canada2933 Posts
June 02 2009 07:49 GMT
#19
Great guide. You deserve that beta key!
GHOSTCLAW
Profile Blog Joined February 2008
United States17042 Posts
June 02 2009 08:17 GMT
#20
That is an amazing amazing guide. Nice work.
PhotographerLiquipedia. Drop me a pm if you've got questions/need help.
1 2 3 Next All
Please log in or register to reply.
Live Events Refresh
OSC
13:00
King of the Hill Weekly #213
CranKy Ducklings64
Liquipedia
WardiTV Invitational
11:00
WardiTV June Group D & 1/2C
MaxPax vs Spirit
Krystianer vs SpiritLIVE!
YoungYakov vs MaxPax
WardiTV1022
IndyStarCraft 239
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
IndyStarCraft 239
ProTech88
StarCraft: Brood War
Britney 34865
Calm 11219
firebathero 6215
Hyuk 919
EffOrt 825
Stork 421
Mini 363
Larva 331
Zeus 313
ZerO 279
[ Show more ]
actioN 276
Shuttle 261
Light 195
Rush 114
Dewaltoss 111
PianO 101
ToSsGirL 68
hero 59
Sea.KH 52
Barracks 39
sorry 38
[sc1f]eonzerg 34
sas.Sziky 23
HiyA 18
sSak 18
scan(afreeca) 13
IntoTheRainbow 12
Nal_rA 12
SilentControl 10
Noble 10
ajuk12(nOOB) 5
ivOry 4
Dota 2
Gorgc4207
qojqva2397
XcaliburYe309
syndereN253
boxi9852
Counter-Strike
olofmeister2444
byalli233
Super Smash Bros
C9.Mang0496
Westballz37
Other Games
singsing2485
B2W.Neo561
Fuzer 354
DeMusliM315
crisheroes296
hiko257
elazer191
ArmadaUGS130
XaKoH 123
Liquid`VortiX93
djWHEAT66
KnowMe47
QueenE46
ZerO(Twitch)24
Organizations
Dota 2
PGL Dota 2 - Main Stream6767
StarCraft: Brood War
lovetv 15
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 13 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• WagamamaTV440
League of Legends
• Nemesis8081
• Jankos2429
Upcoming Events
BSL 2v2 ProLeague S3
5h 15m
Korean StarCraft League
13h 15m
SOOP
19h 15m
sOs vs Percival
CranKy Ducklings
20h 15m
WardiTV Invitational
21h 15m
Cheesadelphia
1d 1h
CSO Cup
1d 3h
BSL: ProLeague
1d 4h
Hawk vs UltrA
Sziky vs spx
TerrOr vs JDConan
GSL Code S
1d 18h
Rogue vs herO
Classic vs GuMiho
Sparkling Tuna Cup
1d 20h
[ Show More ]
BSL: ProLeague
2 days
Bonyth vs Dewalt
Cross vs Doodle
MadiNho vs Dragon
Replay Cast
2 days
Wardi Open
2 days
Replay Cast
3 days
Replay Cast
3 days
RSL Revival
3 days
Cure vs Percival
ByuN vs Spirit
RSL Revival
4 days
herO vs sOs
Zoun vs Clem
Replay Cast
5 days
The PondCast
5 days
RSL Revival
5 days
Serral vs SHIN
Solar vs Cham
Replay Cast
6 days
RSL Revival
6 days
Reynor vs Scarlett
ShoWTimE vs Classic
Liquipedia Results

Completed

CSL Season 17: Qualifier 2
BGE Stara Zagora 2025
Heroes 10 EU

Ongoing

JPL Season 2
BSL 2v2 Season 3
BSL Season 20
KCM Race Survival 2025 Season 2
NPSL S3
Rose Open S1
CSL 17: 2025 SUMMER
2025 GSL S2
BLAST.tv Austin Major 2025
ESL Impact League Season 7
IEM Dallas 2025
PGL Astana 2025
Asian Champions League '25
BLAST Rivals Spring 2025
MESA Nomadic Masters
CCT Season 2 Global Finals
IEM Melbourne 2025
YaLLa Compass Qatar 2025
PGL Bucharest 2025

Upcoming

Copa Latinoamericana 4
CSLPRO Last Chance 2025
CSLPRO Chat StarLAN 3
K-Championship
SEL Season 2 Championship
Esports World Cup 2025
HSC XXVII
Championship of Russia 2025
Murky Cup #2
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
FISSURE Playground #1
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.