Page 3 of 3

Posted: Sat Aug 16, 2008 10:16 am
by Scatman
Hit bonus is handled through the resistability field in the spells table. That's the one I'm trying to figure how is calculated still. 25 entered in the table gives me like 4900% and 0.25 in the table gives me 75%. :)

Posted: Sat Aug 16, 2008 10:19 am
by John Adams
I will change that data type locally, and restart the server - we'll see if it works. Give me 5 mins.

Posted: Sat Aug 16, 2008 10:23 am
by John Adams
Ok, go for it. I changed all 'float' values to signed so you can now store 0.25. Change one of your spells and we'll crash the server then test it out. ;)

Posted: Sat Aug 16, 2008 10:24 am
by Scatman
Woohoo I'm good at this!

Posted: Sat Aug 16, 2008 6:54 pm
by paulgh
Does this make sense of it?
0.01 = 99% Harder
0.02 = 98% Harder
0.03 = 97% Harder
.
.
1.00 = normal
1.01 = 01% Easier
1.02 = 02% Easier
1.03 = 03% Easier
.
.
That fits my limited data.
By the way, forgive me if I'm missing something obvious, but why would a number like 0.25 need a signed float?

Posted: Sat Aug 16, 2008 7:39 pm
by John Adams
0.25 does not need a signed float. -0.25, or -25, or negative anything does. Currently decimal-anything does not work in that field. 1.01 shows up as 1. 1.25 shows up as 1. -1.25 shows up as 0.
The true problem is not signed or unsigned, it is the precision of the float, how it is interpreted/cast by the server, and whether or not we are even using the field properly in the first place.
I played with signed just to see if we could enter negatives, and it made no difference.

Posted: Sat Aug 16, 2008 8:09 pm
by paulgh
John,
Are we running different versions of the emulator (I have latest SVN ver 124)? I just ran a test on my server. One spell (HARM) has a value of 1.2 in resistiblity. The other (HEAL) has 0.8. When I examine HARM it lists resistiblity as 20% easier. HEAL shows 20% harder. Am I misunderstanding something here?

Posted: Sat Aug 16, 2008 9:13 pm
by John Adams
No, I am running 124 as well. Maybe what we were doing wrong is (as I said previously) putting the wrong values in. The original question, again, is - what goes in this field? Whole numbers, 10ths of seconds, fractions, floats, integers, my mom's underpants? I had no idea except to look at the data type and "guess".
If 1.00 means "even" then great, you have answered my question. And for that, I thank you.

Posted: Sat Aug 16, 2008 9:20 pm
by LethalEncounter
I'll look it up tomorrow and let you know exactly what the client and server expects.

Posted: Sat Aug 16, 2008 9:24 pm
by John Adams
LE, no need. paulgh's numbers are perfect, which is what we needed for this field. I have re-enabled it on the editor and put a little tooltip to remind me when I forget in 10 mins.
For Taunt, 34% harder needed 0.66 in the field. I don't know why I didn't see it before, that is so f'n intuitive a baby could see it. ~blank stare~
But yes, it works. Hopefully, as you intended.

Posted: Sat Aug 16, 2008 9:35 pm
by LethalEncounter
Heh, not the way I intended. There are quite a few things about the data (not to mention the network code/layer) that I don't agree with, but whenever possible I keep the implementation as close to live as possible. That includes some crazy stuff that SOE does with values.