Rumble

 
The CronusMAX PLUS allows you to completely control the Rumble Motors on your controller, including the Trigger Rumble motors on an Xbox One controller.  Below are the GPC commands relating to these motors.
 
Rumble
 
Function Name
Description
get_rumble    
Returns the current value of a Rumble Motor
set_rumble    
Set the speed of a Rumble Motor
Blocks any rumble signals from the console
Resets the rumble state and returns control of the motors to the console
 

Rumble Constants

 
Rumble motors are numbered from 0 ~ 3. To make it easier to remember which Motor relates to which number, the following Constants are available;
 
Name
Description
Value
  • RUMBLE_A
Strong Rumble Motor (Usually the Left Motor)
0
  • RUMBLE_B
Weak Rumble Motor (Usually the Right Motor)
1
  • RUMBLE_RT
Right Trigger Motor (Xbox One controllers only)
2
  • RUMBLE_LT
Left Trigger Motor (Xbox One controllers only)
3
 
1
get_rumble
 
get_rumble returns the speed of the chosen rumble motor on the controller in the form of an int.  The value returned can range from 0 ~ 100 which represents the speed in a percentage ( % ).
 
Example of usage:
 
main {
 
    if(get_rumble(RUMBLE_A) > 50) {  // If Rumble Motor A is running greater than 50% speed...
        // Do Something
    }
 
}
 

Syntax

 
get_rumble ( <rumble_identifier> );
 

Parameters

 
<rumble_identifier> : the identifier of a Rumble Motor
 

Returns

 
An int ranging from 0 ~ 100 which represents the current speed of the chosen motor
2
set_rumble
 
set_rumble sets the speed of the chosen rumble motor on the controller.  Once a rumble has been activated by a script, it will remain at the speed set until such time as the script sets it again, rumble is reset or the script is unloaded.
 
Example of usage:
 
main {
 
    if(event_press(XB1_A)) {  // If A / Cross is pressed...
        set_rumble(RUMBLE_A, 50);  // Set rumble motor A to 50% speed
    }
 
}
 

Syntax

 
set_rumble ( <rumble_identifier> , <speed as %> );
 

Parameters

 
<rumble_identifier> : the identifier of a Rumble Motor
<speed as %>        : Numerical value, range 0 ~ 100
3
block_rumble
 
block_rumble does as it implies and blocks any rumble signals to the controller.  Once this function is used, it remains active until such time as it is reset in the script or the script is unloaded.
 
Example of usage:
 
main {
 
    if(event_press(XB1_A)) {  // If A / Cross is pressed...
        block_rumble();  // Block rumble signals to the controller
    }
 
}
 

Syntax

 
block_rumble ( );
 

Parameters

 
None
4
reset_rumble
 
reset_rumble returns control of the rumble motors to the console.  It also deactivates block_rumble if it is active.
 
Example of usage:
 
main {
 
    if(event_press(XB1_A)) {  // If A / Cross is pressed...
        reset_rumble();  // Reset the rumble state
    }
 
}
 

Syntax

 
reset_rumble ( );
 

Parameters

 
None