[Logo]
 
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
Replacement for the Berzerk combo  XML
Forum Index -> Druids RPG Development
Author Message
TheDruidXpawX

Wicked Sick!
[Avatar]

Joined: 12/19/2004 18:32:13
Messages: 1946
Offline

For those of you who dont know, the berzerk combo is also broken by UT2004RPG.

I suspect once we know how to fix the booster combo, this one might be an easy fix to figure out their current speed, taking into account the speed weapon, and fix this class too.

Skin download: http://www.disastrousconsequences.com/dcforum/posts/list/1189.page

The fundamental problem is this: The first word we learn as children is NO. From that point forward society teaches women that saying no isn't polite, and society teaches men to respect those who wont take no for an answer.

The world is what you make of it, my friend. If it doesn't fit, you make alterations. -- Stella, The Morning Star
v0rTeX

Wicked Sick!
[Avatar]

Joined: 12/19/2004 20:59:52
Messages: 562
Offline

Does this really qualify as a broken combo?

My reason for asking is that, yes, while the weapon speed actually decreases if you have more than 50 weapon speed, the damage you deal still increases while the combo is working. Maybe this isn't an issue on your server with the stat caps you have, but on our server it would be devastatingly unfair if berserk actually increased weapon speed by 50% of whatever you had it up to.

When berserk modifies your damage while the RPG mutator is in use, I believe that it multiplies your DB stat by approximately 1.33 like it would modify the damage of most of the guns by 1.33 if no other mutators were in use. So on other servers where the damage bonus stat is allowed to be up to 400, using berserk might make it act more like its over 500 during the use of the combo.

I guess depending on how you implement your 'fix' this might be something admins can use or not use to match their setup requirements.
TheDruidXpawX

Wicked Sick!
[Avatar]

Joined: 12/19/2004 18:32:13
Messages: 1946
Offline

I was actually thinking more weapon speed for a limited duration. It would have to add to the weapon speed rather than multiply it, for sure.

Skin download: http://www.disastrousconsequences.com/dcforum/posts/list/1189.page

The fundamental problem is this: The first word we learn as children is NO. From that point forward society teaches women that saying no isn't polite, and society teaches men to respect those who wont take no for an answer.

The world is what you make of it, my friend. If it doesn't fit, you make alterations. -- Stella, The Morning Star
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

Ah, there it is. I thought I remembered this discussion somewhere ...

Okay, so after getting BotBooster to work, I think I'm going to make a more general "BotsCombos" mod (or Dru, if you'd rather, I can make it "DruidsCombos" and just set up CVS so that I can dump the code there). Here's what I'm thinking:

- Separate from DruidsRPG:
While much of the code "relates" to DruidsRPG, I think the mod should be separate to be something that's easy to eliminate from contention if there's a bug and it's not clear where it might be. Now, if for some reason Berzerk isn't fixable without querying a player's RPG stats, I might have to rethink this.

- INI configurable:
You'll be able to put things in an INI file (that would be separate from the UT2004RPG.ini) to indicate which combos need to go (and just "go away"), and which combos need to be replaced/added (very similar to No Invisibility - but I think we'd want to avoid using that mod as it's got a lot of extra stuff we don't need and it's always nice to have as small a package for downloading as possible). Between this and some ideas I have with "const "<versionnum>"", or maybe a configurable "version=" value in the INI, I should be able to avoid/fudge any issues with "packagename." requirements.

Thoughts?

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

Ack phtooey!

The Berserk combo is actually buried quite a bit ...

When it's triggered, it calls it for the Weapon, which in turns calls it for the various fire types ...

I'll have to look at how WeaponSpeed is actually done in the UT2004RPG in order to just plain fudge it.

And when you get down to the code - it looks totally buggy to me, like it actually slows your fire rate but ups your fire rate animation and reload animation. Wierd.

FYI I'm looking at http://www4.ncsu.edu/~spcash/Unreal_Docs/ which was generated with UnDox. I'll review the source I have at home and see if this is still the case ...

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

I hate replication.

I've been trying to code BotsCombos and I can't get certain data replicated properly. I'm not sure what I'm missing. Previously, I had it all hard coded, so it just had to work, not work elegantly.

I haven't given up yet but I am very close to just calling it a night ...

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
TheDruidXpawX

Wicked Sick!
[Avatar]

Joined: 12/19/2004 18:32:13
Messages: 1946
Offline

You might have more success by looking at the code for RW_Speedy, as well as how the code in UT2004RPG works for speeding up shooting.

Maybe the best way would be to trigger it in similar fashions?

Skin download: http://www.disastrousconsequences.com/dcforum/posts/list/1189.page

The fundamental problem is this: The first word we learn as children is NO. From that point forward society teaches women that saying no isn't polite, and society teaches men to respect those who wont take no for an answer.

The world is what you make of it, my friend. If it doesn't fit, you make alterations. -- Stella, The Morning Star
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

Okay we have success - I have a more modifiable mod. Right now it only replaces Booster still, but I have some ideas/hopes for how I can replace Berserk, too. We'll see; the Berserk combo is part of the Weapon and WeaponFire classes, and the way Weapon Speed is done in the RPG class could result in hard to correct bugs if Inventories and OwnerEvent doesn't work the way I think it should ...

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

I'll work on Berserk tomorrow.

Let me just get this straight though:

What you're looking for is something that basically does:

FireRate = base.FR + base.FR*(0.01*WS) + base.FR*0.5

In other words, a player with 0 WS using our Berserk would get the equivalent fire rate of someone with full WS? And someone with full WS would end up with double the fire rate of the normal weapon? Do you want a different value for the additive speedup?


The current design of BotsCombos is wholesale replacement of the combos a player can use. Technically, if you configure it properly, you could eliminate all four combos and not replace them.

BotComboDefensive will increase shield if Health >= SuperMax, and stop running if the shield hits max (technically, it stops when it fails to increase the shield any more).

bots (with a small b) have their combos replaced as well (at least there's code there for it and the logging looks like it's doing its thing). However, as players can have up to 16 combos, bots can only have 4 - so if you configured BotsCombos to run more than 4 combos, the bots would only get the first 4.

WS in UT2004RPG is done via that RPGStatsInv object - Inventory objects have a "OwnerEvent" called for certain events, one of which is a weapon switch. UT2004RPG uses that to change/set the FireRate of a weapon. Here's the gotchas:

If we use an Inventory object, and for some reason during OwnerEvent our Inventory object changes the FireRate of a weapon before StatsInv changes it, StatsInv will set it back to "normal" (normal for that character. StatsInv uses a given WeaponFire's default.FireRate to set the math.

However, if we can be resonably assured that OwnerEvent is evaluated in the order in which Inventory objects were added to a player, then all I would do would be:

FireRate = FireRate + default.FireRate*0.5

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
BotFodder

Wicked Sick!
[Avatar]

Joined: 01/13/2006 15:23:41
Messages: 1239
Location: Florida
Offline

Okay here's what I'm looking at right now (not that the thing is working 100% but I'm starting to get distracted easily):

FireRate, as I understand it, is the number of seconds between shots.

Weapon Speed is figured in as:

newFireRate = Default.FireRate/(1 + (WS*0.01))

Throwing in arbitrary values - WS is full at 50:

0.6 = 0.9/1.5

So for the BoosterCombo (assuming a modifier of 0.50), would you want to see:

BoostedFR = (d.FR/(1+(WS*0.01)) / (1+0.50)

with a d.FR of 0.9 and max WS, BoostedFR becomes 0.4. (0 WS, handily enough, BoostedFR = 0.6).

That cool? Or is there a better option?

I use the Futurama Prof. Farnsworth Skin: http://www.disastrousconsequences.com/dcforum/posts/list/1595.page
WM: (DC)BotFodder 170
MM: (DC)BotDoctor 141
AM: (DC)BotBooster 147
http://ericdives.com/ - My DC Newbie FAQ: http://tinyurl.com/lz229
Twitter: http://twitter.com/ericdives
[WWW] aim icon [MSN]
 
Forum Index -> Druids RPG Development
Go to: