Iron Wars development thread (download not available)
- IskatuMesk
- Xel'naga World Shaper
- Posts: 8331
- Joined: Sat Feb 07, 2009 1:40 pm
- Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞా
Re: Take two, this time in space
A wait will stop it from attacking.
target range cond jump does weird stuff (aka ignores the range check) with loading units with transports (if you right click Syrius onto an overlord with drop in AO you're guaranteed to crash eventually), so I'm not sure about that.
/e
On second thought my range check might have failed because it was based on an attack. I think in the movement code it SHOULD stop before it reaches the targeted pick up unit.
target range cond jump does weird stuff (aka ignores the range check) with loading units with transports (if you right click Syrius onto an overlord with drop in AO you're guaranteed to crash eventually), so I'm not sure about that.
/e
On second thought my range check might have failed because it was based on an attack. I think in the movement code it SHOULD stop before it reaches the targeted pick up unit.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
What would be a good range for that? I don't know what the measurement for the trgtrangecondjmp is. If it were by weapon range (going by weapons.dat, which is also twice the number in units.dat) I would probably go for 48-ish, maybe vary the number on each unit based on the size and speed of that unit.
Another idea I'm going to mess with on my warp experiment unit. I'm going to add a nobrkcodestart to the enter warp animation and add a nobrkcodeend to the exit warp animation. What this SHOULD do is make it so you can't give units orders mid-warp since the units are supposedly moving faster than light and communication should be impossible with them.
Another idea I'm going to mess with on my warp experiment unit. I'm going to add a nobrkcodestart to the enter warp animation and add a nobrkcodeend to the exit warp animation. What this SHOULD do is make it so you can't give units orders mid-warp since the units are supposedly moving faster than light and communication should be impossible with them.
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- IskatuMesk
- Xel'naga World Shaper
- Posts: 8331
- Joined: Sat Feb 07, 2009 1:40 pm
- Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞా
Re: Take two, this time in space
140 is the range for Syrius' teleport check, which is a pretty short range.
Be veeery careful with unbreakable code in walk animations, especially with Air units who don't always actually run the walk animation to begin with (this is why the Great Destroyer sometimes "freezes" and stops moving, he needs the walk code to teleport).
Be veeery careful with unbreakable code in walk animations, especially with Air units who don't always actually run the walk animation to begin with (this is why the Great Destroyer sometimes "freezes" and stops moving, he needs the walk code to teleport).
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Hmm... I seem to be doing something wrong because it's not even entering warp in the first place.
Here's what I have right now. Odds are I'm using the trgtrangecondjmp code wrong... But I don't really know how to use it right in the first place.
Here's what I have right now. Odds are I'm using the trgtrangecondjmp code wrong... But I don't really know how to use it right in the first place.
Spoiler
Code: Select all
DropshipWalking:
trgtrangecondjmp 160 DropshipLocal03
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
goto DropshipLocal00
DropshipLocal03:
setflspeed 3200
setvertpos 0
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
DropshipMidwarp:
trgtrangecondjmp 40 DropshipLocal04
goto DropshipMidwarp
DropshipLocal04:
setflspeed 864
setvertpos 0
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
wait 45
goto DropshipLocal00
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- IskatuMesk
- Xel'naga World Shaper
- Posts: 8331
- Joined: Sat Feb 07, 2009 1:40 pm
- Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞా
Re: Take two, this time in space
DropshipMidwarp:
trgtrangecondjmp 40 DropshipLocal04
goto DropshipMidwarp
^ that looks like a wonderful opportunity to crash sc since there isn't a wait between the header and goto.
Target range triggers at that range and anything below it. So Syrius teleports at 140 and any number lower than that.
Full Syrius code to get an idea how the teleport cycle works.
For a warp cycle I imagine at the very start of the walk header you run the range check. If the range check confirms, it jumps to NORMAL movement speed. Otherwise it jumps to warp. Since the range check will check if it's targeting the minimum range you want. In the warp cycle, you constantly check for that same range with wait 1. If the check succeeds, it resumes normal speed.
edit/
Oh, Syrius' teleport doesn't work when moving, only attacking/clicking on friendly unit.
Crap now I forgot how I was going to do that.
/e 2
Okay, here's an alternate idea since I think target range needs an actual target and not the ground.
Have a wait in your movement code. This is the time it will take until the ship starts warp. Then goto warp after the wait completes. Otherwise it moves at normal speed. Walk to idle and idle reset the movement speed.
I am not sure if it's possible to check the range of geometry target or not.
trgtrangecondjmp 40 DropshipLocal04
goto DropshipMidwarp
^ that looks like a wonderful opportunity to crash sc since there isn't a wait between the header and goto.
Target range triggers at that range and anything below it. So Syrius teleports at 140 and any number lower than that.
Full Syrius code to get an idea how the teleport cycle works.
Spoiler
Code: Select all
# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'data\scripts\iscript.bin'
# created on: Thu Nov 22 01:03:17 2007
# ----------------------------------------------------------------------------- #
# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 033 InfestedKerrigan (zerg\uikerr.grp)
.headerstart
IsId 20
Type 26
Init InfestedKerriganInit
Death InfestedKerriganDeath
GndAttkInit InfestedKerriganGndAttkInit
AirAttkInit InfestedKerriganGndAttkInit
SpAbility1 [NONE]
GndAttkRpt InfestedKerriganGndAttkInit
AirAttkRpt InfestedKerriganGndAttkInit
SpAbility2 InfestedKerriganSpAbility2
GndAttkToIdle InfestedKerriganGndAttkToIdle
AirAttkToIdle InfestedKerriganGndAttkToIdle
SpAbility3 [NONE]
Walking InfestedKerriganWalking
Other InfestedKerriganGndAttkToIdle
BurrowInit [NONE]
ConstrctHarvst [NONE]
IsWorking [NONE]
Landing [NONE]
LiftOff [NONE]
Unknown18 [NONE]
Unknown19 [NONE]
Unknown20 [NONE]
Unknown21 [NONE]
Unknown22 [NONE]
Unknown23 [NONE]
Unknown24 [NONE]
Burrow [NONE]
UnBurrow [NONE]
Unknown27 [NONE]
.headerend
# ----------------------------------------------------------------------------- #
InfestedKerriganInit:
imgul09 34 251 251 # InfestedKerriganShad
InfestedKerriganGndAttkToIdle:
tmprmgraphicend
playfram 0x00 # frame set 8
wait 2
playfram 0x11 # frame set 9
wait 2
playfram 0x22 # frame set 10
wait 2
playfram 0x33 # frame set 11
wait 2
playfram 0x44 # frame set 12
wait 2
playfram 0x55 # frame set 13
wait 2
playfram 0x77 # frame set 14
wait 2
playfram 0x88 # frame set 15
wait 2
playfram 0x99 # frame set 15
wait 2
playfram 0xaa # frame set 15
wait 2
playfram 0xbb # frame set 15
wait 2
goto InfestedKerriganGndAttkToIdle
InfestedKerriganDeath:
playsnd 202 # Zerg\InfestedKerrigan\ZDeDth00.WAV
imgol08 333 0 0 # TerranBuildingExplosionmedium (thingy\tBangL.grp)
wait 1
end
InfestedKerriganGndAttkInit:
tmprmgraphicend
__1e_condjmp 25 local02
nobrkcodestart
playsndrand 3 696 697 698
shvertpos 2
playfram 0x1dc # frame set 16
wait 1
playfram 0x1ed # frame set 17
wait 1
playfram 0x1fe # frame set 18
wait 1
playfram 0x20f # frame set 19
wait 1
playfram 0x220 # frame set 20
wait 1
playfram 0x231 # frame set 20
wait 1
playsndrand 3 699 700 701
attack25 1
playfram 0x242 # frame set 20
wait 1
playfram 0x253 # frame set 20
wait 1
playfram 0x264 # frame set 20
wait 1
playfram 0x275 # frame set 20
wait 1
attack25 1
playsndrand 3 699 700 701
playfram 0x286 # frame set 20
wait 1
playfram 0x297 # frame set 20
wait 1
playfram 0x2a8 # frame set 20
wait 1
playfram 0x2b9 # frame set 20
wait 1
playfram 0x2ca # frame set 20
wait 1
playfram 0x2db # frame set 20
wait 1
shvertpos 0
nobrkcodeend
gotorepeatattk
goto InfestedKerriganGndAttkToIdle
local02:
nobrkcodestart
playsnd 691
playfram 0x2ec # frame set 20
wait 1
playfram 0x2fd # frame set 20
wait 1
playfram 0x30e # frame set 20
wait 1
playfram 0x31f # frame set 20
wait 1
playfram 0x330 # frame set 20
wait 1
playfram 0x341 # frame set 20
wait 1
playfram 0x352 # frame set 20
wait 1
playfram 0x363 # frame set 20
wait 1
move 60
playfram 0x374 # frame set 20
wait 1
move 60
playfram 0x385 # frame set 20
wait 1
move 60
playfram 0x396 # frame set 20
wait 1
move 60
playfram 0x3a7 # frame set 20
wait 1
move 60
playfram 0x3b8 # frame set 20
move 60
wait 1
playsnd 692
attack25 1
attack25 1
attack25 1
attack25 1
attack25 1
attack25 1
playfram 0x3c9 # frame set 20
wait 1
playfram 0x3da # frame set 20
wait 1
playfram 0x3eb # frame set 20
wait 1
nobrkcodeend
gotorepeatattk
goto InfestedKerriganGndAttkToIdle
local03:
playfram 0x2ec # frame set 20
wait 1
playfram 0x2fd # frame set 20
wait 1
playfram 0x30e # frame set 20
wait 1
playfram 0x31f # frame set 20
wait 1
playfram 0x330 # frame set 20
wait 1
playfram 0x341 # frame set 20
wait 1
playfram 0x352 # frame set 20
wait 1
playsnd 693
sprol0f 376 0 0
sprol0f 376 0 10
sprol0f 376 10 0
sprol0f 376 10 10
sprol0f 376 -10 -10
sprol0f 376 0 -10
sprol0f 376 -10 0
tmprmgraphicstart
telecycle:
#sprol0f 158 0 0
trgtrangecondjmp 10 local03resume
move 60
wait 1
goto telecycle
local03resume:
tmprmgraphicend
playfram 0x363 # frame set 20
wait 1
move 60
playfram 0x374 # frame set 20
wait 1
move 60
playfram 0x385 # frame set 20
wait 1
move 60
playfram 0x396 # frame set 20
wait 1
move 60
playfram 0x3a7 # frame set 20
wait 1
move 60
playfram 0x3b8 # frame set 20
move 60
wait 1
playsnd 692
attack25 1
attack25 1
attack25 1
attack25 1
playfram 0x3c9 # frame set 20
wait 1
playfram 0x3da # frame set 20
wait 1
playfram 0x3eb # frame set 20
wait 1
gotorepeatattk
goto InfestedKerriganGndAttkToIdle
InfestedKerriganSpAbility2:
tmprmgraphicend
playfram 0x00 # frame set 0
nobrkcodestart
playfram 0x00 # frame set 0
wait 1
playsnd 71 # Bullet\ZGuFir00.wav
playfram 0x11 # frame set 1
wait 1
playfram 0x22 # frame set 2
wait 1
playfram 0x33 # frame set 3
wait 1
playfram 0x44 # frame set 4
wait 1
playfram 0x55 # frame set 5
wait 1
playfram 0x66 # frame set 6
wait 1
playfram 0x77 # frame set 7
castspell
wait 1
playfram 0x88 # frame set 8
wait 1
playfram 0x99 # frame set 9
nobrkcodeend
gotorepeatattk
sigorder 2
goto InfestedKerriganGndAttkToIdle
InfestedKerriganWalking:
tmprmgraphicend
playfram 0xcc # frame set 16
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0xdd # frame set 17
move 4
wait 1
playfram 0xee # frame set 18
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0xff # frame set 19
move 4
wait 1
playfram 0x110 # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x121 # frame set 20
move 4
wait 1
playfram 0x132 # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x143 # frame set 20
move 4
wait 1
playfram 0x154 # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x165 # frame set 20
move 4
wait 1
playfram 0x176 # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x187 # frame set 20
move 4
wait 1
playfram 0x198 # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x1a9 # frame set 20
move 4
wait 1
playfram 0x1ba # frame set 20
move 4
wait 1
trgtrangecondjmp 140 local03
playfram 0x1cb # frame set 20
move 4
wait 1
goto InfestedKerriganWalking
edit/
Oh, Syrius' teleport doesn't work when moving, only attacking/clicking on friendly unit.
Crap now I forgot how I was going to do that.
/e 2
Okay, here's an alternate idea since I think target range needs an actual target and not the ground.
Have a wait in your movement code. This is the time it will take until the ship starts warp. Then goto warp after the wait completes. Otherwise it moves at normal speed. Walk to idle and idle reset the movement speed.
I am not sure if it's possible to check the range of geometry target or not.
Last edited by IskatuMesk on Fri Feb 19, 2010 5:15 pm, edited 1 time in total.
-
- Terran Dropship Flight Attendant
- Posts: 155
- Joined: Mon Jun 25, 2007 2:30 pm
- Location: Santa Cruz, CA
Re: Take two, this time in space
I thought you meant "warp" as in through some kind of physical gate like the nydus canal etc.
If you're just trying to make a unit go really fast while having the graphics disappear, then ya iscript + raw .grp manipulation will give you the desired effect.
Add some trick warp animations as well as a bright streak indicating the direction the unit just warped from. Also the unit should accelerate before warping and decelerate coming out of warp for the full effect.
Maybe a random chance for the ship to get off course or even blow up.
If you're just trying to make a unit go really fast while having the graphics disappear, then ya iscript + raw .grp manipulation will give you the desired effect.
Add some trick warp animations as well as a bright streak indicating the direction the unit just warped from. Also the unit should accelerate before warping and decelerate coming out of warp for the full effect.
![Smiley :)](./images/smilies/smiley.gif)
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Wonderful indeed. Yeah, I caught the missing wait line and added it to the actual code block a few minutes after I posted that part and was too busy trying to fix the code to actually fix the post.
So far I have it to the point where it will enter warp, but won't go very fast since it's trying to pick up speed. I also need to figure out how to make it maintain the warp until it reaches its destination. Right now it's warping, trying to build speed (and not going very fast) then suddenly stopping before any speed can be built up, then starting the process over. And it's supposed to stop the moment it comes out of warp, now I just need to figure out how to make it stay in warp since I can't use trgrangecondjmp for movement without a unit target for its movement.
And yes, I know why it's stopping, I'm just out of ideas on how to make it maintain the warp, that wait code in Local03 is only temporary. If anything, I can make it so it has to warp for a very specific amount of time, but that could cause shorter warps to go too far and longer warps to fall short of their destination.
I think the setflspeed only sets the max speed and not the current speed, meaning it has to accelerate up to that speed. Either that or 32 ticks isn't enough time for it to change speed.
Don't mind the sounds I added, those are just there so I know which code block is being called since they both use the EMP Shockwave visual.
And I was planning on giving one of the factions jump gates, baja.
So far I have it to the point where it will enter warp, but won't go very fast since it's trying to pick up speed. I also need to figure out how to make it maintain the warp until it reaches its destination. Right now it's warping, trying to build speed (and not going very fast) then suddenly stopping before any speed can be built up, then starting the process over. And it's supposed to stop the moment it comes out of warp, now I just need to figure out how to make it stay in warp since I can't use trgrangecondjmp for movement without a unit target for its movement.
And yes, I know why it's stopping, I'm just out of ideas on how to make it maintain the warp, that wait code in Local03 is only temporary. If anything, I can make it so it has to warp for a very specific amount of time, but that could cause shorter warps to go too far and longer warps to fall short of their destination.
I think the setflspeed only sets the max speed and not the current speed, meaning it has to accelerate up to that speed. Either that or 32 ticks isn't enough time for it to change speed.
Don't mind the sounds I added, those are just there so I know which code block is being called since they both use the EMP Shockwave visual.
And I was planning on giving one of the factions jump gates, baja.
Spoiler
Code: Select all
DropshipWalking:
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
wait 32
goto DropshipLocal03
DropshipLocal03:
nobrkcodestart
playsnd 177 # Terran\BATTLE\tbaDth00.wav
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
setflspeed 16400
setvertpos 0
wait 32
goto DropshipLocal04
DropshipLocal04:
setflspeed 0
setvertpos 0
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
playsnd 210 # Terran\Dropship\TDrDth00.wav
wait 72
setflspeed 864
nobrkcodeend
goto DropshipLocal00
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Okay, I tried this instead:
Result was:
Unit started moving.
Unit enters warp with the proper effect and sound.
Unit immediately zooms off in a speed way beyond what I predicted (dropped the number to 20, change not shown on post)
Unit zooms across the map.
Unit gets stuck in corner and can't stop.
I shut StarCraft off, really confused.
If I can figure out how to maintain the warp and allow it to stop when it's supposed ot, then I think I'll have this set.
EDIT: Stupid! STUPID! I forgot about the nobrkcodestart when I got rid of the nobrkcodeend... I fixed it and got a pretty good result now.
Spoiler
Code: Select all
DropshipWalking:
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
wait 64
goto DropshipLocal03
DropshipLocal03:
nobrkcodestart
playsnd 177 # Terran\BATTLE\tbaDth00.wav
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
setflspeed 3200
setvertpos 0
wait 128
goto DropshipMidwarp
DropshipMidwarp:
wait 1
move 30
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
goto DropshipMidwarp
Unit started moving.
Unit enters warp with the proper effect and sound.
Unit immediately zooms off in a speed way beyond what I predicted (dropped the number to 20, change not shown on post)
Unit zooms across the map.
Unit gets stuck in corner and can't stop.
I shut StarCraft off, really confused.
If I can figure out how to maintain the warp and allow it to stop when it's supposed ot, then I think I'll have this set.
EDIT: Stupid! STUPID! I forgot about the nobrkcodestart when I got rid of the nobrkcodeend... I fixed it and got a pretty good result now.
Last edited by Anonymous on Fri Feb 19, 2010 6:48 pm, edited 1 time in total.
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Okay, here's a mini-mod just to show that the warp works and how it works to see what you guys think of it.
Only modded unit is the dropship which has the warp script (and an attack script which is supposed to be for the unit that will be using the script in the main mod.) but no weapons to attack with. It's also going to go a little slower because the script sets its flingy speed at 864 rather than the dropship's default 1400 flingy speed because that's the speed the unit in the mod will be using and I didn't feel like making a separate copy of the script. To get the dropship to warp, you have to get it to move for a certain amount of time. Right before warping, it will begin to accelerate towards a 3200 flingy speed and then warp kicks in before it reaches that speed.
The warp might be a little fast because I was testing this unit on a 256x256 map and my mind might have scaled the speed up with the map size. Part of this is because I want this mod to be played on bigger maps, too.
AND: Sorry for posting three times in a row, just kind of excited that I actually got it working.
Only modded unit is the dropship which has the warp script (and an attack script which is supposed to be for the unit that will be using the script in the main mod.) but no weapons to attack with. It's also going to go a little slower because the script sets its flingy speed at 864 rather than the dropship's default 1400 flingy speed because that's the speed the unit in the mod will be using and I didn't feel like making a separate copy of the script. To get the dropship to warp, you have to get it to move for a certain amount of time. Right before warping, it will begin to accelerate towards a 3200 flingy speed and then warp kicks in before it reaches that speed.
The warp might be a little fast because I was testing this unit on a 256x256 map and my mind might have scaled the speed up with the map size. Part of this is because I want this mod to be played on bigger maps, too.
AND: Sorry for posting three times in a row, just kind of excited that I actually got it working.
You do not have the required permissions to view the files attached to this post.
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- IskatuMesk
- Xel'naga World Shaper
- Posts: 8331
- Joined: Sat Feb 07, 2009 1:40 pm
- Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞా
Re: Take two, this time in space
You are correct, acceleration does not get changed. flingy.dat controls acceleration; you may want to raise it.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
I did away with that problem just by using the move code I saw you using for your Syrius. Right now, all of large ships for the IWE faction enter warp after 425 ticks in the script, they accelerate towards 3200 flingy speed for another 92 ticks then go full warp.
Here's the current warp script. Might tinker with the numbers later, but this is it right now.
Currently the factions long range travel solutions are as follows:
Iron Wolves Empire (Terran): Warp (refer to script above)
Earth Forces (Protoss): Two-way jump gates, might give some units a warp-like ability... Maybe...
Unnamed third faction (Zerg): Special unit, a semi-mobile one-way wormhole generator (recall basically.) This will also be the only unit in the third faction to have warp to make moving it around easier, but the charge time will be higher and it won't go as fast in warp.
Here's the current warp script. Might tinker with the numbers later, but this is it right now.
Spoiler
Code: Select all
DropshipWalking:
imgol 225 0 0 # DropshipGlow (thingy\tdrGlow.grp)
setvertpos 0
wait 425
goto DropshipLocal03
DropshipLocal03: # might add a sound for when it's charging warp
setflspeed 3200
setvertpos 0
wait 92
playsnd 110 # Deflier Attack? (bullet\zdeatt00.wav) might change sound
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp)
imgol 556 0 0 # EMP Shockwave Hit Part 2 (thingy\emp.grp) # makes a boom sound as it goes full warp
goto DropshipMidwarp
DropshipMidwarp:
wait 1
move 25 # Larger units are kind of skippy at this pace, might need to tinker with the number to reduce skipping
imgol 555 0 0 # EMP Shockwave Hit Part 1 (thingy\emp.grp) # makes it blurry as it zooms through space
goto DropshipMidwarp
Iron Wolves Empire (Terran): Warp (refer to script above)
Earth Forces (Protoss): Two-way jump gates, might give some units a warp-like ability... Maybe...
Unnamed third faction (Zerg): Special unit, a semi-mobile one-way wormhole generator (recall basically.) This will also be the only unit in the third faction to have warp to make moving it around easier, but the charge time will be higher and it won't go as fast in warp.
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Another idea I had in mind for the mod regarding addons. I asked about this earlier, but was wondering if it would be possible to give addons an option to dismantle itself and give the player a set amount of resources as well as freeing up the addon slot on that building. I'm going to mess around with addons and morphing in a moment and I wanted to see if you guys had any ideas on how to do this in case addons on morphing buildings doesn't work out well (if at all.)
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Almost ready to let other people try out the first faction of the mod, the Iron Wolves Empire.
List of things I need to do before it is ready:
-Figure out what I'm going to do with the vespene geysers/gas resource system. Probably going to make the geysers into planets and the gas into a credit system. Also probably going to add some kind of credits over time per base and colonized world, but I might have to read up some tutorials on the triggers.
-Finish the graphics and scripts for a few units and buildings.
-Make a space tileset for the mod (I have no idea how to do this one... I have the tools, but don't know how to use them.)
-Balance out unit damage, health and armor numbers a bit more.
-Might need to adjust the numbers for warp since they were made for HUGE (256x256) maps.
-Still need to script the dropship and other transports to eject units on death as soon as I figure out how, if at all possible.
-Figure out why certain defensive buildings are refusing to follow orders
Lastly, an idea to make fights between smaller units look like more than just groups of units piling up and shooting at each other from across an imaginary line. I'm thinking about adding move codes into the attacks for all of the fighters to make things look a bit more like an actual dogfight when flying units are fighting each other. I am most likely not going to do this one, but I thought I would see if it sounded like ti would be "interesting to see" or a "headache to watch."
Also, for the randcondjump code, what does it go by for the chance? Is it a percent chance out of one hundred or one in that many times. Example would to to set the chance to 25 for the attack block to fire an extra missile at the end. Would it be a 1 in 25 chance for an extra missile to fire in an attack block, or would 25 make it a 25% chance?
List of things I need to do before it is ready:
-Figure out what I'm going to do with the vespene geysers/gas resource system. Probably going to make the geysers into planets and the gas into a credit system. Also probably going to add some kind of credits over time per base and colonized world, but I might have to read up some tutorials on the triggers.
-Finish the graphics and scripts for a few units and buildings.
-Make a space tileset for the mod (I have no idea how to do this one... I have the tools, but don't know how to use them.)
-Balance out unit damage, health and armor numbers a bit more.
-Might need to adjust the numbers for warp since they were made for HUGE (256x256) maps.
-Still need to script the dropship and other transports to eject units on death as soon as I figure out how, if at all possible.
-Figure out why certain defensive buildings are refusing to follow orders
Lastly, an idea to make fights between smaller units look like more than just groups of units piling up and shooting at each other from across an imaginary line. I'm thinking about adding move codes into the attacks for all of the fighters to make things look a bit more like an actual dogfight when flying units are fighting each other. I am most likely not going to do this one, but I thought I would see if it sounded like ti would be "interesting to see" or a "headache to watch."
Also, for the randcondjump code, what does it go by for the chance? Is it a percent chance out of one hundred or one in that many times. Example would to to set the chance to 25 for the attack block to fire an extra missile at the end. Would it be a 1 in 25 chance for an extra missile to fire in an attack block, or would 25 make it a 25% chance?
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
- Ardis
- Terran Nuclear Silo Safety Inspector
- Posts: 228
- Joined: Tue Sep 05, 2006 5:03 pm
- Location: Ohio, USA
Re: Take two, this time in space
Okay, one last thing I need help with before I can let anyone else mess with the mod. I have an idea for the gas resource system, but I might need a bit of help getting it to work. I've turned vespene geysers into planets (no sprite yet, have to actually make the planet for it, maybe even find a way to make multiple planets and randomize them to give a bit of variety.)
Anyways, what I'm thinking of doing with the triggers, since I don't know how to really make it work any other way is I'm going to make a long list of triggers saying something along the lines of:
And make a trigger for owning at least 2, 3, 4 and so on for each player with each gas harvester building in mind since each one is another faction's colony (or I might make colonies upgradable)... And making one for bases as well, upgradable bases will gain more resources over time obviously. And gathering units will still be able to pull gas from them as a way to increase your gains from it. Numbers will be adjusted as well depending on how slow or fast it comes out to.
It's gonna be a big headache making all of those triggers, but stuff like Copy, Paste and Replace All (on separate documents) should speed things up a bit. Anyone know how well this would work? Or is there a more efficient way to do something like this?
And yes, I foresee a problem where maps will have a limit to how many planets you will own, probably going to make the triggers run up to sixteen for now and expand it if I think maps need more than sixteen geysers/planets.
Anyways, what I'm thinking of doing with the triggers, since I don't know how to really make it work any other way is I'm going to make a long list of triggers saying something along the lines of:
Code: Select all
Trigger(Player 1):
Conditions:
Command(Player 1, At Least, 1, 110)
Actions:
SetResources(Player 1, Add, 5, Gas)
SetResources(Player 1, Add, 3, Ore)
Wait(5000)
PreserveTrigger()
It's gonna be a big headache making all of those triggers, but stuff like Copy, Paste and Replace All (on separate documents) should speed things up a bit. Anyone know how well this would work? Or is there a more efficient way to do something like this?
And yes, I foresee a problem where maps will have a limit to how many planets you will own, probably going to make the triggers run up to sixteen for now and expand it if I think maps need more than sixteen geysers/planets.
I'm not unstable.
Unstable implies that I could BECOME more dangerous than I am now.
Unstable implies that I could BECOME more dangerous than I am now.
-
- Terran Dropship Flight Attendant
- Posts: 155
- Joined: Mon Jun 25, 2007 2:30 pm
- Location: Santa Cruz, CA
Re: Take two, this time in space
if the gas increases at a constant rate according to how many refineries you own, you could build a macro with poiuy_qwert's fantastic ProTrg. Make a request in his thread (I'm sure there's one here on the program) explaining what it is you want to do and I'm sure he'll gladly respond with the code to make it happen.
Also, not sure why you would need to do this for each player? Seems you could use AllPlayers + CurrentPlayer etc)?
Trigger(AllPlayers)
Commands(Current Player, .....)
You should also look at AdAstras triggers as they use a similar concept with Plantes (Geysers) and payouts according to how many you own. Planar Erratus uses refineries as tax breaks and something that might help you as well. I believe the trigs are even posted here at CC.org.
Good luck w/ your trigs and your mod. This section of CC.org is somewhat a ghost town and nice to see a few still plodding away at the timeless classic that is BWar.
Also, not sure why you would need to do this for each player? Seems you could use AllPlayers + CurrentPlayer etc)?
Trigger(AllPlayers)
Commands(Current Player, .....)
You should also look at AdAstras triggers as they use a similar concept with Plantes (Geysers) and payouts according to how many you own. Planar Erratus uses refineries as tax breaks and something that might help you as well. I believe the trigs are even posted here at CC.org.
Good luck w/ your trigs and your mod. This section of CC.org is somewhat a ghost town and nice to see a few still plodding away at the timeless classic that is BWar.