rec.games.trading-cards.jyhad

Getting the Archon 1.2 to work under Open Office 2.0 Calc.

5 messages from 4 participants · 30 October 2005 – 01 November 2005
original thread on Google Groups

Brett

I have found two types of problem that occur with the Archon when opened with Open Office 2.0 Calc: First, when the MAX() function is evaluated over a range of empty cells, it will return a value of zero under Excel, but will return an Error:502 under Calc. The worst instance of this is in cell Q6 in the Methuselahs sheet resulting in the Archon failing to compute the adjusted rank in the Methuselahs Sheet, any entries in the Standings sheet, and the finalists in the Final Round sheet whenever there are no coin ranking entries. To fix this problem requires inserting a test condition to determine if any numeric values exist in the cell range, and if not, to generate the correct value as if each cell contained a zero. Second, the Boolean logic value FALSE is treated as a nonnumeric type under Excel, and a numeric value of zero under Calc. In all four Round sheets, several cells use an IF() function which returns the value FALSE if the test condition is false. Other cells in these sheets use the COUNT() function to count the number of numeric entries in the previous cells. COUNT() ignores the FALSE values under Excel, but counts them under Calc, resulting in erroneous tournament point calculations and game wins. To fix this problem requires assigning a default value of "" --- a null string --- when the IF() test condition is false. COUNT() ignores null strings under both Excel and Calc. The following modifications are intended to be made to the Archon 1.2 when opened with Calc 2.0. ================================================ NOTE #1: Calc uses the semicolon ";" to separate function arguments, whereas Excel uses the comma ",". ================================================ NOTE #2: In order to modify the cells on a given sheet, you will have to click Tools --> Protect Document --> Sheet to unprotect the sheet. Make sure to follow this same sequence when you are done so that the sheet is protected again. ================================================ NOTE #3: The cells to be modified are hidden. Click on View --> Column & Row Headers to see the headers. Select the two adjacent column headers that sandwich the desired column(s). Right click on one of the selected headers and click "Show" in the dropdown menu that appears. To hide them again, select the column headers to be hidden, right click on one of the selected headers, and click "Hide" in the dropdown menu that appears. ================================================ The adjustments follow: ------------------------------------------------ Methuselahs Sheet: ------------------------------------------------ Change Cell O6 to read: =IF(COUNT($I$7:$I$206)=0;1;MAX($I$7:$I$206)+1) Change Cell P6 to read: =IF(COUNT($J$7:$J$206)=0;1;MAX($J$7:$J$206)+1) Change Cell Q6 to read: =IF(COUNT($M$7:$M$206)=0;1;MAX($M$7:$M$206)+1) Change Cell V6 to read: =IF(COUNT($V$7:$V$206)=0;1;MAX($V$7:$V$206)+1) Change Cell W6 to read: =IF(COUNT(MPlayerNo)=0;1;MAX(MPlayerNo)+1) Cells S7:S206 need to be changed as follows: 1) Change Cell S7 to read: =IF(ISNA(MATCH($R7+1;$R$7:$R$206;0));IF($A$4=0;-1;IF($R7=MAX($A$7:$A$206);$R7;-1));$R7) 2) Select Cells S7:S206 3) Click Edit --> Fill --> Down ------------------------------------------------ Round 1 Sheet: ------------------------------------------------ Cells M7:P206 need to be changed as follows: 1) Select cells M7:P206. 2) Click Edit --> Find & Replace 3) In the "Search For" box, type: ))) 4) In the "Replace With" box, type: ));"") 5) Click the button "More Options" and make sure the box labeled "Current Selection Only" is checked. 6) Click the button "Replace All", then click the button "Close". ------------------------------------------------ Round 2 Sheet: ------------------------------------------------ Follow steps 1-6 as listed in the Round 1 sheet. ------------------------------------------------ Round 3 Sheet: ------------------------------------------------ Follow steps 1-6 as listed in the Round 1 sheet. ------------------------------------------------ Final Round Sheet: ------------------------------------------------ 1) Select cells M14:P18 Then, follow steps 2-6 as listed in the Round 1 sheet. ------------------------------------------------ ------------------------------------------------ I have tested the Archon with several data sets after making these modifications, and it seems to function under Calc. Your results may vary. I have only traced most of the obvious problems to their sources and made the appropriate changes. I haven't yet gone over the Archon with a fine-toothed comb to eliminate all possible bugs under Calc. If you locate any further problems, please reply to this thread. Thanks. - Brett Harris

salem

On Sun, 30 Oct 2005 05:33:59 GMT, Brett <cauc...@NOSPAMyahoo.com> scrawled: >I have found two types of problem that occur with the Archon when opened >with Open Office 2.0 Calc: although I doubt I will ever need this information, i do applaud your efforts, and i am sure plenty of other people will find it immensely useful. well done! :) it's all very impressive. salem http://www.users.tpg.com.au/adsltqna/VtES/index.htm (replace "hotmail" with "yahoo" to email)

LSJ

Brett wrote: > I have found two types of problem that occur with the Archon when opened > with Open Office 2.0 Calc: [...] > To fix this problem requires assigning a default value of "" --- a null > string --- when the IF() test condition is false. COUNT() ignores null > strings under both Excel and Calc. > > The following modifications are intended to be made to the Archon 1.2 > when opened with Calc 2.0. Thanks. I'll include these changes (or rather, compatible Excel versions of these changes -- commas for separators) in the next version of the Archon. -- That is my story, be it bitter or be it sweet. Keep a little and let a little come back to me. LSJ (vtesr...@TRAPwhite-wolf.com) V:TES Net.Rep (remove spam trap to reply) http://www.white-wolf.com/vtes/

Brett

I've discovered a few more issues. =================================== NOTE: When referencing cells from sheets other than the current sheet, Calc uses a period "." to separate the sheet name from the cell name, whereas Excel uses an exclamation mark "!" =================================== Modifications follow: ------------------------------- Tournament Info Sheet: ------------------------------- Change Cell B12 to read: =IF(COUNT($'Round 1'.D7:D206)=0;0;MAX($'Round 1'.D7:D206))+IF(COUNT($'Round 2'.D7:D206)=0;0;MAX($'Round 2'.D7:D206))+IF(COUNT($'Round 3'.D7:D206)=0;0;MAX($'Round 3'.D7:D206))+1 Comment on the above: This corrects another instance of taking the MAX() over empty cells. ------------------------------- Methuselahs Sheet: ------------------------------- Change Cell F7 to read: =IF(ISBLANK($A7);"";COUNT(IF(ISNA(VLOOKUP($A7;$'Round 1'.$A$7:$J$206;1;FALSE()));"";1);IF(ISNA(VLOOKUP($A7;$'Round 2'.$A$7:$J$206;1;FALSE()));"";1);IF(ISNA(VLOOKUP($A7;$'Round 3'.$A$7:$J$206;1;FALSE()));"";1);IF(ISNA(VLOOKUP($A7;$'Final Round'.$A$14:$J$18;1;FALSE()));"";1))) Change Cells F8:F206 in a similar manner. Comment on the above: If a player isn't listed as playing in a given round (as is possible with 6 players, for example) then VLOOKUP() will return an Error when searching for that player in the given round. In this situation, COUNT() ignores errors under Excel, but will return an Error condition under Calc. To fix it, test for #N/A returned by VLOOKUP, in which case return a null string to COUNT() which will be ignored. Otherwise return 1 to COUNT() indicating the player was found. ***** NEXT ***** Change Cell Z2 to read: =$'Final Round'.$V$6 Comment on the above: Fetch the coefficient from the Final Round Sheet. Further commentary below. ------------------------------- Final Round Sheet: ------------------------------- Change Cell Q3 to read: Level Change Cell Q5 to read: c Change Cell Q6 to read: n Change Cell Q7 to read: q Change Cell Q8 to read: r Change Cell R3 to read: Modifier Change Cell R4 to read: 0 Change Cell R5 to read: 1 Change Cell R6 to read: 0 Change Cell R7 to read: 0.25 Change Cell R8 to read: 0 Change Cell V5 to read: =VLOOKUP($'Tournament Info'.$B$9;$Q$4:$R$8;2;TRUE()) Comment on the above: In cell V5 is an embedded array that simply does not translate over when loaded under Calc. It gets renamed NA(). To fix this, hard code the array into some vacant hidden cells in the Final Round sheet, and consult that array instead. ***** NEXT ***** Change Cell V4 to read: =2*LOG($U$4;15)-1 Comment on the above: This corrects an actual formulaic error in the Archon and is not specific to Calc. Under the VEKN rating system, the base formula for the coefficient is LOG_15(#Players^2)-1, or equivalently, 2*LOG_15(#Players)-1. The Archon calculates it as LOG_15(#Players) in cell V4 of the Final Round Sheet, resulting in an erroneous Bonus Point calculation. ====================================== - Brett Harris

Ankur Gupta

> ***** NEXT ***** > > Change Cell V4 to read: =2*LOG($U$4;15)-1 > > Comment on the above: This corrects an actual formulaic error in the Archon > and is not specific to Calc. Under the VEKN rating system, the base formula > for the coefficient is LOG_15(#Players^2)-1, or equivalently, > 2*LOG_15(#Players)-1. The Archon calculates it as LOG_15(#Players) in cell V4 > of the Final Round Sheet, resulting in an erroneous Bonus Point calculation. > > ====================================== I'm just echoing this again, as it was stuck at the bottom of Brett's e-mail. I don't know if it's right, but it's worth checking out. Ankur Gupta Prince of West Lafayette