Elder Scrolls Online [PS4]- New Script Help!! New User!

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

Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 12:36 am

Hello my new community!

I'm new and pretty foreign to coding or scripting so I'm hoping some of you guys will come together to help me out and also maybe I can begin to understand what I'm doing and start down the road to proficiency.

My objectives for this script are as follows:

Light Attack Weave/Animation Cancel/Block Cancel for each skill/spell.

Example: Press Square Light Attack>Skill/Spell>Block

I also have a Nacon Revolution Unlimited PS4 Controller which has 4 additional buttons which I would like to map full combos too, one for buffs/shields, one full attack combo, Bar Swap Healing, and a BreakFree then Roll Dodge Macro.

For the buff/shield combo I would like the combo to switch to my backbar where the buffs are and auto switch back. Same for healing.

If someone could please help me out with either writing the script or walking me through, I would appreciate it.

If you are familiar with ESO there is now a lock on-ish feature built into ESO by holding R3 it will highlight your target and in crowded situations prioritize your highlighted target with the auto-attacks and spells you are casting. How can this be manipulated or built in to the script or logic as /autolockon or tag/aim maybe after an initial light attack or into the burst combo.

Thank you!!!! Looking forward to working with some of you, I really appreciate you guys taking the time to read this.

Best,

rFA
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby Mad » Wed Sep 04, 2019 12:55 am

We need exact button combinations / time between button presses to be able to help write a script.

Otherwise you could look into recording macros: https://www.consoletuner.com/wiki/index ... ing:macros
ConsoleTuner Support Team || ConsoleTuner Discord || InputSense Discord
Mad
Major General
Major General
 
Posts: 4536
Joined: Wed May 22, 2019 5:39 am

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 11:10 am

Revised Combo List:

Combo 1 LABurstCombo
R2, L1, R2, Square, R2, Triangle, R2(hold 1s/release), circle

Combo 2 Defense
R2, Square, L2, R2, Triangle, L2, R2, Circle, L2, R2, L1, R3

Combo 2 Buffs
R2, Triangle, L2, R2, R1, R3
Last edited by RedactedFA on Wed Sep 04, 2019 6:40 pm, edited 1 time in total.
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby Scachi » Wed Sep 04, 2019 12:23 pm

Here is one example on how the combos will look like. Pressing the Square button will run the combo once.
You can check the Device Monitor to see the buttons getting pressed by the script. If they are pressed to quick for you to see them you can increase the time in "wait(time);" of each their lines.

I am not sure which buttons in your post should be pressed at the same time.
By reading this example combo you should get the idea on how to adjust the combo to do the sequence you want it to do and how to do the others by code then.

Has the Nacon Unlimited build in support for "macros" of one (like really quick press & release) or more buttons at once ?
If this controller only allows to remap them to existing buttons you can't use them to run specific combos.

Code: Select all
#include <ps4.gph>
 
main {
    if (event_active(PS4_SQUARE)) combo_run(Combo1ATK);
    if (Combo1ATK) InputLock(); // as long the combo is running you can set buttons/input not send to the console
        // the combo is still able to press the buttons and send them to the console
}
 
// the buttons/inputs to lock
// set_val(BTNNAME,VALUE)  , VALUE 0 when button should be released, VALUE 100 when button should be pressed
void InputLock() {
    set_val(PS4_SQUARE,0);
    // ... more buttons ?
}
 
//R2, L1, L2, R2, Square, L2, R2, Triangle, L2, R2(hold2s/release), circle, L2, R2
// set_val(BTNNAME,VALUE)  , VALUE 0 when button should be released, VALUE 100 when button should be pressed
// combos:
//     each "wait(time);" line defines one section
//     when the time of one section has elapsed -> the next section gets run
// all buttons/set_val in the same section are pressed at the same time for the time the wait() specifies
combo Combo1ATK {
    set_val(PS4_R2,100); // single button
    wait(50); // 50ms press
    wait(20); // 20ms release : empty section : nothing pressed by code for 20ms
    set_val(PS4_L1,100); // single button
    wait(50); // 50ms press
        wait(20); // 20ms release
    set_val(PS4_L2,100); // two buttons
    set_val(PS4_R2,100); // at the same time
    wait(50); // 50ms
        wait(20); // 20ms release
    set_val(PS4_SQUARE,100); // single button
    wait(50); // press
        wait(20); // release
    set_val(PS4_L2,100); // ...
    set_val(PS4_R2,100); // ...
    wait(50); // press
        wait(20); // release
    set_val(PS4_TRIANGLE,100);
    wait(50); // press
        wait(20); // release
    set_val(PS4_L2,100);
    set_val(PS4_R2,100);
    wait(2000); // 2 seconds == 2000ms
    set_val(PS4_CIRCLE,100);
    wait(50); // press
        wait(20); // release
    set_val(PS4_L2,100);
    set_val(PS4_R2,100);
    wait(50); // press
        wait(20); // release
}
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 3:54 pm

https://dottzgaming.com/eso-guides/gene ... ing-guide/

https://youtu.be/BLZzGoPp9Ug

https://youtu.be/luvtKotfGPQ

Here are a few clips on Animation Canceling in ESO. Maybe you can tell the optimal timing between button presses?
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 4:25 pm

Scachi wrote:I am not sure which buttons in your post should be pressed at the same time.
By reading this example combo you should get the idea on how to adjust the combo to do the sequence you want it to do and how to do the others by code then.


So in the combos I listed above comma's separate individual button presses, a "+" between 2 buttons means they should be pressed/released together, and finally I had hold R2 for 2s on one combo because if you give R2 a quick press/pull it will light attack and if you hold for 1s-3s it will perform a Medium to fully charged Heavy Attack.


Scachi wrote:Has the Nacon Unlimited build in support for "macros" of one (like really quick press & release) or more buttons at once ?
If this controller only allows to remap them to existing buttons you can't use them to run specific combos.


I believe my Nacon only allows for existing controller buttons to be remapped to the 4 shortcut buttons on the controller.
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby Scachi » Wed Sep 04, 2019 4:46 pm

RedactedFA wrote:
Scachi wrote:I am not sure which buttons in your post should be pressed at the same time.
By reading this example combo you should get the idea on how to adjust the combo to do the sequence you want it to do and how to do the others by code then.


So in the combos I listed above comma's separate individual button presses, a "+" between 2 buttons means they should be pressed/released together, and finally I had hold R2 for 2s on one combo because if you give R2 a quick press/pull it will light attack and if you hold for 1s-3s it will perform a Medium to fully charged Heavy Attack.

I am sorry.. your button combos are explained fine.
I didn't see the "+" at first as the first combo isn't using one.

I can't test or optimize this as I don't own the game.
I have changed the code a bit. You can now adjust the wait times in the #define lines at the top of the script to save you from the search/replace times of the whole combo when wanting to test differnt timings.

You can adjust a single press wait line too by adding some time to it, example
wait(WAIT_TAP+40); // press

Code: Select all
#include <ps4.gph>
 
#define WAIT_RELEASE 20 // time the button are released before the next section gets pressed
#define WAIT_TAP 20     // short press
#define    WAIT_PRESS 2000 // long press (charge)
 
main {
    if (event_active(PS4_SQUARE)) combo_run(Combo1ATK);
    if (Combo1ATK) InputLock(); // as long the combo is running you can set buttons/input not send to the console
        // the combo is still able to press the buttons and send them to the console
}
 
// the buttons/inputs to lock
// set_val(BTNNAME,VALUE)  , VALUE 0 when button should be released, VALUE 100 when button should be pressed
void InputLock() {
    set_val(PS4_SQUARE,0);
    // ... more buttons ?
}
 
// set_val(BTNNAME,VALUE)  , VALUE 0 when button should be released, VALUE 100 when button should be pressed
// combos:
//     each "wait(time);" line defines one section
//     when the time of one section has elapsed -> the next section gets run
// all buttons/set_val in the same section are pressed at the same time for the time the wait() specifies
 
//R2, L1, L2, R2, Square, L2, R2, Triangle, L2, R2(hold2s/release), circle, L2, R2
combo Combo1ATK {
    set_val(PS4_R2,100);
    wait(WAIT_TAP); // press
    wait(WAIT_RELEASE); // release : empty section : nothing pressed by code
    set_val(PS4_L1,100);
    wait(WAIT_TAP); // press
    wait(WAIT_RELEASE); // release
    set_val(PS4_L2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_R2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_SQUARE,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_L2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_R2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_TRIANGLE,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_L2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_R2,100);
    wait(WAIT_PRESS); // LONG HOLD : CHARGE
    wait(WAIT_RELEASE); // release
    set_val(PS4_CIRCLE,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_L2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
    set_val(PS4_R2,100);
    wait(WAIT_TAP);
    wait(WAIT_RELEASE);
}
 
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 7:01 pm

Could you add the other 2 combos to this, one set to Triangle and one set to circle?

After I copy/paste this to GPC Script IDE, whats next? Compile? install active work?
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby Scachi » Wed Sep 04, 2019 7:09 pm

RedactedFA wrote:Could you add the other 2 combos to this, one set to Triangle and one set to circle?

After I copy/paste this to GPC Script IDE, whats next? Compile? install active work?

To get you started please read this page: https://www.consoletuner.com/wiki/index ... _scripting
https://www.consoletuner.com/wiki/index ... our_script

I can add them.
You can try to add them yourself as you can compare the existing one to your description.
Copy+modify it to match the other ones. Each section, the set_val() stuff between the wait() lines, should match one section of your ,button, description.
For multiple button pressed at the same time , button+button, just add another set_val to the matching wait section.
User avatar
Scachi
Brigadier General
Brigadier General
 
Posts: 3044
Joined: Wed May 11, 2016 6:25 am
Location: Germany

Re: Elder Scrolls Online [PS4]- New Script Help!! New User!

Postby RedactedFA » Wed Sep 04, 2019 8:10 pm

Scachi wrote:
I can add them.



Excellent :joia: :) I am currently testing the times, and making adjustments. Thanks so much for helping me get started, can't wait till everything is running smooth and flawless. :innocent_smile_1:
User avatar
RedactedFA
Staff Sergeant
Staff Sergeant
 
Posts: 12
Joined: Thu Aug 29, 2019 7:32 pm

Next

Return to GPC2 Script Programming

Who is online

Users browsing this forum: midg3t2 and 241 guests