I am making a class based PvP game, to make it easier to understand let’s compare it to Smite, the whole map is flat, there are 2 player bases and all the ranged abilities are target zone based(meaning you click ability which shows a sort of targeting zone, showing you where you are aming and the area of effect, you press LMB and it launches, tweens to the target area where it detonates, no collision required).
This is the scenario. Say you are casting a fireball or something like that, you fire and it is moving in a straight horizontal line towards the targeted area where it will detonate upon reaching the target. After you fire an enemy player steps in between you and the target area and the fireball goes towards him, what should happen?
As it stands since there is no collision detection the fireball will ignore the player and go straight ahead to the target without doing damage, but I am not sure how I feel about this, so I am hoping to get an opinion of someone with more knowledge and experince.
As a player I would feel robbed from my kill. I think you should approach this in one of two ways. One option is to make the fireball have a high angled arc so that it does not hit anything in between the launch position and the target position.
The other option (and what I would suggest for your game in general), is using a module like FastCast. It’s incredibly easy to use and works wonders for projectile based PvP
That was exactly what i was experimenting with this morning, but then my projectile got all choppy in the movement and I started looking for some alternatives. Now I remember tho that i have projectiles that fire in a line i with the intention of stopping at first target hit so i have to find some way to address this issue anyway. Thank you for responding
I’m not sure if it is the issue, but that sounds like you might have tried to simulate the projectiles on the server. Make sure that they’re only simulated on the client
Well I followed the example gun that the author posted, perhaps i made some error somewhere else because at first it was fine, what you are saying tho is that i should not simulate it on the server but fire on all clients instead?