FFA BATTLE ROYALE MAP/mode - almost done but Prespawn bot and bow problem



  • Greetings fellow noblemen!

    I am making a FFA Battle royale style map. This means:

    • 1 life (you can respawn but it takes a lot longer)
    • Spawn with no weapons
    • pick up weapons spread randomly over the map, most dissapear after pickup
    • Player with most kills wins (not last one alive because i dont want to encourage just hiding)
    • neutral bots just sitting arpund for fun
    • hostile bots spawning at level load and guarding parts of the map and pickupable weapons

    The story line is simple and in the lines of: Mason and agatha have finally made peace. They united the kingdom once again. But to decide who becomes the new king of the newly united kingdom they organised a democratic electionsin the form of BATTLE ROYALE in mutually hostile territory

    I have managed to do all of the above in kismet but ran into following problems and I really hope that someone can help me finish this awesome and exciting map. Problems:

    • Bots are hostile to each other in FFA . Is there anyway (besides from placing them far apart) that I can command the bots not to attack each other but only real players? Example: I have two bots guarding a bridge that spawn at level load but they instantly kill each other.

    • Bot kills count as kills too, is there a way to disable this? I want the player with the most player kills to win, the bots are only there to make the area feel lively and hostile and to guard pickupable weapons.

    • When I add a “give inventory” in kismet and add a weapon to that it works great. But somehow the arrows on the bows are invisible. Is their a fix. Does it have to do with the ammo? Ammo diminishes but the arrows dont actually fire.

    • How do I give a bot more health on spawn? I m assuming I use the “modify health” tool in kismet? But how do i set it up cause now my bot just drops dead at spawn, poor fellow :(

    Any feedback on above questions aswell as the concept is greatly appreciated!

    • Ectoplasma -


  • @ectoplasma:

    • Bots are hostile to each other in FFA . Is there anyway (besides from placing them far apart) that I can command the bots not to attack each other but only real players? Example: I have two bots guarding a bridge that spawn at level load but they instantly kill each other.

    Assuming every single player is in FFA, can’t you simply place the bots in team Agatha or Mason? Should be a standard dropdown option in the spawn bots action in Kismet.

    @ectoplasma:

    • Bot kills count as kills too, is there a way to disable this? I want the player with the most player kills to win, the bots are only there to make the area feel lively and hostile and to guard pickupable weapons.

    I’m not sure about this. It might be possible to create an event that activates as soon as a player kills a bot to then subtract 10 points so it evens out.

    @ectoplasma:

    • When I add a “give inventory” in kismet and add a weapon to that it works great. But somehow the arrows on the bows are invisible. Is their a fix. Does it have to do with the ammo? Ammo diminishes but the arrows dont actually fire.

    Sadly, no. The “give inventory”-node in Kismet seems to only work when it’s able to replace the player’s old inventory with the new weapon. Which means that even if the player already had the right type of arrows, giving a bow would probably overwrite them.
    Manually giving the player arrows and immediately a bow afterwards doesn’t work either unfortunately. Crossbows do work.
    (To be honest, I wouldn’t recommend placing Archer primaries in the map at all. Should the player find himself in an unexpected fight, he has no melee weapon to switch to.)

    @ectoplasma:

    • How do I give a bot more health on spawn? I m assuming I use the “modify health” tool in kismet? But how do i set it up cause now my bot just drops dead at spawn, poor fellow :(

    Even if the “Modify Health”-action worked, I’d still recommend another way. Creating a custom family bot.

    First, select one of the custom family actors in the Content Browser and place it anywhere in the map.

    Edit its properties and in your case, modify the health value.

    Place down a “Spawn Custom Family Bot” in Kismet, copy over any settings you set in your previous Kismet nodes you used to spawn bots, select the modified FamilyInfo actor in your level and click “Use selected object in Content Browser” (little green arrow) in the Kismet node to apply it.
    Bots spawned via this action should have 300 health, among all the other properties set in the actor. (including its class, foot speed and even some booleans like whether he can dodge, charge attack, etc.)

    –-
    Sounds like a fun map. I suggest some sort of penalty for dying, though. (like -20 score)
    This way, players with a very powerful weapon have more reason to occasionally hide and heal up a bit before heading out into fights again. Not only for the risk of losing their weapon, but also really straining their score.



  • @ectoplasma:

    they organised a democratic elections in the form of BATTLE ROYAL

    The ancient Athenians would be proud.



  • Dear Rickvs,

    Thank you so much for your feedback!

    1. the family bot completely fixed the health problem. You could not have explained this better. I know have a guy with 400 hp running around. I called him “THE MOODY KING” and laughed a little.

    2. FFA seems to override what teams bots are asigned to. So even if I put em all in the same team, once a ffa match starts they just started beating each other up. I will try to fix this by making them stand still untill I player approaches or hurts them. They do seem to have a healthy preference for killing real players. But in reality, it really blows that they kill each other. If anyone know how to fix this I d be so happy!

    3. Thanks for the tip on the bows. Crossbows indeed work which is enough for me. I will put them into the game even though bowmen will be defenseless. The reason is that I think they wont be so bad against other classes since i cant equip any with a shield. It will be a risky choice to play bowmen.

    4. Do you know of a function in kismet that connects a boths death to an event?
      Like: Bots death -score minus 10 and give inventory “broadsword”?



  • Would it be possible to make the whole thing into a team deathmatch and make a mod that gives players points for teamkills?



  • @ectoplasma:

    Would it be possible to make the whole thing into a team deathmatch and make a mod that gives players points for teamkills?

    Well I spent quite a bit of time trying to get something like that to work, using the TO2 gamemode because I wanted to use the TO2-only nodes.
    Truth be told; yes, it can work. But it’s so big of a hassle constantly testing the map to see if everything works correctly. I for one encountered a load of problems;
    *Enemies don’t get flinched
    *Killing enemies subtracts score instead of adding
    *Bugged customization occasionally displaying wrong team colors

    That’s to name a few issues. Honestly I wouldn’t recommend going that way, stick with FFA.

    As for an event that checks for bot death; not sure, never used it before.
    I suppose the way to go would be to add an event such as Pawn->Death or Actor->Death, letting that add/subtract score using the TO Kismet nodes and then to give a Broadsword to the killer. (I assume there’s a spot for ‘killer’ in the “Death”-event that you can link to an object to use for the player to give a Broadsword to.)

    But I can’t tell you the precise Kismet nodes, I haven’t really bothered with them. If you use one of the “On Death” kind of events, make sure to uncheck the “Players only”-property. Also try using the Kismet action Attach Event to link the on death event to the bot that spawned at the start so that the command is obviously only being executed when that particular bot dies, not just any actor.


  • Global Moderator

    A version without bots would have more appeal.