please help me compress this script
1 post
• Page 1 of 1
please help me compress this script
The bytecode size is 4503 bytes (109.9%). I wish someone would compress it to 100% or even less so that my old device will support it, thanks in advance.
- Code: Select all
//Posted by J-dvictory, a member of the device Community - https://device.com/forums
//Posted : Monday 28th of June, 2021 17:06 UTC
//------------------------------------------------------------------------
define BTN1 = 17; // TRIANGLE, Y
define BTN2 = 18; // CIRCLE, B
define BTN3 = 19; // CROSS, A
define BTN4 = 20; // SQUARE, X
define BTN5 = 3; // R1, RB
define BTN6 = 4; // R2, RT
define BTN7 = 6; // L1, LB
define BTN8 = 7; // L2, LT
define TOUCH = 27; // TOUCH PAD
define UP = 13; // DPAD UP
define DOWN = 14; // DPAD DOWN
define LEFT = 15; // DPAD LEFT
define RIGHT = 16; // DPAD RIGHT
define MOVE_X = 11; // LEFT ANALOG X
define MOVE_Y = 12; // LEFT ANALOG Y
//-----------------------------------------------------
define BACK = 128; // BACK FLAG
define FORWARD = 129; // FORWARD FLAG
// End Flags. 254 and 255 should never be used in the
// data segment for other purposes.
//-----------------------------------------------------
define EOC = 254; // End of Combo
define EOD = 255; // End of Data Segment
//-----------------------------------------------------
define KBD = 10;
data(
EOC,
KBD,
1,BACK,
2,
0,2,
1,BACK,
21,
2,BACK,
DOWN,
2,
0,2,
EOC,
EOD );
int i = -1, b, v;
int back = LEFT, forward = RIGHT;
int button_1, button_2, button_3, button_4, button_5;
int wait_time;
int switch;
int delay_t;
int cancel;
int EndOfCombo;
int CanStart;
int SWITCH;
int double_click;
int time_limit = 150;
int greenlight;
int Spinning_Demon_Left;
int Spinning_Demon_Right;
int EWGF_Left;
int EWGF_Right;
int Leaping_Side_Kick_Left;
int Leaping_Side_Kick_Right;
int Obliteration_Left;
int Obliteration_Right;
int Complicated_Wire_Left;
int Complicated_Wire_Right;
int start_script;
main {
if(get_val(PS4_TOUCH) && event_press(PS4_L1)) start_script=!start_script;
if(start_script) {
// Determine Back and Forward
if(get_val(PS4_L3)) {
back = LEFT; forward = RIGHT;
} else if(get_val(PS4_R3)) {
back = RIGHT; forward = LEFT;
}//----------------------------------------------
// If there is a combo to be executed
if(i >= 0 && delay_t<=0) {
// Execute the combo step-by-step
if(!combo_running(execute_step)) {
if(get_step_values()) {
if(wait_time == 0) {
combo_run(execute_step_no_wait);
} else {
combo_run(execute_step);
}
} else { // the combo finished
i = -1;
}
}
if(cancel==1){
if ( (abs(get_val (9)) <= 20 && abs(get_val (10)) <= 20) && (abs(get_val (11)) <= 20 && abs(get_val (12)) <= 20) ) {
i = -1;
combo_stop(execute_step);
}
}else if(cancel==2){
if (!get_val(PS4_L1) && !get_val(PS4_L2) && !get_val(PS4_R1) && !get_val(PS4_R2) ) {
i = -1;
combo_stop(execute_step);
}
}else if(cancel==3){
if (!get_val(back) ) {
i = -1;
combo_stop(execute_step);
}
}
// Make sure the user inputs does not interfere in the combo
set_val(BTN1 , 0);
set_val(BTN2 , 0);
set_val(BTN3 , 0);
set_val(BTN4 , 0);
set_val(BTN5 , 0);
set_val(BTN6 , 0);
set_val(BTN7 , 0);
set_val(BTN8 , 0);
set_val(UP , 0);
set_val(LEFT , 0);
set_val(RIGHT , 0);
set_val(MOVE_X , 0);
set_val(MOVE_Y , 0);
// if no combo execute - look for combo activation
} else {
// EDIT THIS PART OF SCRIPT for combo run ---------------------------
//////////////////////////////////////////////////////////////////////////
if(double_click > 0) double_click = double_click - get_rtime();
//--sets time to maximum time on click
if(event_press(back) && double_click <= 0) double_click = time_limit;
//--if timer is > 0 2nd click occured before time limit
else if(event_press(back) && double_click > 0) greenlight = TRUE;
else if(get_val(back) <= 0) greenlight = FALSE;
if(greenlight){
set_val(back, 0);
cancel = 3;
if(get_lval(back) && !get_val(PS4_DOWN)) i = get_combo_index(KBD);
}
if(event_press(PS4_L2)) {
combo_run(Tap_1);
combo_run(Tap_2);
combo_run(Tap_3);
combo_run(Tap_4);
}
if(event_press(PS4_L2)) {
combo_run(Tap_5);
}
if(event_press(PS4_R2)) {
combo_run(Tap_6);
combo_run(Tap_7);
combo_run(Tap_8);
combo_run(Tap_9);
}
if(event_press(PS4_R2)) {
combo_run(Tap_10);
}
if (!combo_running(EWGF)) {
if(get_val(PS4_L1)) { EWGF_Left=PS4_LEFT; EWGF_Right=PS4_RIGHT; combo_run(EWGF); }
if(get_val(PS4_R1)) { EWGF_Left=PS4_RIGHT; EWGF_Right=PS4_LEFT; combo_run(EWGF); }
}
if (!combo_running(Spinning_Demon)) {
if(get_val(PS4_L3)) { Spinning_Demon_Left=PS4_LEFT; Spinning_Demon_Right=PS4_RIGHT; combo_run(Spinning_Demon); }
if(get_val(PS4_R3)) { Spinning_Demon_Left=PS4_RIGHT; Spinning_Demon_Right=PS4_LEFT; combo_run(Spinning_Demon); }
}
if (!combo_running(Leaping_Side_Kick)) {
if(get_val(PS4_LY)>= 60) { Leaping_Side_Kick_Left=PS4_RIGHT; Leaping_Side_Kick_Right=PS4_LEFT; combo_run(Leaping_Side_Kick); }
if(get_val(PS4_LY)<= -60) { Leaping_Side_Kick_Left=PS4_LEFT; Leaping_Side_Kick_Right=PS4_RIGHT; combo_run(Leaping_Side_Kick); }
}
if (!combo_running(Obliteration)) {
if(get_val(PS4_LX) <= -70){ Obliteration_Left=PS4_RIGHT; Obliteration_Right=PS4_LEFT; combo_run(Obliteration); }
if(get_val(PS4_LX) >= 70){ Obliteration_Left=PS4_LEFT; Obliteration_Right=PS4_RIGHT; combo_run(Obliteration); }
}
if (!combo_running(Complicated_Wire)) {
if(get_val(PS4_RX) <= -70){ Complicated_Wire_Left=PS4_RIGHT; Complicated_Wire_Right=PS4_LEFT; combo_run(Complicated_Wire); }
if(get_val(PS4_RX) >= 70){ Complicated_Wire_Left=PS4_LEFT; Complicated_Wire_Right=PS4_RIGHT; combo_run(Complicated_Wire); }
}
if(get_val(PS4_SQUARE) && get_ptime(PS4_SQUARE) > 200) {combo_run(Square_Circle);
}
if(get_val(PS4_TOUCH)) combo_run(Heavens_Wrath);
}
}
}
combo EWGF {
set_val(EWGF_Right, 0);
wait(11);
set_val(EWGF_Right, 100);
wait(11);
set_val(EWGF_Right, 0);
wait(11);
set_val(EWGF_Right, 0);
set_val(PS4_DOWN, 100);
wait(20);
set_val(EWGF_Right, 0);
set_val(EWGF_Right, 100);
set_val(PS4_DOWN, 100);
set_val(PS4_TRIANGLE, 100);
wait(11);
}
combo Leaping_Side_Kick {
set_val(Leaping_Side_Kick_Right, 100);
wait (11);
wait (11);
set_val(Leaping_Side_Kick_Right, 100);
wait (11);
wait (11);
set_val(Leaping_Side_Kick_Right, 100);
wait (11);
set_val(PS4_CROSS, 100);
wait (11);
}
combo Spinning_Demon {
set_val(Spinning_Demon_Right, 100);
wait(11);
wait(11);
set_val(PS4_DOWN, 100);
wait(11);
set_val(Spinning_Demon_Right, 100);
set_val(PS4_DOWN, 100);
set_val(PS4_CIRCLE, 100);
wait(200);
}
combo Heavens_Wrath {
set_val(PS4_SQUARE, 100);
set_val(PS4_TRIANGLE, 100);
wait(70);
}
combo Obliteration {
set_val(Obliteration_Right,100);
wait(11);
wait(11);
set_val(Obliteration_Left,100);
wait(11);
set_val(PS4_DOWN,100);
set_val(Obliteration_Left,100);
wait(11);
set_val(PS4_DOWN,100);
wait(11);
set_val(PS4_DOWN,100);
set_val(Obliteration_Right,100);
wait(11);
set_val(Obliteration_Right,100);
wait(11);
set_val(Obliteration_Right,100);
set_val(PS4_TRIANGLE,100);
set_val(PS4_SQUARE,100);
wait(11);
wait(50);
}
combo Complicated_Wire {
set_val(PS4_DOWN, 100);
wait(20);
set_val(PS4_DOWN, 100);
set_val(Complicated_Wire_Left, 0);
set_val(Complicated_Wire_Left, 100);
wait(40);
set_val(Complicated_Wire_Left, 0);
set_val(Complicated_Wire_Left, 100);
wait(10);
set_val(Complicated_Wire_Left, 0);
set_val(Complicated_Wire_Left, 100);
set_val(PS4_SQUARE, 100);
set_val(PS4_CROSS, 100);
wait(40);
set_val(PS4_SQUARE, 100);
set_val(PS4_CROSS, 100);
wait(140);
}
combo Square_Circle {
set_val(PS4_CIRCLE, 100);
set_val(PS4_SQUARE, 100);
wait(100);
}
combo Tap_1 {
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_DOWN, 100);
wait(40);
set_val(PS4_DOWN, 100);
}
combo Tap_2 {
set_val(PS4_DOWN, 0);
wait(80);
set_val(PS4_DOWN, 100);
wait(40);
set_val(PS4_DOWN, 100);
}
combo Tap_3 {
set_val(PS4_LEFT, 0);
wait(80);
set_val(PS4_LEFT, 100);
wait(40);
set_val(PS4_LEFT, 100);
}
combo Tap_4 {
set_val(PS4_LEFT, 0);
wait(100);
set_val(PS4_LEFT, 100);
wait(40);
set_val(PS4_LEFT, 100);
}
combo Tap_5 {
set_val(PS4_LEFT, 0);
wait(10);
set_val(PS4_LEFT, 100);
wait(40);
set_val(PS4_LEFT, 100);
}
combo Tap_6 {
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_DOWN, 100);
wait(40);
set_val(PS4_DOWN, 100);
}
combo Tap_7 {
set_val(PS4_DOWN, 0);
wait(80);
set_val(PS4_DOWN, 100);
wait(40);
set_val(PS4_DOWN, 100);
}
combo Tap_8 {
set_val(PS4_RIGHT, 0);
wait(80);
set_val(PS4_RIGHT, 100);
wait(40);
set_val(PS4_RIGHT, 100);
}
combo Tap_9 {
set_val(PS4_RIGHT, 0);
wait(100);
set_val(PS4_RIGHT, 100);
wait(40);
set_val(PS4_RIGHT, 100);
}
combo Tap_10 {
set_val(PS4_RIGHT, 0);
wait(10);
set_val(PS4_RIGHT, 100);
wait(40);
set_val(PS4_RIGHT, 100);
}
// This combo will run a step with wait
combo execute_step {
set_buttons_values();
wait(wait_time);
set_buttons_values();
}
// This combo will run a step without wait
combo execute_step_no_wait {
set_buttons_values();
}
// Returns the starting index of a combo
function get_combo_index(combo_id) {
i = 0;
while(TRUE) {//-----------------------
v = dbyte(i);
if(v == combo_id) {
return(i + 1);
} else {//====================
while(v != EOC && v != EOD) {//#
i = i + 1;
v = dbyte(i);
}//#
if(v == EOD) break;
else i = i + 1;
}//=============================
}//-----------------------------------
return(-1);
}
// Set the buttons, values and wait time of a step
function get_step_values() {
b = dbyte(i); i = i + 1;
if(b > 5) return(FALSE);
if(b >= 1) {
button_1 = convert_back_forward(dbyte(i)); i = i + 1;
} else { button_1 = -1; }
if(b >= 2) {
button_2 = convert_back_forward(dbyte(i)); i = i + 1;
} else { button_2 = -1; }
if(b >= 3) {
button_3 = convert_back_forward(dbyte(i)); i = i + 1;
} else { button_3 = -1; }
if(b >= 4) {
button_4 = convert_back_forward(dbyte(i)); i = i + 1;
} else { button_4 = -1; }
if(b >= 5) {
button_5 = convert_back_forward(dbyte(i)); i = i + 1;
} else { button_5 = -1; }
wait_time = dbyte(i); i = i + 1;
wait_time = (wait_time - 1) * 10;
if(wait_time < 0) wait_time = 0;
return(TRUE);
}
// If the step has FORWARD and BACK buttons, set the correct value.
function convert_back_forward(button) {
if(button == FORWARD) {
return(forward);
} else if(button == BACK) {
return(back);
}
return(button);
}
// Set the buttons and values, function used on the combos.
function set_buttons_values() {
if(button_1 != -1) set_val(button_1, 100);
if(button_2 != -1) set_val(button_2, 100);
if(button_3 != -1) set_val(button_3, 100);
if(button_4 != -1) set_val(button_4, 100);
if(button_5 != -1) set_val(button_5, 100);
}
-
Gerarkimux - Sergeant First Class
- Posts: 18
- Joined: Sun Jul 24, 2016 4:07 pm
1 post
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 93 guests