<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://staredit.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Creating_an_attack_via_Iscript.bin</id>
		<title>Creating an attack via Iscript.bin - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://staredit.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Creating_an_attack_via_Iscript.bin"/>
		<link rel="alternate" type="text/html" href="https://staredit.net/wiki/index.php?title=Creating_an_attack_via_Iscript.bin&amp;action=history"/>
		<updated>2026-04-07T22:23:48Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.27.7</generator>

	<entry>
		<id>https://staredit.net/wiki/index.php?title=Creating_an_attack_via_Iscript.bin&amp;diff=254&amp;oldid=prev</id>
		<title>DevliN: 1 revision imported: Restoring SC1 backup</title>
		<link rel="alternate" type="text/html" href="https://staredit.net/wiki/index.php?title=Creating_an_attack_via_Iscript.bin&amp;diff=254&amp;oldid=prev"/>
				<updated>2015-03-21T04:37:26Z</updated>
		
		<summary type="html">&lt;p&gt;1 revision imported: Restoring SC1 backup&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 04:37, 21 March 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan='2' style='text-align: center;' lang='en'&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>DevliN</name></author>	</entry>

	<entry>
		<id>https://staredit.net/wiki/index.php?title=Creating_an_attack_via_Iscript.bin&amp;diff=253&amp;oldid=prev</id>
		<title>DevliN at 18:08, 23 November 2012</title>
		<link rel="alternate" type="text/html" href="https://staredit.net/wiki/index.php?title=Creating_an_attack_via_Iscript.bin&amp;diff=253&amp;oldid=prev"/>
				<updated>2012-11-23T18:08:42Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This only covers the IceCC method.&lt;br /&gt;
&lt;br /&gt;
Please note: This tutorial also applies to other units without attacks (for example, the civilian). The shuttle is merely the example used.&lt;br /&gt;
&lt;br /&gt;
==Required tools==&lt;br /&gt;
&lt;br /&gt;
*[[DatEdit]] v1.5&lt;br /&gt;
*[[IceCC]]&lt;br /&gt;
*[[MPQDraft]]&lt;br /&gt;
*[[WinMPQ]]&lt;br /&gt;
&lt;br /&gt;
Knowledge of how to use these tools is assumed. If you do not know how to use the above tools, please read their associated tutorials.&lt;br /&gt;
&lt;br /&gt;
==Iscript.bin editing==&lt;br /&gt;
&lt;br /&gt;
 # ----------------------------------------------------------------------------- #&lt;br /&gt;
 # This header is used by images.dat entries:&lt;br /&gt;
 # 118 Shuttle (protoss\shuttle.grp)&lt;br /&gt;
 .headerstart&lt;br /&gt;
 IsId             157&lt;br /&gt;
 Type             21&lt;br /&gt;
 Init             ShuttleInit&lt;br /&gt;
 Death            ShuttleDeath&lt;br /&gt;
 GndAttkInit      ShuttleAttack   #Ground Attack start-up script&lt;br /&gt;
 AirAttkInit      ShuttleAttack   #Air Attack start-up script&lt;br /&gt;
 Unused1          [NONE]&lt;br /&gt;
 GndAttkRpt       ShuttleAttack   #Repeat sequence handling for the ground attack&lt;br /&gt;
 AirAttkRpt       ShuttleAttack   #Repeat sequence handling for the air attack&lt;br /&gt;
 CastSpell        [NONE]&lt;br /&gt;
 GndAttkToIdle    ShuttleWalkingToIdle   #Reverting from ground attacks to the idle state&lt;br /&gt;
 AirAttkToIdle    ShuttleWalkingToIdle   #Reverting from air attacks to the idle state&lt;br /&gt;
 Unused2          [NONE]&lt;br /&gt;
 Walking          ShuttleWalking&lt;br /&gt;
 WalkingToIdle    ShuttleWalkingToIdle&lt;br /&gt;
 SpecialState1    [NONE]&lt;br /&gt;
 SpecialState2    [NONE]&lt;br /&gt;
 AlmostBuilt      [NONE]&lt;br /&gt;
 Built            [NONE]&lt;br /&gt;
 Landing          [NONE]&lt;br /&gt;
 LiftOff          [NONE]&lt;br /&gt;
 IsWorking        [NONE]&lt;br /&gt;
 WorkingToIdle    [NONE]&lt;br /&gt;
 WarpIn           ShuttleWarpIn&lt;br /&gt;
 .headerend&lt;br /&gt;
 # ----------------------------------------------------------------------------- #&lt;br /&gt;
&lt;br /&gt;
 ShuttleInit:&lt;br /&gt;
   imgul       119 0 42   # ShuttleShad (protoss\shuttle.grp) &lt;br /&gt;
&lt;br /&gt;
 ShuttleWalkingToIdle:&lt;br /&gt;
   playfram    0x00   # frame set 0&lt;br /&gt;
   goto        ShuttleLocal00&lt;br /&gt;
 &lt;br /&gt;
 ShuttleLocal00:&lt;br /&gt;
   setvertpos  1&lt;br /&gt;
   waitrand    8 10&lt;br /&gt;
   setvertpos  2&lt;br /&gt;
   waitrand    8 10&lt;br /&gt;
   setvertpos  1&lt;br /&gt;
   waitrand    8 10&lt;br /&gt;
   setvertpos  0&lt;br /&gt;
   waitrand    8 10&lt;br /&gt;
   goto        ShuttleLocal00 &lt;br /&gt;
&lt;br /&gt;
 ShuttleDeath:&lt;br /&gt;
   playsnd     514   # Protoss\SHUTTLE\PShDth00.WAV&lt;br /&gt;
   imgol       213 0 0   # ProtossBuildingExplosionSmall (thingy\tBangS.grp)&lt;br /&gt;
   wait        3&lt;br /&gt;
   end&lt;br /&gt;
&lt;br /&gt;
 ShuttleWalking:&lt;br /&gt;
   imgol       120 0 0   # ShuttleGlow (thingy\pshGlow.grp)&lt;br /&gt;
   setvertpos  0&lt;br /&gt;
   playfram    0x00   # frame set 0&lt;br /&gt;
   goto        ShuttleLocal01 &lt;br /&gt;
&lt;br /&gt;
 # Called to attack; the &amp;quot;attack&amp;quot; block says something like &amp;quot;attack ground with ground&lt;br /&gt;
 # weapon, air with air weapon&amp;quot;, so it's something like &amp;quot;attack with whatever is handy&amp;quot;.&lt;br /&gt;
 # The command to call a ground attack is &amp;quot;attackwith 1&amp;quot;; &amp;quot;attackwith 2&amp;quot; is used for air&lt;br /&gt;
 # attacks.&lt;br /&gt;
 ShuttleAttack:&lt;br /&gt;
   wait        1&lt;br /&gt;
   attack&lt;br /&gt;
   gotorepeatattk&lt;br /&gt;
   goto        ShuttleLocal01&lt;br /&gt;
&lt;br /&gt;
 #Looping trick for attacks; something like a repeat attack script in some cases (easier to understand if I say it this way)&lt;br /&gt;
 ShuttleLocal01:&lt;br /&gt;
   wait        125&lt;br /&gt;
   goto        ShuttleLocal01&lt;br /&gt;
&lt;br /&gt;
 ShuttleWarpIn:&lt;br /&gt;
   imgol       121 0 0   # Unknown121 (protoss\shuttle.grp)&lt;br /&gt;
   goto        ShuttleLocal01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You should then compile this listing with IceCC.&lt;br /&gt;
&lt;br /&gt;
For information on iscript commands, check the documentation about iscript opcodes provided with ShadowFlare's latest update.&lt;br /&gt;
&lt;br /&gt;
==.DAT editing: units.dat==&lt;br /&gt;
&lt;br /&gt;
1. Go to the Protoss Shuttle (ID 69) and do the following actions in the Basic subtab:&lt;br /&gt;
* Select a ground weapon.&lt;br /&gt;
* Select an air weapon.&lt;br /&gt;
&lt;br /&gt;
This is fairly obvious. What you've just done is given the unit a weapon to use. Now, when you call the attack command, the unit will use the air weapon if its target is an air unit, and the ground weapon if its target is a ground unit. It will also display the weapons on the panel.&lt;br /&gt;
&lt;br /&gt;
2. Go to the AI Script Actions subtab of the Units tab:&lt;br /&gt;
* Set &amp;quot;Computer AI&amp;quot; to &amp;quot;Guard&amp;quot;&lt;br /&gt;
* Set &amp;quot;Human Idle&amp;quot; to &amp;quot;Guard&amp;quot;&lt;br /&gt;
* Set &amp;quot;Return to Idle&amp;quot; to &amp;quot;Guard&amp;quot;&lt;br /&gt;
* Set &amp;quot;Attack Unit&amp;quot; to &amp;quot;Attack Unit&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This is less obvious. What has been done is that you've told the unit how to behave. If it sees an enemy unit, it will attack. If you tell it to attack, it will attack, rather than just moving towards the target.&lt;br /&gt;
&lt;br /&gt;
==Saving your changes==&lt;br /&gt;
&lt;br /&gt;
Open WinMPQ. Now add your changed files. Depending on the file you used, you'll need to input a different folder. To add a file simply drag &amp;amp; drop it on the WinMPQ list. &amp;quot;Units.dat&amp;quot;, should be in the &amp;quot;arr\&amp;quot; folder when prompted. It is not case sensitive, but remember the trailing backslash and drag&amp;amp;drop IScript.bin and save it in the &amp;quot;scripts\&amp;quot; folder. Now save your MPQ as whatever you want. Now you can close WinMPQ and we can move on to the last part of the tutorial.&lt;br /&gt;
&lt;br /&gt;
Using DatEdit or any ICE-ing tool you manage to save your changes in a format StarCraft understands and with WinMPQ you could pack it somewhere StarCraft can find it. The only problem is, StarCraft doesn't know about your changes. In order to tell StarCraft we want to use some changed stuff, we'll need to insert them in StarCraft itself. To do this, we'll use MPQ Draft.&lt;br /&gt;
&lt;br /&gt;
Open MPQ Draft and click Create self-executing MPQ. In this wizard, the first page will ask you for a mod name, the source MPQ file (the one you saved with Units.dat and IScript.bin) and the destination file and path, which will be an exe file. Click Next, select &amp;quot;StarCraft&amp;quot; as the Program and &amp;quot;StarCraft&amp;quot; as the module component. Click Next one more time and then Finish. You can now delete the mpq file with your changes. To test them, simply double-click the exe to start StarCraft and check them out. Remember, playing on Battle.net will drop you, so try it only offline.&lt;br /&gt;
&lt;br /&gt;
[[Category:StarCraft]]&lt;br /&gt;
[[Category:Tutorials]]&lt;br /&gt;
[[Category:Modding]]&lt;/div&gt;</summary>
		<author><name>DevliN</name></author>	</entry>

	</feed>