PDA

View Full Version : Duda sobre script (configurar tiempos)



srnenito
3rd July 17, 09:04
Hola de nuevo y gracias por el tremendo soporte que dais, especialmente a ti Vauxhall.

Bueno, te cuento me he puesto a enredar y queria preguntarte si esto es posible:
El retroceso en la armas varían en función del tiempo que tengas pulsado el "r2" ¿ Es posible ajustar este parámetro?
es decir en el segundo 0 el antirecoil sea 0, al segundo de tenerlo pulsado que sea 20, al tercer segundo que sea 40...
Si tu haces este script yo me encargo de gestionar los tiempos y el antirecoil.
La base sobre la que trabajar si te parece bien seria la que te adjunto pues es la que mas uso,el antirecoil de la sags lo puse a cero para que el segundo disparo valla a la cabeza, pero estaría guay que al tercero me entrara el antirecoil.
Un saludo y gracias.

//Posted by LEX LOST, a member of the community in the CronusMAX Forums - http://cronusmax.com/forums
//Posted : Friday 30th of June, 2017 11:35 UTC


//-------------------------------------------------------------------------------------------
// THE DIVISION - ANTIRECOIL + SASG rapidfire + AutoSpot
//
//-------------------------------------------------------------------------------------------
// Version: 6.1 - Classic
// Platform: Multi
// Controller: Multi
// Game: FPS/TPS games
// Author: LEX LOST
//-------------------------------------------------------------------------------------------
/* *
ISTRUZIONI PRELIMINARI

- carica lo script sul CM+
- accendi la console ed entra in una partita (possibilmente senza o con pochi nemici)
- posiziona il tuo personaggio davanti ad un muro posto ad una decina di metri circa (possibilmente un muro che lascia i segni dei proiettili quando gli spari)
- regola l'antirecoil aumentandolo o diminuendloo (a seconda della tua necessità) di un valore alla volta, finchè la rosa dei proiettili sul muro è abbastanza raccolta
- regola se c'è bisogno anche l'antirecoil orizzontale se la tua arma tende a spostarsi di lato mentre spari
- Se il rapidfire spara in modo 'scattoso' regolalo finchè l'arma non spara in modo fluido
- salva lo script

Per le regolazioni segui le istruzioni sotto
* */
//-------------------------------------------------------------------------------------------
// ISTRUZIONI PER XBOX:

// Modalita Primaria (Verde: Acceso / led Rosso = Spento)
// tieni premuto LT e premi Y per passare dalla Modalita Primaria al Rapidfire per il SASG e viceversa (sentirai il motore vibrare)

// ANTIRECOIL (Attivo per default - Valore di partenza: verticale = 30; orizzontale = 0)
// tieni premuto LT e premi UP per aumentare l'Antirecoil (aumenta di 1 unita ogni volta che premi UP, tenendo premuto LT)
// tieni premuto LT e premi DOWN per diminuire l'Antirecoil (diminuisci di 1 unita ogni volta che premi DOWN, tenendo premuto LT)
// tieni premuto LT e premi RIGHT per compensare verso destra (aumenta di 1 unita ogni volta che premi RIGHT, tenendo premuto LT)
// tieni premuto LT e premi LEFT per compensare verso sinistra (aumenta di 1 unita ogni volta che premi LEFT, tenendo premuto LT)

// SALVARE I NUOVI VALORI: tieni premuto LT e premi MENU (o START, per XBOX360)

//-------------------------------------------------------------------------------------------
// ISTRUZIONI PER PLAYSTATION:

// Modalita Primaria (Verde: Acceso / led Rosso = Spento)
// tieni premuto L2 e premi TRIANGOLO per passare dalla Modalita Primaria al Rapidfire per il SASG e viceversa (sentirai il motore vibrare)

// ANTIRECOIL (Attivo per default - Valore di partenza: verticale = 30; orizzontale = 0)
// tieni premuto L2 e premi UP per aumentare l'Antirecoil (aumenta di 1 unita ogni volta che premi UP, tenendo premuto L2)
// tieni premuto L2 e premi DOWN per diminuire l'Antirecoil (diminuisci di 1 unita ogni volta che premi DOWN, tenendo premuto L2)
// tieni premuto L2 e premi RIGHT per compensare verso destra (aumenta di 1 unita ogni volta che premi RIGHT, tenendo premuto L2)
// tieni premuto L2 e premi LEFT per compensare verso sinistra (aumenta di 1 unita ogni volta che premi LEFT, tenendo premuto L2)

// SALVARE I NUOVI VALORI: Hold L2 e premi MENU (o START, per PS3)
//-------------------------------------------------------------------------------------------

//DECLARARATIONS - define
define Sasg_recoil= 0;
define RFswitch = 17; // XB1_Y - PS4_TRIANGLE
define ARswitch = 19;
//-------------------------------------------------------------------------------------------
define save = 2; // XB1_MENU - PS4_OPTIONS
//-------------------------------------------------------------------------------------------
define AR_Release = 70; // change this value to set when antirecoil stops working (min: antirecoil value + 10)
define ONLY_WITH_SCOPE = TRUE; // if TRUE Antirecoil IS ON only when scoping - if FALSE, is always ON
//-------------------------------------------------------------------------------------------
define RELOAD = 20;
define SPRINT = 8;
define UP = 13;
define DOWN = 14;
define LEFT = 15;
define RIGHT = 16;
//-------------------------------------------------------------------------------------------
define Blue = 1;
define Red = 2;
define Green = 3;
define Pink = 4;
define SkyBlue = 5;
define Yellow = 6;
define White = 7;
//-------------------------------------------------------------------------------------------
data(1,
2,0,0,0, //1. Blue
0,2,0,0, //2. Red
0,0,2,0, //3. Lime/Green
0,0,0,2, //4. Fuchsia/Pink
2,0,2,0, //5. SkyBlue
0,2,2,0, //6. Yellow
2,2,2,2 //7. White
);
//-------------------------------------------------------------------------------------------

//VARIABLES - int

int recoil_onoff = TRUE; // if TRUE Antirecoil is ON by default - if FALSE, OFF by default
int ANTI_RECOIL = 30;
int ANTI_RECOIL_H = 0;
int anti_recoil;
int anti_recoil_H;
int Col_ind;
int fire_button;
int scope_button;


//-------------------------------------------------------------------------------------------

//INITIALIZATION - init

init{

if(get_console() == PIO_PS3) {
fire_button = 3;
scope_button = 6;
}else {
fire_button = 4;
scope_button = 7;
}

ANTI_RECOIL = get_pvar(SPVAR_2, -100,+100, 30);
ANTI_RECOIL_H = get_pvar(SPVAR_3, -100,+100, 0);
}

//-------------------------------------------------------------------------------------------

//MAIN BLOCK ROUTINES

main {
if (get_val(PS4_L2)) {
combo_run(MarkTargets);
}

if(!recoil_onoff) {
if(get_val(PS4_L2)){
combo_run(rapid_Sasg);
}
if(event_release(PS4_L2)){
combo_stop(rapid_Sasg);
}
}
if(get_val(7) && event_press(RFswitch)) {
combo_run (vibrate);
recoil_onoff=!recoil_onoff;
}

if(recoil_onoff) colourled(Green);
else colourled(Red);


if(get_val(scope_button) && event_press(save)){
combo_run(vibrate);
set_pvar(SPVAR_2, ANTI_RECOIL);
set_pvar(SPVAR_3, ANTI_RECOIL_H);
set_val(save, 0);
}
if(get_val(7)){
if(event_press(UP)){
ANTI_RECOIL = ANTI_RECOIL+ 1;
}
if(event_press(DOWN)) {
ANTI_RECOIL = ANTI_RECOIL- 1;
}
set_val(UP,0); set_val(DOWN,0);

if(event_press(LEFT)){
ANTI_RECOIL_H = ANTI_RECOIL_H+ 1;
}
if(event_press(RIGHT)) {
ANTI_RECOIL_H = ANTI_RECOIL_H- 1;
}
set_val(LEFT,0); set_val(RIGHT,0);

}
if(!ONLY_WITH_SCOPE || get_val(scope_button) && get_val(fire_button )) {
combo_run(AntiRecoil);
}

if( abs(get_val(10)) > AR_Release || abs(get_val(9)) > AR_Release) {
combo_stop (AntiRecoil);
}
}
//-------------------------------------------------------------------------------------------

//COMBO BLOCKS

combo vibrate {
set_rumble(RUMBLE_A, 100);
wait(300);
reset_rumble();
}

combo MarkTargets {
set_val(PS4_UP, 100);
wait(50);
set_val(PS4_UP, 0);
wait(1000);
}

combo rapid_Sasg{
set_val(PS4_R2, 100);
wait(70);
set_val(PS4_L2, 0);
wait(90);
set_val(PS4_RY, Sasg_recoil);
wait(170);
set_val(PS4_R2, 100);
wait(70);
set_val(PS4_L2, 0);
wait(90);
set_val(PS4_RY, Sasg_recoil);
wait(170);
}

combo AntiRecoil { // This combo must be the last one
if(recoil_onoff) {
anti_recoil = get_val(10) + ANTI_RECOIL;
if(anti_recoil > 100) anti_recoil = 100;
set_val(10, anti_recoil);
anti_recoil_H = get_val(9) + ANTI_RECOIL_H;
if(anti_recoil_H > 100) anti_recoil_H = 100;
set_val(9, anti_recoil_H);
}
}
// COLOR LED function
//--------------------------------------------------------------
function colourled(Colour) {
Col_ind=(Colour*4)- 3;
set_led(LED_1,dbyte(Col_ind ));
set_led(LED_2,dbyte(Col_ind+ 1));
set_led(LED_3,dbyte(Col_ind+ 2));
set_led(LED_4,dbyte(Col_ind+ 3));
}// End

Vauxhall
4th July 17, 03:02
Hola de nuevo y gracias por el tremendo soporte que dais, especialmente a ti Vauxhall.

Bueno, te cuento me he puesto a enredar y queria preguntarte si esto es posible:
El retroceso en la armas varían en función del tiempo que tengas pulsado el "r2" ¿ Es posible ajustar este parámetro?
es decir en el segundo 0 el antirecoil sea 0, al segundo de tenerlo pulsado que sea 20, al tercer segundo que sea 40...
Si tu haces este script yo me encargo de gestionar los tiempos y el antirecoil.
La base sobre la que trabajar si te parece bien seria la que te adjunto pues es la que mas uso,el antirecoil de la sags lo puse a cero para que el segundo disparo valla a la cabeza, pero estaría guay que al tercero me entrara el antirecoil.
Un saludo y gracias.

//Posted by LEX LOST, a member of the community in the CronusMAX Forums - http://cronusmax.com/forums
//Posted : Friday 30th of June, 2017 11:35 UTC


//-------------------------------------------------------------------------------------------
// THE DIVISION - ANTIRECOIL + SASG rapidfire + AutoSpot
//
//-------------------------------------------------------------------------------------------
// Version: 6.1 - Classic
// Platform: Multi
// Controller: Multi
// Game: FPS/TPS games
// Author: LEX LOST
//-------------------------------------------------------------------------------------------
/* *
ISTRUZIONI PRELIMINARI

- carica lo script sul CM+
- accendi la console ed entra in una partita (possibilmente senza o con pochi nemici)
- posiziona il tuo personaggio davanti ad un muro posto ad una decina di metri circa (possibilmente un muro che lascia i segni dei proiettili quando gli spari)
- regola l'antirecoil aumentandolo o diminuendloo (a seconda della tua necessità) di un valore alla volta, finchè la rosa dei proiettili sul muro è abbastanza raccolta
- regola se c'è bisogno anche l'antirecoil orizzontale se la tua arma tende a spostarsi di lato mentre spari
- Se il rapidfire spara in modo 'scattoso' regolalo finchè l'arma non spara in modo fluido
- salva lo script

Per le regolazioni segui le istruzioni sotto
* */
//-------------------------------------------------------------------------------------------
// ISTRUZIONI PER XBOX:

// Modalita Primaria (Verde: Acceso / led Rosso = Spento)
// tieni premuto LT e premi Y per passare dalla Modalita Primaria al Rapidfire per il SASG e viceversa (sentirai il motore vibrare)

// ANTIRECOIL (Attivo per default - Valore di partenza: verticale = 30; orizzontale = 0)
// tieni premuto LT e premi UP per aumentare l'Antirecoil (aumenta di 1 unita ogni volta che premi UP, tenendo premuto LT)
// tieni premuto LT e premi DOWN per diminuire l'Antirecoil (diminuisci di 1 unita ogni volta che premi DOWN, tenendo premuto LT)
// tieni premuto LT e premi RIGHT per compensare verso destra (aumenta di 1 unita ogni volta che premi RIGHT, tenendo premuto LT)
// tieni premuto LT e premi LEFT per compensare verso sinistra (aumenta di 1 unita ogni volta che premi LEFT, tenendo premuto LT)

// SALVARE I NUOVI VALORI: tieni premuto LT e premi MENU (o START, per XBOX360)

//-------------------------------------------------------------------------------------------
// ISTRUZIONI PER PLAYSTATION:

// Modalita Primaria (Verde: Acceso / led Rosso = Spento)
// tieni premuto L2 e premi TRIANGOLO per passare dalla Modalita Primaria al Rapidfire per il SASG e viceversa (sentirai il motore vibrare)

// ANTIRECOIL (Attivo per default - Valore di partenza: verticale = 30; orizzontale = 0)
// tieni premuto L2 e premi UP per aumentare l'Antirecoil (aumenta di 1 unita ogni volta che premi UP, tenendo premuto L2)
// tieni premuto L2 e premi DOWN per diminuire l'Antirecoil (diminuisci di 1 unita ogni volta che premi DOWN, tenendo premuto L2)
// tieni premuto L2 e premi RIGHT per compensare verso destra (aumenta di 1 unita ogni volta che premi RIGHT, tenendo premuto L2)
// tieni premuto L2 e premi LEFT per compensare verso sinistra (aumenta di 1 unita ogni volta che premi LEFT, tenendo premuto L2)

// SALVARE I NUOVI VALORI: Hold L2 e premi MENU (o START, per PS3)
//-------------------------------------------------------------------------------------------

//DECLARARATIONS - define
define Sasg_recoil= 0;
define RFswitch = 17; // XB1_Y - PS4_TRIANGLE
define ARswitch = 19;
//-------------------------------------------------------------------------------------------
define save = 2; // XB1_MENU - PS4_OPTIONS
//-------------------------------------------------------------------------------------------
define AR_Release = 70; // change this value to set when antirecoil stops working (min: antirecoil value + 10)
define ONLY_WITH_SCOPE = TRUE; // if TRUE Antirecoil IS ON only when scoping - if FALSE, is always ON
//-------------------------------------------------------------------------------------------
define RELOAD = 20;
define SPRINT = 8;
define UP = 13;
define DOWN = 14;
define LEFT = 15;
define RIGHT = 16;
//-------------------------------------------------------------------------------------------
define Blue = 1;
define Red = 2;
define Green = 3;
define Pink = 4;
define SkyBlue = 5;
define Yellow = 6;
define White = 7;
//-------------------------------------------------------------------------------------------
data(1,
2,0,0,0, //1. Blue
0,2,0,0, //2. Red
0,0,2,0, //3. Lime/Green
0,0,0,2, //4. Fuchsia/Pink
2,0,2,0, //5. SkyBlue
0,2,2,0, //6. Yellow
2,2,2,2 //7. White
);
//-------------------------------------------------------------------------------------------

//VARIABLES - int

int recoil_onoff = TRUE; // if TRUE Antirecoil is ON by default - if FALSE, OFF by default
int ANTI_RECOIL = 30;
int ANTI_RECOIL_H = 0;
int anti_recoil;
int anti_recoil_H;
int Col_ind;
int fire_button;
int scope_button;


//-------------------------------------------------------------------------------------------

//INITIALIZATION - init

init{

if(get_console() == PIO_PS3) {
fire_button = 3;
scope_button = 6;
}else {
fire_button = 4;
scope_button = 7;
}

ANTI_RECOIL = get_pvar(SPVAR_2, -100,+100, 30);
ANTI_RECOIL_H = get_pvar(SPVAR_3, -100,+100, 0);
}

//-------------------------------------------------------------------------------------------

//MAIN BLOCK ROUTINES

main {
if (get_val(PS4_L2)) {
combo_run(MarkTargets);
}

if(!recoil_onoff) {
if(get_val(PS4_L2)){
combo_run(rapid_Sasg);
}
if(event_release(PS4_L2)){
combo_stop(rapid_Sasg);
}
}
if(get_val(7) && event_press(RFswitch)) {
combo_run (vibrate);
recoil_onoff=!recoil_onoff;
}

if(recoil_onoff) colourled(Green);
else colourled(Red);


if(get_val(scope_button) && event_press(save)){
combo_run(vibrate);
set_pvar(SPVAR_2, ANTI_RECOIL);
set_pvar(SPVAR_3, ANTI_RECOIL_H);
set_val(save, 0);
}
if(get_val(7)){
if(event_press(UP)){
ANTI_RECOIL = ANTI_RECOIL+ 1;
}
if(event_press(DOWN)) {
ANTI_RECOIL = ANTI_RECOIL- 1;
}
set_val(UP,0); set_val(DOWN,0);

if(event_press(LEFT)){
ANTI_RECOIL_H = ANTI_RECOIL_H+ 1;
}
if(event_press(RIGHT)) {
ANTI_RECOIL_H = ANTI_RECOIL_H- 1;
}
set_val(LEFT,0); set_val(RIGHT,0);

}
if(!ONLY_WITH_SCOPE || get_val(scope_button) && get_val(fire_button )) {
combo_run(AntiRecoil);
}

if( abs(get_val(10)) > AR_Release || abs(get_val(9)) > AR_Release) {
combo_stop (AntiRecoil);
}
}
//-------------------------------------------------------------------------------------------

//COMBO BLOCKS

combo vibrate {
set_rumble(RUMBLE_A, 100);
wait(300);
reset_rumble();
}

combo MarkTargets {
set_val(PS4_UP, 100);
wait(50);
set_val(PS4_UP, 0);
wait(1000);
}

combo rapid_Sasg{
set_val(PS4_R2, 100);
wait(70);
set_val(PS4_L2, 0);
wait(90);
set_val(PS4_RY, Sasg_recoil);
wait(170);
set_val(PS4_R2, 100);
wait(70);
set_val(PS4_L2, 0);
wait(90);
set_val(PS4_RY, Sasg_recoil);
wait(170);
}

combo AntiRecoil { // This combo must be the last one
if(recoil_onoff) {
anti_recoil = get_val(10) + ANTI_RECOIL;
if(anti_recoil > 100) anti_recoil = 100;
set_val(10, anti_recoil);
anti_recoil_H = get_val(9) + ANTI_RECOIL_H;
if(anti_recoil_H > 100) anti_recoil_H = 100;
set_val(9, anti_recoil_H);
}
}
// COLOR LED function
//--------------------------------------------------------------
function colourled(Colour) {
Col_ind=(Colour*4)- 3;
set_led(LED_1,dbyte(Col_ind ));
set_led(LED_2,dbyte(Col_ind+ 1));
set_led(LED_3,dbyte(Col_ind+ 2));
set_led(LED_4,dbyte(Col_ind+ 3));
}// End

La verdad es que nunca me lo han planteado así.
Tendria que estudiar como añadir valores de tiempo al Antirecoild, ya qe normalmente trabajamos en el ajuste inicial y lo mantenemos, pero nunca lo aumentamos con la pulsacion de tiempo. Dejeme investigar y le digo.

srnenito
4th July 17, 14:57
Muchas gracias Vauxhall, si puedo ayudarte en algo no dudes en decírmelo.
Si logras hacerlo se abren un abanico tremendo de opciones, Por que por regla general el retroceso no es lineal es exponencial .
Imagina en un franco o en un rifle de asalto, prácticamente lo anularias.
Pero comprendo que lo mismo técnicamente no se puede.
Bueno no obstante un saludo y gracias de nuevo.

Joseantonioy
21st July 17, 04:06
hola srnenito, te he enviado mensaje privado para ver si me ayudas pero supongo que lo habré echo mal ( esto del ingles no es lo mio) me puedes pasar el script que dices que tienes para el fusil m4 para que no se alce arriba y uno que dices que tienes para tiro fijo.
gracias compañero