PDA

View Full Version : IceCC 1.3 tutorials


rubberd91
02-07-2007, 10:09 PM
IceCC 1.3 tutorial
==========================================


Basic Installation
1. Install Java Runtime (latest is preferred)
2. Download IceCC 1.3
3. Unzip into anywhere.
4. Run "IceCCUI.BAT" to start IceCC GUI.





Part I
-------
Making a Dropship attack

Here, I'll teach you how to make a dropship (or any other unit that doesn't attack) attack.


The very first thing to do is to give the dropship a weapon to attack with in DatEdit. (if you don't know how to do this, please PM me)


1. In Units, select Dropship (or any unit you want to make attack).
2. Click "decompile", and then "open in editor". You should get something that looks like this if you opened the dropship:

# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'data\scripts\iscript.bin'
# created on: **YOUR DATE AND TIME HERE**
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 223 Dropship (terran\dropship.grp)
.headerstart
IsId 68
Type 12
Init DropshipInit
Death DropshipDeath
GndAttkInit [NONE]
AirAttkInit [NONE]
Unused1 [NONE]
GndAttkRpt [NONE]
AirAttkRpt [NONE]
CastSpell [NONE]
GndAttkToIdle [NONE]
AirAttkToIdle [NONE]
Unused2 [NONE]
Walking DropshipWalking
WalkingToIdle DropshipWalkingToIdle
SpecialState1 [NONE]
.headerend
# ----------------------------------------------------------------------------- #

DropshipInit:
imgul 224 0 42 # DropshipShad (terran\dropship.grp)
playfram 0x00 # frame set 0
goto DropshipWalkingToIdle

DropshipWalkingToIdle:
setvertpos 1
waitrand 8 10
setvertpos 2
waitrand 8 10
setvertpos 1
waitrand 8 10
setvertpos 0
waitrand 8 10
goto DropshipWalkingToIdle

DropshipDeath:
playsnd 210 # Terran\DROPSHIP\TDrDth00.wav
imgol 332 0 0 # TerranBuildingExplosionsmall (thingy\tBangS.grp)
wait 3
end

DropshipWalking:
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
goto DropshipLocal00

DropshipLocal00:
wait 125
goto DropshipLocal00


3. The reason you can't just make an dropship attack in datedit, is because it doesn't have the iscript coding for attacking yet.
To make the attack script, just add in the things below:

Replace the "[NONE]" next to "GndAttkInit", "AirAttkInit", "GndAttkRpt", and "AirAttkRpt", with "DropshipAttkInit"
Replace the "[NONE]" next to "GndAttkToIdle" and "AirAttkToIdle" with "DropshipWalkingToIdle"

This tells that the dropship can attack without crashing.

Now, in between DropshipDeath and DropshipWalking (ON THE BOTTOM) put in the following code:

DropshipGndAttkInit:
attack
gotorepeatattk
goto DropshipGndAttkToIdle

This code tell what the dropship to do when it attacks. "attack" mean that the dropship should use its air attack on air units, and ground attack on ground units.

Say that you wanted to attack with two different weapons... You would make different air and ground attacks (in DatEdit) and the attack code (in IceCC) would look something like this:

DropshipGndAttkInit:
attackwith 1
wait 9
attackwith 2
gotorepeatattk
goto DropshipGndAttkToIdle

"attackwith 1" is telling the dropship to attack with the ground weapon, "attackwith 2" is telling it to attack with the air weapon.

You should check in DatEdit for it to harm both air and ground.

Now, your Iscript for the dropship should look like this:

# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file '**FILE DECOMPILED**'
# created on: **YOUR TIME AND DATE HERE**
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 223 Dropship (terran\dropship.grp)
.headerstart
IsId 68
Type 12
Init DropshipInit
Death DropshipDeath
GndAttkInit DropshipGndAttkInit
AirAttkInit DropshipGndAttkInit
Unused1 [NONE]
GndAttkRpt DropshipGndAttkInit
AirAttkRpt DropshipGndAttkInit
CastSpell [NONE]
GndAttkToIdle DropshipGndAttkToIdle
AirAttkToIdle DropshipGndAttkToIdle
Unused2 [NONE]
Walking DropshipWalking
WalkingToIdle DropshipGndAttkToIdle
SpecialState1 [NONE]
.headerend
# ----------------------------------------------------------------------------- #

DropshipInit:
imgul 224 0 42 # DropshipShad (terran\dropship.grp)
playfram 0x00 # frame set 0
goto DropshipGndAttkToIdle

DropshipGndAttkToIdle:
setvertpos 1
waitrand 8 10
setvertpos 2
waitrand 8 10
setvertpos 1
waitrand 8 10
setvertpos 0
waitrand 8 10
goto DropshipGndAttkToIdle

DropshipDeath:
playsnd 210 # Terran\DROPSHIP\TDrDth00.wav
imgol 332 0 0 # TerranBuildingExplosionsmall (thingy\tBangS.grp)
wait 3
end

DropshipGndAttkInit:
attack
gotorepeatattk
goto DropshipGndAttkToIdle

DropshipWalking:
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
goto DropshipLocal00

DropshipLocal00:
wait 125
goto DropshipLocal0


4. Alright, now save the file, and in IceCC, click the Compiler tab, click "Add" then select "iscript.txt" (or whatever you saved it too) in your IceCC folder directory. Then, check "Display All Warnings" and then click "browse" next to "Save To:" and ALWAYS save it as "iscript.bin" DO NOT REPLACE THE ISCRIPT IN THE ICECC DIRECTORY! and click Compile and you're done with the Iscript!




Part II
-----------------------
Making Buildings Attack

Here, I'll teach you how to make a building attack.

1. The building's Iscript originally has no "...ToIdle" coding or "...AttkInit" Coding. You need to add these codings.

**If you don't know how to add code in please read Part I first**

2. Your coding for the CommandCenter Attacking should or be similar too, this:

The stuff you need to add will be underlined, italics, and bold!
# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'I:\StarCraft modding\My Mods\Modcraft\scripts\Iscript.bin'
# created on: Wed Feb 07 22:55:38 2007
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 275 CommandCenter (terran\control.grp)
.headerstart
IsId 102
Type 20
Init CommandCenterInit
Death CommandCenterDeath
GndAttkInit CommandCenterGndAttkInit
AirAttkInit CommandCenterGndAttkInit
Unused1 [NONE]
GndAttkRpt CommandCenterGndAttkInit
AirAttkRpt CommandCenterGndAttkInit
CastSpell [NONE]
GndAttkToIdle CommandCenterWalking
AirAttkToIdle CommandCenterWalking
Unused2 [NONE]
Walking CommandCenterWalking
WalkingToIdle CommandCenterWalking
SpecialState1 CommandCenterSpecialState1
SpecialState2 [NONE]
AlmostBuilt CommandCenterAlmostBuilt
Built CommandCenterBuilt
Landing CommandCenterLanding
LiftOff CommandCenterLiftOff
IsWorking CommandCenterIsWorking
WorkingToIdle CommandCenterBuilt
WarpIn [NONE]
.headerend
# ----------------------------------------------------------------------------- #

CommandCenterInit:
imgul 277 0 0 # CommandCenterShad (terran\tccShad.grp)
CommandCenterBuilt:
playfram 0
goto CommandCenterWalking

CommandCenterWalking:
wait 125
goto CommandCenterWalking

CommandCenterDeath:
playsnd 7 # Misc\ExploLrg.wav
imgol 334 0 0 # TerranBuildingExplosionlarge (thingy\tBangX.grp)
wait 3
liftoffcondjmp CommandCenterLocal00
lowsprul 274 0 0 # TerranBuildingRubblelarge (thingy\RubbleL.grp)
wait 1
end

CommandCenterLocal00:
wait 1
end

CommandCenterGndAttkInit:
wait 1
attackwith 1
gotorepeatattk
goto CommandCenterWalking

CommandCenterSpecialState1:
playfram 4
goto CommandCenterWalking

CommandCenterAlmostBuilt:
playfram 1
goto CommandCenterWalking

CommandCenterLanding:
nobrkcodestart
wait 18
playsnd 472 # Misc\Land.WAV
playfram 4
wait 5
playfram 3
wait 5
playfram 2
wait 5
playfram 5
wait 5
playfram 0
sigorder 16
nobrkcodeend
goto CommandCenterWalking

CommandCenterLiftOff:
nobrkcodestart
playsnd 471 # Misc\LiftOff.WAV
playfram 5
wait 5
playfram 2
wait 5
playfram 3
wait 5
playfram 4
sigorder 16
nobrkcodeend
goto CommandCenterWalking

CommandCenterIsWorking:
imgol 276 0 0 # CommandCenterOverlay (terran\controlT.grp)
goto CommandCenterWalking


If you did a different building, where "CommandCenter" is where the the building you chose to do is. (If there is additional code, do not delete it)

You basically need to add ...ToIdle and ...AttkInit from the code into other building's code.

Part III
-----------------------
Making Ground Units Attack Air Too


In this section, I'll teach you how to make an tank to attack the ground and the air.

If you remember in Part I, attackwith 1 only shoots the ground weapon, and attackwith 2 only shoots with the air weapon.

The Goliath and the Siege Tank both have turrets to attack with. If you want to make a Siege Tank attack, you need to decompile the script for the turret. (keep in mind that the tank has two types of modes to attack with, Siege Mode and Tank Mode).

For this, I'll decompile the Siege Mode Tank.

It should look like this:

# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'data\scripts\iscript.bin'
# created on: Tue Feb 13 18:00:00 2007
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 254 SiegeTankSiegeTurret (terran\stankt.grp)
.headerstart
IsId 93
Type 14
Init SiegeTank_Siege_TurretInit
Death SiegeTank_Siege_TurretDeath
GndAttkInit SiegeTank_Siege_TurretGndAttkInit
AirAttkInit [NONE]
Unused1 [NONE]
GndAttkRpt SiegeTank_Siege_TurretGndAttkInit
AirAttkRpt [NONE]
CastSpell [NONE]
GndAttkToIdle SiegeTank_Siege_TurretGndAttkToIdle
AirAttkToIdle [NONE]
Unused2 [NONE]
Walking [NONE]
WalkingToIdle SiegeTank_Siege_TurretGndAttkToIdle
SpecialState1 SiegeTank_Siege_TurretGndAttkToIdle
SpecialState2 SiegeTank_Siege_TurretSpecialState2
AlmostBuilt [NONE]
.headerend
# ----------------------------------------------------------------------------- #

SiegeTank_Siege_TurretInit:
playfram 0x11 # frame set 1
wait 1
nobrkcodestart
wait 38
playsnd 318 # Terran\TANK\TTaTra00.WAV
wait 3
playfram 0x22 # frame set 2
wait 3
playfram 0x33 # frame set 3
wait 3
playfram 0x44 # frame set 4
wait 3
playfram 0x55 # frame set 5
wait 3
setfldirect 28
playfram 0x00 # frame set 0
nobrkcodeend
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretGndAttkToIdle:
wait 125
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretDeath:
wait 1
end

SiegeTank_Siege_TurretGndAttkInit:
wait 1
nobrkcodestart
playsnd 96 # Bullet\TTaFi200.wav
imgoluselo 537 2 0 # Unknown537 (thingy\esiFire.grp)
wait 2
attackwith 1
wait 1
playfram 0x00 # frame set 0
nobrkcodeend
gotorepeatattk
ignorerest
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretSpecialState2:
setfldirect 12
playsnd 318 # Terran\TANK\TTaTra00.WAV
playfram 0x55 # frame set 5
wait 3
playfram 0x44 # frame set 4
wait 3
playfram 0x33 # frame set 3
wait 3
playfram 0x22 # frame set 2
wait 3
playfram 0x11 # frame set 1
goto SiegeTank_Siege_TurretGndAttkToIdle



You need to copy the "SiegeTank_Siege_TurretGndAttkInit" to the "AirAttkInit" and the "AirAttkRpt".
You also need to copy the "GndAttkToIdle" to the "AirAttkToIdle" as well.

Instead of "attackwith 1" in the "SiegeTank_Siege_TurretGndAttkInit" code on the bottom, put in "attack" (to attack with either air or ground, depending on the target).

If you want it to do two types of attacks, put in "attackwith 1" and "attack with 2".

Your code should now look like this (depending on which you did):

# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'data\scripts\iscript.bin'
# created on: Tue Feb 13 18:00:00 2007
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 254 SiegeTankSiegeTurret (terran\stankt.grp)
.headerstart
IsId 93
Type 14
Init SiegeTank_Siege_TurretInit
Death SiegeTank_Siege_TurretDeath
GndAttkInit SiegeTank_Siege_TurretGndAttkInit
AirAttkInit SiegeTank_Siege_TurretGndAttkInit
Unused1 [NONE]
GndAttkRpt SiegeTank_Siege_TurretGndAttkInit
AirAttkRpt SiegeTank_Siege_TurretGndAttkInit
CastSpell [NONE]
GndAttkToIdle SiegeTank_Siege_TurretGndAttkToIdle
AirAttkToIdle SiegeTank_Siege_TurretGndAttkToIdle
Unused2 [NONE]
Walking [NONE]
WalkingToIdle SiegeTank_Siege_TurretGndAttkToIdle
SpecialState1 SiegeTank_Siege_TurretGndAttkToIdle
SpecialState2 SiegeTank_Siege_TurretSpecialState2
AlmostBuilt [NONE]
.headerend
# ----------------------------------------------------------------------------- #

SiegeTank_Siege_TurretInit:
playfram 0x11 # frame set 1
wait 1
nobrkcodestart
wait 38
playsnd 318 # Terran\TANK\TTaTra00.WAV
wait 3
playfram 0x22 # frame set 2
wait 3
playfram 0x33 # frame set 3
wait 3
playfram 0x44 # frame set 4
wait 3
playfram 0x55 # frame set 5
wait 3
setfldirect 28
playfram 0x00 # frame set 0
nobrkcodeend
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretGndAttkToIdle:
wait 125
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretDeath:
wait 1
end

SiegeTank_Siege_TurretGndAttkInit:
wait 1
nobrkcodestart
playsnd 96 # Bullet\TTaFi200.wav
imgoluselo 537 2 0 # Unknown537 (thingy\esiFire.grp)
wait 2
attack
wait 1
playfram 0x00 # frame set 0
nobrkcodeend
gotorepeatattk
ignorerest
goto SiegeTank_Siege_TurretGndAttkToIdle

SiegeTank_Siege_TurretSpecialState2:
setfldirect 12
playsnd 318 # Terran\TANK\TTaTra00.WAV
playfram 0x55 # frame set 5
wait 3
playfram 0x44 # frame set 4
wait 3
playfram 0x33 # frame set 3
wait 3
playfram 0x22 # frame set 2
wait 3
playfram 0x11 # frame set 1
goto SiegeTank_Siege_TurretGndAttkToIdle



You told that the AirAttk animation is the same as the GndAttk animation in the iscript. You also told it that the GndAttkToIdle is the same as the AirAttkToIdle.



That's all I'm doing for now... I'll post more later...
I'm always glad to help:) .

raidmax
02-08-2007, 4:22 PM
Nice tutorial, so thats how you did it in modcraft:) Im also glad you came back to the boards;)

MaxedOutBC
02-08-2007, 4:43 PM
Not bad so far. But what i might probably do is to make it more step-be-step. Here you included the entire code, and then included he entire instructions. You don't have to do it, but doing it like this is what i reccomend:

--------------------------------------------------------------------------
How to ________________:

Today we will _______________.

First, lets take a look at _________ iscript header.

header code

To make ___________ work, you must add/change ___________. These are what you must add/change.

bit of code

What we did was _________________________. This allows us to _____________.

Now, let us write the code:

bit of code

[And so on. Change wahtever you like around]
--------------------------------------------------------------------------

I am not saying you must do this, but it helps others because they are learing it piece by piece, and it looks more organized.

rubberd91
02-13-2007, 5:20 PM
Alright, (phew) I added and edited to make it slighty easier to understand.

Hopefully this will be helpful to everyone!

thks again!
MaxedOutBC

PLEASE READ THE TUTORIAL ABOVE!!!

Holocaust
06-10-2007, 4:40 PM
Hmmm.
Can't you do all this with the original IceCC?

All that seems different are the header names.

rubberd91
06-10-2007, 5:53 PM
Hmmm.
Can't you do all this with the original IceCC?

All that seems different are the header names.

Yes, you could do the same. I think at the time people were confusing the coding of the original IceCC and the 1.3...

In IceCC 1.3, some headers were renamed and some names were actually added, and also you didn't have to place it in the "C:\" directory

andman3000
06-11-2007, 1:35 AM
Hey is there a tutorial for animation like using playframe 0x00 0 or something like that?

Can you do one?

shadow123456789
01-28-2008, 8:06 PM
IceCC can't decompile anything on mine. It just comes up with a blank error. =(

migidu
02-08-2008, 7:40 AM
IceCC can't decompile anything on mine. It just comes up with a blank error. =(

cause you didnt uncheck the flag as i recall "use default iscript.bin" then browse and choose the iscript.bin you should have copy pasted from the data folder. because you should never edit the original. and same with compiling. uncheck the "merge with default iscript.bin" and choose the iscript.bin you copy. when compiling always add first the iscript.bin then your *.txt files.

Shadowz948
04-29-2008, 1:41 PM
icedc: error: loading config files failed: could not open C:\IceCC\data\arr\units.dat
pops up everytime i try decompiling something in icecc

ShadowFlare
04-29-2008, 9:38 PM
Try getting the IceCC version from my web site (which is what this tutorial is for).

http://sfsrealm.hopto.org/dwnload.html#IceCC

Shadowz948
04-30-2008, 2:45 PM
When i do everything it says i get an error that says unalbe to find label name dropshipgndattktoidle

Also when i save it what do i do to use it

ForTheSwarm
06-11-2008, 9:19 PM
I keep getting the error message "cannot find script 289" whenever I mess with the iscript, even when I copy paste. Why?

BlademasterSlsh
06-13-2008, 6:30 PM
This may be a stupid question, but nothing I've tried from this tutorial has worked so I better ask anyway.

When adding the iscript.bin into WinMPQ, you add it under script\iscript.bin right?

TheNomad
06-14-2008, 11:48 AM
I keep getting the error message "cannot find script 289" whenever I mess with the iscript, even when I copy paste. Why?

Did you save a game, quit SC, made a new iScript, then loaded the game ?

This may be a stupid question, but nothing I've tried from this tutorial has worked so I better ask anyway.

When adding the iscript.bin into WinMPQ, you add it under script\iscript.bin right?

"scripts", not "script". And you prolly forgot to modify the .dat file.

For more details try my example (http://www.warboards.org/showpost.php?p=391516&postcount=191) of a tutorial.

ForTheSwarm
06-14-2008, 4:08 PM
I just changed the iScript, saved it, added it to the mod, and started a new game.

TheNomad
06-14-2008, 4:53 PM
Then you probably assigned a wrong script ID.

BlademasterSlsh
06-14-2008, 5:46 PM
Then you probably assigned a wrong script ID.

Wait, what?

TheNomad
06-14-2008, 6:15 PM
Each iScript has its own UNIQUE id.

ForTheSwarm
06-14-2008, 6:29 PM
I'm pretty sure I didn't assign the wrong ID.

TheNomad
06-14-2008, 7:25 PM
Did you compile it with a default iScript.bin as well ? If the file has only YOUR script and not any other ... then this might be a reason.

BlademasterSlsh
06-14-2008, 7:35 PM
... This is the first I've heard of it, so I'm 99% positive this is the unseen error both of us are getting! How do you compile it with (a copy) of the default iscript.bin?

ForTheSwarm
06-14-2008, 8:15 PM
I didn't compile it with a default one because I thought the tutorial said not to. I'll try that.

TheNomad
06-15-2008, 3:14 AM
In order to ALWAYS have the latest version of iScript.bin (say Blizzard fixed a bug f.e.), extract it from the latest patch_rt.mpq.
Next backup your original iScript file from IceCC\Data\Scripts to smth like iScript.org or whatever. Not that important, but you never know when Blizz will break compatibility. After that put your new iScript.bin there.

And when you compile... say you make a folder called "Compile" inside your IceCC folder and you use a file called Input.txt for your own code. That's what I do so that I just run a batch file and automatizes the compile.

Make a batch file with this syntax: (let's assume you have IceCC in D:\Tools\IceCC)

@del "D:\Tools\IceCC\Compiled\iScript.bin"
@"D:\Tools\IceCC\icecc.exe" -o "D:\Tools\IceCC\Compiled\iScript.bin" "D:\Tools\IceCC\Data\Scripts\iScript.bin" "D:\Tools\IceCC\Input.txt"

Notice the quotes and @ sign. Now, press save and save it as say "Compile.bat". Now double click that and it will compile and output it to your compiled folder.

I even go to the lazy extra mile and put the bat on the desktop and have the desktop as my output folder and a shortcut to Input.txt. That way I never have to even bother with IceCC's folder. The only reason I'd do that is IF I needed code from other animation scripts.

That is why DOS > Windows :D

ForTheSwarm
06-15-2008, 11:46 AM
Eh, the dropship still won't attack.

TheNomad
06-15-2008, 2:47 PM
Not even with my tutorial ? So far nobody said a bad thing about mine and all got it to work :P

BlademasterSlsh
06-15-2008, 4:29 PM
I still have to double check everything, but I don't think any of your earlier tutorial viewers have been new to iscript. They've all looked at it from a reviewers stand point.

TheNomad
06-15-2008, 7:03 PM
Well, I even commented the code and wrote what to change in DatEdit so even newbies could handle it. So retrace each line and step. (remember to remove my red comments so u can compile, if you will copy-paste).

BlademasterSlsh
06-15-2008, 7:22 PM
DatEdit Weapons, Check and Understood. Needs a weapon to do anything.
Decompile and Edit iscript, Check and Understood. The changes are logical and make sense.
Compile, Check but not understood. I followed the instructions at the end of the tutorial to a T, but since those aren't working, I don't know what is going on. I also don't understand the commands entered into your .bat file, so I'm reluctant to use that method.

Right now I am assuming that I can save iscript.txt as anything I want in any folder I want, so long as I add that file back in when I go to Compile and so long as I save the final product as iscript.bin . I am also assuming that the only file that needs to be added in the Compile section is the file that ICECC spits out at you and that you change. If this is not the case, please tell me how to compile multiple files in ICECC, not DOS. (I have nothing against DOS, but I'm quite fond of GUIs. Besides, I'm more of a visual learner)

Just in case I've completely screwed up somewhere, here is the .txt file I've altered.

TheNomad
06-16-2008, 3:11 AM
Well rest assured that the commands I gave you to compile will not format your PC, steal your TV or make aliens attack you. Ktan is a very good moderator and always sneaks around posts so I know he'd slap me with a tire-iron if I had a "funny" idea to play any format c: jokes (not that I would but you know... hi Ktan btw :P)

As for the commands, a simple do-it-yourself research would explain them. "del" is the ever-unknown command of... "delete". The other is just the syntax to compile. I didn't give you compiling from DOS, but from a DOS prompt console, basically because it is more flexible and faster, the gui might not work if java is not installed or even if it is, it sometimes has classpath env vars errors.

A batch file is simple, has 2 lines and is easily editable. One double click and it deletes the original compiled (not hte default, but the one you compiled prior to this) so the new compiled file can replace it. That is, as opposed to using guis where you double click like crazy until you get to the folder you want... not to mention the hyperspeed of Java :P

All I can say is I gave you a fast and simple compile method on a silver platter, if you are reluctnat to use it, I can't do more for you. If you have any other questions apart from "it doesn't work" (as it seems it is a compile issue on your side), I'd be glad to help.

Anyways, apart from this, then it seems you did all of it properly (?) so all you have to do is then learn to compile from the GUI. It's not that hard, I just dislike java a bit :P Though I use the GUI to decompile scripts.

BlademasterSlsh
06-16-2008, 9:09 AM
I guess my question comes into play when we get to the second line, the one that starts icecc.exe then runs some application via "-o" which does something with the original iscript and the text file, saving it as the same thing that was deleted in step one. I know enough to change the directorys to match where my own ICECC is, but that -o is the one thing that I want to know.

TheNomad
06-16-2008, 1:51 PM
Usage: icecc [-vh] [options] inputfile(s)

Options:

-m merge with the default iscript.bin file
-w display all syntax warnings and errors (usually
only the first 10 lines are displayed)
-o ouputfile compile the inputfiles to outputfile
-c configfile use the configuration file configfile
-r configdir use the configuration directory configdir

Running the exe without params would have shown you what each param does :)

-o is the output file.

BlademasterSlsh
06-16-2008, 10:42 PM
... This is ridiculous. I have 13 attempts at getting a Dropship to attack, and not ONCE have I seen it inflict damage! I tried a different tutorial and had success, but that was only with images, changing the Gemini Missile to have the Nuke explosion.

The attached link is to a video file (61MB zipped, 18 minutes to upload). If anyone sees what I am doing wrong in it, please, let me know. If nothing is wrong... well, at least it will make for a great tutorial... for someone else...

http://www.mediafire.com/?b6mj3mzecgy

(PS: I realize it is only coded to attack ground, attack once, and that you can't actually see Starcraft running do to the color changes. Trust me, the explosions in the back during that part are left over from another attack. I also apologize for the less than perfect video quality, but I had to upload it as a reasonably sized file.)

ForTheSwarm
06-16-2008, 10:58 PM
I think making the dropship attack is a lot harder because it normally doesn't. At least it never crashed the game for me.

TheNomad
06-16-2008, 11:04 PM
You didn't check "merge with default iScript.bin". You just added the .bin file to the list.
The StarCraft game didn't show up properly on Camtasia but you were very inspired to comment in the background cos it showed me the problem. You didn't change the AI of the unit. And the Right-Click Action.

Actually I see now I forgot to add the Right-Click Action thing in my tutorial. Bleh. My bad.
OK Check the tut (http://www.warboards.org/showpost.php?p=391516&postcount=191) again. It's the last line in the Units.dat changes. Also make sure that you have the AIs changed too, but most importantly, the Right-Click Action.

ForTheSwarm
06-16-2008, 11:11 PM
Bleh, I didn't think of changing the AI. >.< Thanks so much! The dropship attacks fine now.

TheNomad
06-16-2008, 11:28 PM
There are many changes one has to do (though some are pre-done), so this is what I mean when I say you guys don't do enough research. I don't mean to sound harsh, but the way I learned was not from tuts. I just checked ALL differences between an attacking and non-attacking unit (including being paranoid enough to check all tabs).

Tutorials are a nice source to learn, but I don't think it's the best. Tutorials (well good ones at least, and I don't mean the kind that say "change this, add this, move this", but those that explain, like my commends on the side of the script) are good mainly for explanations so you can understand why something is as it is, not more. Best way is trial and error and comparing to other units/settings. So you guys should learn a lesson from all this and not rely on tuts that even my so-acclaimed-by-myself-tut (lol modesty mode is off :P) had a flaw apparently (fixed now :P) so I'm not perfect either. So, in this case a good would have been comparing the settings of the Dropship with those of a Marine, for example, or Wraith.

Any more questions, feel free to send me a comment on my profile or a PM, your choice, as I don't want to spam this thread too much.

BlademasterSlsh
06-17-2008, 7:10 AM
HURRAY!!! The madness is over, it works, it works, it works! Thanks for putting up with us Nomad!