/* 
 * 
 * Confidential Information of Telekinesys Research Limited (t/a Havok). Not for disclosure or distribution without Havok's
 * prior written consent. This software contains code, techniques and know-how which is confidential and proprietary to Havok.
 * Level 2 and Level 3 source code contains trade secrets of Havok. Havok Software (C) Copyright 1999-2009 Telekinesys Research Limited t/a Havok. All Rights Reserved. Use of this software is subject to the terms of an end user license agreement.
 * 
 */

//=======
// 650b1
//=======

HK_PATCH_BEGIN("hkbPredicate", 0, "hkbCondition", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStringPredicate", 0, "hkbStringCondition", 0)
	HK_PATCH_MEMBER_RENAMED("predicateString", "conditionString")
HK_PATCH_END()

HK_PATCH_BEGIN("hkbClimbMountingPredicate", 0, "hkbClimbMountingCondition", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbExpressionData", 0)
	HK_PATCH_MEMBER_ADDED("expression", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("assignmentVariableIndex", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("assignmentEventIndex", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("eventMode", TYPE_INT, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbRealEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbSceneModifierList", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("sceneModifierEntries", TYPE_ARRAY_STRUCT, "hkbSceneModifierListSceneModifierEntry", 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkbSceneModifierListSceneModifierEntry", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbClipTriggerArray", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("triggers", TYPE_ARRAY_STRUCT, "hkbClipTrigger", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbClipTrigger", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbNamedRealEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbNamedEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbNamedEventPayload", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbRoleAttribute", 0)
	HK_PATCH_MEMBER_ADDED("role", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("flags", TYPE_INT, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbIntEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbComputeRotationToTargetModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("rotationOut", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("targetPosition", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("currentPosition", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("currentRotation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("localAxisOfRotation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("localFacingDirection", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("resultIsDelta", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbEventPayloadList", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("payloads", TYPE_ARRAY_OBJECT, "hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbComputeRotationFromAxisAngleModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("rotationOut", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("axis", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("angleDegrees", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbExpressionDataArray", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("expressionsData", TYPE_ARRAY_STRUCT, "hkbExpressionData", 0)
	HK_PATCH_DEPENDS("hkbExpressionData", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbCompiledExpressionSet", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("rpn", TYPE_ARRAY_STRUCT, "hkbCompiledExpressionSetToken", 0)
	HK_PATCH_MEMBER_ADDED("numExpressions", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbCompiledExpressionSetToken", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbCombineTransformsModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("translationOut", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("rotationOut", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("leftTranslation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("leftRotation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("rightTranslation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("rightRotation", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("invertLeftTransform", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("invertRightTransform", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("invertResult", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbExpressionCondition", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbCondition")
	HK_PATCH_MEMBER_ADDED("expression", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("compiledExpressionSet", TYPE_OBJECT, "hkbCompiledExpressionSet", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbCompiledExpressionSet", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbCondition", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbBoneWeightArray", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbBindable")
	HK_PATCH_MEMBER_ADDED("boneWeights", TYPE_ARRAY_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbSenseHandleModifierRange", 0)
	HK_PATCH_MEMBER_ADDED("event", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_ADDED("minDistance", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("maxDistance", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("ignoreHandle", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbBindable", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("variableBindingSet", TYPE_OBJECT, "hkbVariableBindingSet", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbVariableBindingSet", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbSillyEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("sillyMessage", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("sillyGain", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("sillyIndex", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("sillyEnum", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbBoneIndexArray", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbBindable")
	HK_PATCH_MEMBER_ADDED("boneIndices", TYPE_ARRAY_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbNamedStringEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbNamedEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbNamedEventPayload", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbNamedIntEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbNamedEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbNamedEventPayload", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbEventProperty", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEvent")
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbEvaluateExpressionModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("expressions", TYPE_OBJECT, "hkbExpressionDataArray", 0)
	HK_PATCH_MEMBER_ADDED("compiledExpressionSet", TYPE_OBJECT, "hkbCompiledExpressionSet", 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkbExpressionDataArray", 0)
	HK_PATCH_DEPENDS("hkbCompiledExpressionSet", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbNamedEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("name", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbVariableValueSet", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("wordVariableValues", TYPE_ARRAY_STRUCT, "hkbVariableValue", 0)
	HK_PATCH_MEMBER_ADDED("quadVariableValues", TYPE_ARRAY_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("variantVariableValues", TYPE_ARRAY_OBJECT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbVariableValue", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbStateMachineTransitionInfoArray", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_ADDED("transitions", TYPE_ARRAY_STRUCT, "hkbStateMachineTransitionInfo", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfo", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbStringEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbEventPayload")
	HK_PATCH_MEMBER_ADDED("data", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbExtractRagdollPoseModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbStateListener", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbEventPayload", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbCompiledExpressionSetToken", 0)
	HK_PATCH_MEMBER_ADDED("data", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("type", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("operator", TYPE_INT, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbSceneModifierListSceneModifierEntry", 0)
	HK_PATCH_MEMBER_ADDED("sceneModifier", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("postSceneModifier", TYPE_OBJECT, "hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN(HK_NULL, HK_CLASS_ADDED, "hkbBallModifier", 0)
	HK_PATCH_PARENT_SET(HK_NULL, "hkbModifier")
	HK_PATCH_MEMBER_ADDED("velocity", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("applyForceEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("applyForce", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbModifier", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbMoveBoneTowardTargetModifier", 0, "hkbMoveBoneTowardTargetModifier", 1)
	HK_PATCH_MEMBER_RENAMED("eventToSendWhenTargetReached", "old_eventToSendWhenTargetReached")
	HK_PATCH_MEMBER_ADDED("eventToSendWhenTargetReached", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbMoveBoneTowardTargetModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_eventToSendWhenTargetReached", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCharacterStringData", 0, "hkbCharacterStringData", 1)
	HK_PATCH_MEMBER_ADDED("characterPropertyNames", TYPE_ARRAY_CSTRING, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbSplinePathGenerator", 0, "hkbSplinePathGenerator", 1)
	HK_PATCH_MEMBER_ADDED("pathEndEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbSplinePathGenerator_0_to_1)
	HK_PATCH_MEMBER_REMOVED("pathEndEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbHandIkControlData", 0, "hkbHandIkControlData", 1)
	HK_PATCH_MEMBER_ADDED("targetRotation", TYPE_VEC_4, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbSenseHandleModifier", 0, "hkbSenseHandleModifier", 1)
	HK_PATCH_MEMBER_ADDED("ranges", TYPE_ARRAY_STRUCT, "hkbSenseHandleModifierRange", 0)
	HK_PATCH_MEMBER_ADDED("minDistance", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbSenseHandleModifierRange", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbAttachmentModifier", 0, "hkbAttachmentModifier", 1)
	HK_PATCH_MEMBER_RENAMED("sendToAttacherOnAttach", "old_sendToAttacherOnAttach")
	HK_PATCH_MEMBER_ADDED("sendToAttacherOnAttach", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_RENAMED("sendToAttacheeOnAttach", "old_sendToAttacheeOnAttach")
	HK_PATCH_MEMBER_ADDED("sendToAttacheeOnAttach", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_RENAMED("sendToAttacherOnDetach", "old_sendToAttacherOnDetach")
	HK_PATCH_MEMBER_ADDED("sendToAttacherOnDetach", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_RENAMED("sendToAttacheeOnDetach", "old_sendToAttacheeOnDetach")
	HK_PATCH_MEMBER_ADDED("sendToAttacheeOnDetach", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbAttachmentModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_sendToAttacherOnAttach", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("old_sendToAttacheeOnAttach", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("old_sendToAttacherOnDetach", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("old_sendToAttacheeOnDetach", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbTimerModifier", 0, "hkbTimerModifier", 1)
	HK_PATCH_MEMBER_ADDED("alarmEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbTimerModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("eventIdToSend", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbBehaviorGraphStringData", 0, "hkbBehaviorGraphStringData", 1)
	HK_PATCH_MEMBER_ADDED("characterPropertyNames", TYPE_ARRAY_CSTRING, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbTargetRigidBodyModifier", 0, "hkbTargetRigidBodyModifier", 1)
	HK_PATCH_MEMBER_RENAMED("eventToSend", "old_eventToSend")
	HK_PATCH_MEMBER_ADDED("eventToSend", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_RENAMED("eventToSendToTarget", "old_eventToSendToTarget")
	HK_PATCH_MEMBER_ADDED("eventToSendToTarget", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_ADDED("closeToTargetEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbTargetRigidBodyModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_eventToSend", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("old_eventToSendToTarget", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("closeToTargetEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStateMachineProspectiveTransitionInfo", 0, "hkbStateMachineProspectiveTransitionInfo", 1)
	HK_PATCH_MEMBER_REMOVED("transitionInfo", TYPE_OBJECT, "hkbStateMachineTransitionInfo", 0)
	HK_PATCH_MEMBER_REMOVED("transitionEffect", TYPE_OBJECT, "hkbTransitionEffect", 0)
	HK_PATCH_MEMBER_REMOVED("toStateId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("isGlobalWildcard", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbNode", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkbGenerator", 0)
	HK_PATCH_DEPENDS("hkbTransitionEffect", 0)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfo", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbEvaluateHandleModifier", 0, "hkbEvaluateHandleModifier", 1)
	HK_PATCH_MEMBER_ADDED("extrapolationTimeStep", TYPE_REAL, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbDetectCloseToGroundModifier", 0, "hkbDetectCloseToGroundModifier", 1)
	HK_PATCH_MEMBER_ADDED("closeToGroundEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbDetectCloseToGroundModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("closeToGroundEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbAttachmentSetup", 0, "hkbAttachmentSetup", 1)
	HK_PATCH_MEMBER_ADDED("extrapolationTimeStep", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("fixUpGain", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("maxLinearDistance", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("maxAngularDistance", TYPE_REAL, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbFootIkModifierInternalLegData", 0, "hkbFootIkModifierInternalLegData", 1)
	HK_PATCH_MEMBER_REMOVED("verticalError", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("hitSomething", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("isPlanted", TYPE_BYTE, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbLookAtModifier", 0, "hkbLookAtModifier", 1)
	HK_PATCH_MEMBER_REMOVED("lookUp", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("lookUpAngleDegrees", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("individualLimitsOn", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("limitAngleLeft", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("limitAngleRight", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("limitAngleUp", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("limitAngleDown", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbLookAtModifier_0_to_1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbVariableBindingSetBinding", 0, "hkbVariableBindingSetBinding", 1)
	HK_PATCH_MEMBER_ADDED("bindingType", TYPE_INT, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbVariableBindingSetBinding_0_to_1)
	HK_PATCH_MEMBER_REMOVED("object", TYPE_OBJECT, "hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbVariableBindingSet", 0)
	// The following should include all class that existed in version 0 and were made subclasses of hkbBindable in version 1.
	// It also includes any objects that were converted to using hkbBoneIndexArray or hkbBoneWeightArray.
	HK_PATCH_DEPENDS("hkbNode", 1)
	HK_PATCH_DEPENDS("hkbJigglerGroup", 1)
	HK_PATCH_DEPENDS("hkbBlenderGeneratorChild", 1)
	HK_PATCH_DEPENDS("hkbRegisteredGenerator", 1)
	HK_PATCH_DEPENDS("hkbPoweredRagdollControlsModifier", 1)
	HK_PATCH_DEPENDS("hkbKeyframeBonesModifier", 1)
	HK_PATCH_DEPENDS("hkbRigidBodyRagdollModifier", 1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbVariableBindingSet", 0, "hkbVariableBindingSet", 1 )
	HK_PATCH_FUNCTION(hkbVariableBindingSet_0_to_1)
	HK_PATCH_DEPENDS("hkbVariableBindingSetBinding", 1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbNode", 0, "hkbNode", 1)
	HK_PATCH_MEMBER_RENAMED( "variableBindingSet", "old_variableBindingSet" )
	HK_PATCH_PARENT_SET("hkReferencedObject", "hkbBindable")
	HK_PATCH_FUNCTION(hkbNode_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_variableBindingSet", TYPE_OBJECT, "hkbVariableBindingSet", 0)
	HK_PATCH_DEPENDS("hkbVariableBindingSet", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbHandIkModifierHand", 0, "hkbHandIkModifierHand", 1)
	HK_PATCH_MEMBER_ADDED("handOffsetLS", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("handOrienationOffsetLS", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("enforceEndPosition", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("enforceEndRotation", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("localFrameName", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbHandIkModifierHand_0_to_1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbVariableInfo", 0, "hkbVariableInfo", 1)
	HK_PATCH_MEMBER_REMOVED("initialValue", TYPE_STRUCT, "hkbVariableValue", 0)
	HK_PATCH_MEMBER_ADDED("role", TYPE_STRUCT, "hkbRoleAttribute", 0)
	HK_PATCH_DEPENDS("hkbVariableValue", 0)
	HK_PATCH_DEPENDS("hkbRoleAttribute", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbPositionRelativeSelectorGenerator", 0, "hkbPositionRelativeSelectorGenerator", 1)
	HK_PATCH_MEMBER_ADDED("fixPositionEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbPositionRelativeSelectorGenerator_0_to_1)
	HK_PATCH_MEMBER_REMOVED("fixPositionEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCheckRagdollSpeedModifier", 0, "hkbCheckRagdollSpeedModifier", 1)
	HK_PATCH_MEMBER_RENAMED("eventToSend", "old_eventToSend")
	HK_PATCH_MEMBER_ADDED("eventToSend", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbCheckRagdollSpeedModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_eventToSend", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCharacterData", 0, "hkbCharacterData", 1)
	HK_PATCH_MEMBER_ADDED("characterPropertyInfos", TYPE_ARRAY_STRUCT, "hkbVariableInfo", 0)
	HK_PATCH_MEMBER_ADDED("characterPropertyValues", TYPE_OBJECT, "hkbVariableValueSet", 0)
	HK_PATCH_DEPENDS("hkbVariableInfo", 1)
	HK_PATCH_DEPENDS("hkbVariableValueSet", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbFootIkModifierLeg", 0, "hkbFootIkModifierLeg", 1)
	HK_PATCH_MEMBER_ADDED("ungroundedEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbFootIkModifierLeg_0_to_1)
	HK_PATCH_MEMBER_ADDED("verticalError", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("hitSomething", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("isPlantedMS", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("ungroundedEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbClipTrigger", 0, "hkbClipTrigger", 1)
	HK_PATCH_MEMBER_RENAMED("event", "old_event")
	HK_PATCH_MEMBER_ADDED("event", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbClipTrigger_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_event", TYPE_STRUCT, "hkbEvent", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbClipGenerator", 0, "hkbClipGenerator", 1)
	HK_PATCH_MEMBER_RENAMED("triggers", "old_triggers")
	HK_PATCH_MEMBER_ADDED("triggers", TYPE_OBJECT, "hkbClipTriggerArray", 0)
	HK_PATCH_MEMBER_ADDED("animationBindingIndex", TYPE_INT, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbClipGenerator_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_triggers", TYPE_ARRAY_STRUCT, "hkbClipTrigger", 0)
	HK_PATCH_DEPENDS("hkbClipTrigger", 0)
	HK_PATCH_DEPENDS("hkbClipTriggerArray", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbFootIkModifier", 0, "hkbFootIkModifier", 1)
	HK_PATCH_MEMBER_ADDED("verticalOffset", TYPE_REAL, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCatchFallModifier", 0, "hkbCatchFallModifier", 1)
	HK_PATCH_MEMBER_RENAMED("spineIndices", "old_spineIndices")
	HK_PATCH_MEMBER_ADDED("spineIndices", TYPE_OBJECT, "hkbBoneIndexArray", 0)
	HK_PATCH_MEMBER_ADDED("catchFallDoneEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_FUNCTION(hkbCatchFallModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_spineIndices", TYPE_ARRAY_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("catchFallDoneEventId", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbBoneIndexArray", 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStateMachineStateInfo", 0, "hkbStateMachineStateInfo", 1)
	HK_PATCH_PARENT_SET(HK_NULL, "hkReferencedObject")
	HK_PATCH_MEMBER_RENAMED("enterNotifyEvent", "old_enterNotifyEvent")
	HK_PATCH_MEMBER_ADDED("enterNotifyEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_RENAMED("exitNotifyEvent", "old_exitNotifyEvent")
	HK_PATCH_MEMBER_ADDED("exitNotifyEvent", TYPE_STRUCT, "hkbEventProperty", 0)
	HK_PATCH_MEMBER_ADDED("listeners", TYPE_ARRAY_OBJECT, "hkbStateListener", 0)
	HK_PATCH_FUNCTION(hkbStateMachineStateInfo_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_enterNotifyEvent", TYPE_STRUCT, "hkbEvent", 0)
	HK_PATCH_MEMBER_REMOVED("old_exitNotifyEvent", TYPE_STRUCT, "hkbEvent", 0)
	HK_PATCH_MEMBER_REMOVED("inPackfile", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEvent", 0)
	HK_PATCH_DEPENDS("hkbEventProperty", 0)
	HK_PATCH_DEPENDS("hkbStateListener", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbBehaviorGraphData", 0, "hkbBehaviorGraphData", 1)
	HK_PATCH_MEMBER_ADDED("characterPropertyInfos", TYPE_ARRAY_STRUCT, "hkbVariableInfo", 0)
	HK_PATCH_MEMBER_ADDED("variableInitialValues", TYPE_OBJECT, "hkbVariableValueSet", 0)
	HK_PATCH_FUNCTION(hkbBehaviorGraphData_0_to_1)
	HK_PATCH_MEMBER_REMOVED("quadVariableInitialValues", TYPE_ARRAY_VEC_4, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbVariableInfo", 0)
	HK_PATCH_DEPENDS("hkbVariableValueSet", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStateMachineTransitionInfo", 0, "hkbStateMachineTransitionInfo", 1)
	HK_PATCH_MEMBER_RENAMED("predicate", "condition")
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
	HK_PATCH_DEPENDS("hkbCondition", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbPoweredRagdollControlsModifier", 0, "hkbPoweredRagdollControlsModifier", 1)
	HK_PATCH_MEMBER_RENAMED("boneWeights", "old_boneWeights")
	HK_PATCH_MEMBER_ADDED("boneWeights", TYPE_OBJECT, "hkbBoneWeightArray", 0)
	HK_PATCH_FUNCTION(hkbPoweredRagdollControlsModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_boneWeights", TYPE_ARRAY_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbBoneWeightArray", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStateMachine", 0, "hkbStateMachine", 1)
	HK_PATCH_MEMBER_ADDED("wildcardTransitions", TYPE_OBJECT, "hkbStateMachineTransitionInfoArray", 0)
	HK_PATCH_FUNCTION(hkbStateMachine_0_to_1)
	HK_PATCH_MEMBER_REMOVED("globalTransitions", TYPE_ARRAY_STRUCT, "hkbStateMachineTransitionInfo", 0)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfo", 0)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfoArray", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbKeyframeBonesModifier", 0, "hkbKeyframeBonesModifier", 1)
	HK_PATCH_MEMBER_RENAMED("keyframedBonesList", "old_keyframedBonesList")
	HK_PATCH_MEMBER_ADDED("keyframedBonesList", TYPE_OBJECT, "hkbBoneIndexArray", 0)
	HK_PATCH_FUNCTION(hkbKeyframeBonesModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_keyframedBonesList", TYPE_ARRAY_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbBoneIndexArray", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbBlenderGeneratorChild", 0, "hkbBlenderGeneratorChild", 1)
	HK_PATCH_PARENT_SET("hkReferencedObject", "hkbBindable")
	HK_PATCH_MEMBER_RENAMED("boneWeights", "old_boneWeights")
	HK_PATCH_MEMBER_ADDED("boneWeights", TYPE_OBJECT, "hkbBoneWeightArray", 0)
	HK_PATCH_FUNCTION(hkbBlenderGeneratorChild_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_boneWeights", TYPE_ARRAY_REAL, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbBoneWeightArray", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbRigidBodyRagdollModifier", 0, "hkbRigidBodyRagdollModifier", 1)
	HK_PATCH_MEMBER_RENAMED("keyframedBonesList", "old_keyframedBonesList")
	HK_PATCH_MEMBER_ADDED("keyframedBonesList", TYPE_OBJECT, "hkbBoneIndexArray", 0)
	HK_PATCH_FUNCTION(hkbRigidBodyRagdollModifier_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_keyframedBonesList", TYPE_ARRAY_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbBoneIndexArray", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbJigglerGroup", 0, "hkbJigglerGroup", 1)
	HK_PATCH_PARENT_SET("hkReferencedObject", "hkbBindable")
	HK_PATCH_MEMBER_RENAMED("boneIndices", "old_boneIndices")
	HK_PATCH_MEMBER_ADDED("boneIndices", TYPE_OBJECT, "hkbBoneIndexArray", 0)
	HK_PATCH_FUNCTION(hkbJigglerGroup_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_boneIndices", TYPE_ARRAY_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbBoneIndexArray", 0)
	HK_PATCH_DEPENDS("hkbBindable", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbRegisteredGenerator", 0, "hkbRegisteredGenerator", 1)
	HK_PATCH_PARENT_SET("hkReferencedObject", "hkbBindable")
	HK_PATCH_DEPENDS("hkbBindable", 0)
HK_PATCH_END()

//=======
// 650r1
//=======

HK_PATCH_BEGIN("hkbSillyEventPayload", 0, HK_NULL, HK_CLASS_REMOVED)
	HK_PATCH_PARENT_SET("hkbEventPayload", HK_NULL)
	HK_PATCH_MEMBER_REMOVED("sillyMessage", TYPE_CSTRING, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("sillyGain", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("sillyIndex", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_REMOVED("sillyEnum", TYPE_INT, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbEventPayload", 0)
	HK_PATCH_DEPENDS("hkBaseObject", 0)
	HK_PATCH_DEPENDS("hkReferencedObject", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbStateMachineStateInfo", 1, "hkbStateMachineStateInfo", 2)
	HK_PATCH_PARENT_SET("hkReferencedObject", "hkbBindable")
	HK_PATCH_MEMBER_RENAMED("transitions","old_transitions")
	HK_PATCH_MEMBER_ADDED("transitions", TYPE_OBJECT, "hkbStateMachineTransitionInfoArray", 0)
	HK_PATCH_MEMBER_ADDED("enable", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfo", 1)
	HK_PATCH_DEPENDS("hkbStateMachineTransitionInfoArray", 0)
	HK_PATCH_FUNCTION(hkbStateMachineStateInfo_1_to_2)
	HK_PATCH_MEMBER_REMOVED("old_transitions", TYPE_ARRAY_STRUCT, "hkbStateMachineTransitionInfo", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbRotateCharacterModifier", 0, "hkbRotateCharacterModifier", 1)
	HK_PATCH_MEMBER_ADDED("speedMultiplier", TYPE_REAL, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCompiledExpressionSet", 0, "hkbCompiledExpressionSet", 1)
	HK_PATCH_MEMBER_ADDED("expressionToRpnIndex", TYPE_ARRAY_INT, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbCharacterData", 1, "hkbCharacterData", 2)
        HK_PATCH_MEMBER_ADDED("scale", TYPE_REAL, HK_NULL, 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbDemoConfigStickVariableInfo", 0, "hkbDemoConfigStickVariableInfo", 1)
	HK_PATCH_MEMBER_ADDED("minStickValue", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("maxStickValue", TYPE_REAL, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("stickAxis", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("stick", TYPE_INT, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("complimentVariableValue", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("negateVariableValue", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbDemoConfigStickVariableInfo_0_to_1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbDemoConfig", 0, "hkbDemoConfig", 1)
	HK_PATCH_MEMBER_RENAMED("stickVariables", "old_stickVariables")
	HK_PATCH_MEMBER_ADDED("stickVariables", TYPE_TUPLE_STRUCT, "hkbDemoConfigStickVariableInfo", 12)
	HK_PATCH_FUNCTION(hkbDemoConfig_0_to_1)
	HK_PATCH_MEMBER_REMOVED("old_stickVariables", TYPE_TUPLE_STRUCT, "hkbDemoConfigStickVariableInfo", 4)
	HK_PATCH_DEPENDS("hkbDemoConfigStickVariableInfo", 0)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbProxyModifier", 0, "hkbProxyModifier", 1)
	HK_PATCH_MEMBER_ADDED("includeDownwardMomentum", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("followWorldFromModel", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("isTouchingGround", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbProxyModifier_0_to_1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbDampingModifier", 0, "hkbDampingModifier", 1)
	HK_PATCH_MEMBER_ADDED("enableScalarDamping", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("enableVectorDamping", TYPE_BYTE, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("rawVector", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("dampedVector", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("vecErrorSum", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_MEMBER_ADDED("vecPreviousError", TYPE_VEC_4, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbDampingModifier_0_to_1)
HK_PATCH_END()

HK_PATCH_BEGIN("hkbVariableBindingSet", 1, "hkbVariableBindingSet", 2)
        HK_PATCH_MEMBER_ADDED("indexOfBindingToEnable", TYPE_INT, HK_NULL, 0)
	HK_PATCH_FUNCTION(hkbVariableBindingSet_1_to_2)
HK_PATCH_END()

/*
* Havok SDK - NO SOURCE PC DOWNLOAD, BUILD(#20090216)
* 
* Confidential Information of Havok.  (C) Copyright 1999-2009
* Telekinesys Research Limited t/a Havok. All Rights Reserved. The Havok
* Logo, and the Havok buzzsaw logo are trademarks of Havok.  Title, ownership
* rights, and intellectual property rights in the Havok software remain in
* Havok and/or its suppliers.
* 
* Use of this software for evaluation purposes is subject to and indicates
* acceptance of the End User licence Agreement for this product. A copy of
* the license is included with this software and is also available at www.havok.com/tryhavok.
* 
*/
