Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CalendarAlert</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>CameraShutter</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>CameraShutterAlwaysHeard</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>ConnectedToPower</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>Default</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>FailedUnlock</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>Headset_AnswerCall</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
</array>
</dict>
<key>Headset_CallWaitingActions</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>Headset_EndCall</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>Headset_Redial</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>Headset_StartCall</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>Headset_TransitionEnd</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>KeyPressed</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>LowPower</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>MailReceived</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>MailSent</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>PINKeyPressed</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>RingerSwitchIndication</key>
<dict>
<key>RingVibrateOff,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateOff,RingerSwitchOn</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateOn,RingerSwitchOn</key>
<array>
</array>
<key>RingVibrateOn,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOn,SilentVibrateOff,RingerSwitchOn</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOn,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOn,SilentVibrateOn,RingerSwitchOn</key>
<array>
</array>
</dict>
<key>RingerVibeChanged</key>
<dict>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Vibrate</string>
</array>
</dict>
<key>SIMToolkitTone</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>SMSReceived</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>SMSReceived_Alert</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>SMSReceived_Selection</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchIgnore</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>SMSReceived_Vibrate</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Vibrate</string>
</array>
</dict>
<key>SMSSent</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>ScreenLocked</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>ScreenUnlocked</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>SilentVibeChanged</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchIgnore</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchIgnore</key>
<array>
<string>Vibrate</string>
</array>
</dict>
<key>SystemSoundPreview</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>TouchTone</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
</dict>
<key>USSDAlert</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>UserAlert</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
<key>Vibrate</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Vibrate</string>
</array>
</dict>
<key>VoicemailReceived</key>
<dict>
<key>RingVibrateIgnore,SilentVibrateOff,RingerSwitchOff</key>
<array>
</array>
<key>RingVibrateIgnore,SilentVibrateOn,RingerSwitchOff</key>
<array>
<string>Vibrate</string>
</array>
<key>RingVibrateOff,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
</array>
<key>RingVibrateOn,SilentVibrateIgnore,RingerSwitchOn</key>
<array>
<string>Beep</string>
<string>Vibrate</string>
</array>
</dict>
</dict>
</plist>
Every Key here that has a Vibrate string (i think you can add it if it doesn't have it) can be placed in SystemSoundVibrationPatterns.plist and you can set different vibration patterns for different events.