Announcement

Collapse
No announcement yet.

FPS-custom-weapon-setup

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    FPS-custom-weapon-setup

    Hello,
    I am currently working on my very first FPS. I made a lot of progress and created a lot of stuff. Now I am confronted with a problem:
    I dont know how to make my BP save information in the gamefiles and then read that info in a multiplayergame multiple times while playing...

    Background information what I need this for:
    I already created BP widgets, weapons and characters so everything works somehow...
    It would start like this:
    A player selects his setup in the lobby wich includes: primary wapon+secondary wapon+pistol+knive+nade+gadet1+gadet2+healing1+healing2
    The primary wapon and also the secondary contains: mainbody + scope + barrel + stock + mag (+texture optional)
    all of the options above have several things to choose from.
    The player would spawn equipped with his inventory. As soon as the player dies and he desides to respawn he has the exact same inventory OR (alternative already working BP,wiget) can create a completly new inventory.


    My Problem:
    It does consume a lot of time to click and select the exact same lodout after respawning, wich is not what I want and if I use the other solution I have, players wont be able to change their inventory at all during the session. Wich could make it boring, because you cant respond to the playstyle of other players during the game.....

    My Solution (I have no clue how to do this):
    So what I thought I might include was a gameinfo.file that is created when the player chooses his inventory. So the idea is to let the player choose 1-3 loadouts (from the gameinfo.file) and after death he can switch within the 3 during the session. How do I create such files that are saved/replaced and compatible with multiplayer? Are there BP that create/replace informations and store it in folders? Is there a limit of information or files created and how do I make a BP read those files?


    Thank you verymuch in advance, if you have questions or want some screenshots etc. feel free to ask

    #2
    Use Save Game Objects: https://docs.unrealengine.com/en-us/...ame/Blueprints
    Last edited by TechLord; 11-17-2018, 02:46 PM.
    HeadlessStudios.com - The RIANTH (Action Horror FPS) - Join Our Discord

    Comment


      #3
      TechLord
      Thanks, I guess thats exactly what I have been looking for

      Comment


        #4
        Originally posted by Max2066 View Post
        TechLord
        Thanks, I guess thats exactly what I have been looking for
        I'm a huge fan of Modular Customization Systems. In fact, we applying a 'real-time kitbashing' philosophy to Armor, Creatures, Vehicles, Machines, Props and of course, Weapons. Our Weapon Customization system, codename: GunVertor (details below) has been in plan stages for years. So I'm very excited to see this system finally come to life.

        From my perspective, the more granularity in visual components, the more personalization. More granularity in attributes associated to components, allows for deeper Player fine tuning. For ExORION, we're separating attributes from the visual components, so players can keep their visual creations, and tweak attributes to give their creations the power they want.

        In regards to saving/load data. I've elected to store Weapon Configuration Data in JSON format. It requires a little more work to encode/decode into datatypes, but the Benefits are worth it in my opinion.
        • Versatility - JSON can store many types of configurations (Weapons, Character, etc);
        • Storage more storage options both locally and remotely (webserver)
        • Network Exchange between clients for sharing Weapon configurations between Players.
        • Popular and well supported.

        I'm a huge fan of social/collaborative creation, thus, we're supporting cooperative customization in which Players and customize their Character, Weapons, Vehicles together. Thus transfer configuration data between players is important for us. I favor the JSON format, but you could effectively use any text-based format. Just a matter of converting the key-value data to strings.


        GunVertor Weapon System
        1. Chamber: The Weapon Core Component in which other components connect into. It is the mechanism loads ammunitions from the ammunition storage into the weapon, applies motivational force, directs ammunition through the barrel, and ejects ammunition byproducts. Chambers effect the amount, type and speed of loading ammunitions.
        2. Barrel: Projects the ammunition. Barrels effect ammunition range and dispersion. Long Barrels produce long range/ narrow dispersion; Shorter Barrel produces short range/wide dispersion. Barrels also provide a ‘heat sinking’ for the weapon.
        3. Loader: Can be attached to the barrel or magazine. Loads ammunition with Hand2.
        4. Trigger: Control mechnism that activates Firing Unit/Mechanism. The Trigger determines how the user can fire the weapon. A weapon can posses multiple triggers.
        5. Firing: Unit This component provides motivational force to a ammunition. High Quality Firing Units can project ammunition a great speeds long distances.
        6. StockGrip: Absorbs Recoil. Recoil can effect weapon handling and accuracy. High Quality Stocks can absorbs greater amounts of recoil. Handgrip attaches to player.
        7. Magazine: Magazine PowerCell Canister are storage components. These components effect Ammunition Refill/Recharge speed and Storage Quantity
        8. AmmoMeter: A 3D HUD Display for Ammo Count associated with the magazine.
        9. Scope: A HUD accessory component that assist in visibility of the target (ie: Zoom, Infrared, Thermovision)
        10. Sight + Cursor: A HUD accessory component that assists in targeting object. Displays Targeting Cursor.
        11. Distorter: This accessory attaches to the Barrel of the weapon to muffle sound of Solid Ammunitions or change the visual characteristics of Energy Ammunitions.
        12. Bayonet: This Blade Weapon accessory attaches to the barrel of the weapon and used as melee weapon.
        13. Deflector (not shown): This accessory attaches to the Chamber or Barrel providing defense shield capability."

        HeadlessStudios.com - The RIANTH (Action Horror FPS) - Join Our Discord

        Comment


          #5
          TechLord

          Wow codename: GunVertor looks amazing, but it would (currently) be way to much for me, I am just a noob after all^^
          However, I still have a question, is there anything important I would need to consider when using the local saved files in multiplayer?
          Would it even work if a player selects his loadout befor joining a session or would that be a problem and how does the server(-> other characters) know what my character has selected?

          Comment


            #6
            Originally posted by Max2066 View Post
            TechLord

            Wow codename: GunVertor looks amazing, but it would (currently) be way to much for me, I am just a noob after all^^
            However, I still have a question, is there anything important I would need to consider when using the local saved files in multiplayer?
            Would it even work if a player selects his loadout befor joining a session or would that be a problem and how does the server(-> other characters) know what my character has selected?
            Store group shared data on the Server, Player specific data on the Client. As long as you have a good understanding of UE4's network replication, you should have no trouble replicating the loadout configs between players.
            HeadlessStudios.com - The RIANTH (Action Horror FPS) - Join Our Discord

            Comment


              #7
              TechLord "As long as you have a good understanding of UE4's network replication"...
              I have almost non. I know how to tick the box where it says replicate and then select all, serveronly or client only...

              Comment


                #8
                Originally posted by Max2066 View Post
                TechLord "As long as you have a good understanding of UE4's network replication"...
                I have almost non. I know how to tick the box where it says replicate and then select all, serveronly or client only...
                Ticking those boxes don't do much, if you know don't how they work. I recommend deep diving into learning Blueprints Replication if your plan is to develop a Multiplayer Game. Unless the game is restricted to Local Multiplayer via split screen, you'll need to understand and work with Blueprints Replication for Lan/Internet Multiplayer. Below are references I use to learn and implement BP Networking.

                There several rules to remember when implementing BP Networking. However, the #1 Rule: All info that needs to be replicated has to be replicated from the SERVER!

                References

                Videos

                https://www.youtube.com/playlist?lis...SFPRiBpwe5sTwc
                https://youtu.be/z7DI17JAGQM
                https://youtu.be/hDRoglljXjo
                https://www.youtube.com/watch?v=J0bLy3AVJt4


                Documents

                Techlord's BP Networking Design Patterns
                https://docs.unrealengine.com/en-us/Gameplay/Networking
                http://cedric-neukirchen.net/Downloa...Neukirchen.pdf
                https://docs.google.com/presentation...it?usp=sharing
                Last edited by TechLord; 11-19-2018, 05:33 AM.
                HeadlessStudios.com - The RIANTH (Action Horror FPS) - Join Our Discord

                Comment


                  #9
                  thank you very much

                  Comment

                  Working...
                  X