Intelligence increases the chance to get the first hit in battle. Since Int can't be reduced below 5, I'm assuimg this goes for the associated chance-for-first-hit as well? If two bots have a base Int of 10, and one of them has -30 from gear and another one has -5, they have an equal chance to get the first hit? If that isn't so, ignore the rest of the post.
What I'm suggesting, in case I'm right above, is that the amount of negative Int below 5 would count for first-hit purposes. What do you think? It would make for some more varied and interesting builds in some spots, and it isn't something that completely would change the game balance. I would think the current lower limit of 5 only has to do with not wanting to remove experience gains completely for many bots, and not the more rarely discussed first hits?
Small change that would make for some more variety in builds (until everyone figures out the best ones again).
|
Sounds ok to me. The difference between -30 and -5 ought to make a difference somehow.
|
So basically if you have an overall negative int value, you would never be able to get the first hit against a bot with positive int? I'm ok with that, it would be nice to change things up even if it's only a little bit.
|
Nah, i think -30 and -5 should result in the same chances as +5 and +30
|
Iirc, the way the first hit is determined is by rolling a number between 0 and the amount of int each bot has. So technically if a bot had -ve int it would always roll negative, compared to always positive for a bot with +ve int.
|
i'm sure there's a mathematical solution to that problem :)
|
Thanks for clearing that up Myriad, I wasn't even sure of how exactly it worked at the moment.
My thoughts when I made this thread were the same as Jans mentioned above - slowly decreasing first-hit chance below 5 Int. If it indeed rolls a number between 0 and your Int, the difference between -5 and -30 (with a correction so it doesn't always end up a negative number) is not insignificant at all when it comes to low-Int bots, and would accomplish the effect I had in mind.
Giving automatic first-hit for positive Int vs. negative Int would, I fear, cause some balance issues at some levels.
The entire first-hit formula could probably also be reworked for better balance and interesting builds, but that's a larger change and wasn't the point of this thread.
|
At the moment the formula to generate two random numbers to see who gets the first strike is probably quite simple. Something like (Int * Rnd), where Rnd is the function to come up with something random. It gets multiplied by the amount of Int. So more Int means higher chance of getting a higher value.
This won't work any longer if negative int is alowed. The solution is to add 43 so it's always positive (-42 Int is the worst your bot can do, as far as i can see. Correct?)
The new formula would become something like:
( (Int+43) * Abs(Int) * Rnd )
(the Abs(Int) is needed to keep things in balance. If you have +10 int, and the other guy only +1, you're 10 times more likely to get the first strike. If we'd just add +43 to everything, that chance would drop a lot, in the other guy's favour)
|
I think this is a good suggestion. To implement would be simple. Intstead of picking a random number from 0 to the int of each bot, pick random number from the minimum int of both bots to the int each bot. So current formula does this:
if(random(0,int of botA)>random(0,int of botB)) then botA hits first otherwise botB hits first
Change it to this:
if(random((min int of (botA,botB),int of botA)>random(min int of (botA,botB),int of botB)) then botA hits first otherwise botB hits first
[min int of (botA,botB)] can be negative
|
I think what Saiyan says makes more sense, and is independent of neg-int-armour in the game :)
|
I didn't see your post. hehe. Interesting method you came up with.
|
Why all the new formulas? O.o
Rolling a number between 0 and your int will always work, even if your int is negative.
|
will it? I thought the random function always generated something between 0 and 1? Multiplying that with a negative number would always mean a negative outcome.
pre-post-edit ah i see different languages have different functions..
|
Yeah, but that really only changes one thing.
If A has positive int, and B has negative int, A will always get the first hit.
But if they both have negative int, it would work as expected. If A rolls a number between 0 and -50, and B rolls a number between 0 and -10, B will have a greater chance of getting the highest number.
|
tl;dr Just keep it the way it is now
|
If A has positive int, and B has negative int, A will always get the first hit.
And how's that fair? :P
|
And how's that fair? :P
Meh :P
|
How is that unfair?
If B is that mentally challenged they wouldn't get a first hit in.
|