Complex Math Formula Needed

Okay, I play World of Warcraft, and I have been going for the Battlemaster achievement. One of the meta achievements is extremely hard to obtain. You have to basically win by 10 points, but your control over the score is indirect in that it is influenced by the control of certain nodes. The more nodes you have the faster you accumulate points (resources).

Here is the information on the specific gametype:

Of course there are simple ways to get this achievement if you get a good group. I have no had success with conventional strategies and recent changes make it nearly impossible to make premade groups that will work toward a common goal.

I would like a formula that I could plug in the current score, and it tell me exactly how many nodes I have to take and at exactly what time. That way I can possible create an addon that would announce to the group these conditions.

If we had an accurate idea of if we were close, people may be more inclined to help get the achievement.

There are a couple other variables not listed at the website above.

Besides rate at which resources are acquired, there is a ‘channeling’ duration you must complete uninterrupted as well as a period of time that the flag remains in a state of limbo. During this time it does not count towards either teams resource gain and can be recaptured by the enemy team, otherwise if you hold long enough then it will be captured by your team and start to add to the rate in which you acquire resources.

8 sec to channel the assault
1min ±1-3 seconds (not sure why) to acturally capture it after assaulting it

Help?

Deadly Boss Mod’s AB plugin does this.

First off, DBM is bugged and does not properly show AB score. In fact it currently doesn’t even track the score until the game is nearly over. Although you might get it to work by enabling and disabling it a few times, it still does not show the score properly.

Second, it does not show a counter for when you NEED to capture a node, only how many you need to capture to win. It also doesn’t specifically give a countdown to when you need to capture a node to get the 1600 to 1590 score achievement.

So it doesn’t do this at all.

Basically I want a formula where I can plug in:
-the current score
-the number of nodes controlled by either team.
-the time at which other nodes were assaulted
-and receive feedback in the form of a countdown that will tell me which nodes to assault/recapture and exactly when - possibly even go a step further telling me multiple solutions like: ‘assault this node in 6 sec -OR- re-capture this node in 5.’

Of course the countdowns would need to be based on when to start channelling. So as soon as the countdown ends I start to capture the flag.

I am pretty sure client/input lag would not be a major factor.

You’re right, it doesn’t meet your pointless requirements. I just asked my WoW achievement whore buddy how he did it and he said he used DBM, a pre-made and the strategy of holding both teams at 2 bases until 1:10 remained and took the third.

Okay, first since you want to be rude, don’t bother responding further.

Second, since the latest patch premade groups are capped at 5 and Arathi Basin is a 15 player battleground. The only way to do premade groups are in rated battlegrounds where it will be nearly impossible to work for this achievement outside of it randomly occurring. Gear matching will make it impossible to find a group of under-geared players you out class enough to try certain strategies (such as not capping Blacksmith).

Yes, there are strategies that work, and I have tried them in the past, but sometimes you’re just unlucky and never get a group of people willing to stick around for a few attempts.

Please, I get that you were irrationally offended and felt the need to flame, but just let it go and don’t bother responding again.

nilum, are you going to have all the data you need to make this work? How will you know when the other nodes were assaulted? I’m guessing that you can get that information from the WoW UI as inputs; if you’re serious about creating an add-on for this, I think you may be well served by doing a bit of research to see what kind of data you can get.

Assuming you can get the information you need, this may not be the right place to look for help on this; you may be better off somewhere like the Lurker Lounge or one of the other deep WoW number-crunchy places.

I can already figure out some things on my own.

You can get the time a base was assaulted because it appears in the chat log. So I could create an event handler for this.

I also have a basic formula for determining the end of the game and final score, but it doesn’t take all variables into account.

(GAMEOVERSCORE_1600 - HIGHSCORE_760) / RESOURCE_PER_SECOND_1.7_3NODE = TIMELEFT_494.1176_SEC

I can calculate end score for losing team:

LOSINGSCORE_1083.5294 = (TIMELEFT_494.1176_SEC * RESOURCE_PER_SECOND_1.1_2NODE) + CURRENTSCORE_540

This doesn’t account for bases that have been assaulted, but not yet captured and also assumes the winning team has the highscore.

I will try where you suggested for more help.

Just an observation: hard to believe that people go this hardcore into mathematical models-for a fantasy game. What if you were rewarded for doing something similar-but within the context of the game world? As in, trying to perfect a magical spell by getting all the reagents, runes, and syllables precisely correct?

I think you will find that this problem is too complicated to solve in real-time while taking into account all possible permutations. Also, there is no guarantee of a possible solution, nor a unique solution, at any given point in time.

What I would recommend is to attempt to solve a sub-set of your problem, given a specific set of constraints most likely to generate a workable, unique solution.

In particular, I would focus on the case where each team has two nodes solidly controlled, and the third node is controlled by your opponent but you have access to it (meaning you can assault and hold it at any time). Then assume you can defend your other two nodes.

With these assumptions, I believe you need to solve the following equations:

1600 = YourScore + (Rate2 * (TimeToAssault - CurrentTime + 8)) + (Rate2 * 62) + (Rate3 * (FinalTime - TimeToAssault))
1590 = TheirScore + (Rate3 * (TimeToAssault - CurrentTime + 8)) + (Rate2 * 62) + (Rate2 * (FinalTime - TimeToAssault))

You then have to solve this system of equations for TimeToAssault and FinalTime, and display TimeToAssault to the player. Scores are gathered from the game UI. Rates are constants. Note that their will not always be a solution (or at least not one that is realistic). You should be able to find algorithms for solving linear systems easily.

One concern I have with this is that, IIRC, the scores do not tick per second, but rather tick at different rates depending on the number of nodes controlled. I also put in 62 as the time from assault to control - as you noticed this does vary a bit.

Hopefully it will be close enough to give you a good idea when to assault that third node. Obviously you will need to play enough games to get into this situation in the first place - but it is not a particularly uncommon one in AB.

Hope that helps. Once you get this working you could add in alternative scenarios, I suppose.

Final caveat: This achievement is much more likely to be achieved through RNG. Sorry, but that’s just the nature of WoW.