View previous topic :: View next topic |
Author |
Message |
Dix "Royal Flush - No Hat"
Joined: 17 Jun 2005 Posts: 246 Location: W.Poland Maine - USA
|
Posted: Sat Nov 19, 2005 10:16 pm Post subject: Ranking for Rookies |
|
|
djack wrote: | How do we specifically get our formulas into TM? I'm not seeing a step by step discussion on this. |
Then get in... strap in... shut up... and hang on...
(if you want to make this a "sticky" Doc... go for it.)
I'm assuming here that you've figured out a formula for how to calculate your ranking method and put it on paper. For this example we'll do something simple... like give 1 point for each finishing position in a tourney... the formula is simple enough...
POINTS = (#ofPlayers + 1) - FinishPosition
So, start by opening the method editor by clicking "new"... you end up faced with this...
To enter your formula you'll need to work "backwards"... in other words, last calculation first. Which is why is helps to put it on paper... it's easier to figure out the order of calculations by seeing it on paper. And to check what you are getting in TM against what you have on paper.
So, first thing we'll need to do is change the current "add" node to "subtract"... click on the word "add" in the left pane to highlight it and you'll notice your options open up in the right pane...
Leave the "Type" option set to "Numeric Formula" and change the "Formula" to "Subtract"... you should now have this...
OK, so now we need to add our other calculation node... highlight the first "1.0" in the left pane...
Change the "Type" from "Numeric Constant" to "Numeric Formula" and "Type" should be "Add"...
Now click on the little formula tree symbol next to the "Add" node in the left pane to expand the formula...
If you go back to the top at this point and highlight the "subtract" node you'll see that we now have the complete structure of the formula at this point... we just need to plug in the variables...
Highlight the 1st "1.0" in the "Add" node....
Change it from a "Constant" to a "Variable" and select "Tournament Buy-In Count" as the variable type...
Now jump down to the "1.0" constant in the "Subtract" node and make that the "Player Finish" variable....
As a final touch, since we won't be dealing with anything but whole numbers we can change the "Number Format" from "Double" (which means "double precision floating point") to "Integer"
The following example uses the same base formula, but also gives "bonus points" of 10, 5, and 2, for the top 3 finishers...
Formulas can get as complex as you like.
For example... this formula "handicaps" the amount of points for each tourney based on the buy-in amount and number of players...
(NOTE: If you develop a formula in Excel containing a logarithm function you need to divide Java's natural log by log(10) as in the above formula to convert it to a base-10 log.)
You can also modify any of the existing sample ranking methods that came with TM... just "copy" the one you'd like to modify. _________________ - Dix |
|
Back to top |
|
|
djack "Ace High"
Joined: 12 Nov 2005 Posts: 6
|
Posted: Sun Nov 20, 2005 2:37 pm Post subject: |
|
|
Thanks for the start Dix.
I'm looking at using the 2nd example you have with bonus points. One problem I'm having is I can't get the "Numeric If" to go to 3 conditions. It stays on 1 and won't change. |
|
Back to top |
|
|
Dix "Royal Flush - No Hat"
Joined: 17 Jun 2005 Posts: 246 Location: W.Poland Maine - USA
|
Posted: Sun Nov 20, 2005 3:10 pm Post subject: |
|
|
Yup... you're right... you can't change it... When Doc added the "spinner" something broke... the last version where changing that value works is the 10-29-05 release just prior to the spinners being added.
I'll send Doc an e-mail about the bug... you'll have to give him a little time to fix it and post a new release. _________________ - Dix |
|
Back to top |
|
|
rastapete Founding Father
Joined: 13 Feb 2005 Posts: 401 Location: 'Ipsa' this, you pissy little bitch!
|
Posted: Sun Nov 20, 2005 6:14 pm Post subject: |
|
|
Good job Dix. Haven't read it thru, but way to contribute. |
|
Back to top |
|
|
rumackay "A Set of Mop Squeezers"
Joined: 15 Oct 2005 Posts: 60 Location: Queensland, Australia
|
Posted: Sun Nov 20, 2005 8:00 pm Post subject: |
|
|
That's a big help Dix, thanks mate. Now if only Doc would add to the list of numeric valuables a "places paid" so that we could implement our fantastical formula into our league. In the meantime we'll make do and experiment with some differnet formulas. Thanks again Dix. |
|
Back to top |
|
|
unyostun "Cowboys"
Joined: 26 Mar 2005 Posts: 32
|
Posted: Mon Nov 21, 2005 2:59 am Post subject: |
|
|
If you pay out a % of the entries you can just use that to get the # of places paid out.
max(1.0,(floor((Buy-in Count * % paid)))
The max function is there to make sure it evaluates to at least 1, and the floor function is the same as the greatest integer funtion (it truncates the number to an integer). |
|
Back to top |
|
|
bratwurst "A Set of Mop Squeezers"
Joined: 19 Jun 2005 Posts: 64
|
Posted: Wed Oct 04, 2006 2:34 pm Post subject: |
|
|
Thanks seeing this worked through visually with the screenshots helped quite a bit. _________________ 40 |
|
Back to top |
|
|
|