<bullet_pattern name="RainCannonPattern"> -- defines the pattern and names it
<bullet speed="1200" angle="0" shot_type="HexishellEmblazonedYellow"> --defines a new bullet with a speed (how fast it goes), angle (what direction it goes), and shot_type (color, hitbox).
<wait time="0.35" /> --wait for 350 miliseconds
<spawn> -- create a new bullet patttern
<bullet_pattern> --specify the new bullet_pattern to use
$CircleRung_Terrain A=0 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0 SCALE=0.66 --use a predefined bullet pattern CircleRung_Terrain with the variables listed. I'll talk about this below.
$CircleRung_Terrain A=15 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.001 SCALE=0.66
$CircleRung_Terrain A=30 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.002 SCALE=0.66
$CircleRung_Terrain A=45 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.003 SCALE=0.66
$CircleRung_Terrain A=60 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.004 SCALE=0.66
$CircleRung_Terrain A=75 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.005 SCALE=0.66
$CircleRung_Terrain A=90 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.006 SCALE=0.66
$CircleRung_Terrain A=105 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.007 SCALE=0.66
$CircleRung_Terrain A=120 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.008 SCALE=0.66
$CircleRung_Terrain A=135 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.009 SCALE=0.66
$CircleRung_Terrain A=150 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.01 SCALE=0.66
$CircleRung_Terrain A=165 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.011 SCALE=0.66
$CircleRung_Terrain A=180 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.012 SCALE=0.66
$CircleRung_Terrain A=195 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.013 SCALE=0.66
$CircleRung_Terrain A=210 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.014 SCALE=0.66
$CircleRung_Terrain A=225 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.015 SCALE=0.66
$CircleRung_Terrain A=240 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.016 SCALE=0.66
$CircleRung_Terrain A=255 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.017 SCALE=0.66
$CircleRung_Terrain A=270 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.018 SCALE=0.66
$CircleRung_Terrain A=285 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.019 SCALE=0.66
$CircleRung_Terrain A=300 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.02 SCALE=0.66
$CircleRung_Terrain A=315 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.021 SCALE=0.66
$CircleRung_Terrain A=330 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.022 SCALE=0.66
$CircleRung_Terrain A=345 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.023 SCALE=0.66
</bullet_pattern> --close the bullet pattern
</spawn> --close the spawn
<die sounds_to_pick_from_when_action_starts="AnyWeapons/HeavyElectricEnergy1,AnyWeapons/HeavyElectricEnergy2"/> --add a sound effect to killing things
</bullet> -- close the bullet
</bullet_pattern> -- close the bullet pattern
<var name="CircleRung_Terrain"> --create a bullet variable definition
<bullet angle="0" speed="0" shot_type="Invisible" damage_mult="0" never_collides_with_terrain="false"> --start with a bullet definition, shot_type in
<wait time="[DELAY]"/>
<die />
<spawn>
<bullet_pattern>
<bullet angle="[A]" speed="[SPEED]" shot_type="[SHOT_TYPE]" damage_mult="0.5" never_collides_with_terrain="false">
<wait time="[TIME]"/>
<die />
</bullet>
</bullet_pattern>
</spawn>
</bullet>
</var>
<var name="NewCircleRung_Terrain">
<bullet angle="[A]" speed="[SPEED]" shot_type="[SHOT_TYPE]" damage_mult="0.5" never_collides_with_terrain="false">
<wait time="[TIME]"/>
<spawn>
<bullet_pattern>
$NewCircleRungShot_Terrain A=0 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=15 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=30 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=45 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=60 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=75 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=90 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=105 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=120 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=135 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=150 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 CALE=0.66
$NewCircleRungShot_Terrain A=165 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=180 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=195 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=210 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=225 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=240 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=255 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=270 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=285 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=300 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=315 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=330 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
$NewCircleRungShot_Terrain A=345 SHOT_TYPE="[SHOT_TYPE2]" SPEED=100 TIME=1 SCALE=0.66
</bullet_pattern>
</spawn>
<die />
</bullet>
</var>
<var name="NewCircleRungShot_Terrain">
<bullet angle="[A]" speed="[SPEED]" shot_type="[SHOT_TYPE2]" damage_mult="0.5" never_collides_with_terrain="false">
<wait time="[TIME]"/>
<die />
</bullet>
</var>
<bullet_pattern name="NewRainCannonPattern">
<bullet speed="1200" angle="0" shot_type="HexishellEmblazonedYellow">
<wait time="0.35" />
<spawn>
<bullet_pattern>
$NewCircleRung_Terrain A=0 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=15 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.001 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=30 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.002 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=45 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.003 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=60 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.004 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=75 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.005 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=90 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.006 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=105 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.007 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=120 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.008 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=135 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.009 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=150 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.01 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=165 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.011 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=180 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.012 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=195 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.013 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=210 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.014 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=225 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.015 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=240 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.016 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=255 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.017 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=270 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.018 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=285 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.019 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=300 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.02 SCALE=0.66 SHOT_TYPE2=SpikeBlue
$NewCircleRung_Terrain A=315 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.021 SCALE=0.66 SHOT_TYPE2=SpikeRed
$NewCircleRung_Terrain A=330 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.022 SCALE=0.66 SHOT_TYPE2=SpikeGreen
$NewCircleRung_Terrain A=345 SHOT_TYPE=SpikeYellow SPEED=800 TIME=1 DELAY=0.023 SCALE=0.66 SHOT_TYPE2=SpikeBlue
</bullet_pattern>
</spawn>
<die sounds_to_pick_from_when_action_starts="AnyWeapons/HeavyElectricEnergy1,AnyWeapons/HeavyElectricEnergy2"/>
</bullet>
</bullet_pattern>
Laugh at this... Everything I have done so far has been done in notepad :D
ptarth: I've gotten that much and actually have a functional rain canon on the mech (as a regular weapon not an ammo). I kinda get what's going on with the normal setup there, it's how to get a pattern form a pattern :-\
Notepad.
What.
How.... why.... why?
The delay does do something. It causes the shots to spawn sequentially instead of all at once.
What about something like Visual Studio? That's what I've been using; it's been really great for it.Easy. It's likely a hommage to C++, which is to C what Notepad++ is to Notepad ;).
I'd been using Notepad++ before that (I have NO idea why they called it that, but it's an XML-specific editor), that one is pretty decent, but not as good as VS.
Maybe. It depends on a lot.
Right now I think I have at most 3 bursts on screen at once, and my frames haven't dropped below 40 in play testing.
I think some of your bosses have more shots on screen than I do ;)
Oh, the "system to attach to shot" thing: It goes in the system itself, actually. That's why it doesnt work, and it's why some of the bosses dont use the vars or patterns file whatsoever, because they're just able to attach systems to shots within the systems file alone.
However, if the system you're using this on has a bullet pattern of it's own, it will override this. The bullets it fires, the systems attached to them can have patterns.