Since everything works now, I want to start learning to write my own scripts, some input would be nice 
Especialy the random command (“Guess” command) is something I need to figure out.
The idea for this script is to have cammy do:
Footsie walk
Randomly poke with cr.HK (Either whiff punish, or since her cr.HK is -8 on block, punish with combo of choice, or simply sweep her.
Jump-in with MK, to Anti Air her.
And a low chance of her doing random spiral arrow (lets say 50% less then the jump-in MK)
Other things I could add:
Even a smaller chance to do random Cannon Spike (say a 5% chance overal)
1, 2 or 3 x jab (and random 1 jab, throw. 2 jabs throw)
Make it so that when ever I do a fireball she has a small chance to do EX Spiral Arrow, to get spacing better. (Fireball being a trigger kinda, but only a small chance lets say 10% of every fireball I throw)
I could ask you to make me scrips, but Id rather make em my self 
But a little help to get started would be great.
I have so many good ideas for this, but scripting is kinda hard for now 
Some things:
Spoiler
#include common.ahk Loads the common.ahk files (should always be included)
do_the_setup()
{
Global
Run := "go"
While(Run = “go”)
{
Random, Guess, 0, 60 (Can you explain please how this works, I have seen 0, 30 as well)
Footsy_Walk() (refers to common.ahk footsie walk script, If I include this, it makes sure the character is doing the footsie walk)
if (Guess > 30) { ; Randomly do cr.mk xx fireball (in order for it to do this less or more frequent, how can I change this?)
push(backward)
Wait(4)
release(backward) ; slight walk back to avoid SRK motion
Cr_MK_xx_Fireball(forward, HP)
Wait(14)
}
else if (Guess < 10) { ; Or randomly do jump in hk (same thing here for less or more frequent)
push(backward)
Wait(6)
release(backward) ; to avoid SRK instead of fireball
Jump(forward)
Wait(20)
push(HK)
Wait(18)
release(HK)
Jump(backward)
}
else
{
; Do nothing
}
}
}
; 2 because my stick is recognisez as the N°2 (no idea why…), joy for Joystick, 8 for button 8 (=HK)
;This syntax listen to the key, here HK on my stick, and do something, here a Sweep for the player that use the keyboard
; So everytime I inout HK the dymmy react with sweep after a 8 frames wait.
2joy8::
Wait(8)
Sweep()
return
; controls for Cancel and side selection
; This launch the setup, L1 button on the stick if you use the keyboard (separate keys that the dummy of course), change every 2joyX to your own keyboard keys
2joy5::
do_the_setup()
return
; This is teh Select button on the stick, and it stop the setup after the dummy finished his actual moves
2joy9::
Run := "stop"
return
; this is how I tell the dummy where I’m at, at his Left or Right so he knwo how to go “forward” and “backward”, keep it like that it’s teh same if you use the keyboard and don’t use the arrow keys for your moves or the dummy’s moves.
LEFT::
forward := LEFT
backward := RIGHT
return
RIGHT::
forward := RIGHT
backward := LEFT
return
Lets say I want to make this for cammy. The idea would be to punish Spiral Arrow’s that I block. Practicing combos is one thing, actually pulling them of for a punish is another thing.
So lets say I want Cammy to do random Spiral Arrow’s
I guess I would 1st have to include Spiral Arrow in the common.ahk file.
}
SpiralArrow(direction, Kick)
{
Global
push(DOWN)
Wait(2)
push(direction)
Wait(2)
push(MK)
Wait(2)
release(DOWN)
release(MK)
release(direction)
Wait(2)
; Against Cammy
; Foosty Walk
; Spiral Arrow
; jump In MK, jump back
; Mission : Try to stay close for pressure, avoid sweep damage, punish random Spiral Arrow’s and anti air her.
#include common.ahk
do_the_setup()
{
Global
Run := "go"
While(Run = “go”)
{
Random, Guess, 0, 60
Footsy_Walk()
if (Guess > 30) { ; Randomly do cr.HK
push(backward)
Wait(4)
release(backward) ; slight walk back to avoid SRK motion
Cr_HK
Wait(14)
}
else if (Guess < 10) { ; Or randomly do jump in mk
push(backward)
Wait(6)
release(backward) ; to avoid SRK instead of fireball
Jump(forward)
Wait(20)
push(MK)
Wait(18)
release(MK)
Jump(backward)
}
else
{
; Do nothing
}
}
}
Now where and how can I fit in the random Spiral Arrow?
My guess would be to put it at the marked (else)
So something like:
Wait(18)
release(MK)
Jump(backward)
}
*else if (Guess < 10) { ;SpiralArrow(direction, Kick) *(What should I set the Guess < 10 to? I want here to do this move not as frequent as the Jump Foward MK, so can I just set it to something like (Guess < 2) for example?
- {*
- Global*
- push(DOWN)*
- Wait(2)*
- push(direction)*
- Wait(2)*
- push(MK)*
- Wait(2)*
- release(DOWN)*
- release(MK)*
- release(direction)*
- Wait(2)*