Announcement

Collapse
No announcement yet.

Plugin Object Pool Component

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

    Originally posted by Dark Shift Productions View Post
    Sorry to double post - but I've confirmed that I simply can't delete or plug into your node at all for some reason - Instant crash every time. I'm thinking to revert the blueprint and try again fresh, but I'm not too thrilled at the possibility of this being a recurring problem. Any ideas?
    Can you send me a copy of the Blueprint uasset file?
    Try delete the pool component and recompile the Blueprint then delete the node.

    Edit:
    I have never experienced this problem, but apparently this is a common (often reported) issue for Blueprint developers:
    https://answers.unrealengine.com/que...fter-addi.html
    Last edited by BrUnO XaVIeR; 11-12-2017, 09:04 AM.
    | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

    Comment


      Today I've added support for "Homing Projectile" on Pooled Projectile Component, as requested. (for UE4.18+ Engine)
      You can either set an Actor as target and its Root Component is used by the plugin, or you can as usual set the Homing Component manually on your Blueprints:




      | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

      Comment


        Originally posted by BrUnO XaVIeR View Post

        Can you send me a copy of the Blueprint uasset file?
        Try delete the pool component and recompile the Blueprint then delete the node.

        Edit:
        I have never experienced this problem, but apparently this is a common (often reported) issue for Blueprint developers:
        https://answers.unrealengine.com/que...fter-addi.html
        I ended up loading a backup and redoing it - worked fine without further problems. I did however have to give up using this after several hours of trying to get attachments to work properly.

        With my projectiles, I just use the "attach actor to actor" node and it would "stick" no problem using a regular projectile component, but with your pooled projectile component it would stop in X and Y but fall downwards on the Z axis through the map.

        I tried changing the update component, different attachment methods, stopping movement, deactivating various things to no avail.

        I did confirm they were technically being attached successfully because when I destroy the hit actor the code that sends attached projectiles back to the pool works no problem.

        It's the main thing keeping me from implementing this fully - am I missing something obvious?

        -DSP

        Comment


          Originally posted by Dark Shift Productions View Post

          I ended up loading a backup and redoing it - worked fine without further problems. I did however have to give up using this after several hours of trying to get attachments to work properly.

          With my projectiles, I just use the "attach actor to actor" node and it would "stick" no problem using a regular projectile component, but with your pooled projectile component it would stop in X and Y but fall downwards on the Z axis through the map.

          I tried changing the update component, different attachment methods, stopping movement, deactivating various things to no avail.

          I did confirm they were technically being attached successfully because when I destroy the hit actor the code that sends attached projectiles back to the pool works no problem.

          It's the main thing keeping me from implementing this fully - am I missing something obvious?

          -DSP
          Are you using gravity enabled on projectiles?
          Did you try to disable gravity on them?
          | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

          Comment


            It seems the "OnProjectileBounce" and "OnProjectileStop" events are unavailable when using the PooledProjectile vs Epic's default ProjectileMovement.
            Also the "Velocity" parameter seems to be missing as well. I use a system where bullets can ricochet but these options don't seem to be available, can I
            just pool the bullets using epic's ProjectileMovement instead?
            Last edited by Cytokinetik; 11-22-2017, 07:35 PM.

            Comment


              Originally posted by karma4jake View Post
              It seems the "OnProjectileBounce" and "OnProjectileStop" events are unavailable when using the PooledProjectile vs Epic's default ProjectileMovement.
              Also the "Velocity" parameter seems to be missing as well. I use a system where bullets can ricochet but these options don't seem to be available, can I
              just pool the bullets using epic's ProjectileMovement instead?
              The default projectile component only work on spawn. That means you can't reuse them, you're forced to instantiate new bullet actors every time gun shoot so they just can't be pooled.

              I will add Blueprint node to get in runtime the generated (default) bullet component so you can use the events not available in pool component.
              ​​​​​
              Velocity is 'direction' vector.
              | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

              Comment


                You'll be able to subscribe to the stop and bounce events of a Pooled Projectile Component without getting the generated base projectile in runtime; I've added this to the 1.4.0 version for UE4.18.
                Once Marketplace team decides to apply the updates pending then it's going to be there:

                | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                Comment


                  Thank you kind sir, I am not as familiar as I should be with the engine source, it would have taken me a good while to implement that myself. I figured pooling bullet projectiles is a must if the server is handling 10+ players. I will try to post a tutorial for everyone about using this plugin with ballistics replication when I have time,

                  Comment


                    I have a question for anyone who has used this component and can help.
                    Is it possible to use the pooledprojectilemovement and tie into regular projectilemovement functions?
                    I noticed a node "Get projectile movement" which seems to be possible but spawning fails for some reason.
                    Was the system meant to be used this way as in the pic? Sorry if a noobish question lol....
                    I am also trying to spawn pooledobject from within another component so that might be the issue instead?
                    Thanks,
                    Last edited by Cytokinetik; 11-25-2017, 11:03 AM.

                    Comment


                      If you call "Return to Pool" on the projectile's owner it does what you're trying to do there.
                      Unless you need to stop the projectile and leave it in the scene, then not sure what you want in this case.
                      | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                      Comment


                        I got everything to work but came into one really bad problem:
                        I have many generic enemies running around the level shooting projectiles spawned from your Object Pool Plugin... but if I destroy one of these enemies the projectiles belonging to that enemy disappear! Been trying to figure out a way around this but can't seem to get the enemy projectiles to stay in the level after the enemy is destroyed!

                        Any ideas on what I'm doing wrong?
                        Last edited by Ghoztt; 12-19-2017, 09:48 PM.

                        Comment


                          Hi Ghoztt ;
                          This sounds more like unexpected behaviour. I built this plugin when I was working on a game prototype and in that game the Actors that owns the Pool Component are never destroyed because there they are just dummy containers. The intended behaviour was always to get hid of all projectiles whenever the Pool Component containers are destroyed, but they are not the actual characters shooting the bullets in the eyes of the player.

                          In case you have the Pool Component attached to a character and you are destroying that character, indeed you'll see projectiles disappear because their owning Pool is gone!
                          This is just because I haven't though about a situation like yours...
                          I will add a Config option to the Project Settings panel which you can chose if you want or not 'orphan' Pooled Actors to remain in the level after their owner Pool Component is destroyed (only applicable to Pooled Actors that are currently active, nonactives are still going to be wiped).

                          But, I can't do that right now; I'm currently traveling and I'm back to my workstation only next year ^^
                          If I forget and haven't this done yet by mid january feel free to call me out on this one!
                          | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                          Comment


                            Originally posted by BrUnO XaVIeR View Post
                            I will add a Config option to the Project Settings panel which you can chose if you want or not 'orphan' Pooled Actors to remain in the level after their owner Pool Component is destroyed (only applicable to Pooled Actors that are currently active, nonactives are still going to be wiped).

                            But, I can't do that right now; I'm currently traveling and I'm back to my workstation only next year ^^
                            If I forget and haven't this done yet by mid january feel free to call me out on this one!
                            Thank you, Sir.
                            Have fun on your travels

                            Here is the perfect example of what I am trying to accomplish, if you are ever in need of a clear visual https://www.youtube.com/watch?v=731ZuP8iLnE&t=6m20s

                            Cheers!
                            Last edited by Ghoztt; 12-20-2017, 09:46 PM.

                            Comment


                              That option now should be available for UE4.18 users:

                              | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                              Comment


                                Originally posted by BrUnO XaVIeR View Post
                                That option now should be available for UE4.18 users:
                                That's awesome... but I reinstalled the plugin for UE4.18 and the new option isn't showing up. I'm assuming I need to wait for EPIC to test your plugin before the update goes live?

                                Comment

                                Working...
                                X