This page explains how to use your own character with Survival Pack.
{"docsConfig":{"theme":"palm","$schema":"https://mintlify.com/docs.json","name":"Kinemation","colors":{"primary":"#6B4FE8","light":"#EDE9FB","dark":"#2D1F7A"},"logo":{"light":"https://mintcdn.com/kinemation/Oe4SC8lqotg2knLA/images/Kinemation_Logo_Circle.svg?fit=max\u0026auto=format\u0026n=Oe4SC8lqotg2knLA\u0026q=85\u0026s=6a2a2b50270f33282685e0eeb7466c37","dark":"https://mintcdn.com/kinemation/Oe4SC8lqotg2knLA/images/Kinemation_Logo_Circle.svg?fit=max\u0026auto=format\u0026n=Oe4SC8lqotg2knLA\u0026q=85\u0026s=6a2a2b50270f33282685e0eeb7466c37"},"favicon":{"light":"https://mintcdn.com/kinemation/Oe4SC8lqotg2knLA/images/Kinemation_Logo_Circle.svg?fit=max\u0026auto=format\u0026n=Oe4SC8lqotg2knLA\u0026q=85\u0026s=6a2a2b50270f33282685e0eeb7466c37","dark":"https://mintcdn.com/kinemation/Oe4SC8lqotg2knLA/images/Kinemation_Logo_Circle.svg?fit=max\u0026auto=format\u0026n=Oe4SC8lqotg2knLA\u0026q=85\u0026s=6a2a2b50270f33282685e0eeb7466c37"},"navbar":{"links":[],"primary":{"type":"github","href":"https://github.com/kinemation"}},"footer":{"socials":{"youtube":"https://www.youtube.com/@kinemationstudio","discord":"https://discord.gg/kinemation-1027338787958816860"}},"integrations":{"ga4":{"measurementId":"G-QPSE9FYEMW"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"kinemation","hasAudioNarration":false,"actualSubdomain":"kinemation","customDomains":["docs.kinemation.xyz"],"gitSource":{"type":"github","owner":"kinemation","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6aeb42a9119a07d709eb4dd4","collectionId":"b65d8168-028a-444d-8d2d-b45bb94b499b","liveDeploymentHistoryId":"6aeb42a9119a07d709eb4dd4","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aeb42a9119a07d709eb4dd4","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Unreal Engine","count":82},{"language":"default","tag":"Unity","count":72},{"language":"default","tag":"Character Animation System","count":65},{"language":"default","tag":"General","count":54},{"language":"default","tag":"Survival Pack","count":47},{"language":"default","tag":"Scriptable Animation System","count":45},{"language":"default","tag":"Sci-Fi FPS Pack","count":41},{"language":"default","tag":"Tactical Shooter Pack","count":38},{"language":"default","tag":"Tutorials","count":32},{"language":"default","tag":"FPS Animation Pack","count":30}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@kinemation.xyz"}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":"main :is(img, video){display:block;max-width:min(var(--kinemation-image-max-width),100%);height:auto;margin-inline:auto}main .frame{max-width:min(var(--kinemation-image-max-width),100%);margin-inline:auto}main .frame :is(img, video){max-width:100%}:root{--kinemation-image-max-width:75%;--kinemation-callout-text-light:#4b5563;--kinemation-callout-text-dark:#f3f4f6}[data-component-part=callout-content]{color:var(--kinemation-callout-text-light)!important}html.dark [data-component-part=callout-content]{color:var(--kinemation-callout-text-dark)!important}"}],"page":{"pagePath":"survival-pack/unreal/get-started/character-setup","slug":"/survival-pack/unreal/get-started/character-setup","pageMetadata":{"title":"Character setup","sidebarTitle":"🔸 Character setup","description":"This page explains how to use your own character with Survival Pack.","href":"/survival-pack/unreal/get-started/character-setup"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"This page explains how to use your own character with Survival Pack.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const __snippet_ApplyAnimationOverride_ycw3uj=({characterBlueprintName,targetMeshName,overrideAssetName,finalMeshImageCaption,finalMeshImage,finalStateImageCaption,finalStateImage})=>{const{Frame}=_provideComponents()||{};if(!Frame)_missingMdxReference(`Frame`,true);return _jsxs(_Fragment,{children:[_jsxs(`p`,{children:[`Open `,_jsx(`code`,{children:characterBlueprintName}),`. Select `,_jsx(`strong`,{children:`Mesh`}),` and set `,_jsx(`strong`,{children:`Skeletal Mesh Asset`}),` to your character model, shown here as `,_jsx(`code`,{children:targetMeshName}),`.`]}),_jsx(Frame,{caption:finalMeshImageCaption,children:finalMeshImage}),_jsxs(`p`,{children:[`Select the character's `,_jsx(`code`,{children:`AC_GameplayAnimation`}),` component and add `,_jsx(`code`,{children:overrideAssetName}),` to `,_jsx(`strong`,{children:`Overrides`}),`. Compile and save the Blueprint.`]}),_jsx(Frame,{caption:finalStateImageCaption,children:finalStateImage})]})};const __snippet_RetargetAnimations_ycw3uj=({productName,targetMeshName,overrideAssetName,createOverrideImageCaption,createOverrideImage,targetConfigName,targetConfigImageCaption,targetConfigImage,retargetActionImageCaption,retargetActionImage,ikRetargeterName,retargeterImageCaption,retargeterImage,resultFolderName,resultFolderImageCaption,resultFolderImage})=>{const{Frame,Step,Steps}=_provideComponents()||{};if(!Frame)_missingMdxReference(`Frame`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);return _jsxs(_Fragment,{children:[_jsx(`p`,{children:`Retargeting adapts the pack's animations to your character's Skeleton. An animation override stores the replacements, so you do not need to change the animation references on every item.`}),_jsxs(Steps,{children:[_jsxs(Step,{title:`Create an animation override`,children:[_jsxs(`p`,{children:[`In the `,_jsx(`strong`,{children:`Content Browser`}),`, right-click `,_jsx(`code`,{children:targetMeshName}),` and select `,_jsx(`strong`,{children:`Scripted Asset Actions ▸ Create Animation Override`}),`. This creates `,_jsx(`code`,{children:overrideAssetName}),`.`]}),_jsx(Frame,{caption:createOverrideImageCaption,children:createOverrideImage})]}),_jsxs(Step,{title:`Select the animation configuration`,children:[_jsxs(`p`,{children:[`Open the override. Set `,_jsx(`strong`,{children:`Config`}),` to `,_jsx(`code`,{children:targetConfigName}),` and `,_jsx(`strong`,{children:`Character Mesh`}),` to your model. The configuration lists the pack's source animations and Animation Blueprints.`]}),_jsx(Frame,{caption:targetConfigImageCaption,children:targetConfigImage})]}),_jsxs(Step,{title:`Retarget the animations`,children:[_jsxs(`p`,{children:[`Right-click the override and select `,_jsx(`strong`,{children:`Scripted Asset Actions ▸ Retarget Animations`}),`.`]}),_jsx(Frame,{caption:retargetActionImageCaption,children:retargetActionImage}),_jsxs(`p`,{children:[`Choose your `,_jsx(`strong`,{children:`IKRetargeter`}),`. The example uses `,_jsx(`code`,{children:ikRetargeterName}),`. Check the `,_jsx(`strong`,{children:`Source Mesh`}),` and `,_jsx(`strong`,{children:`Target Mesh`}),`, review the `,_jsx(`strong`,{children:`Animations`}),` and `,_jsx(`strong`,{children:`Anim Blueprints`}),` lists, then click `,_jsx(`strong`,{children:`Retarget`}),`.`]}),_jsx(Frame,{caption:retargeterImageCaption,children:retargeterImage})]}),_jsxs(Step,{title:`Save the results`,children:[_jsxs(`p`,{children:[`Choose a folder for the retargeted assets, such as `,_jsx(`code`,{children:resultFolderName}),`. Then right-click `,_jsx(`code`,{children:overrideAssetName}),` and select `,_jsx(`strong`,{children:`Scripted Asset Actions ▸ Update Override`}),`. This adds the retargeted animations and Animation Blueprints to the override.`]}),_jsx(Frame,{caption:resultFolderImageCaption,children:resultFolderImage})]})]}),_jsx(`h3`,{id:`after-a-pack-update`,children:`After a pack update`}),_jsxs(`p`,{children:[`Use the same override workflow when an update to `,productName,` adds or changes animations. Check that the configuration includes those animations, retarget them for your character, and run `,_jsx(`strong`,{children:`Update Override`}),` again. Keep your override assigned to the character so it uses the updated animations.`]})]})};const __snippet_CharacterBlueprint_ycw3uj=({characterPath,characterName,projectCharacterName,componentsImage,itemsImage,characterLink})=>{const _components={a:`a`,..._provideComponents()};return _jsxs(_Fragment,{children:[_jsxs(`p`,{children:[`Go to `,_jsx(`code`,{children:characterPath}),` and find `,_jsx(`code`,{children:characterName}),`. Right-click it and choose `,_jsx(`strong`,{children:`Duplicate`}),`. Name the copy `,_jsx(`code`,{children:projectCharacterName}),`, then open it.`]}),componentsImage,_jsxs(`p`,{children:[`The character already includes the components needed for movement, animation, camera motion, and recoil. Select `,_jsx(`strong`,{children:`Mesh`}),` to change the character model and `,_jsx(`code`,{children:`AC_GameplayAnimation`}),` to assign the animation override in the next step.`]}),_jsxs(`p`,{children:[`Open `,_jsx(`strong`,{children:`Class Defaults`}),` to adjust the character settings:`]}),_jsxs(`table`,{children:[_jsx(`thead`,{children:_jsxs(`tr`,{children:[_jsx(`th`,{children:`Setting`}),_jsx(`th`,{children:`What it does`})]})}),_jsxs(`tbody`,{children:[_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(`strong`,{children:`Item Classes`})}),_jsx(`td`,{children:`The weapons and items available to the character.`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(`strong`,{children:`Movement Speeds`})}),_jsx(`td`,{children:`The character's movement speeds.`})]}),_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(`strong`,{children:`Mouse Sensitivity`})}),_jsx(`td`,{children:`How quickly the character turns when you move the mouse.`})]})]})]}),itemsImage,_jsxs(`p`,{children:[`See `,_jsx(_components.a,{href:characterLink,children:`Character`}),` for more details about the components and settings.`]})]})};const __snippet_VirtualBones_ycw3uj=({skeletonAssetName,bones})=>_jsxs(_Fragment,{children:[_jsxs(`p`,{children:[`Add the following virtual bones to `,skeletonAssetName,`. The procedural animation uses them to position the hands, held item, elbows, and camera.`]}),_jsxs(`p`,{children:[`Open the Skeleton and find the parent bone in the `,_jsx(`strong`,{children:`Skeleton Tree`}),`. Right-click it, choose `,_jsx(`strong`,{children:`Add Virtual Bone`}),`, and select the target bone. Rename the new entry to match the table, including Unreal's `,_jsx(`code`,{children:`VB`}),` prefix.`]}),_jsx(`p`,{children:`Add the bones in the listed order so each parent exists before you create its children.`}),_jsxs(`table`,{children:[_jsx(`thead`,{children:_jsxs(`tr`,{children:[_jsx(`th`,{children:`Virtual bone`}),_jsx(`th`,{children:`Parent`}),_jsx(`th`,{children:`Target`})]})}),_jsx(`tbody`,{children:bones.map(bone=>_jsxs(`tr`,{children:[_jsx(`td`,{children:_jsx(`code`,{children:bone.name})}),_jsx(`td`,{children:_jsx(`code`,{children:bone.parent})}),_jsx(`td`,{children:_jsx(`code`,{children:bone.target})})]},bone.name))})]}),_jsx(`p`,{children:`Keep existing entries if their names, parents, and targets already match. Save the Skeleton before continuing.`})]});const CharacterSetup=({installationLink,configurationNotes,targetMeshName,overrideAssetName,productName,targetConfigName,ikRetargeterName,characterPath,characterName,projectCharacterName,componentsImage,itemsImage,characterLink,additionalEquipment,integrationLink,testInstructions,adjustmentsLink})=>{const _components={a:`a`,..._provideComponents()};return _jsxs(_Fragment,{children:[_jsx(`h2`,{id:`before-you-begin`,children:`Before you begin`}),_jsxs(`p`,{children:[`Follow `,_jsx(_components.a,{href:installationLink,children:`Installation`}),` and confirm that the demo runs. Import your custom Skeletal Mesh before continuing.`]}),_jsx(`h2`,{id:`add-virtual-bones`,children:`Add virtual bones`}),_jsx(`p`,{children:`Virtual bones are helper bones that the Animation Blueprints use for IK.`}),_jsx(__snippet_VirtualBones_ycw3uj,{skeletonAssetName:`your character's Skeleton`,bones:[{name:`VB ik_hand_gun`,parent:`head`,target:`ik_hand_gun`},{name:`VB hand_r`,parent:`VB ik_hand_gun`,target:`hand_r`},{name:`VB hand_l`,parent:`VB ik_hand_gun`,target:`hand_l`},{name:`VB lowerarm_r`,parent:`VB ik_hand_gun`,target:`lowerarm_r`},{name:`VB lowerarm_l`,parent:`VB ik_hand_gun`,target:`lowerarm_l`},{name:`VB ik_hand_gun_r`,parent:`hand_r`,target:`ik_hand_gun`},{name:`VB ik_hand_gun_l`,parent:`hand_l`,target:`ik_hand_gun`},{name:`VB Curves`,parent:`root`,target:`root`},{name:`VB Camera`,parent:`root`,target:`head`}]}),_jsx(`h2`,{id:`retarget-the-animations`,children:`Retarget the animations`}),configurationNotes,_jsxs(`p`,{children:[`The examples below call your custom mesh `,_jsx(`code`,{children:targetMeshName}),` and its override `,_jsx(`code`,{children:overrideAssetName}),`. Use your own asset names when following the steps.`]}),_jsx(__snippet_RetargetAnimations_ycw3uj,{productName,targetMeshName,overrideAssetName,targetConfigName,ikRetargeterName,resultFolderName:`Retargeted`,createOverrideImageCaption:`Create an animation override from your custom Skeletal Mesh.`,createOverrideImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/CreateAnimationOverrideMenu.png`,alt:`Create Animation Override under Scripted Asset Actions for a custom mesh`}),targetConfigImageCaption:`Assign the pack's configuration and your character mesh. The screenshot illustrates the shared interface.`,targetConfigImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationOverride_AssignTargetConfig.png`,alt:`Shared animation override interface with Config and Character Mesh fields`}),retargetActionImageCaption:`Open Retarget Animations for the override asset.`,retargetActionImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationOverride_RetargetAnimations.png`,alt:`Retarget Animations in the animation override context menu`}),retargeterImageCaption:`Choose an IK Retargeter for your source and target Skeletons.`,retargeterImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationOverride_Retarget_PickIKRetargeterAsset.png`,alt:`Override Retarget window with source, target, and IK Retargeter settings`}),resultFolderImageCaption:`Save the generated animations and Animation Blueprints in your project folder.`,resultFolderImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationOverride_Retarget_ResultFolder.png`,alt:`Retargeted folder and animation override in the Content Browser`})}),_jsx(`h2`,{id:`set-up-the-character-blueprint`,children:`Set up the character Blueprint`}),_jsx(__snippet_CharacterBlueprint_ycw3uj,{characterPath,characterName,projectCharacterName,componentsImage,itemsImage,characterLink}),additionalEquipment,_jsx(`h2`,{id:`assign-the-animation-override`,children:`Assign the animation override`}),_jsx(__snippet_ApplyAnimationOverride_ycw3uj,{characterBlueprintName:projectCharacterName,targetMeshName,overrideAssetName,finalMeshImageCaption:`Set your target mesh on the character Blueprint's Mesh component.`,finalMeshImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationOverride_AssignCustomCharacterMesh.png`,alt:`Character Blueprint Mesh component with a custom Skeletal Mesh Asset`}),finalStateImageCaption:`Add the animation override to the character's animation component.`,finalStateImage:_jsx(`img`,{src:`/images/gameplay-framework/unreal/AnimationSettings_AddAnimationOverrideAsset.png`,alt:`Gameplay Animation component Overrides list containing a character override`})}),_jsx(`h2`,{id:`test-your-character`,children:`Test your character`}),_jsxs(`p`,{children:[`Set `,_jsx(`code`,{children:projectCharacterName}),` as the GameMode's`,` `,_jsx(`strong`,{children:`Default Pawn Class`}),`. Assign that GameMode in the map's`,` `,_jsx(`strong`,{children:`World Settings`}),`. See`,` `,_jsx(_components.a,{href:integrationLink,children:`Project integration`}),` for the GameMode and input setup.`]}),testInstructions,_jsx(`p`,{children:`Check that the hands stay aligned with the item. If animation looks wrong, check the virtual bones, IK Retargeter, and assigned override.`}),_jsxs(`p`,{children:[`Continue to `,_jsx(_components.a,{href:adjustmentsLink,children:`Making adjustments`}),` to tune item placement and motion.`]})]})};function _createMdxContent(props){const _components={code:`code`,img:`img`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Frame,_MdxComponentBoundary}=_components;if(!Frame)_missingMdxReference(`Frame`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsx(_MdxComponentBoundary,{name:`CharacterSetup`,children:_jsx(CharacterSetup,{productName:`Survival Pack`,installationLink:`/survival-pack/unreal/get-started/installation`,targetMeshName:`SKM_Operator`,overrideAssetName:`DA_SKM_Operator_Override`,targetConfigName:`DA_SurvivalPack_Config`,ikRetargeterName:`IKRetargeter_UE5_UE5`,configurationNotes:_jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`For UE5 source animations, use `,_jsx(_components.code,{children:`/Game/KINEMATION/Survival_FPS_Pack/Animations/Character/UE5/DA_SurvivalPack_Config`}),`. Its retargeter is `,_jsx(_components.code,{children:`UE5/Retargeting/IKRetargeter_UE5_UE5`}),`, relative to the Character animation folder.`]}),_jsxs(_components.p,{children:[`For UE4 source animations, use `,_jsx(_components.code,{children:`UE4/DA_SurvivalPack_UE4_Config`}),` and `,_jsx(_components.code,{children:`UE4/Retargeting/IKRetargeter_UE4_UE4`}),`. Choose the configuration and retargeter for the same source family.`]})]}),characterPath:`/Game/KINEMATION/Survival_FPS_Pack/Blueprints`,characterName:`BP_Survival_Character`,projectCharacterName:`BP_Survival_Example_Character`,componentsImage:_jsx(Frame,{caption:`The Survival character inherits the components used by its animation, camera, movement, and recoil.`,children:_jsx(_components.img,{src:`https://mintcdn.com/kinemation/ZGatOp3ICUy8H4tB/survival-pack/unreal/images/survival-pack_character-blueprint_components-hierarchy.png?fit=max\u0026auto=format\u0026n=ZGatOp3ICUy8H4tB\u0026q=85\u0026s=5e6072dc3479beb5caa268fa549b0479`,alt:`BP_Survival_Character component hierarchy with gameplay animation, IK motion, camera, and recoil components`})}),itemsImage:_jsx(Frame,{caption:`Item Classes selects the regular weapons, tools, and water bottle.`,children:_jsx(_components.img,{src:`https://mintcdn.com/kinemation/ZGatOp3ICUy8H4tB/survival-pack/unreal/images/survival-pack_character-blueprint_items-list.png?fit=max\u0026auto=format\u0026n=ZGatOp3ICUy8H4tB\u0026q=85\u0026s=f75bd2904586407cb1ed47e9eb124abb`,alt:`Nine regular Item Classes on BP_Survival_Character`})}),additionalEquipment:_jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Choose food and medicine in `,_jsx(_components.strong,{children:`Consumable Classes`}),`. These items temporarily replace the regular equipment while you use them.`]}),_jsx(Frame,{caption:`Consumable Classes selects food and medicine separately from regular equipment.`,children:_jsx(_components.img,{src:`https://mintcdn.com/kinemation/ZGatOp3ICUy8H4tB/survival-pack/unreal/images/survival-pack_character-blueprint_consumable-list.png?fit=max\u0026auto=format\u0026n=ZGatOp3ICUy8H4tB\u0026q=85\u0026s=eab4d5b441a08c7ef2fed6b608885aa9`,alt:`Eight food and medicine classes in the Unreal character Consumable Classes list`})})]}),characterLink:`/survival-pack/unreal/general/character`,integrationLink:`/survival-pack/unreal/tutorials/project-integration`,adjustmentsLink:`/survival-pack/unreal/get-started/making-adjustments`,testInstructions:`Press Play and test movement, item use, projectile release, a consumable sequence, and item switching.`})})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{__snippet_ApplyAnimationOverride_ycw3uj,__snippet_RetargetAnimations_ycw3uj,__snippet_CharacterBlueprint_ycw3uj,__snippet_VirtualBones_ycw3uj,CharacterSetup,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Character setup","sidebarTitle":"🔸 Character setup","description":"This page explains how to use your own character with Survival Pack.","href":"/survival-pack/unreal/get-started/character-setup"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[175,4413,")=>null;const __snippet_RetargetAnimations_ycw3uj=()=>null;c"],[4455,12574,")=>null;const __snippet_VirtualBones_ycw3uj=()=>null;const CharacterSetup=()=>null;function _createM"]]},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"subdomain":"kinemation","siteName":"Kinemation","title":"Character setup - Kinemation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-04T14:35:39.308Z","originalFileLocation":"survival-pack/unreal/get-started/character-setup.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"This page explains how to use your own character with Survival Pack.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Kinemation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Character setup - Kinemation\">\u003cmeta data-mint-head property=\"og:description\" content=\"This page explains how to use your own character with Survival Pack.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kinemation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://kinemation.mintlify.app/_mintlify/api/og/v2?division=Get+started\u0026amp;title=Character+setup\u0026amp;description=This+page+explains+how+to+use+your+own+character+with+Survival+Pack.\u0026amp;theme=d385265a4ecff8c3e0b74bf5\u0026amp;signature=619e432b71bfd40cd89b8a4bb860d16fd8eeec7f6ea12d01f3ddbd5d720fd8f9\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Character setup - Kinemation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"This page explains how to use your own character with Survival Pack.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://kinemation.mintlify.app/_mintlify/api/og/v2?division=Get+started\u0026amp;title=Character+setup\u0026amp;description=This+page+explains+how+to+use+your+own+character+with+Survival+Pack.\u0026amp;theme=d385265a4ecff8c3e0b74bf5\u0026amp;signature=619e432b71bfd40cd89b8a4bb860d16fd8eeec7f6ea12d01f3ddbd5d720fd8f9\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/kinemation/gXWNzvMHcmAcDlK_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kinemation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6B4FE8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/survival-pack/unreal/get-started/character-setup.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.kinemation.xyz/#organization\",\"name\":\"Kinemation\",\"url\":\"https://docs.kinemation.xyz\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/kinemation/Oe4SC8lqotg2knLA/images/Kinemation_Logo_Circle.svg?fit=max\u0026auto=format\u0026n=Oe4SC8lqotg2knLA\u0026q=85\u0026s=6a2a2b50270f33282685e0eeb7466c37\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.kinemation.xyz#website\",\"name\":\"Kinemation\",\"url\":\"https://docs.kinemation.xyz\",\"publisher\":{\"@id\":\"https://docs.kinemation.xyz/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup#webpage\",\"url\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup\",\"name\":\"Character setup\",\"description\":\"This page explains how to use your own character with Survival Pack.\",\"dateModified\":\"2026-11-04T14:35:39.308Z\",\"isPartOf\":{\"@id\":\"https://docs.kinemation.xyz#website\"},\"breadcrumb\":{\"@id\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Unreal Engine\",\"item\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/installation\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get started\",\"item\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/installation\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Character setup\",\"item\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup#article\",\"headline\":\"Character setup\",\"name\":\"Character setup\",\"description\":\"This page explains how to use your own character with Survival Pack.\",\"url\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup\",\"mainEntityOfPage\":{\"@id\":\"https://docs.kinemation.xyz/survival-pack/unreal/get-started/character-setup#webpage\"},\"dateModified\":\"2026-11-04T14:35:39.308Z\",\"publisher\":{\"@id\":\"https://docs.kinemation.xyz/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.kinemation.xyz#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kinemation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Kinemation","nav":{"global":null,"products":[{"product":"Character Animation System","pages":[{"title":"Character Animation System","href":"/cas/welcome"}]},{"product":"Motion Warping","pages":[{"title":"Motion Warping","href":"/mw/welcome"}]},{"product":"Retarget Pro","pages":[{"title":"Retarget Pro","href":"/retarget-pro/welcome"}]},{"product":"Tactical Shooter Pack","pages":[{"title":"Tactical Shooter Pack","href":"/tactical-shooter-pack/unreal/welcome"}]},{"product":"FPS Animation Pack","pages":[{"title":"FPS Animation Pack","href":"/fps-animation-pack/unreal/welcome"}]},{"product":"PRAS","pages":[{"title":"PRAS","href":"/pras/welcome"}]},{"product":"Magic Blend","pages":[{"title":"Magic Blend","href":"/magic-blend/readme"}]},{"product":"Scriptable Animation System","pages":[{"title":"Scriptable Animation System","href":"/scriptable-animation-system/welcome"}]},{"product":"Sci-Fi FPS Pack","pages":[{"title":"Sci-Fi FPS Pack","href":"/sci-fi-fps-pack/welcome"}]},{"product":"Survival Pack","pages":[{"title":"👋Welcome","sidebarTitle":"👋Welcome","href":"/survival-pack/welcome"},{"group":"Unreal Engine","pages":[{"group":"Get started","pages":[{"title":"Installation","sidebarTitle":"🔹 Installation","href":"/survival-pack/unreal/get-started/installation"},{"title":"Content overview","sidebarTitle":"🔹 Content overview","description":"Find the character, items, animations, sounds, and effects included in Survival Pack.","href":"/survival-pack/unreal/get-started/content-overview"},{"title":"Character setup","sidebarTitle":"🔸 Character setup","href":"/survival-pack/unreal/get-started/character-setup"},{"title":"Making adjustments","sidebarTitle":"🔸 Making adjustments","description":"Adjust how the character holds and uses an item, then tune aiming and recoil for weapons.","href":"/survival-pack/unreal/get-started/making-adjustments"}]},{"group":"Tutorials","pages":[{"title":"Animation setup","sidebarTitle":"🔸 Animation setup","href":"/survival-pack/unreal/tutorials/animation-setup"},{"title":"Project integration","sidebarTitle":"🔹 Project integration","href":"/survival-pack/unreal/tutorials/project-integration"},{"title":"Create an item","sidebarTitle":"🔹 Create an item","href":"/survival-pack/unreal/tutorials/create-an-item"}]},{"group":"General","pages":[{"title":"Character","sidebarTitle":"🔹 Character","href":"/survival-pack/unreal/general/character"},{"group":"🔹 Items","root":{"title":"Items","sidebarTitle":"Items","href":"/survival-pack/unreal/general/items/index"},"pages":[{"title":"Weapons","sidebarTitle":"🔹 Weapons","href":"/survival-pack/unreal/general/items/weapons"},{"title":"Tools","sidebarTitle":"🔹 Tools","href":"/survival-pack/unreal/general/items/tools"},{"title":"Consumables","sidebarTitle":"🔹 Consumables","href":"/survival-pack/unreal/general/items/consumables"}]},{"title":"Visual effects","sidebarTitle":"🔹 Visual effects","href":"/survival-pack/unreal/general/visual-effects"},{"title":"Gameplay animation","sidebarTitle":"🔸 Gameplay animation","href":"/survival-pack/unreal/general/gameplay-animation"},{"title":"Animation settings","sidebarTitle":"🔸 Animation settings","href":"/survival-pack/unreal/general/animation-settings"},{"title":"First-person camera","sidebarTitle":"🔸 First-person camera","href":"/survival-pack/unreal/general/first-person-camera"},{"title":"IK motion","sidebarTitle":"🔸 IK motion","href":"/survival-pack/unreal/general/ik-motion"},{"title":"Recoil","sidebarTitle":"🔸 Recoil","href":"/survival-pack/unreal/general/recoil"},{"group":"Notifies","pages":[{"title":"Launch Projectile","sidebarTitle":"🔸 Launch Projectile","href":"/survival-pack/unreal/general/animation-notifies/launch-projectile"},{"title":"Use Consumable","sidebarTitle":"🔸 Use Consumable","href":"/survival-pack/unreal/general/animation-notifies/use-consumable"},{"title":"Play sound","sidebarTitle":"🔸 Play sound","href":"/survival-pack/unreal/general/animation-notifies/play-sound"},{"title":"Set bone visibility","sidebarTitle":"🔸 Set bone visibility","href":"/survival-pack/unreal/general/animation-notifies/set-bone-visibility"},{"title":"Reload weapon","sidebarTitle":"🔸 Reload weapon","href":"/survival-pack/unreal/general/animation-notifies/reload-weapon"},{"title":"Spawn casing","sidebarTitle":"🔸 Spawn casing","href":"/survival-pack/unreal/general/animation-notifies/spawn-casing"}]},{"group":"Modifiers","pages":[{"title":"Bone motion extractor","sidebarTitle":"🔸 Bone motion extractor","href":"/survival-pack/unreal/general/animation-modifiers/bone-motion-extractor"},{"title":"Camera motion extractor","sidebarTitle":"🔸 Camera motion extractor","href":"/survival-pack/unreal/general/animation-modifiers/camera-motion-extractor"},{"title":"Copy curves","sidebarTitle":"🔸 Copy curves","href":"/survival-pack/unreal/general/animation-modifiers/copy-curves"}]}]}]},{"group":"Unity","pages":[{"group":"Get started","pages":[{"title":"💻 Installation","sidebarTitle":"💻 Installation","href":"/survival-pack/unity/get-started/installation"},{"title":"📖 Content overview","sidebarTitle":"📖 Content overview","href":"/survival-pack/unity/get-started/content-overview"},{"title":"🏃 Character setup","sidebarTitle":"🏃 Character setup","href":"/survival-pack/unity/get-started/character-setup"},{"title":"Making adjustments","sidebarTitle":"🔸 Making adjustments","href":"/survival-pack/unity/get-started/making-adjustments"}]},{"group":"General","pages":[{"title":"🔸 Animation system","sidebarTitle":"🔸 Animation system","href":"/survival-pack/unity/general/animation-system"},{"group":"🔸 Procedural animation","root":{"title":"Procedural animation","sidebarTitle":"Procedural animation","href":"/survival-pack/unity/general/features/index"},"pages":[{"title":"◻️Viewmodel offset","sidebarTitle":"◻️Viewmodel offset","href":"/survival-pack/unity/general/features/viewmodel-offset"},{"title":"◻️ADS","sidebarTitle":"◻️ADS","href":"/survival-pack/unity/general/features/ads"},{"title":"◻️Procedural additives","sidebarTitle":"◻️Procedural additives","href":"/survival-pack/unity/general/features/procedural-additives"},{"title":"◻️Sway","sidebarTitle":"◻️Sway","href":"/survival-pack/unity/general/features/sway"},{"title":"◻️Aim offset","sidebarTitle":"◻️Aim offset","href":"/survival-pack/unity/general/features/aim-offset"}]},{"title":"Item View","sidebarTitle":"🔹 Item View","href":"/survival-pack/unity/general/item-views"},{"group":"🔹 Items","root":{"title":"Items","sidebarTitle":"Items","href":"/survival-pack/unity/general/items/index"},"pages":[{"title":"Weapons","sidebarTitle":"🔹 Weapons","href":"/survival-pack/unity/general/items/weapons"},{"title":"Tools","sidebarTitle":"🔹 Tools","href":"/survival-pack/unity/general/items/tools"},{"title":"Consumables","sidebarTitle":"🔹 Consumables","href":"/survival-pack/unity/general/items/consumables"}]},{"title":"Character","sidebarTitle":"🔹 Character","href":"/survival-pack/unity/general/character-runtime"}]},{"group":"Tools","pages":[{"title":"🛠️Animation Clip Sampler","sidebarTitle":"🛠️Animation Clip Sampler","href":"/survival-pack/unity/tools/animation-clip-sampler"},{"title":"🛠️Copy Bone","sidebarTitle":"🛠️Copy Bone","href":"/survival-pack/unity/tools/copy-bone"},{"title":"🛠️FBX Exporter","sidebarTitle":"🛠️FBX Exporter","href":"/survival-pack/unity/tools/fbx-exporter"},{"title":"🛠️Modify Avatar Mask","sidebarTitle":"🛠️Modify Avatar Mask","href":"/survival-pack/unity/tools/modify-avatar-mask"},{"title":"🛠️Update Packages","sidebarTitle":"🛠️Update Packages","href":"/survival-pack/unity/tools/update-packages"}]}]}]}]},"basePath":"","title":"Character setup - Kinemation","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":[],"chunks":[]}