Staredit Network > Forums > Modding Assistance > Topic: Iscript...
Iscript...
Dec 18 2008, 11:17 am
By: Lunes Madness  

Dec 18 2008, 11:17 am Lunes Madness Post #1



for some time ive learn something in iscript but most are still mystery in me

I always seen this on most of iscripts but i don't know their purpose :><: ..(and also the values next to it if needed)
tmprmgraphicstart and tmprmgraphicend (what happens in the codes bet them?)
trgtrangecondjmp
setfldirect
sigorder
attkshiftproj
imgol and imgul
randcondjmp
nobrkcodestart and nobrkcodeend (what happens in the codes bet them?)
gotorepeatattk ignorerest
turnccwise

and heres something that bugs me aboutc the protoss scout

Code
ScoutAirAttkInit:
    playfram           0x11     # frame set 1
    wait               1
    attackwith         2
    playfram           0x00     # frame set 0
    gotorepeatattk    
    goto               ScoutLocal00
ScoutLocal00:
    wait               125
    goto               ScoutLocal00


i don't know why they can attack 2 times simultanaeously, it only has one attackwith line in the first place. and what is the purpose of ScoutLocal00? why does it have to wait 125 (i don't know how long is 125) and loop to it again :crazy: ? (ive also seen this on some units like battlecruiser)
Sometimes i see playfram in numbers but here its 0x00, what does this 0x00 value means and can i change it to numbers?

i hope someone can help me this time cause i don't think i can solve this by myself :(



None.

Dec 18 2008, 1:45 pm A_of-s_t Post #2

aka idmontie

All iscript opcodes are in the SEN wiki -- just search for them. As for the scout script, that wait 125 is the cooldown animtion since it doesn't use "ignorerest" or anything of that sort, it needs to have a wait period until "gotorepeatattk" kicks in after the scout's cooldown.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 18 2008, 5:43 pm ForTheSwarm Post #3



wait 10 is 1 second in Normal game speed I think.



None.

Dec 18 2008, 7:04 pm poiuy_qwert Post #4

PyMS and ProTRG developer

Numbers starting with 0x (like: 0x00, 0x01, 0xFF) are numbers in Hexadecimal (look it up or use windows calculator to convert from decimal to hexadecimal and vice-versa). Afaik there is no reason to use Hexadecimal, the only thing i can think of is that when working in framesets (up to the 15th at least) its much easier to remember in Hex then Dec (framesets are multiples of 17, so in decimal it would be 17, 24, 41, etc. but with hexadecimal it would be 0x11, 0x22, 0x33, etc.).




Dec 20 2008, 10:57 am Lunes Madness Post #5



uhhh..so in AirAttkInit it will use a frame to attack then gotorepeatattk next then theres a
goto ScoutLocal00 that will wait 125 ticks then loop again to wait 125 ticks... sorry... i it kinda vague to me. what if i change this 125 to 1? and will it be the same if i change this goto local to just ignorereset?

framesets? is it like playfram or something??

how can a scout and a valkyrie shoot two missiles as one hit (like 2missiles, 2missiles)? i tried copying it to a wraith but it still fires one missile at a time (1missile, 1missile)

speaking of valkyrie why it is that sometimes it stops attacking when a lots of action is happening (lets say 4 dozen of mutalisk shoot gluv wurm at the same time).

whats the diff of attack that has nobrkcodestar/nobrkcodeend and has none?

and is there a way to make infested kerrigan attacks more faster. i tried setting its cooldown to 1 at DatEdit but it still looks so slow.

Code
InfestedKerriganGndAttkInit:
    playfram           0x00     # frame set 0
    wait               2
    playfram           0x11     # frame set 1
    wait               2
    playfram           0x22     # frame set 2
    wait               2
InfestedKerriganGndAttkRpt:
    nobrkcodestart    
    playsnd             112     # Bullet\UKiFir00.wav
    playfram           0x33     # frame set 3
    wait               2
    playfram           0x44     # frame set 4
    wait               2
    playfram           0x55     # frame set 5
    wait               2
    playfram           0x66     # frame set 6
    wait               2
    playfram           0x77     # frame set 7
    attackmelee         1 0     # <NONE> (*)
    wait               3
    playfram           0x66     # frame set 6
    wait               2
    playfram           0x55     # frame set 5
    wait               2
    playfram           0x44     # frame set 4
    wait               2
    playfram           0x33     # frame set 3
    wait               2
    nobrkcodeend      
    gotorepeatattk    
    ignorerest        
InfestedKerriganGndAttkToIdle:
    playfram           0x22     # frame set 2
    wait               2
    playfram           0x11     # frame set 1
    wait               2
    playfram           0x00     # frame set 0
    wait               2
    goto               InfestedKerriganWalkingToIdle

(*) will there be diff if i change this thing to attackwith 1?

btw whats the diff of Splash (enemy) and Splash (air)? i avoid using splash (air) coz i still don't know whats its purpose

uhh and lastly what is the unit limit in sc? sometimes theres a phrase that says "cant create more units" at that time i cant build nor train units. is there a way to inc this limit?

sorry if sometimes my questions is best replied with "why don't you try it yourself". after posting this ill work on this stuff and when i still don't get it (which happens most) i go here hoping for answers. thx in advance :)

Post has been edited 1 time(s), last time on Dec 20 2008, 11:04 am by Lunes Madness.



None.

Dec 20 2008, 6:14 pm Hercanic Post #6

STF mod creator, Modcrafters.com admin, CampaignCreations.org staff

Two missiles in one attack for the Goliath, Scout, and Valkyrie are from Weapons.dat. Factor, near the Damage field, controls whether there is one or two projectiles, but no more than two. If you want three or more, you must edit the Iscript to use its weapon x many times at once.

To increase Kerrigan's attack, you want to shorten those waits to something like 1 tick each. That should about double the attack speed.




trgtrangecondjmp = Target Range, Conditional Jump: The animation will jump to the specified code if the target is at x range. Used by the Archon to use two attack animations, one with the beam that connects to the shockwave blast, and another without the beam when the target is too close.

setfldirect = Set Flingy Direction: Not too familiar with this one, but it sets the current direction of the flingy.

sigorder = Signal Order: "Allows the current unit's order to proceed if it has paused for an animation to be completed." So if the animation is wading through twenty 200 tick waits, it can still continue with its order without waiting for the animation.

attkshiftproj = Attack, Shift Projectile: "Creates the weapon flingy at a particular distance in front of the unit."

imgol and imgul = Image Overlay; Image Underlay: "Displays an active image overlay at an animation level higher than the current image overlay, using a LO* file to determine the offset position." and "Displays an active image overlay at an animation level lower than the current image overlay, using a LO* file to determine the offset position." So whether the image created is above or below the image that calls for it.

randcondjmp = Random Conditional Jump: "Random jump, chance of performing jump depends on the parameter." This one is pretty fun. It lets you have the animation jump on chance, rather than as a definate. Some people have used this to make special Critical attack animations possible.

nobrkcodestart and nobrkcodeend (what happens in the codes bet them?) = No Break, Code Start; No Break, Code End: These are useful when you want the the animation to complete no matter what, without interruption from the player. Example: A move order from the player will not execute until the animation reaches the End code.

gotorepeatattk = Go To Repeat Attack: After the Repeat code, but only once the weapon cooldown is finished, will the animation progress to the Repeated Attack animation script. This is different from simply telling the script to go to an offset, because it waits on the weapon cooldown.

ignorerest = Ignore Rest: "Conceptually, this causes the script to stop until the next animation is called."

turnccwise = Turn Counter-clockwise: "Turns the flingy counterclockwise by a particular amount." You see this sort of turning with the idle animations of Terran units, like the Marine waving his gun around.




Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[06:18 am]
Sylph-Of-Space -- No complaints here, i'm just curious!
[11:05 pm]
Ultraviolet -- :wob:
[03:55 pm]
Zoan -- :wob:
[2024-5-18. : 10:34 am]
NudeRaider -- SEN doesn't rely on spammers initiate its sleep cycle. It hat fully automated rest and clean-up phases. Please understand that this is necessary for the smooth operation of the site. Thank you.
[2024-5-18. : 3:45 am]
Sylph-Of-Space -- Does the shoutbox get disabled when there's spammers?
[2024-5-17. : 6:47 am]
NudeRaider -- lil-Inferno
lil-Inferno shouted: nah
strong
[2024-5-17. : 5:41 am]
Ultraviolet -- 🤔 so inf is in you?
[2024-5-17. : 4:57 am]
O)FaRTy1billion[MM] -- my name is mud
[2024-5-17. : 4:35 am]
Ultraviolet -- mud, meet my friend, the stick
[2024-5-16. : 10:07 pm]
lil-Inferno -- nah
Please log in to shout.


Members Online: Roy, NudeRaider