The new ballistas seem to have had a mixed reception due to the indiscriminate targeting logic. After some discussion elsewhere I get the reasoning from the devs behind doing it this way, having to do with PVP (and "friendly" mobs led by hostile players), but it seems like there should be a more elegant solution than just "lol ballistas kill everything" because in that case a lot of players are going to rightfully conclude (as I have) that "lol ballistas are nearly useless" and not use them. Which sucks.
Also, comparing ballistas to the wooden stake defenses is, IMO, not a good comparison because one is passive defense and one is active defense – you can easily position the stakes in such a way that they will still work well for defense while not posing much danger to friendly PCs (hostile PCs, presumably, could still be knocked back into the stakes). It's much more difficult or, depending on base layout, impossible to do the same for ballistas and have them remain effective.
I think a much better comparison is ballistas and wards. With that in mind, I propose the following ward-inspired logic for ballistas:
- each ballista has an owner: the PC that built the ballista. the ballista never targets the owner PC
- each ballista has an active and inactive state. while inactive, other PCs can register with the ballista just like they do with wards. the ballista never targets registered PCs
- ballistas do not target friendly/tamed mobs unless they aggro a registered PC
- ballistas always target hostile mobs and unregistered PCs
This is conceptually about as complex as wards. What do you think? Any corner cases I've missed?
Source: https://www.reddit.com/r/valheim/comments/zeilsn/how_to_fix_ballistas_yes_ballistas_do_need_fixing/