04-17-2020, 12:10 PM
A small announcement, PPSSPP now includes PPSSPP-specific CWCheats. Only two and really only useful for Windows users with Xinput gamepads althrough they could be ported for other platforms vibration equivalents by some other people.(just use sceCtrlGetLeftVibration() and sceCtrlGetRightVibration() functions to grab the value for your api, they return u16 since that's the range of vibration in xinput so might need to be scaled for other api after getting the value).
Copy paste from my commit:
Basically you can add vibration events(again, until someone ports it, it's Xinput only) to games via CWCheats. One simply activates vibration from provided value, the other is reading the vibration values from game memory, both should not be used alone, but combined with other cheats to basically tell when the vibration should be turned on/off.
Here's a basic test cheat which anyone with an Xinput gamepad will be able to use for a quick test:
It will work in all games.
The 0xA1 code type is likely even better as it allows someone to be more creative and for example create a cheat that will increase vibration with speed in racing games, or base vibration power on damage,
I will not have much time to mess with those codes nowadays as someone has to work when most other people aren't and my schedule will be very busy in the incoming weeks, but feel free to experiment and share your own vibration cheats
.
Copy paste from my commit:
Code:
0xA0 vibration cheat(Xinput)
Syntax is: 0xA0NNLLLL 0x00MMRRRR
where NN/MM is time vibration lasts LLLL/RRRR is the vibration power
0xA1 read value for the vibration(Xinput) from game memory
Syntax is: 0xA1000000 0xNNNNNNNN
where NNNNNNNN is the address that stores following values at offset:
0xNNNNNNNN + 0x0 Left Vibration power,
0xNNNNNNNN + 0x2 Right Vibration Power
0xNNNNNNNN + 0x4 Left Vibration time
0xNNNNNNNN + 0x6 Right Vibration timeHere's a basic test cheat which anyone with an Xinput gamepad will be able to use for a quick test:
Code:
_C0 Vibration TEST PRESS Keys to trigger
//Test different power
_L 0xD0000000 0x10001000 //Triangle
_L 0xA0000000 0x00F0FFFF
_L 0xD0000000 0x10002000 //Circle
_L 0xA0000000 0x00F02000
_L 0xD0000000 0x10004000 //Cross
_L 0xA0000000 0x00F06000
_L 0xD0000000 0x10008000 //Square
_L 0xA0000000 0x00F08000
//Test Different lenght
_L 0xD0000000 0x10000010 //Up
_L 0xA010F000 0x00000000
_L 0xD0000000 0x10000020 //Right
_L 0xA080F000 0x00000000
_L 0xD0000000 0x10000040 //Down
_L 0xA0F0F000 0x00000000
_L 0xD0000000 0x10000080 //Left
_L 0xA0C0F000 0x00000000The 0xA1 code type is likely even better as it allows someone to be more creative and for example create a cheat that will increase vibration with speed in racing games, or base vibration power on damage,
I will not have much time to mess with those codes nowadays as someone has to work when most other people aren't and my schedule will be very busy in the incoming weeks, but feel free to experiment and share your own vibration cheats
.
http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.

