New to Scripting - Help with script shell please?

GPC2 script programming for Titan Two. Code examples, questions, requests.

New to Scripting - Help with script shell please?

Postby anurak_eso » Mon Jul 26, 2021 8:40 pm

Hello,

I am trying to create a toggle attack combo. I was wondering if it can toggle to start run, and then loop until a second combo series is activated, and then that loops until the script is toggled off?

Toggle to start combo (PS4_TOUCH)
Combo Series A: Loop until combo swap activates.
-- Series of combinations --
R2 Square R2 Triangle R2 Circle L Stick Press
R2 L1+R1 R2 R1 R2 Circle R2 Circle R2 Circle R2 Circle R2 R1 L Stick Press
R2 Square R2 Triangle R2 Circle R2 L1 L Stick Press
R2 R1 R2 Triangle R2 Circle R2 Circle R2 Circle R2 R1 L Stick Press

Swap to combo B: (D PAD RIGHT)
Combo Series B: Loop until toggle off
-- Series of combinations --
R2 Square R2 Triangle R2 L1 L Stick Press
R2 L1+R1 R2 R1 R2 Square R2 Square R2 Square R2 Square R2 R1 L Stick Press
R2 Square R2 Triangle R2 L1 L Stick Press
R2 R1 R2 Triangle R2 Square R2 Square R2 Square R2 R1 L Stick Press

Toggle to stop (PS4_TOUCH)

If such a thing is doable, I would appreciate some helpings on the shell of thiws script and I can fiddle with the series of combo attacks and timings itself since that can be quite tedious.

Appreciate it!
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby Scachi » Mon Jul 26, 2021 10:51 pm

New to scripting / programming in general ? you should start with more simple stuff first, read the scripting section on how to use the GPC script IDE and read the examples
https://www.consoletuner.com/wiki/index ... examples_1
when you know how to lookup the functions used and understand most/all examples you may be ready to do more advanced stuff.

It all depends on your logic. use some flags to step through your logic handle them to do the actions you want
pseudo code, won't compile:
you will also need to take into account that your running actions of step 1 do not interfere with step 2 so you may need to check for running combos or step some running ones or whatever.

Code: Select all
bool enabled;
int step=0;
 
main {
  if (event_active(touch)) {
    enabled=!enabled;
    if (enabled) step=1;
    else step = 0;
  }
 
  if (step==1) {
     //actions for step 1
 
     // to change to step 2
     if (get_val(R2) && event_active(Square)) step = 2;
  }
 
  if (step==2) {
 
  }
}
 

something like that
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: New to Scripting - Help with script shell please?

Postby anurak_eso » Tue Jul 27, 2021 12:03 am

Hey scachi, thank you very much for helpers. I’ll take a look. I did read up on a log of the wiki, but still trying to figure it all out. Appreciate your help!
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby anurak_eso » Tue Jul 27, 2021 1:53 pm

I've updated this code and have it running well. I was hoping for some futher pointers on making "Step 1" loop once and auto progress to "Step 2." Basically I've defined Loop = 1 in the header, but not sure where to implement the combo loop actions.

Code: Select all
 
#pragma METAINFO("Combo Series", 1, 0, "Anurak with Scachi Help")
#include <ps4.gph>
#define    LOOP 1
bool enabled;
int step=0;
 
main {
  if (event_active(PS4_L3) && time_release(PS4_L3) < 200) {
    enabled=!enabled;
    if (enabled) step=1;
    else step=0;
  }
 
  if (step==1) {
     //actions for step 1 Loop Once
     combo_run(Combo1);
  }
 
  if (step==2) {
     //actions for step 2 Loop Until User Input
     combo_run(Combo2);
  }
 
  if (step==3) {
     //actions for step 3 Loop Until User Input
     combo_run(Combo3);
  }
}
 
combo Combo1 {
//Actions for combo
      set_val(PS4_L1,100); wait(50);
      set_val(PS4_L1,0); wait(850);
 
     // to change to step 2 (Need to make progress to Step 2)
     if (event_active(PS4_L3)) step = 2;
  }
 
combo cAttack {
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 2 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); set_val(PS4_R1,100); wait (850);
     set_val(PS4_L1,0); set_val(PS4_R1,0);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 3 - Backbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); wait(50);
     set_val(PS4_L1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 4 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     // to change to step 3
     if (event_active(PS4_L3)) step = 3;
  }
 
combo cExecute {
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     // to change to step 0
     if (event_active(PS4_L3)) step = 0;
  }
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby anurak_eso » Tue Jul 27, 2021 1:56 pm

I've updated this code and have it running well. I was hoping for some futher pointers on making "Step 1" loop once and auto progress to "Step 2." Basically I've defined Loop = 1 in the header, but not sure where to implement the combo loop actions.

Code: Select all
 
#pragma METAINFO("Combo Series", 1, 0, "Anurak with Scachi Help")
#include <ps4.gph>
#define    LOOP 1
bool enabled;
int step=0;
 
main {
    if (event_active(PS4_L3) && time_release(PS4_L3) < 200) {
    enabled=!enabled;
    if (enabled) step=1;
    else step=0;
  }
 
  if (step==1) {
     //actions for step 1 Loop Once
     combo_run(Combo1);
  }
 
  if (step==2) {
     //actions for step 2 Loop Until User Input
     combo_run(Combo2);
  }
 
  if (step==3) {
     //actions for step 3 Loop Until User Input
     combo_run(Combo3);
  }
}
 
combo Combo1 {
      //Actions for combo
      set_val(PS4_L1,100); wait(50);
      set_val(PS4_L1,0); wait(850);
 
     // to change to step 2 (Need to make progress to Step 2)
     if (event_active(PS4_L3)) step = 2;
  }
 
combo Combo2 {
      //Actions for combo
      set_val(PS4_L1,100); wait(50);
      set_val(PS4_L1,0); wait(850)
 
     // to change to step 3
     if (event_active(PS4_L3)) step = 3;
  }
 
combo Combo3 {
      //Actions for combo
      set_val(PS4_L1,100); wait(50);
      set_val(PS4_L1,0); wait(850);
 
     // to change to step 0
     if (event_active(PS4_L3)) step = 0;
  }
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby Scachi » Tue Jul 27, 2021 2:22 pm

Not sure what you are trying to do.
If you always want the combo1 to only run once and auto progress to step 2 you can add a
step = 2; wait(0);
at the end of the combo 1 instead of that event_active(PS4_L3)

If you want to be able to adjust the amount of times it should loop with your LOOP you can increase or decrease a counter at the end of the combo1 and check if its equal LOOP and then progress to step = 2
Code: Select all
#define    LOOP    5 // loop 5 times
uint8    iLoop;
 
main {
  if (event_active(BUTTON_16)) iLoop = LOOP; // initiate loop
 
  if (iLoop) { // iLoop is not 0
      combo_run(cLoop);
  }
}
 
combo cLoop {
  set_val(BUTTON_16,100);
  wait(100);             
  set_val(BUTTON_16,0);
  wait(50);             
  iLoop--;
  if (iLoop ==0) step = 2;
  wait(0); // <- important
}
 



having the event_active check in the combo itself will only be able to read that event_active when the wait() times actions have finished, thats like a 1ms window.
you probably want to always check for that event_active outside of the combos and if that happend wait for the combo to finish end then move on to the next step.
Last edited by Scachi on Tue Jul 27, 2021 2:38 pm, edited 3 times in total.
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: New to Scripting - Help with script shell please?

Postby anurak_eso » Tue Jul 27, 2021 2:32 pm

Ah! Thats a much more efficient way to have to play once and progress with "Step=2; Wait(0);" appreciate you taking the time to help very much.
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby Scachi » Tue Jul 27, 2021 2:44 pm

To loop through the step 2 and step 3 I would add a flag like "step2Confirmed" and "step3Confirmed"
then do something like in main
if (step==2 and event_active(PS4_L3)) step2Confirmed=1;

and in your combo2 at the end check for
if (step2Confirmed) step = 3;

this will make sure that the combo finishes before moving on to the next step.

then you can add similar thing for combo3 and more combos.
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: New to Scripting - Help with script shell please?

Postby anurak_eso » Tue Jul 27, 2021 10:22 pm

Got some good progress and learning quite a bit. However the flags you suggested must not be implemented correctly. A couple of issues.

1. Combo 1 runs and stops, doesnt seem to progress to step 2.
2. Step 2 doesnt seem to progress to step 3 when L3 is pressed. Step2Confirm flag must not be correct.

It compiles with no errors. Any pointers on what is wrong here? TY!

Code: Select all
 
#pragma METAINFO("Combo Series", 1, 0, "Anurak with Scachi Help")
#include <ps4.gph>
#define step2Confirmed
#define step3Confirmed
bool enabled;
int step=0;
 
main {
  if (event_active(PS4_L3) && time_release(PS4_L3) < 200) {
     enabled=!enabled;
     if (enabled) step=1;
     else step=0;
  }
 
  if (step==1) {
     //actions for step 1 will run once
     combo_run(cPrebuff);
  }
 
  if (step==2 & event_active(PS4_L3)) {
     //actions for step 2 will loop until user trigger
     step2Confirmed 1;
     combo_run(cAttack);
  }
 
  if (step==3 & event_active(PS4_L3)) {
     //actions for step 3 will loop until user trigger
    step3Confirmed 1;
     combo_run(cExecute);
  }
}
 
combo cPrebuff {
     //Series 1 - Backbar Start
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     //Series 2 - Frontbar
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     //Series 3 - Backbar   
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     // to change to step 2 (Need to make progress to Step 2)
     step = 2; wait(0);
  }
 
combo cAttack {
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 2 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); set_val(PS4_R1,100); wait (850);
     set_val(PS4_L1,0); set_val(PS4_R1,0);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 3 - Backbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); wait(50);
     set_val(PS4_L1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 4 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     // to change to step 3
     if (step2Confirmed 1) step = 3;
  }
 
combo cExecute {
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     // to change to step 0
     if (step3Confirmed 1) step = 0;
  }
 
anurak_eso
Sergeant
Sergeant
 
Posts: 8
Joined: Mon Jul 26, 2021 7:55 pm

Re: New to Scripting - Help with script shell please?

Postby Scachi » Tue Jul 27, 2021 11:49 pm

for changing stuff don't use defines. use variables. use variables for flags. variables of type bool, uint8 or int8
Read https://www.consoletuner.com/wiki/index ... data_types to see the different available types and their value ranges.

you want to loop the cattack combo until you press L3 again, your current logic will only run the combo once when you press L3. event_active is happening only the moment you press that button down and is not repeated while you are keeping that button pressed.

something like that perhaps:
Code: Select all
 
#pragma METAINFO("Combo Series", 1, 0, "Anurak")
#include <ps4.gph>
bool step2Confirmed;
bool step3Confirmed;
bool enabled;
int step=0;
 
main {
  if (event_active(PS4_L3) && time_release(PS4_L3) < 200) {
     enabled=!enabled;
     step=0;
     step2Confirmed=0;
     step3Confirmed=0;
     if (enabled) step=1;
  }
 
  if (step==1) {
     //actions for step 1 will run once
     combo_run(cPrebuff);
  }
 
  if (step==2) {
     //actions for step 2 will loop until user trigger
     combo_run(cAttack);
     if (event_active(PS4_L3)) {
         printf("step2Confirmed");
         step2Confirmed=1;
     }
  }
 
  if (step==3) {
     //actions for step 3 will loop until user trigger
     combo_run(cExecute);
     if (event_active(PS4_L3)) {
         printf("step3Confirmed");
         step3Confirmed=1;
     }
  }
}
 
combo cPrebuff {
      printf("step 1"); wait(0);
     //Series 1 - Backbar Start
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     //Series 2 - Frontbar
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     //Series 3 - Backbar   
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     // to change to step 2 (Need to make progress to Step 2)
     step = 2; wait(0);
  }
 
combo cAttack {
     printf("step 2"); wait(0);
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 2 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); set_val(PS4_R1,100); wait (850);
     set_val(PS4_L1,0); set_val(PS4_R1,0);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 3 - Backbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_L1,100); wait(50);
     set_val(PS4_L1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     //Series 4 - Frontbar
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_TRIANGLE,100); wait(50);
     set_val(PS4_TRIANGLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_CIRCLE,100); wait(50);
     set_val(PS4_CIRCLE,0); wait(850);
 
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_R1,100); wait(50);
     set_val(PS4_R1,0); wait(850);
 
     set_val(PS4_R3,100); wait(50);
     set_val(PS4_R3,0); wait(850);
 
     // to change to step 3
     if (step2Confirmed) step = 3;
     wait(0);
  }
 
combo cExecute {
     printf("step 3"); wait(0);
     //Series 1 - Backbar Start
     set_val(PS4_R2,100); wait(50);
     set_val(PS4_R2,0); wait(50);
     set_val(PS4_SQUARE,100); wait(50);
     set_val(PS4_SQUARE,0); wait(850);
 
     // to change to step 0
     if (step3Confirmed) step = 0;
    wait(0);
  }
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Next

Return to GPC2 Script Programming

Who is online

Users browsing this forum: Google [Bot] and 39 guests

cron