• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 16:21
CEST 22:21
KST 05:21
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
ByuL, and the Limitations of Standard Play3Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12TL.net Map Contest #22 - Voting & Ladder Map Selection7Code S Season 2 (2026) - RO8 Preview8
Community News
MC vs IdrA, Boxer vs Nal_rA to be Legacy Matches @ BlizzCon185.0.16 Hotfix (June 30) - Balance + Bug Fixes24Weekly Cups (June 22-28): Zergs thrive in new patch2[TLMC] Summer 2026 Ladder Map Rotation05.0.16 patch for SC2 goes live (8 worker start)99
StarCraft 2
General
5.0.16 Hotfix (June 30) - Balance + Bug Fixes MC vs IdrA, Boxer vs Nal_rA to be Legacy Matches @ BlizzCon 5.0.16 patch for SC2 goes live (8 worker start) Is the larve respawn broken? ByuL, and the Limitations of Standard Play
Tourneys
Crank Gathers Season 4: BW vs SC2 Team League RSL Revival: Season 6 - Qualifiers and Main Event Douyu Cup 2026: $20,000 Legends Event (June 26-28) Maestros of The Game 2 announcement and schedule ! INu's Battles#17 <BO.9>
Strategy
[G] Having the right mentality to improve
Custom Maps
New Map Maker - Looking for Advice - Love or Hate Work In Progress Melee Maps [D]RTS in all its shapes and glory <3
External Content
The PondCast: SC2 News & Results Mutation # 532 Nuclear Family Mutation # 531 Experimental Artillery Mutation # 530 One For All
Brood War
General
BW General Discussion Best thing happen to StarCraft since Remastered? ASL 22 Proposed Map Pool Starcraft vs Retro Category on Twitch ProGamer Paychecks Story
Tourneys
[Megathread] Daily Proleagues [ASL21] Grand Finals The Casual Games of the Week Thread [BSL22] GosuLeague Casts - Tue & Thu 22:00 CEST
Strategy
Simple Questions, Simple Answers Creating a full chart of Zerg builds Relatively freeroll strategies Why doesn't anyone use restoration?
Other Games
General Games
Dawn of War IV ZeroSpace at Steam NextFest - Last free demo Nintendo Switch Thread Path of Exile Stormgate/Frost Giant Megathread
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
[94721]Better Good-Health Signs Than 3-15 Bans/Yea TL Mafia Community Thread Vanilla Mini Mafia
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Men's Fashion Thread Canadian Politics Mega-thread The Games Industry And ATVI
Fan Clubs
The HerO Fan Club! The herO Fan Club!
Media & Entertainment
Movie Discussion! Series you have seen recently... [Req][Books] Good Fantasy/SciFi books [TV/BOOK] *SPOILERS* Game of Thrones Discussion
Sports
2024 - 2026 Football Thread TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion McBoner: A hockey love story Cricket [SPORT]
World Cup 2022
Tech Support
How to clean a TTe Thermaltake keyboard? Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
Listen To The Coaches!
TrAiDoS
An Exploration of th…
waywardstrategy
I'm an arrogant trash talke…
FlaShFTW
Gauntlet SC2: A Retrospectiv…
Ctone23
ramps on octagon
StaticNine
Funny Nicknames
LUCKY_NOOB
Evil Gacha Games and the…
ffswowsucks
Customize Sidebar...

Website Feedback

Closed Threads



Active: 6262 users

Blizzcon qualification probabilities simulation - Page 4

Forum Index > SC2 General
1549 CommentsPost a Reply
Prev 1 2 3 4 5 6 76 77 78 Next
Gojii
Profile Joined April 2012
Belgium317 Posts
September 13 2013 19:12 GMT
#61
wow thanks, good job
AySz88
Profile Joined March 2011
United States83 Posts
September 13 2013 19:14 GMT
#62
On September 13 2013 21:12 Die4Ever wrote: I may switch to using relative %s, if you guys can think of a good way to word the text for the events that would be helpful


I would suggest "T-9th" or "T9-16th" instead of "16th place", because we don't know whether 16th means "made it to round of 16" (aka top 16) or "eliminated in round of 16" (aka T-9th). (Or maybe I'm confused and you did actually mean top 16?)
Die4Ever
Profile Joined August 2010
United States17738 Posts
September 13 2013 19:21 GMT
#63
On September 14 2013 04:14 AySz88 wrote:
Show nested quote +
On September 13 2013 21:12 Die4Ever wrote: I may switch to using relative %s, if you guys can think of a good way to word the text for the events that would be helpful


I would suggest "T-9th" or "T9-16th" instead of "16th place", because we don't know whether 16th means "made it to round of 16" (aka top 16) or "eliminated in round of 16" (aka T-9th). (Or maybe I'm confused and you did actually mean top 16?)

It means they were eliminated at that place. So if it says 16th place it means they lost in the round of 16 in that instance.
"Expert" mods4ever.com
SolidMoose
Profile Joined June 2011
United States1240 Posts
September 13 2013 19:22 GMT
#64
I'm pretty sure Stephano is 0%

But seriously, this is really cool. Nice to see the chances from the TL article have some numbers to them now
Steel
Profile Blog Joined April 2010
Japan2283 Posts
September 13 2013 19:26 GMT
#65
Really cool, and while monte carlo simulations are solid, I very much doubt the precision of Aligulac ratings.

Quick questions:
-Did you use ELO or winrates?
-Did you use matchup specific ELO (or winrates) or just general ELO (or winrates)?
-If you used ELO, did you use the uncertainties quoted by Aligulac?
-If so, what does the uncertainty look like for 300000 runs? I'm just curious, it should be really small.

Besides the Aligulac uncertainties are very fishy. Example: ELO 1871 ± 81 for Taeja at 1182 games vs 1833 ± 89 for sOs at 247 games. Low number of games + consistent results ~ High number of games + inconsistent results. I get it, but I don't like it.

Anyway, good work, really interesting stuff.
Try another route paperboy.
Boucot
Profile Blog Joined October 2011
France15997 Posts
September 13 2013 19:26 GMT
#66
I love stats, great job !
Former SC2 writer for Millenium - twitter.com/Boucot
Cracy
Profile Joined October 2011
Poland221 Posts
September 13 2013 19:27 GMT
#67
On September 14 2013 04:08 Anomi wrote:
Show nested quote +
On September 14 2013 02:22 Die4Ever wrote:
On September 14 2013 02:13 Anomi wrote:
On September 14 2013 01:41 Die4Ever wrote:
On September 14 2013 01:23 Anomi wrote:
My only problem with these kind of things is that even if you can simulate it your still using ordinal data when it comes to using Aligulac rankings (http://en.wikipedia.org/wiki/Ordinal_data).


I don’t think you’re doing the simulation wrong but you’re using data that to begin with that doesn’t actually calculate what player is better than who 100% correct. IT might be better then win ratio but it’s far from being 100% correct.


This is just my opinion but when it comes to calculating simulation based stuff that don’t come as numbers naturally:
The answer the simulation creates is the same thing of just creating a guess that might be better than if you wild guess randomly. IN your case the answer your model will simulate is a guess that might be better then random person guess but it’s still a guess.

Yes.
Well almost. It actually does a pretty damn good job of predicting who is locked in for Blizzcon, or who can't possibly qualify, which would be really hard to do as accurately with pen and paper. And it also calculates multiple matches, so if someone needs to win 1 more match against a same-skill opponent(according to aligulac of course) then they get a 50% chance, if they need to win 2 matches against same-skill opponents then it goes down to 25%. Amplify this to full brackets of multiple tournaments and it gets to be a lot of work. Also this tells you what events need to happen for them to qualify.
edit: tld;dr of course it's not perfect, but lots of people seem to like it anyways


What your missing is that your purely viewing this as mathematical problem. A good model is not based on how well it predicts but how well it predicts when its based on the right assumptions. Your only assumption seems to be that the skill factor (that in the first place is hard to measure) is the only thing that plays in on who qualifies to blizcon. You are discarding allot of stuff. For instance i would guess that according to aligulax invasion should not have lost his group in season 2 finals but he did. Was this because he was less skillful or that he doesn’t handle traveling well or something else.

Let me try to clarify: To be able to create a model that would simulate who would get in to blizzcon or not would almost be the same thing on who would end up being in the playoffs in a sport game. To create that kind of prediction model is allot more complex. for instance if you would do that for ice hockey you would need to create a indicator first for skills if that’s even possible. Then indicators on players physical and mental health . You might also need indicators on the effect on home turf advantage and maybe players.


Try running the simulation based on the wcs rankings instead of Aligulax rankings and see what you end up with and try once more with win ratios instead. If any if these ends up being abel to do better prediction would you say they are better?

Can you give me example source code for this improved model you're asking for? Make sure you factor in how good the air conditioners inside the booths are for each tournament, this will especially affect Huk.
If you're just telling me that my model is not perfect, I already know this. If it was perfect then it wouldn't say Naniwa has a ~20% chance, it would either say 100% or 0%, I would just tell you who qualifies, and then I would go win every bet in every sport ever. If you have constructive criticism then I'd like to hear it.
edit: I don't mean to sound rude, but I think everyone knows what you're saying when they read threads like this. I'm pretty sure they know I can't see the future.



It would actually take me allot of time or maybe impossible to figure out on how to create a model that would fill this roll. . Using tools as http://www.r-project.org/ that is free will give you to tools to maybe create a better simulation . Using a logistical model to work with this kind of data might work better but not sure about that (http://en.wikipedia.org/wiki/Logistic_regression).

For now you should just add a similar response from lolfail9001 and state what those cases are “Aligulac just provides CHANCES for player to advance from group that he uses in his simulation to calculate chances of player advancing or not in certain cases.”

It’s still not 100% correct way of saying it but people would probably just be confused if you tried to explain that the chance from Aligulac ranking is a estimation of what the chance can be and not the actual chance the player that is then used in a simulation to predict what the actual chance could be to qualify to Blizcon .

The bottom line is that there is no wrong or right as long as you state the assumption the model is based on and the reasoning behind the decision you made(for instance why using Aligulac ranking as factor and not win ratio ect ). This is the only thing I would actually tell you that needs to be done better.



PS:Sry if i sounded critical is still a nice contribution and well done work




Why would you even write all the posts? I do understand the constructive criticism but hey... You are now offending the intelligence of all the people who read it and ENJOY IT.

For one thing I work with stats and models for living and still it wouldn't come to my mind to criticize the work done.
Oderint dum probent
ogsgodlike
Profile Joined March 2013
Bulgaria31 Posts
September 13 2013 20:00 GMT
#68
IMMvp will win it all..!!!!!
There can be only one..IMMvp..!!!!
Die4Ever
Profile Joined August 2010
United States17738 Posts
September 13 2013 20:09 GMT
#69
On September 14 2013 04:26 Steel wrote:
Really cool, and while monte carlo simulations are solid, I very much doubt the precision of Aligulac ratings.

Quick questions:
-Did you use ELO or winrates?
-Did you use matchup specific ELO (or winrates) or just general ELO (or winrates)?
-If you used ELO, did you use the uncertainties quoted by Aligulac?
-If so, what does the uncertainty look like for 300000 runs? I'm just curious, it should be really small.

Besides the Aligulac uncertainties are very fishy. Example: ELO 1871 ± 81 for Taeja at 1182 games vs 1833 ± 89 for sOs at 247 games. Low number of games + consistent results ~ High number of games + inconsistent results. I get it, but I don't like it.

Anyway, good work, really interesting stuff.

I use the aligulac rating which is similar to Elo.
Currently I'm just using the general aligulac ratings and not doing it matchup specific, but I definitely plan to soon
I am not currently using the uncertainties

Thanks!
"Expert" mods4ever.com
Noonius
Profile Joined April 2012
Estonia17413 Posts
September 13 2013 20:13 GMT
#70
outstanding as someone who likes numbers and statistics, this is like heaven
Terran forever | Maru hater forever
KoRStarvid
Profile Joined October 2011
Sweden767 Posts
September 13 2013 20:18 GMT
#71
On September 14 2013 04:26 Steel wrote:
Really cool, and while monte carlo simulations are solid, I very much doubt the precision of Aligulac ratings.

Quick questions:
-Did you use ELO or winrates?
-Did you use matchup specific ELO (or winrates) or just general ELO (or winrates)?
-If you used ELO, did you use the uncertainties quoted by Aligulac?
-If so, what does the uncertainty look like for 300000 runs? I'm just curious, it should be really small.

Besides the Aligulac uncertainties are very fishy. Example: ELO 1871 ± 81 for Taeja at 1182 games vs 1833 ± 89 for sOs at 247 games. Low number of games + consistent results ~ High number of games + inconsistent results. I get it, but I don't like it.

Anyway, good work, really interesting stuff.

I don't understand how ELO is related to this at all. Is Glicko based on ELO, or am I missing something else here? Aligulac rankings seem pretty good imo. Are there any better alternatives?

I really enjoyed scrolling through the results of this simulation! And unlike some of the other posters, I think the model is appropriately complex! :-)
Mezox
Profile Joined May 2013
Sweden6 Posts
September 13 2013 20:19 GMT
#72
Awesome!

I am a math/statistics student myself and I'm a big fan of stuff like this!
TaishiCi
Profile Joined September 2013
Korea (South)211 Posts
September 13 2013 20:21 GMT
#73
Would love to have it be all Korean Finals for the Annual Finals.
Only Scarlett and Naniwa have actual chance to spoil the perfect goodbye to primetime sc2.
Dae Han Min Gook Man Sae!!!
lolfail9001
Profile Joined August 2013
Russian Federation40190 Posts
September 13 2013 20:22 GMT
#74
On September 14 2013 05:21 TaishiCi wrote:
Would love to have it be all Korean Finals for the Annual Finals.
Only Scarlett and Naniwa have actual chance to spoil the perfect goodbye to primetime sc2.

Hm. Nice bait. Either way, nice work OP, i wonder how many time it took to simulate it all.
DeMoN pulls off a Miracle and Flies to the Moon
Anomi
Profile Joined October 2011
Sweden149 Posts
Last Edited: 2013-09-13 20:27:34
September 13 2013 20:23 GMT
#75
On September 14 2013 04:27 Cracy wrote:
Show nested quote +
On September 14 2013 04:08 Anomi wrote:
On September 14 2013 02:22 Die4Ever wrote:
On September 14 2013 02:13 Anomi wrote:
On September 14 2013 01:41 Die4Ever wrote:
On September 14 2013 01:23 Anomi wrote:
My only problem with these kind of things is that even if you can simulate it your still using ordinal data when it comes to using Aligulac rankings (http://en.wikipedia.org/wiki/Ordinal_data).


I don’t think you’re doing the simulation wrong but you’re using data that to begin with that doesn’t actually calculate what player is better than who 100% correct. IT might be better then win ratio but it’s far from being 100% correct.


This is just my opinion but when it comes to calculating simulation based stuff that don’t come as numbers naturally:
The answer the simulation creates is the same thing of just creating a guess that might be better than if you wild guess randomly. IN your case the answer your model will simulate is a guess that might be better then random person guess but it’s still a guess.

Yes.
Well almost. It actually does a pretty damn good job of predicting who is locked in for Blizzcon, or who can't possibly qualify, which would be really hard to do as accurately with pen and paper. And it also calculates multiple matches, so if someone needs to win 1 more match against a same-skill opponent(according to aligulac of course) then they get a 50% chance, if they need to win 2 matches against same-skill opponents then it goes down to 25%. Amplify this to full brackets of multiple tournaments and it gets to be a lot of work. Also this tells you what events need to happen for them to qualify.
edit: tld;dr of course it's not perfect, but lots of people seem to like it anyways


What your missing is that your purely viewing this as mathematical problem. A good model is not based on how well it predicts but how well it predicts when its based on the right assumptions. Your only assumption seems to be that the skill factor (that in the first place is hard to measure) is the only thing that plays in on who qualifies to blizcon. You are discarding allot of stuff. For instance i would guess that according to aligulax invasion should not have lost his group in season 2 finals but he did. Was this because he was less skillful or that he doesn’t handle traveling well or something else.

Let me try to clarify: To be able to create a model that would simulate who would get in to blizzcon or not would almost be the same thing on who would end up being in the playoffs in a sport game. To create that kind of prediction model is allot more complex. for instance if you would do that for ice hockey you would need to create a indicator first for skills if that’s even possible. Then indicators on players physical and mental health . You might also need indicators on the effect on home turf advantage and maybe players.


Try running the simulation based on the wcs rankings instead of Aligulax rankings and see what you end up with and try once more with win ratios instead. If any if these ends up being abel to do better prediction would you say they are better?

Can you give me example source code for this improved model you're asking for? Make sure you factor in how good the air conditioners inside the booths are for each tournament, this will especially affect Huk.
If you're just telling me that my model is not perfect, I already know this. If it was perfect then it wouldn't say Naniwa has a ~20% chance, it would either say 100% or 0%, I would just tell you who qualifies, and then I would go win every bet in every sport ever. If you have constructive criticism then I'd like to hear it.
edit: I don't mean to sound rude, but I think everyone knows what you're saying when they read threads like this. I'm pretty sure they know I can't see the future.



It would actually take me allot of time or maybe impossible to figure out on how to create a model that would fill this roll. . Using tools as http://www.r-project.org/ that is free will give you to tools to maybe create a better simulation . Using a logistical model to work with this kind of data might work better but not sure about that (http://en.wikipedia.org/wiki/Logistic_regression).

For now you should just add a similar response from lolfail9001 and state what those cases are “Aligulac just provides CHANCES for player to advance from group that he uses in his simulation to calculate chances of player advancing or not in certain cases.”

It’s still not 100% correct way of saying it but people would probably just be confused if you tried to explain that the chance from Aligulac ranking is a estimation of what the chance can be and not the actual chance the player that is then used in a simulation to predict what the actual chance could be to qualify to Blizcon .

The bottom line is that there is no wrong or right as long as you state the assumption the model is based on and the reasoning behind the decision you made(for instance why using Aligulac ranking as factor and not win ratio ect ). This is the only thing I would actually tell you that needs to be done better.



PS:Sry if i sounded critical is still a nice contribution and well done work




Why would you even write all the posts? I do understand the constructive criticism but hey... You are now offending the intelligence of all the people who read it and ENJOY IT.

For one thing I work with stats and models for living and still it wouldn't come to my mind to criticize the work done.



I did say sry realising the posts i wrote was a bit to critical and to some extent unnecessary. As for why?
the same reason you posting a critic on someone opinion .

Just to clarify the work is good and I am just over critical.
BaneRiders
Profile Joined August 2013
Sweden3630 Posts
September 13 2013 20:29 GMT
#76
This is very cool! I would like to see the most probable top 16 though, the players that will participate in the end. This list could be updated (as you like) and have the, uh, I don't know, the 4 closest to take a spot as well or something. Would be cool to see how this top 20 will develop.
Earth, Water, Air and Protoss!
xN.07)MaK
Profile Joined January 2006
Spain1159 Posts
September 13 2013 20:30 GMT
#77
P( all Korean @ Blizzcon ) = ??

Great work!
El micro es el último recurso que les queda a los que no producen lo suficiente
ffadicted
Profile Joined January 2011
United States3545 Posts
September 13 2013 20:31 GMT
#78
I don't think Anomi understands statistics lol Die4Ever is right, if it was a perfect model like you're trying to describe, it wouldn't have %s, it would just give you the final list of 16 players who will qualify hah

This post is absolutely awesome, thanks for the work tbh, I was actually trying to figure out myself if my boy Rain could make it haha
SooYoung-Noona!
Die4Ever
Profile Joined August 2010
United States17738 Posts
September 13 2013 20:34 GMT
#79
On September 14 2013 05:22 lolfail9001 wrote:
Show nested quote +
On September 14 2013 05:21 TaishiCi wrote:
Would love to have it be all Korean Finals for the Annual Finals.
Only Scarlett and Naniwa have actual chance to spoil the perfect goodbye to primetime sc2.

Hm. Nice bait. Either way, nice work OP, i wonder how many time it took to simulate it all.

Thanks. It takes about 40 minutes to run it with 300,000 samples like in the OP. I could optimize it to make it faster, but I haven't spent the time to do it and don't really need it to be faster anyways.
"Expert" mods4ever.com
Die4Ever
Profile Joined August 2010
United States17738 Posts
September 13 2013 20:36 GMT
#80
On September 14 2013 05:29 BaneRiders wrote:
This is very cool! I would like to see the most probable top 16 though, the players that will participate in the end. This list could be updated (as you like) and have the, uh, I don't know, the 4 closest to take a spot as well or something. Would be cool to see how this top 20 will develop.

Thanks. I'm not sure I understand what your suggestion is though. Could you maybe elaborate? Also Blizzcon is 16 players not 20.
"Expert" mods4ever.com
Prev 1 2 3 4 5 6 76 77 78 Next
Please log in or register to reply.
Live Events Refresh
Next event in 3h 39m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
mouzHeroMarine 500
Railgan 124
Codebar 78
StarCraft: Brood War
Free 34
Bale 9
Dota 2
LuMiX1
Counter-Strike
pashabiceps2263
fl0m1745
Heroes of the Storm
Liquid`Hasu398
Other Games
summit1g4536
Grubby3056
Beastyqt594
Dendi558
C9.Mang0228
UpATreeSC59
Mew2King37
JuggernautJason29
Organizations
Dota 2
PGL Dota 2 - Main Stream189
StarCraft 2
angryscii 34
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 16 non-featured ]
StarCraft 2
• intothetv
• AfreecaTV YouTube
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• FirePhoenix11
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• lizZardDota277
League of Legends
• TFBlade954
Other Games
• imaqtpie783
• Shiphtur440
• tFFMrPink 14
Upcoming Events
Replay Cast
3h 39m
CrankTV Team League
14h 39m
Bombastic Starleague
23h 39m
The PondCast
1d 13h
HomeStory Cup
1d 14h
Replay Cast
2 days
HomeStory Cup
2 days
Replay Cast
3 days
HomeStory Cup
3 days
OSC
3 days
[ Show More ]
Sparkling Tuna Cup
4 days
WardiTV Weekly
5 days
The PondCast
6 days
Liquipedia Results

Completed

YSL S3
Douyu Cup 2026
Murky Cup 2026

Ongoing

IPSL Spring 2026
Acropolis #4
CSL Season 21: Qualifier 2
SCTL 2026 Spring
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026

Upcoming

CSL 2026 Summer (S21)
ASL Season 22:Wild Card Qualifier
CSLAN 4
Blizzard Classic Cup 2026
Kung Fu Cup 2026 Grand Finals
RSL Revival: Season 6
CranK Gathers Season 4: BW vs SC2 Team League
HSC XXIX
Light Tournament 2026
Eternal Conflict S2 Finale
Heroes Pulsing #3
Eternal Conflict S2 E1
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.