Server/Scoring Testing..

General Comments, Questions about all things OmnipotentS that don't go in other topics/forums
User avatar
Anonymous.
Posts: 352
Joined: Sat Jun 12, 2021 10:54 pm

Re: Server/Scoring Testing..

Post by Anonymous. »

You get damage points, but only if you're the killer of the player in the vehicle you did the damage to.
User avatar
Enyo
Posts: 1624
Joined: Mon Apr 05, 2021 11:27 pm
Server Sponsor: Yes
Server Admin: Yes

Re: Server/Scoring Testing..

Post by Enyo »

Anonymous. wrote: Mon Jan 16, 2023 11:35 pm You get damage points, but only if you're the killer of the player in the vehicle you did the damage to.
Nah, you get damage points (sometimes) when just shooting something enough to take 400 damage off it, even without killing it. You get extra points for killing minos and levis, that's probably what you're seeing. And sometimes damage points don't work at all. Like pooty said, there's a lot going wrong in the code for it, so it doesn't work consistently at all right now.
“Never argue with stupid people, they will drag you down to their level and then beat you with experience.”
― Mark Twain
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Server/Scoring Testing..

Post by captainsnarf »

Here is the fix:

change

Code: Select all

DamagePts = CurDamage / MutatorOwner.RepInfo.VehicleDamagePoints;
to

Code: Select all

DamagePts = float(CurDamage) / float(MutatorOwner.RepInfo.VehicleDamagePoints);
I had a hunch that's all it was.
User avatar
pooty
Posts: 4355
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Server/Scoring Testing..

Post by pooty »

Shouldn't the / operator make the result a float? Depends on the language but int/int isn't usually int.

I'll add that. Does seem like the type casting isn't reliable? when its function returns or params. I think there's a coerce operator that makes the function do the type conversion.

Was that the cause of the 400 max thing? A weird type conversion?

I haven't looked at it since yesterday, but the not reading config bDebugLogging flag is bugging me.
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Server/Scoring Testing..

Post by captainsnarf »

Hmm. It reads the bDebugLogging flag OK for me.

It's a config variable. Did you update it in your UT2004.ini file? Any setting there will override the defaultproperties value.

The behavior of / is the same as in C programming. int/int does integer division, even if you assign the result to a float value. In that case the conversion happens after the (integer) division is done. The processor itself has two different versions of / operator, so it's more about which operator is used (int or float division) than what the operands are.

I had a hunch because I've been bitten by that before.
User avatar
pooty
Posts: 4355
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Server/Scoring Testing..

Post by pooty »

Ok 1.40 UTComp on server, all checked in.
Damage points should be working correctly now.

The bDebugLogging issue I had two entries in the .ini file -- it must have created a default one when I first ran it and it was buried down below (last read wins...)

I changed the Team if, since it wasn't seemingly reporting right for hand held weapons, but should be good now.

Lets see how this scores, goes, but I am thinking 500 damage = 1pt is way too low. We do award fractional points (ie at 500 doing 100 damage gets 0.2 pts). Given a "kill" gets you 1 pt. Right now if you kill a Goliath by yourself you get 1pt kill + (800/500 = 1.6 pts from damage dealt) = 2.6pts. Lets see how it plays out, you'll still get lots of points for Minos/Levis (I didn't test the mino 400 thing/ran out of time at lunch break).

Figured its working better now than ever, so lets play and see.

BTW, I don't think Heal points are working right I don't think the AddHealBonus function is ever called?
It would be nice to fix the Shield Absorbtion points..that does require vehicle fix though but we really only use Aegis, Turtle, DarkPaladin, EONS Crusader, maybe update those and put in SnarfVehiclePack...
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Server/Scoring Testing..

Post by captainsnarf »

If I recall correctly, AddHealBonus is called by the linkgun (newnet_linkfire and utcomp_linkfire classes).

We could have ShieldAbsorbtion points, but that would make all of the shield vehicles depend on UTComp. I don't think it's worth the trouble imo.

And yeah, 500 = 1 pt is way too low imo. During testing I shot a levi until it started smoking, received 7 points. We will be rewarding destroying vehicles more than healing nodes which I think will throw off the incentives and also throw off the balancer. Levi and mino spammers will be top rated according to points.
User avatar
pooty
Posts: 4355
Joined: Sat Apr 03, 2021 10:22 am
Location: Michigan
Server Sponsor: Yes
Server Admin: Yes

Re: Server/Scoring Testing..

Post by pooty »

Let's see how about 800 pts or 1000 pts?
For Levi/Tiamat that'd be 5 damage points at 1000, plus 1 kill, plus important vehicle bonus (+5 for MAS, Minos), that might be an edge case though.

Consider things like Tanks (fire, Hurricanes, ions), would get 1 kill, plus ~1 damage point. So 2.5 - 3.5 pts total per kill, split if more does damage.

This will give you much more points if you use highly damaging vehicles vs. weaker ones...which should help balancing, those that do lots of damage (kills or no) get more than those mindless driving in tanks. In a falcon (as enyo well knows) you should be able to dish out way more damage than riding in a tank because travel time is less and time on target is much higher. Its a crude measure of your direct engagement against the enemy team's occupied vehicles...add this to the enhanced node scoring and it should be pretty good.

So we don't get linkheal bonus on Link Tank, Link Badger and the like?
User avatar
Enyo
Posts: 1624
Joined: Mon Apr 05, 2021 11:27 pm
Server Sponsor: Yes
Server Admin: Yes

Re: Server/Scoring Testing..

Post by Enyo »

captainsnarf wrote: Tue Jan 17, 2023 1:04 pm And yeah, 500 = 1 pt is way too low imo. During testing I shot a levi until it started smoking, received 7 points. We will be rewarding destroying vehicles more than healing nodes which I think will throw off the incentives and also throw off the balancer. Levi and mino spammers will be top rated according to points.
Not sure what the right threshold for damage pts is, but I don’t think it’ll necessarily throw off incentives to go to nodes.

First, most players on this server don’t go to nodes anyway, so no change there. Second, the players that do aggressively attack nodes tend to shoot a lot of vehicles on their way there and get little to no damage pts. Now they will, so I think it’ll all balance out.

I also believe fixing this will eventually help the balancer work a little better. Be prepared to see some players’ PPHs to skyrocket.

Pooty, are damage points cumulative now? Let’s say the threshold is 800 per pt, I do 600 damage to a Goliath, but don’t kill it, then 200 damage to a dragon, but don’t kill it, do I get 1 point?
“Never argue with stupid people, they will drag you down to their level and then beat you with experience.”
― Mark Twain
User avatar
captainsnarf
Posts: 2631
Joined: Tue Jul 06, 2021 1:51 pm
Location: Washington
Server Sponsor: Yes
Server Admin: Yes
Contact:

Re: Server/Scoring Testing..

Post by captainsnarf »

So we don't get linkheal bonus on Link Tank, Link Badger and the like?
You should. This was fixed back in in September. Link Tank, Link Badger, and Linkatron all give heal bonus when healing vehicles.
linktank/linkbadger
linkatron

TODO is the other link vehicles like wraith, odin, and goat sucker.
Pooty, are damage points cumulative now? Let’s say the threshold is 800 per pt, I do 600 damage to a Goliath, but don’t kill it, then 200 damage to a dragon, but don’t kill it, do I get 1 point?
Yes, they accumulate. You'd get the 1 point.
Post Reply