Create teams for NPC : AI Spawner Part 2. Have a dedicated team for NPC only!

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ก.ค. 2024
  • Part 2 of Spawn NPCs video series all about teams: Define NPC teams that players can't join. Remove that team from scoring logic and give NPCs a name! This process is useful for controlling how NPCs and their teams should affect gameplay. I can't believe how many times I said "teams". Game on!
    Part 1 at : • AI spawner for Lyra : ...
    Part 3 at : • NPC Spawner Part 3 : B...
    C++ GitHub code at : github.com/NanceDevDiaries/Tu...
    Commit : github.com/NanceDevDiaries/Tu...
    Engine version : Unreal Engine 5.2
    Project version : Lyra 5.2 sample project.
    Join my Patreon to get video credits and if you'd like to give thanks!
    / nancedevdiaries
    Thanks for watching!
    ---------------
    Timestamps:
    00:00 - Intro
    00:29 - Define the NPC only teams
    09:24 - Elimination feed : player names and clear up warnings
    12:27 - Find where the name of the Player is set
    18:32 - Don't take into account NPC teams for scoring
    30:51 - Fix anyone gets an assist for NPC kill
    32:47 - Health component : don't show NPC AI kills in the feed
    35:09 - Results and next video info

ความคิดเห็น • 24

  • @nancedevdiaries
    @nancedevdiaries  27 วันที่ผ่านมา +1

    I have fixed the issue where the clients don't respawned and updated the github code! Took me a little while but was very satisfying to see Clients respawning! Here's the commit with the changelist (just moved 2 lines) github.com/NanceDevDiaries/Tutorials/commit/d0fb0db0bc420204bd0e00b112adc1c312740e1d

  • @roja
    @roja หลายเดือนก่อน

    So much gratitude!!!

  • @xsm909
    @xsm909 หลายเดือนก่อน

    You are BEST!!!!!!!!!!!!!!!!!!!

  • @Wurlox
    @Wurlox 10 หลายเดือนก่อน

    Really amazing and helpful series. Part 2 just came out and I can't wait for part 3. Keep up the nice videos, I really appreciate them. Thank you! :)

  • @blaqueaddonnisgames
    @blaqueaddonnisgames 10 หลายเดือนก่อน

    Wow seems like you are in my head ...lol I made 4 teams and all worked great but I really wanted to not include them in the death counter...This was a perfect solution ....Thank you!

  • @BDMBlackValor
    @BDMBlackValor 10 หลายเดือนก่อน

    This was awesome looking forward to part three!

  • @hwd6340
    @hwd6340 5 หลายเดือนก่อน

    Thank you for your amazing work!!!!

  • @BaseRealityVR
    @BaseRealityVR 10 หลายเดือนก่อน

    C++ is my weakness But these tutorials Really Motivated me to try ,so Thanks!. Im up to speed setting the name of the NPC PAWN But Im going to keep them counting on the score board as Im trying to Just have players VS NPCSpawner bots. As I want to bring in a Custom VR character And to have the bots remain the same. and This tutorial Really helped make separating the the bots from the player character a reality. Now I just have to figure out how to make my character systems work with the lyra game modes and also Make the weapon spawners hand out either the standard weapons for bots or a custom VR WEAPON version for the player.. Huge thanks for doing these lyra breakdowns

  • @TheKr0ckeR
    @TheKr0ckeR 4 หลายเดือนก่อน

    Great, almost going to part 3 to create different NPCs, I am planning to create a Zombie game with Lyra framework and i want them to included in the Lyra ACS etc. Do you think zombie NPCs wit simple behaviour tree (around 30-40) in the map would be heavy/non-optimized for a game by using Lyra framework? I will create my own spawner & wave system but still going to use Lyra Spawners etc.

  • @ashwinj9879
    @ashwinj9879 10 หลายเดือนก่อน

    Hi , can you make a single player mode without time limit and spawn stuff so we can try story mode something like that, not able to find single video for that

    • @nancedevdiaries
      @nancedevdiaries  10 หลายเดือนก่อน

      Thanks for the idea! I'll make a note. In the meantime, to not have a timer or scoring you can make a Lyra Experience that doesn't add the B_TeamDeathMatchScoring and the B_ShooterBotSpawner to the game.
      You can see those in B_ShooterGame_Elimination and B_LyraShooterGame_ControlPoints. For Control point, their scoring and timer is in B_ControlPointScoring

  • @LordsofMedia
    @LordsofMedia 4 หลายเดือนก่อน

    I have an issue with the very last part. there is a change from FGameplayEffectSpec* to FGameplayEffectSpec& and although i adjusted the parameters in the header file I am getting an error higher up in the cpp: HealthSet->OnOutOfHealth.AddUObject(this, &ThisClass::HandleOutOfHealth);
    I don't know how to fix that.

    • @afootgames
      @afootgames 2 หลายเดือนก่อน +2

      In 5.4, I changed *DamageEffectSpec. to *DamageEffectSpec-> and it worked, hope that helps

    • @LordsofMedia
      @LordsofMedia 2 หลายเดือนก่อน

      @@afootgames thanks. I will have to go back and look at what I did

  • @Minecarftable
    @Minecarftable 3 หลายเดือนก่อน

    @32:30 How would you give the NPC kill to the assister instead of just returning?
    It would feel really terrible If you were in a though PvP battle and then a random NPC steals your kill.
    I would rather the person with the assist be granted the kill.

    • @nancedevdiaries
      @nancedevdiaries  3 หลายเดือนก่อน +1

      In "OnEliminationMessage", instead of an early return when the actor is not part of a team, you could iterate through the "DamageOnTarget->AccumulatedDamageByPlayer" and give the kill to the last valid actor who damaged the actor, then the assist to the next one on the list. Similar to the assist logic also at 32:30
      Yes, that would feel bad

    • @Minecarftable
      @Minecarftable 3 หลายเดือนก่อน

      Excellent can’t wait to try it when I get off work 😂

  • @bicepius
    @bicepius 4 หลายเดือนก่อน +1

    For some reason clients don't respawn even though GA_AutoRespawn is added to abilities. It works ok on the Server player (listen server) or standalone. Is there a fix for this? Thanks

    • @nancedevdiaries
      @nancedevdiaries  4 หลายเดือนก่อน +3

      Hi, I'm curious about this issue (there's been a few comments about it), I haven't had the time to go test/look into it and share a solution yet. Please share if you find a solution, I'll have a look, I'm curious :).

    • @bicepius
      @bicepius 4 หลายเดือนก่อน +1

      Hi Nancy, thanks for the reply. I'm still trying to solve the issue. It still does a countdown on the client through the widget and unpossess is called in code. But nothing much happens after that. I will get back to you if I manage to solve it.

    • @unrealdev5178
      @unrealdev5178 หลายเดือนก่อน

      @@bicepius Any luck?

    • @nancedevdiaries
      @nancedevdiaries  27 วันที่ผ่านมา +1

      I have fixed the issue where the clients don't respawned and updated the github code! Took me a little while but was very satisfying to see Clients respawning! Here's the commit with the changelist (just moved 2 lines) github.com/NanceDevDiaries/Tutorials/commit/d0fb0db0bc420204bd0e00b112adc1c312740e1d

    • @bicepius
      @bicepius 27 วันที่ผ่านมา

      @@nancedevdiaries Thanks for the fix!, I did manage to solve this recently myself but using a different method. (Re-adding 'CallOrRegister_OnExperienceLoaded' delegate to the PostInitializeComponents(), with an if check to only execute if the owning controller was a player controller). However I will certainly be using this fix instead though. Either way it all helps towards learning this behemoth! 👍

  • @gameclub_ir
    @gameclub_ir 10 หลายเดือนก่อน

    Hello, please make a last of us style weapon customization tutorial Anyone who agrees to like