Bonca attack animation
I was wondering if anyone knows the sweet spot to configure boncas to attack properly and fair and square. Like, take a red bonca with a distance of 50 and range 50. Now have it run to Dink with sp_target and it will actually run to him, start attacking somewhere diagonally removed from Dink and never hit. It looks real silly. I haven't played a d-mod with boncas in it for ages (or didn't pay attention to it) so I was wondering if anyone knew the correct way to make a bonca script and have it attack naturally
Any help would be appreciated!^^
Any help would be appreciated!^^
The proper way is to look at en-bonc.c in source.zip.
Are you using sp_attack_hit_wait() for the bonca? Without that, enemies with an attack sequence will just get stuck in an infinite attack loop as soon as their intended victim is in distance.
Are you using sp_attack_hit_wait() for the bonca? Without that, enemies with an attack sequence will just get stuck in an infinite attack loop as soon as their intended victim is in distance.
Aha, I'm not using sp_attack_hit_wait(), will try that
Thanks for the tip.
Thanks for the tip.
Seth said he was fixing that in dink HD why not just drop him an email?
Well that's an interesting thought, I could bug him with it but I've bugged him for a lot of stuff already Stuff I'd like to see in DinkHD.
Edit: LOL you changed your question while i was answering hahaaaaa.
I changed it because I realized I was talking about a different thing than you were xD
There's an en-bonca.c in the source.zip.
Scratcher got there ahead of me.
Scratcher got there ahead of me.
Okay so I tried this... It still looks really funky. Attach that script to a bonca and then just let it run up to you to attack, but don't even move. You'll see that it approaches you, but can't hit you because it starts its animation too far away from you, outside its hit range as set in the special frame in the ini. I've toyed around with the distance and range, but if I increase the range it hits from way too far in the 2 and 8 direction but is fine for 4 and 6. If I reduce the distance it still acts funny.
Has anyone even noticed this, ever? xD The way to kill a bonca is to not move! Except during the random time its attack is disabled after attacking once, but then just sidestep and don't move again. Am I missing something here?
Has anyone even noticed this, ever? xD The way to kill a bonca is to not move! Except during the random time its attack is disabled after attacking once, but then just sidestep and don't move again. Am I missing something here?
You mean the default bonca? It's the combination of a higher distance than range and low speed that does that. Not very lethal indeed. At least not until you have to walk closer to it and try to hit it back.
With the same distance and range (or a lower distance than range) though, you'd think that it should be able to hit Dink every time... Does it still keep missing even then?
With the same distance and range (or a lower distance than range) though, you'd think that it should be able to hit Dink every time... Does it still keep missing even then?
Yes it does, because it doesn't run up to Dink in the correct way, it starts attacking from a place it can't hit Dink from and just swings its tail into thin air...
That's odd... I tested this a little bit with the default bonca, and while it does miss a lot, it hits Dink pretty regularly too. After giving it 50 distance and 50 range, it hits Dink every time from straight directions. It does miss when you're standing diagonally away from it, but the bonca doesn't do that so often that you could just stand still.
I like it when the game helps me cheat, so don't do any more fixing.
That's odd... I tested this a little bit with the default bonca, and while it does miss a lot, it hits Dink pretty regularly too. After giving it 50 distance and 50 range, it hits Dink every time from straight directions. It does miss when you're standing diagonally away from it, but the bonca doesn't do that so often that you could just stand still.
The diagonally away thing is exactly what's going on all the time. I walk up to a screen with a bonca on it and stop moving. The bonca moves to me and stops diagonally away from me (My direction is 8), swipes its tail and misses me. Then the attack_wait triggers and so the bonca moves towards me and deals touch damage. Now two things can happen: 1) it hits me next time because during its attack_wait it accidently moved into a good position or 2) he swipes into thin air again from some other location.
This is just really frustrating and I don't remember it being so... dumb.
The diagonally away thing is exactly what's going on all the time. I walk up to a screen with a bonca on it and stop moving. The bonca moves to me and stops diagonally away from me (My direction is 8), swipes its tail and misses me. Then the attack_wait triggers and so the bonca moves towards me and deals touch damage. Now two things can happen: 1) it hits me next time because during its attack_wait it accidently moved into a good position or 2) he swipes into thin air again from some other location.
This is just really frustrating and I don't remember it being so... dumb.
Hmm, do you think it's just you paying more attention to it? This is starting to annoy me too the more I think about it. Definitely the game could use a little more sophisticated attack calculations.
(I assume the engine just draws a big box around the bonca, and swipes the tail whenever Dink gets inside it- demonstration for fun)
(I assume the engine just draws a big box around the bonca, and swipes the tail whenever Dink gets inside it- demonstration for fun)
Yes, that's probably exactly the reason for the annoying behaviour :/ Maaaaaybe it IS just me noticing it after not playing a d-mod for so long. Oh well, I'm not gonna get hung up on this forever, moving on
I think all attackers suffer from having a blind spot. That's my main way of defeating them in DMODs. Hit and run works too, but it usually ends up being more dangerous.
I'm not 100% sure on the mechanics, but from my understanding when reading the DinkC Reference- enemies damage with their hardbox which is extended in the direction by range. So maybe if you mess with the hardboxes themselves you can perfect the 'range' of the other sides of the boxes so it will hit Dink more easily. You would only need to modify the special attack frames I assume.
A pattern I've noticed in the original scripts is that normally distance < range meaning that the enemy will attack when closer to Dink thus putting him moreso within reach when the sequence plays.
Maybe it's something you can solve by playing with the numbers or maybe it's just something you're gonna have to live with. If all else fails you can come up with some wacky script to give them some sort of alternative attack when Dink is abusing the blind spot.
I'm not 100% sure on the mechanics, but from my understanding when reading the DinkC Reference- enemies damage with their hardbox which is extended in the direction by range. So maybe if you mess with the hardboxes themselves you can perfect the 'range' of the other sides of the boxes so it will hit Dink more easily. You would only need to modify the special attack frames I assume.
A pattern I've noticed in the original scripts is that normally distance < range meaning that the enemy will attack when closer to Dink thus putting him moreso within reach when the sequence plays.
Maybe it's something you can solve by playing with the numbers or maybe it's just something you're gonna have to live with. If all else fails you can come up with some wacky script to give them some sort of alternative attack when Dink is abusing the blind spot.
Yeah I think I'll just leave it as is and deal with it. After all, if this is in fact how it's always been then I don't see the problem anyway. Well I do, but I'll try not to
I don't really feel like messing with the hardbox of the original monsters, because people have certain expectations of how those can be fought and I don't want to go changing that up just for accuracy's sake.
I don't really feel like messing with the hardbox of the original monsters, because people have certain expectations of how those can be fought and I don't want to go changing that up just for accuracy's sake.