No announcement yet.

Weapon Master VR Support Thread

  • Filter
  • Time
  • Show
Clear All
new posts

    [RELEASED] Weapon Master VR Support Thread

    Click image for larger version  Name:	weaponmaster_banner.jpg Views:	1 Size:	499.1 KB ID:	1205212

    Release Version (1.0.4) out now on Unreal Marketplace and!

    Preliminary Oculus Rift Support out now in 1.0.4!

    Join us on Discord!
    Wanna know what we are working on or what is coming to Weapon Master in the future? Check our Trello!
    At its core Weapon Master VR is designed to be complex yet easy to use blueprint weapon system that will help you jump start your VR game development. A product of over 300 hours of development, Weapon Master gives you access to an ever growing feature set that is both powerful and easily extendable. Creating objects to pick up and interact with is as easy as providing a mesh and extending the appropriate class, or if you are looking for more "turn key" solutions Weapon Master, as of Version 1.0, has four ready to use weapon types including magazine firearms, and the bow and arrow. Along with an intuitive inventory system, and roomscale ready locomotion, we hope the full gamut of features in Weapon Master helps you achieve the game you wish to create.

    Over time we hope to grow Weapon Master VR into the most comprehensive VR weapon system available on the Unreal Engine Marketplace.

    Note: Weapon Master VR is not currently multiplayer ready.

    Version 1.0.1 Overview


    Example Level

    Magazine Firearms

    Basic Firearms

    Bow and Arrow

    VR Character - Class that handles all interaction, and works as both an ammo repository and an inventory.
    Traditional Locomotion - Traditional locomotion with collision that works regardless of where you stand in the roomscale playspace.
    Directional Teleportation - A comfort mode that allows teleportation similar to traditional movement but without possible nausea.
    Static Mesh Pickup - Class that can be extended to pick up a static mesh.
    Skeletal Mesh Pickup - Class that can be extended to pick up a skeletal mesh.
    Basic Firearms - Simple guns that function more like weapons in traditional games and use traditional ammo handling (Pistol and Assault Rifle included).
    Magazine Firearms - Advanced Firearms that use external or internal magazines and feature fully interactive weapon handling (Pistol, Assault Rifle, and Shotgun included!).
    Attachment System 1.0 - Firearms can attach scopes, iron sights, and flashlights to guns set to accept them. Guns can even be set to spawn with attachments (ACOG Scope, Ironsight, canted Ironsight, and flashlight attachments included!).
    Recoil - All firearms have fully adjustable per shot recoil.
    Bloom - All firearms have fully adjustable per shot inaccuracy.
    Stabilization system - Use your off hand to stabilize the weapon and reduce recoil.
    Two Handed Aim - Use your left hand to help aim long guns.
    Bullet System - Both hitscan and projectile bullets (Can be bypassed to us a third party system if desired).
    Effects system - Create arrays of hit effects, hit sounds and bullet decals and let the system spawn them randomly on hit.
    Bow and arrow - simple bow and arrow system.
    Sounds - demo sounds for each weapon.
    Test AI - Simple wander and attack test AI with zombie character.
    Zombie Wave Example Level - Level that shows everything off in a game like setting.
    Shooting Range Test Level - Level that works as test range for weapons and features.

    How To Set Up Weapon Master VR (Marketplace Version)

    Warning: It is not recommended to migrate Weapon Master VR into a already created project!

    Recommended set up procedure
    1. Select Create New Project using Weapon Master Asset in MP Vault
    2. Name your new project
    3. Select engine version
    4. Hit create
    5. Migrate files from your old project (if you have one) into this new project.

    Weapon Master Setup Tutorials
    Weapon Master Setup Part 1: Installing Weapon Master VR Correctly and Collision Object Types

    Weapon Master Function Tutorials Every Monday 2:30 - 5pm until I run out of topics
    Weapon Master Basics Episode 1: Basic Static and Skeletal Mesh Pickups
    Weapon Master Basics Episode 2: Creating a Custom Melee Weapon From a Static Mesh
    Weapon Master Basics Episode 3: Bows and Arrows Part 1

    Tutorials (Old)

    Heavy Diesel Softworks
    Attached Files
    Last edited by OneShotGG; 10-13-2017, 02:55 PM.
    Heavy Diesel Softworks, LLC - Owner

    Current Patch Notes
    Version 1.0.4
    -Updated to 4.17
    -Add preliminary Oclulus Touch support
    Previous Patch Notes
    Version 1.0.2

    Bug Fixes:
    -Firearms will no longer continue firing after being dropped.
    -You can no longer have two ironsights on simple weapons. (Cuz that is OP!)
    -Collision channels streamlined and re-purposed.
    -Fixed bug where the arc of the teleport would disappear
    -Melee weapons should more reliably do damage when stabbing

    New Features

    -In game Menu (BP_InGameMenu): press menu button on your off hand to open the menu. You can set Movement mode, Main Hand, Show FPS, Double Tap To Drop, and Dynamic Main Hand in the menu.
    -The In Game Menu saves your options and loads them every time you start playing.
    -Knife melee weapon added
    -AI Can now support death animations and turn off Ragdoll.

    New Level
    -New Tutorial level added with some explanation of the features of weapon master vr.

    -Due to problems with epic's teleportation and our zombie level I have further expanded upon the teleportation logic. If you want to use epic's navigation based teleportation in its stock state you need to set bUseOriginalTeleportation to true in the Movement section of BP_VRCharacter variables.

    -New functions: LoadVariables, SaveVariables, SetVariables, StartInGameMenu, StopInGameMenu
    -New Variable: bUseOriginalTeleportation- Set to true to use default epic's teleportation.

    -Melee weapons can now have two grip rotations.
    -Melee weapons can now be holstered.
    -New Variables: bUseSecondaryHold, SecondaryHoldTransform, Holster Sound
    -New Functions: AttachToHolster, DetachFromHolster, SwapHoldType

    -new bool variables that will help you handle characters dying with animations
    -bUseDeathAnimation: true if you want to use a death animation
    -bUseRagdollDuringDeathAnimation: true if you want to use a ragdoll at some point in the death animation. Note: You will have to call PointDamageRagdoll, or RadialDamageRagdoll, events from notifies in your animation to get this to work right.
    -bApplyImpulseOnDeath: Whether or not you want to apply force on a character upon death.

    New Blueprints
    -BP_Console: Used for setting up the demo room consoles.
    -BP_InGameMenu: In conjunction with new Wiget Blueprint WB_InGameMenu the in game menu functions!
    -BP_WMSave: Save state blueprint used for saving and loading options in the menu.
    -Struct_PlayerOptions: Easy way to organize options for passing to other blueprints.

    Other Changes
    At metric ton of work has gone into commenting and organizing weapon master for sale on the Market Place. Everything should follow a fairly obvious naming scheme which should be great for those of you using source control!

    Version 1.0.1 Patch Notes

    Now extends from motioncontrollerpawn in Epic VR Template
    Now has 4 movement modes (Teleport, Simple Move, Directional Move, Directional Teleport)
    Supports Left and Right handedness
    Main Hand variable sets what the main hand is. Main hands are defined as the hands that can hold weapons that use the trackpad. Off hands are hands that can do movement.
    bUseDynamicMainHand will allow the player to dynamically change which hand is the main hand based on what hand they pick up a weapon with. Note: This feature currently doesn't work when unholstering but will in 1.0.2.
    MovementModes array is where you set the desired movement modes for the character. MovementMode variable is the starting mode and the current mode.
    All button logic is passed onto the VR_CharacterHand blueprint to handle (Two of these are spawned at begin play.
    VR_Character overrides motioncontrollerpawn's begin play but sets things up almost identically.
    Player data hand now dynamically attaches itself to the current off hand.
    New Functions: InitializeUI, SetPlayerDataHand, ChangeMovementMode, InitializeMovementMode, SetMainHand, GetOffHand.
    New Variables: RightHand, LeftHand, MovementMode, MovementModes, MainHand, bUseDynamicMainHand, DoubleButtonToDrop, PlayerDataLeftHandAdjustTransform, PlayerDataRighthandAdjustTransform, 9mm_Ammo, Max9mm_Ammo, 762x39_Ammo, Max762x39_Ammo, 50cal_Ammo, Max50cal_Ammo, 40cal_Ammo, Max40cal_Ammo, 338L_Ammo, Max338L_Ammo, 300B_Ammo, Max300B_Ammo, 38_Ammo, Max38_Ammo

    Extends from BP_MotionController
    Handles all input calls to weapon master objects and VR_Template Objects
    Overrides GrabActor, ReleaseActor functions of BP_MotionController
    Overrides ActivateTeleportation function of BP_MotionController
    Uses its own Rumble Functions that are based on the functions in BP_MotionController.
    Two of these are spawned on Begin Play
    Weapons you pick up are attached to the scene component Attach Point.
    Trigger is now the pickup button Note: In the future I will add the option to have grab be the pickup button again.

    BP_PhysicalMagazineFirearm and BP_SimpleFirearm
    Simplified stabilization logic that now should keep from unwanted stabilization events being called.
    Added in an AttachmentMode (Main hand menu button) that will allow you to remove attachments. Note: Attachments cannot be removed if attachment mode is not on.
    SideAttachment Illumination On/Off is now triggered by the right track pad button on the main hand.
    Added in a lot of rumble events. Please tell me if you like them or not.
    New Functions: CheckForAttachment, SetAttachmentZoneVisibility, ShowAllAttachmentZones
    New Variables: bDetatchmentModeOn, HandInteractionIntensity, HandInteractionDuration, WeaponInteractionIntensity, WeaponInteractionDuration, WeaponFireIntensity,WeaponFireDuration,WeaponReloadIntensity, WeaponReloadDuration.

    Attached to hand event logic
    New Function: CheckOppositeHandForWeapon
    Rumble added to the bow string
    New Event: Rumble Timer
    New Variables: MaxPullIntensity, FireIntensity, FireDuration, MaxPullDuration.

    BP_MeleeAI_Character (Name Changed)
    under AI SetupVariable Group Added AIMesh and AI_AnimBlueprint variables. Note: These are part of an engine bug workaround that deletes mesh variables every time the engine is started. Hopefully this is fixed soon and this workaround can be removed.
    Set AIMesh to the desired mesh for AI
    Set AI_AnimBlueprint to the desired animation blueprint for the AI

    In order to get teleport to work correctly I had to bypass the navmesh part of the Trace Teleport Distance Function and set the return value bool to return node success.
    Create downward vector set to -2000 instead of -200 to properly find floor when hitting a wall
    Both changes are easily reverted, if you need to know how please ask.
    Upcoming Update: Verson 1.1 (Date:TBD)

    Finished Features:

    Planned Features: (subject to change)
    - Dynamic "Main Handedness" (based on which hand you have picked up a gun in).
    - 2 new guns (Bolt Action Rifle and scifi gun)
    - Addition of rotating bolt logic to Magazine Firearms (for bolt action rifles)
    - Expansion of basic firearms to have access to firing modes via struct array (1 gun can function as multiple different guns)
    - Attachment System 2.0 (silencers, forgrips, etc)
    - Dynamic weapon stats based on attachments (weight, sound, accuracy, recoil, etc).
    - Scope Upgrades and Expansion
    - Red Dot Sights
    - Magazine Animation Upgrade
    - Simple Test Ranged AI

    Future Updates:

    Version 1.2: Breach Loaders (Double barrel shotguns, etc)
    Version 1.3: Revolvers
    Version 1.4: Belt Fed Rifles (LMGs and Mounted Machine guns)
    Version 1.5: Miniguns (stationary guns)
    Version 1.6: Bow expansion (Different types of arrows and ways to choose between them easily, ex. exploding arrows).
    Version 1.7 and beyond: Open to your ideas, wants and desires!
    Last edited by OneShotGG; 08-14-2017, 05:22 PM.
    Heavy Diesel Softworks, LLC - Owner


      I look forward to this


        Originally posted by HeadClot View Post
        I look forward to this
        Thanks! Should have another video up tomorrow covering recoil. Really close to getting stabilization in as well.
        Heavy Diesel Softworks, LLC - Owner


          Originally posted by OneShotGG View Post
          Thanks! Should have another video up tomorrow covering recoil. Really close to getting stabilization in as well.
          Will you be covering bipod weapons?


            Originally posted by HeadClot View Post
            Will you be covering bipod weapons?
            Are you talking about using bipods as an attachment with weapons? If so the video today wont cover that, the type stabilization I am talking about is placing your offhand on a stabilization point (like the front handle part of a rifle) and having the recoil be less than when you "Fire from the Hip".

            We want to try and tackle bipods with the bolt action/sniper rifle update but I am not sure it can be done without custom C++ scripts that mess with how collision is handled with attached actors. That doesn't mean I wont try and figure out a way because I think it would be awesome to have fully working bipods.

            There is a lot of weapon handling stuff that I want to research adding in as well (using both hands to adjust aim, aka moving the pivot point, ect) but we want to keep this blueprint only if at all possible.

            After the initial release the big emphasis is going to be on bug fixes, attachments 2.0 and getting breach loaders, revolvers and bolt action guns in.
            Last edited by OneShotGG; 01-11-2017, 03:04 PM.
            Heavy Diesel Softworks, LLC - Owner


              Recoil and bloom video has been added to second post.
              Heavy Diesel Softworks, LLC - Owner


                Really nice. When are you hoping to have this for sale?


                  Originally posted by tcla75 View Post
                  Really nice. When are you hoping to have this for sale?
                  My hope is to have it submitted by the end of January. I should be finishing Stabilization this weekend and I will be doing the two example levels next week. As long as we don't run into trouble recording the sounds we need I believe I should hit that date for submittal.
                  Heavy Diesel Softworks, LLC - Owner


                    Feel free to release early and then push updates. Marketplace updates are released nightly as opposed to on a specific day so the turnaround time is really fast.

                    You've got a guaranteed sale here.


                      Edit: Ran into an issue that needs fixing. Finished an initial version of stabilization though. Video coming tomorrow.
                      Last edited by OneShotGG; 01-19-2017, 12:11 AM.
                      Heavy Diesel Softworks, LLC - Owner


                        Does this have 2 handed rifle support? I may as well get this instead of struggling to make my own.
                        In League


                          Looks really good. Will buy when out


                            Originally posted by FatMoth View Post
                            Does this have 2 handed rifle support? I may as well get this instead of struggling to make my own.
                            Depends on what you mean by Two handed rifle support.

                            Right now if you move your off hand into the stabilization area and press that controller's trigger you will "attach" the offhand and stabilize the weapon (lowers recoil). You can even drop the rifle with your main hand and it will remain attached to your off hand (for bolt action rifle manipulation). If you want both hands to affect aiming, that isn't currently in, but I plan on adding it at some point as an option (don't quote me but I want this in for the first update if at all possible).

                            Just a heads up everyone, stabilization has taken longer than I initially expected because I am trying to write a system that will work with future attachments like grenade launchers as well. So far I have gone through like 5 different versions until I landed on the one I am currently bug testing. The vive's lack of buttons has made it a huge headache, I cannot wait for the new controller! The video is late in coming but I hope to have it out by tomorrow at the latest.
                            Last edited by OneShotGG; 01-23-2017, 09:07 PM.
                            Heavy Diesel Softworks, LLC - Owner


                              Added stabilization video.
                              Heavy Diesel Softworks, LLC - Owner