Page 69 of 74

PostPosted: Sat Jun 27, 2020 7:53 pm
by Free Republics
Tioguldos wrote:It should work. Please let me know if you are still denied access, in that case I can upload it to another site.


One way you can verify that a Google Drive file is accessible is to copy and paste the link into a private browsing tab which presumably wouldn't be logged in to Google. If you can see it while logged out, everybody else can.

PostPosted: Sun Jun 28, 2020 11:01 am
by Tioguldos
I've gathered some statistics to build a few graphs. Here you can see how many matches wins home, away or end up in a draw with two equally ranked teams and different styles. Also, how many goals does each team score with every combination (GPM = goals per match).

https://i.imgur.com/mRWRWC9.png

Some things i would like to mention:
  • I know the graphs are hideous, the aesthetic part is not my forte. I planned to present two rounds of graphics, one for "home/draw/away" and the other for goals scored. That's why each graphic has a title. Sorry. I've been busy and I didn't take the time to change that.
  • I'm aware that a -5 team scores a lot of goals against a 5 team. The style changes the odds of scoring a goal as much as the odds of conceding a goal. Do you think I should change that?
  • If you would change something, I would appreciate it if you could mention how you would do it.
  • I'll post each style combination for 'highest rank home'/'lowest rank away' and 'lowest rank home'/'highest rank away' if you consider that this first set of stats is fine.
  • I took the statistics from a database of a hundred matches for each combination. As the spreadsheet is still in development I am generating and writing the results manually in a table. If you know how to automate the process it would be a great help. If I can generate databases of at least a thousand matches, the stats would be much more accurate.
  • I'm calculating the expected value of goals scored as E(X)=np , where n is the number of attacks and p is the probability that an attack will end in a goal. If you know how to calculate the expected victory percentages it would also help me to refine the code, since I would not have to generate databases for each set of styles and ranks.

Thanks for your time! I will be reading your comments. :D

PostPosted: Sun Jun 28, 2020 11:28 am
by Free Republics
The biggest thing that jumps out to me from those graphs is that style mods change the outcomes (win/lose/draw). The scorinators we currently use for international competition do not do this because they first score a result and then use style mods to add/remove goals from both teams after the fact. The "additive" style mods add or subtract an equal number of goals from both teams and don't change the goal difference unless they reduce a 2-0 win to a 1-0 win (the additive style mods I implemented for Baseinator preserve the margin of victory). The "multiplicative" style mods multiply the score for both teams by a common factor which changes the margin of victory but is also more realistic since offense-oriented teams are going to win or lose by bigger margins. What you're doing is more realistic still than multiplicative style mods in that style mods actually affect your chances of winning (I would expect defensive mods to be good for bad teams and offensive mods to be good for good teams).

The thing is that the "additive" style mods are probably more fair in an environment where the matches are RPed and success is supposed to correlate with the quality and frequency of RPs (such as the World Cup, regional tournaments, youth WCs, etc.). Your approach is probably more realistic for domestic leagues where its perfectly fine to do something that wouldn't be "fair" in an international tournament.

I'm not sure that a sample of 100 matches is big enough to eliminate statistical noise though I'm not familiar enough with spreadsheets to know how to automate it. In a programming language, it'd be as simple as running the algorithm in a loop N times, printing out N sets of results and then feeding the results into a table generator. I'm not sure if it is possible to do a for loop in a spreadsheet and save all N scores consecutively in a row or column but that's what I'd think of doing.

I think it is quite reasonable for -5 vs 5 to be equivalent to 0 versus 0. The -5's bad offense and the 5's bad defense should cancel each other out.

All of the above comes with the caveat that I haven't looked at your actual spreadsheet yet so I'm not familiar with the logic of your algorithm.

PostPosted: Sun Jun 28, 2020 2:06 pm
by Tioguldos
Thanks for the the comment

Free Republics wrote:The thing is that the "additive" style mods are probably more fair in an environment where the matches are RPed and success is supposed to correlate with the quality and frequency of RPs (such as the World Cup, regional tournaments, youth WCs, etc.). Your approach is probably more realistic for domestic leagues where its perfectly fine to do something that wouldn't be "fair" in an international tournament.


I designed the code for my national league, so as of the current version, it doesn't have a RP bonus modifier. Do you think I could add an additive modifier to the current code so that the style relationship is kept as is and the RP modifier is applied in a fair way? It would mean a bad team would relatively increase their chances of snatching a draw from a good team if they put all their efforts into defending, while also reflecting the quality of their RP. It would be a 1990 Cameroon. The underdog defending and counterattacking, against all odds, beats the group favorite. It would give rise to feats very fun to RP and would expand the range of possibilities.
The RP bonus could be applied to the final score, generated with the base characteristics of each team, or directly to the scoring probabilities, along with the base characteristics. I'm not completely familiar with the day to day of NS Sports, and I don't want to waste your time with crazy ideas. In my opinion, fair results can be generated, which additionally give a better representation of the characteristics of each particular team, in a more realistic way.


Free Republics wrote:All of the above comes with the caveat that I haven't looked at your actual spreadsheet yet so I'm not familiar with the logic of your algorithm.


As I said, it uses binomial probability X ~ B (n, p).

n is the number of attacks. It has a value of (4000 + Home Advantage Bonus + 1500 * Team A Style Modifier + 1500 * Team B Style Modifier) * Rank Modifier

More clearly: (4000 + HAB + 1500 * ASM + 1500 * BSM) * RM

p is the probability of an attack ending in a goal. In the current version it is 0.00035 and doesn't change.


The Home Advantage Bonus is 500.

The Team A Style Modifier and Team B Style Modifier range from -1 (-5 style) to 1 (5 style).

The Rank Modifier ranges from 0.75 (a much worse team) to 1.25 (a much better team). As you can see, Home Advantage Bonus and both team style modifiers further modify the amount of attacks based on the range difference. A good team makes good use of their home advantage, while a bad one hardly increases their chances. The same happens with Style Modifiers.

Each team uses its own random number between 0 and 1, which is compared to the thresholds assigned to values of x=1, x=2, x=3 ... x=7 goals scored. The x's are deduced from the binomial probability cumulative density equation. I made it up to x=7 because the scorinator is made for relatively similar teams. You are not supposed to play a match between Liverpool and a team from San Marino. The lowest rank would be the worst teams in a UCL group phase.

PostPosted: Sun Jun 28, 2020 5:35 pm
by Tioguldos
I've got the graphs for High Rank Home vs Low Rank Away. I'd say that they are quite satisfactory, but I leave it to you.

Home/Draw/Away stats with a comment on the actual statistic on which it is based.

Goals Per Match.

Both graphs together.

Comparison with the Equally Ranked graphs.

I'll be posting the graphs for Low Rank Home vs High Rank Away as soon as possible. I look forward to your comments.

P.S.: I was thinking about some things that I could eventually add. Northwest Kalactin mentioned in a telegram that the ranks that I am using for my national league would not be usable in World Cup related events, since those events use around 50-60 ranks. I could rewrite the code so that each user can choose a number of ranges and in how many subdivisions the differences between them are arranged. Say you want 100 ranks, divided in 3 modifiers. A rank 1 would not have modifier with teams in ranks 1-32, an intermediate modifier against 33-65 and a high modifier against 66-100. That could be applied to as many ranks and subdivisions as you want.
Another thing I could change is the data validation. Currently, you can put any number in the teams boxes. You should put valid numbers, because otherwise the code will crash. I could change it. I can put a list of possible values, and each one chooses from there. That would reduce the chances of something going wrong, but it would also slow down the process. What do you think?

Edit: In addition, I was thinking of adding the minutes of the game at which each goal was scored

PostPosted: Thu Jul 16, 2020 6:40 pm
by Woryand
Alta Italia wrote:Hi!

I tried to download NSFS 3.0.1, and it looked alright at first. However, when I tried to click either New League or New Cup, nothing happened when I clicked either of those boxes. Curiously, all other buttons - Load, Continue, & Import for both Cup & League - did work. Does anyone have any suggestions for what's wrong or how I can fix it?

Thanks!


Heya everyone -- I seem to be having the same issue, and this seemed to have never been answered. Can someone help out? Thanks!

PostPosted: Thu Jul 16, 2020 7:15 pm
by Sylestone
I also tried to download NSFS 3.0.1, but whenever I try and open it it comes up as a word document and then says “Word can’t open some content on this document” and when I press “OK”, it just closes.
Any reason for this?

PostPosted: Thu Jul 16, 2020 8:02 pm
by Free Republics
Sylestone wrote:I also tried to download NSFS 3.0.1, but whenever I try and open it it comes up as a word document and then says “Word can’t open some content on this document” and when I press “OK”, it just closes.
Any reason for this?


I don't understand why Microsoft Word would think that a .jar file (a Java executable) is a Word document or why Microsoft would think reusing that particular file extension for Word was a good idea.

To run Java programs, you need to download and install Java. The Java installer will (hopefully) associate .jar files with Java automatically.

PostPosted: Thu Jul 16, 2020 8:21 pm
by Sylestone
Free Republics wrote:
Sylestone wrote:I also tried to download NSFS 3.0.1, but whenever I try and open it it comes up as a word document and then says “Word can’t open some content on this document” and when I press “OK”, it just closes.
Any reason for this?


I don't understand why Microsoft Word would think that a .jar file (a Java executable) is a Word document or why Microsoft would think reusing that particular file extension for Word was a good idea.

To run Java programs, you need to download and install Java. The Java installer will (hopefully) associate .jar files with Java automatically.

I have installed Java, Mriin told me the same thing, or am I missing something?

PostPosted: Thu Jul 16, 2020 9:45 pm
by PotatoFarmers
Sylestone wrote:
Free Republics wrote:
I don't understand why Microsoft Word would think that a .jar file (a Java executable) is a Word document or why Microsoft would think reusing that particular file extension for Word was a good idea.

To run Java programs, you need to download and install Java. The Java installer will (hopefully) associate .jar files with Java automatically.

I have installed Java, Mriin told me the same thing, or am I missing something?

Windows: Start Menu -> Settings -> Default Apps -> search for the .jar extension, the application should be Java and not ms word. Unless you are using Mac, which I am not quite familiar about but pretty sure there is something similar to.

PostPosted: Thu Jul 16, 2020 10:36 pm
by Sylestone
PotatoFarmers wrote:
Sylestone wrote:I have installed Java, Mriin told me the same thing, or am I missing something?

Windows: Start Menu -> Settings -> Default Apps -> search for the .jar extension, the application should be Java and not ms word. Unless you are using Mac, which I am not quite familiar about but pretty sure there is something similar to.

ah right, thanks.

PostPosted: Wed Jul 22, 2020 11:52 am
by Barlovento
Hello, I've been reading this thread for a while and finally decided to start tweaking the SQIS formula, intending to use it for my domestic football league.

So I have a question regarding this formula (disabled style modifiers for simplicity):

A ± B × (1 − Lower Rank / Higher Rank) × Home Advantage

When the weaker team plays at home, wouldn't the home advantage factor decrease its goal-scoring probability?

For example, Team A (with a rank of 80) faces Team B (with a rank of 70). If Team A plays at home, that would fine...

Without home advantage:
P(A) = 0.1 + 0.07 × (1 − 70 / 80) = 0.10875

With home advantage:
P(A) = 0.1 + 0.07 × (1 − 70 / 80) × 1.333333333333 = 0.1 + 0.011666666666 = 0.111666666666

The probability increases.

However, if Team B (the weaker team) plays at home, this is what happens:

Without home advantage:
P(B) = 0.1 − 0.07 × (1 − 70 / 80) = 0.09125
With home advantage:
P(B) = 0.1 − 0.07 × (1 − 70 / 80) × 1.333333333333 = 0.1 − 0.011666666666 = 0.088333333333

The probability decreases when team B plays at home.

I'd appreciate any help you can provide.

PostPosted: Thu Jul 23, 2020 1:39 am
by Osarius
Barlovento wrote:When the weaker team plays at home, wouldn't the home advantage factor decrease its goal-scoring probability?


I'm not sure you're looking at/calculating the right formula here.

The formula I see in the code is a + ( b - ( lower / higher ) * b ) multiplied by 1 if you're looking at the higher skill, or -1 if you're looking at the lower skill. Then multiplied by home advantage (which is 4/3).

A quick reconstruction of this in Excel gives the following:

If Team A is at home:
( 0.1 + ( 0.07 - ( 70 / 80 ) * 0.07 ) * 1) = 0.10875
Multiply that by 4/3 to get 0.145

If Team B is at home:
( 0.1 + ( 0.07 - ( 70 / 80 ) * 0.07 ) * -1) = 0.9125
Multiply that by 4/3 to get 0.121667

PostPosted: Thu Jul 23, 2020 11:46 am
by Barlovento
Osarius wrote:
Barlovento wrote:When the weaker team plays at home, wouldn't the home advantage factor decrease its goal-scoring probability?


I'm not sure you're looking at/calculating the right formula here.

The formula I see in the code is a + ( b - ( lower / higher ) * b ) multiplied by 1 if you're looking at the higher skill, or -1 if you're looking at the lower skill. Then multiplied by home advantage (which is 4/3).

A quick reconstruction of this in Excel gives the following:

If Team A is at home:
( 0.1 + ( 0.07 - ( 70 / 80 ) * 0.07 ) * 1) = 0.10875
Multiply that by 4/3 to get 0.145

If Team B is at home:
( 0.1 + ( 0.07 - ( 70 / 80 ) * 0.07 ) * -1) = 0.9125
Multiply that by 4/3 to get 0.121667

That makes sense! Thanks for replying.

PostPosted: Sun Sep 06, 2020 7:25 am
by Indigenous Rabbitohs
Hello there!

https://easyupload.io/2culhn I've modified the Rugby League xkoranate xml file to make the scoring a little more in line with current scoring in the NRL- the existing version has nearly half a much scoring as is average over the last 3 NRL seasons. I know this is a pretty niche sport in the community, but I felt it was worth sharing. :)

The file is going to self-delete in a few weeks, so I sent it along to the NS Sports History folks.

Password is NRL.

PostPosted: Sun Sep 06, 2020 12:26 pm
by Northwest Kalactin
Indigenous Rabbitohs wrote:Hello there!

https://easyupload.io/2culhn I've modified the Rugby League xkoranate xml file to make the scoring a little more in line with current scoring in the NRL- the existing version has nearly half a much scoring as is average over the last 3 NRL seasons. I know this is a pretty niche sport in the community, but I felt it was worth sharing. :)

The file is going to self-delete in a few weeks, so I sent it along to the NS Sports History folks.

Um, the file says that it is password protected, so I am unable to access the file.

PostPosted: Sun Sep 06, 2020 4:55 pm
by Indigenous Rabbitohs
Northwest Kalactin wrote:
Indigenous Rabbitohs wrote:Hello there!

https://easyupload.io/2culhn I've modified the Rugby League xkoranate xml file to make the scoring a little more in line with current scoring in the NRL- the existing version has nearly half a much scoring as is average over the last 3 NRL seasons. I know this is a pretty niche sport in the community, but I felt it was worth sharing. :)

The file is going to self-delete in a few weeks, so I sent it along to the NS Sports History folks.

Um, the file says that it is password protected, so I am unable to access the file.



Sorry about that!!! Password is NRL, I updated the original post too.

Cheers!

PostPosted: Wed Sep 16, 2020 8:17 am
by Indigenous Rabbitohs
https://ufile.io/jbvpsu43 Following up, here's a better version of my Rugby League file.

Hello! I modified the scoring and also the types of scoring for rugby league's SQIS format to make it more in line with NRL, and after running some tests this appears much closer.

I tested it a few times, but here is the result of my most recent, with each team's rating set to their number of wins in the 2019 season and a max of 20.

Code: Select all
                         Pld    W   D   L    PF   PA   PD   Pts
 1 Storm                  24   17   0   7   598  414 +184    51
 2 Sharks                 24   16   1   7   556  500  +56    49
 3 Broncos                24   15   2   7   616  492 +124    47
 4 Roosters               24   15   1   8   537  439  +98    46
 5 Rabbitohs              24   14   2   8   629  469 +160    44
 6 Raiders                24   14   2   8   573  457 +116    44
 7 Panthers               24   14   1   9   551  539  +12    43
 8 Bulldogs               24   11   1  12   481  541  −60    34
 9 Warriors               24   11   0  13   524  534  −10    33
10 Sea Eagles             24   10   2  12   566  496  +70    32
11 Tigers                 24   10   0  14   501  559  −58    30
12 Eels                   24    9   2  13   500  482  +18    29
13 Knights                24    8   2  14   542  670 −128    26
14 Cowboys                24    7   0  17   387  523 −136    21
15 Titans                 24    6   1  17   341  589 −248    19
16 Dragons                24    5   3  16   376  574 −198    18


Close enough to the real 2019 ladder https://afltables.com/rl/seas/2019.html to feel significant but still different enough to feel like a fun game. The scoring is much more accurate- the existing SQIS had scoring at about half the NRL level.

Now, the drop goals were the bigger concern- I actually had to tinker with the numbers to a little below what seemed to be the actual rate (about 2.8% of non-try scoring were drop goals in real life), but this file got it down to 54 odd numbered game scores in my test- the real NRL season had 37 field goals, so its' still a tiny bit more common but I'll allow it. I've long though teams should go for it a little more often if they're in range, you get about ~40 sets per match so to end one when you're about 20 metres away without scoring is disappointing, who cares if they get seven tackles from deep in their possession?

PostPosted: Wed Sep 16, 2020 2:02 pm
by Sarzonia
Is there a way to modify one of the football (soccer) scorinators to take out extra time and go directly to penalties?

When I hosted the NS World Cup of Masters, that was one thing I couldn't do with the knockout stages because scorinators sim extra time sessions and then penalties for the knockout rounds.

The RL World Cup of Masters went directly to penalties when knockout stage matches were level after 90 minutes because the players on the RL teams were over 35.

PostPosted: Wed Sep 16, 2020 2:15 pm
by Northwest Kalactin
Sarzonia wrote:Is there a way to modify one of the football (soccer) scorinators to take out extra time and go directly to penalties?

When I hosted the NS World Cup of Masters, that was one thing I couldn't do with the knockout stages because scorinators sim extra time sessions and then penalties for the knockout rounds.

The RL World Cup of Masters went directly to penalties when knockout stage matches were level after 90 minutes because the players on the RL teams were over 35.

Yup.

It is as easy as removing extra time as a tiebreaker in the sport file.

Here is NSFS with no Extra Time:
Code: Select all
 <?xml version="1.0" encoding="UTF-8"?>
<sport version="0.3">
   <name>Association football—NSFS formula—NoAET</name>
   <discipline>Association football</discipline>
   <event>NSFS formula</event>
   <scorinator /> <!-- only one scorinator is needed for this event -->
   
   <paradigm>nsfs</paradigm>
   <paradigmOptions>
      <double type="homeAdvantage">7.5</double>
      <double type="homeAdvantageGG">0.133333333333</double>
      <double type="shootoutProb">0.65</double>
      <double type="shootoutLength">5</double>
      <double type="pointValues">1</double>
      <double type="attackCoeffs">1</double>
      <list type="tiebreakers">
         <string>shootout</string>
      </list>
      <list type="tiebreakerNames">
         <string>pen.</string>
      </list>
      
      <!-- NSFS parameters -->
      <double type="baseAttackCoeff">667.5</double>
      <double type="rankDiffModifier">12</double>
      <double type="rankCoeff">31.5</double>
      <double type="rankScalar">0.5</double>
      <double type="baseAttackSuccessThreshold">580</double>
      <int type="baseAttacksSuperior">10</int>
      <int type="baseAttacksInferior">10</int>
      <double type="attackCoeffSuperior">10</double>
      <double type="attackCoeffInferior">0</double>
      <double type="NSFSStyleCoeffA">2.0991677816057</double>
      <double type="NSFSStyleCoeffB">1.2442581729602</double>
      <double type="NSFSStyleExponent">-0.42705203296846</double>
      <double type="NSFSStyleOffset">0.072435335725325</double>
      <string type="tableHeaderGoalsFor">GF</string>
      <string type="tableHeaderGoalsAgainst">GA</string>
      <string type="tableHeaderGoalDifference">GD</string>
   </paradigmOptions>
   
   <!-- the style modifier distribution is a bit wonky because negative modifiers are less likely to take effect -->
   <dataPoints name="style">
      <dataPoint pos="0">-3</dataPoint>
      <dataPoint pos="0.4">-1</dataPoint>
      <dataPoint pos="0.5">0</dataPoint>
      <dataPoint pos="0.65">0</dataPoint>
      <dataPoint pos="1">3</dataPoint>
   </dataPoints>
</sport>

PostPosted: Wed Sep 16, 2020 2:29 pm
by Graintfjall
If you use xkoranate, you can simply remove the extra time tiebreakers in the sport file:

So:
Code: Select all
<list type="tiebreakers">
         <string>extratime</string>
         <string>shootout</string>
      </list>
      <list type="tiebreakerNames">
         <string>AET</string>
         <string>pen.</string>
      </list>

Becomes:
Code: Select all
<list type="tiebreakers">
         <string>shootout</string>
      </list>
      <list type="tiebreakerNames">
         <string>pen.</string>
      </list>


You should rename the <name> and <event> tags to differentiate it from the existing formula.

Test:
real grandpa 0–0 gray beards (3–1 pen.)
werther's originals 2–0 old fogeys

real grandpa 0–4 gray beards
werther's originals 1–1 old fogeys (8–7 pen.)

real grandpa 0–0 gray beards (4–3 pen.)
werther's originals 1–0 old fogeys



If you are using NSFS, you can change the AssociationFootball.java file

From
Code: Select all
public int numOvertimePeriods() {
      return 1;
}

to
Code: Select all
public int numOvertimePeriods() {
      return 0;
}


If you are using Vilita's online scorinator, I do not believe you can change the formula yourself.

PostPosted: Sun Sep 20, 2020 6:33 pm
by Koana Islands
Does anyone have a link to the old NASCAR scorinators that were available on http://wilsonbiggs.com/typhoon1sp.html ?

The site seems to be down. Thanks guys.

Some bugs

PostPosted: Sat Oct 17, 2020 3:20 pm
by Tanagrine
Hi! Im having some trouble with the The Racing Scorinator V2.5.5.. Somehow my drivers seem to all have sudden issues during the race, going all "N/A" at the same round and ending all with DNF. Any clue wht this could be happening?

https://i.imgur.com/52shsar.png

Thanks!

PostPosted: Sun Oct 18, 2020 3:28 am
by Hebitaka
Hey guys. It might be a silly question, but how can I get a playoff done with xkoranate-0.3.3

PostPosted: Sun Oct 18, 2020 3:48 am
by Indusse
Hebitaka wrote:Hey guys. It might be a silly question, but how can I get a playoff done with xkoranate-0.3.3

Playoffs? Well... If you just want to scorinate playoff matches then, you can use some simple scorinators like Vilita's or else please wait for professional guidance.