Demon's Souls

This script helped me to platinum the game Demon's Souls, but I'm sure few will agree with remaps done. I'm adding this script on the base as more to be an example than anything else.
Versionv1.00
AuthorConsoleTuner
Publish DateTue, 5 Apr 2011 - 11:28
Last UpdateTue, 5 Apr 2011 - 11:28
Downloads239
RATE


1

0

Code: Select all
/* *
*  DEMONS SOULS
* ************************************************************* */

 
define DS_MENU_SCRIPT = 1;
                                    // Buttons Assignments
                                    // -----------------------
remap PS3_CIRCLE   -> PS3_SQUARE;   // CIRCLE:   Use Item
remap PS3_SQUARE   -> PS3_R1;       // SQUARE:   Light Attack
remap PS3_R1       -> PS3_R3;       // R1:       Target Lock
remap PS3_R3       -> PS3_TRIANGLE; // R3:       Toggle Holding
remap PS3_TRIANGLE -> PS3_R2;       // TRIANGLE: Heavy Attack
remap PS3_R2       -> PS3_CIRCLE;    // R2:       Roll, Run
                                    // CROSS:    Activation
                                    // L1:       Defend
                                    // L2:       Parry
                                    // -----------------------
 
int sprint = FALSE;
 
init {
    // Visual indication when this script is running.
    set_led(LED_1, 1);
    set_led(LED_2, 1);
    set_led(LED_3, 1);
    set_led(LED_4, 1);
}
 
main {
    // Switch scripts
    if(event_release(PS3_START)) {
        if(get_ptime(PS3_START) < 500) combo_run(Start);
        else combo_run(Select);
    } set_val(PS3_START, 0);
    if(event_release(PS3_SELECT) && get_ptime(PS3_SELECT) < 200) {
        load_script(DS_MENU_SCRIPT);
    } set_val(PS3_SELECT, 0);
 
    // Only use item if button was pressed 100%, to avoid mistakes.
    if(get_val(PS3_CIRCLE) < 100) {
        set_val(PS3_CIRCLE, 0);
    }
 
    // Light Attack Rapidfire
    if(get_val(PS3_SQUARE) == 100) {
        combo_run(LightAttack);
    }
 
    // Heavy Attack Rapidfire
    if(get_val(PS3_TRIANGLE) == 100) {
        combo_run(HeavyAttack);
    }
 
    // Roll
    if(get_val(PS3_R2)) {
        combo_run(Roll);
    } else if(combo_running(Roll)) combo_stop(Roll);
 
    // Counter Attack Combo
    if(get_val(PS3_L2)) {
        combo_run(CounterAttack);
    }
 
    // Sprint Lock
    if(get_val(PS3_LY) <= -90) {
        if(event_press(PS3_R3)) sprint = TRUE;
    } else if(sprint) sprint = FALSE;
    if(sprint) set_val(PS3_R2, 100);
    set_val(PS3_R3, 0);
 
    // L3: Toggle Holding
    if(get_val(PS3_L3)) {
        set_val(PS3_R3, 100);
    }
}
 
combo Start {
    set_val(PS3_START, 100);
    wait(40);
}
 
combo Select {
    set_val(PS3_SELECT, 100);
    wait(40);
}
 
combo LightAttack {
    set_val(PS3_SQUARE, 100);
    wait(40);
    set_val(PS3_SQUARE, 0);
    wait(20);
    set_val(PS3_SQUARE, 0);
}
 
combo HeavyAttack {
    set_val(PS3_TRIANGLE, 100);
    wait(40);
    set_val(PS3_TRIANGLE, 0);
    wait(20);
    set_val(PS3_TRIANGLE, 0);
}
 
combo Roll {
    set_val(PS3_R2, 100);
    wait(40);
    set_val(PS3_R2, 0);
    wait(20); // 760
    set_val(PS3_R2, 0);
}
 
combo CounterAttack {
    set_val(PS3_L2, 100);
    wait(40);
    set_val(PS3_SQUARE, 100);
    wait(40);
}