Announcement

Collapse
No announcement yet.

Announcing Section #2 for Survival Game - Weapons & Interaction

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

    #31
    Originally posted by ZioYuri78 View Post
    I want to wait the release of documentation of this section before start with question but i really don't understand how impact determines the surface, i understand the code (i hope ), what i'm not understand is why if i change the mesh of the "dummy" character and i use something like the Prototype character mesh from marketplace , the impact effect change from FleshFX to DefaultFX.

    Have i to add physical material to the new character mesh?
    For skeletal meshes you need to use the PhysicsAssets next to it to set the PhysicalMaterial type for every collision primitive that is set in the asset. This is different from Static meshes that retrieve this PhysicalMaterial reference through the shader material that you applied.

    Originally posted by Kaskokamka
    Hi Tom!

    When I try to open 'Flashlight Pickup' or 'RiflePickup' I get "Blueprint could not be loaded because it derives from an invalid class. Check to make sure the parent class for this blueprint hasn't been removed!". I see that they have parent class 'None'
    Any idea why is it like this and how to fix it?
    Hm, first thing to check is if the binary is OK. So, please regenerate the visual studio files and rebuild your source.
    Game Developer @ LODZERO - My Twitter | tomlooman.com UE4 samples & tutorials | C++ Survival Game (Open-Source)

    Comment


      #32
      Well, I am on Mac =) Issue was somehow connected with git pulling changes for Section 2. After I downloaded entire zip everything works.

      Comment


        #33
        Originally posted by Tom Looman View Post
        For skeletal meshes you need to use the PhysicsAssets next to it to set the PhysicalMaterial type for every collision primitive that is set in the asset. This is different from Static meshes that retrieve this PhysicalMaterial reference through the shader material that you applied.
        Done and work fine, thank! I'm reading the official doc about physical material and i'm understanding a lot.







        Now i can made wall bleeding!





        I'm really noob about a lot of engine stuff

        EDIT:

        Uhm, no spoiler tags on this forum?
        Last edited by ZioYuri78; 04-15-2015, 02:18 PM.
        Join the Unreal Engine community on Reddit! | Twitter: @ZioYuri78

        Comment


          #34
          Video update for Section 2:

          Game Developer @ LODZERO - My Twitter | tomlooman.com UE4 samples & tutorials | C++ Survival Game (Open-Source)

          Comment


            #35
            Hi Tom, in the Section 2 to get Player 2 to spawn (like we see in the YouTube clip) would I need another controller or input device?

            Comment


              #36
              Originally posted by jpgdallas View Post
              Hi Tom, in the Section 2 to get Player 2 to spawn (like we see in the YouTube clip) would I need another controller or input device?
              Nope, you can specify the number of players by clicking the Arrow next to the big Play button.

              In the recorded clip I was hosting a match with a friend. But local multiplayer works for debugging.
              Game Developer @ LODZERO - My Twitter | tomlooman.com UE4 samples & tutorials | C++ Survival Game (Open-Source)

              Comment


                #37
                So many tutorials available, what a time to be alive

                Comment


                  #38
                  I'd like to see a blueprinted version of this.

                  Comment


                    #39
                    Studying your modules Tom, and I see that "SGameMode.h" and "SGameMode.cpp" files are empties, without types and functions/methods defined, perhaps, For we can write own game modes?. At final of "SBombActor.cpp", I see that you implement the method:

                    "void ASBombActor::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const
                    {
                    Super::GetLifetimeReplicatedProps(OutLifetimeProps);

                    DOREPLIFETIME(ASBombActor, bIsFuzeActive);
                    DOREPLIFETIME(ASBombActor, bExploded);
                    }"


                    I don't see defined this method at the header file. Why?

                    Finally, if we want to create a second weapon that will make more damage, for example a "SWeapon_B", we will can defining the header file using the multiple inheritance? like:

                    #include "GameFramework/Actor.h"
                    #include "SCharacter.h"
                    #include "SWeapon.h"
                    #include "SWeapon_B.generated.h"

                    /**
                    *
                    */
                    UCLASS(ABSTRACT, Blueprintable)
                    class SURVIVALGAME_API ASWeapon_B : public AActor : public SWeapon
                    {
                    GENERATED_UCLASS_BODY()

                    // ---- Class Definition with particular types/variables and functions/methods for "SWeapon_B" -------

                    };


                    Greetings.
                    Last edited by JoaquinMParrilla; 04-21-2015, 05:32 AM.

                    Comment


                      #40
                      Originally posted by Jps7101 View Post
                      At final of "SBombActor.cpp", I see that you implement the method:

                      "void ASBombActor::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const
                      {
                      Super::GetLifetimeReplicatedProps(OutLifetimeProps);

                      DOREPLIFETIME(ASBombActor, bIsFuzeActive);
                      DOREPLIFETIME(ASBombActor, bExploded);
                      }"


                      I don't see defined this method at the header file. Why?
                      I made the same question time ago in Section 1 thread, here the answer
                      https://forums.unrealengine.com/show...l=1#post264488
                      Join the Unreal Engine community on Reddit! | Twitter: @ZioYuri78

                      Comment


                        #41
                        Originally posted by ZioYuri78 View Post
                        I made the same question time ago in Section 1 thread, here the answer
                        https://forums.unrealengine.com/show...l=1#post264488
                        Thank you so much ZioYuri78!, very friendly for the help, I'm going to see it.

                        Comment


                          #42
                          tyvm for this series, I had a request if it wouldn't be much of an inconvenience; is it possible to implement a simple damage type that does something unique like lets say impulse damage or poison.

                          ty

                          Comment


                            #43
                            Originally posted by Venros View Post
                            tyvm for this series, I had a request if it wouldn't be much of an inconvenience; is it possible to implement a simple damage type that does something unique like lets say impulse damage or poison.

                            ty
                            I might introduce something for DamageTypes by implementing headshot damage as that is very fitting to the theme of zombie hunting too. Will have to see if I can fit that into one of the sections.
                            Game Developer @ LODZERO - My Twitter | tomlooman.com UE4 samples & tutorials | C++ Survival Game (Open-Source)

                            Comment


                              #44
                              Hey Tom

                              I'm catching up on your series. Today I noticed a change in ASBombActor constructor that is:

                              Code:
                              	SetRemoteRoleForBackwardsCompat(ROLE_SimulatedProxy);
                              Can you explain what this does and why it's necessary?
                              I'm curious because, thanks to it's name, it seems to be for "Backwards Comparibility". I don't really understand the the purpose of it and the documents lack information about it.

                              Also (which might be helpful), I found this:
                              https://docs.unrealengine.com/latest...pat/index.html (Little information here)

                              And:
                              https://docs.unrealengine.com/latest...tes/index.html
                              Which... Seems to be an (updated? fixed?) version of
                              Code:
                              	SetRemoteRoleForBackwardsCompat(ROLE_SimulatedProxy);
                              	bReplicates = true;
                              	bReplicateMovement = true;
                              Thank you again for your time, support and excellent tutorial!
                              Last edited by Zoc; 05-11-2015, 08:00 PM. Reason: small fix

                              Comment


                                #45
                                Originally posted by Zoc View Post
                                Hey Tom

                                I'm catching up on your series. Today I noticed a change in ASBombActor constructor that is:

                                Code:
                                	SetRemoteRoleForBackwardsCompat(ROLE_SimulatedProxy);
                                Can you explain what this does and why it's necessary?
                                I'm curious because, thanks to it's name, it seems to be for "Backwards Comparibility". I don't really understand the the purpose of it and the documents lack information about it.

                                Also (which might be helpful), I found this:
                                https://docs.unrealengine.com/latest...pat/index.html (Little information here)

                                And:
                                https://docs.unrealengine.com/latest...tes/index.html
                                Which... Seems to be an (updated? fixed?) version of
                                Code:
                                	SetRemoteRoleForBackwardsCompat(ROLE_SimulatedProxy);
                                	bReplicates = true;
                                	bReplicateMovement = true;
                                Thank you again for your time, support and excellent tutorial!
                                Hi Zoc!

                                Excellent question! I had a dive into the source and it turns out that SetReplicates sets both bReplicates and the RemoteRole. I noticed some replication issues w/o setting the remote role so I added that function call. I replaced all of that with a single call to SetReplicates(true) now though that will make it into Section 4.
                                Game Developer @ LODZERO - My Twitter | tomlooman.com UE4 samples & tutorials | C++ Survival Game (Open-Source)

                                Comment

                                Working...
                                X