• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 11:22
CET 17:22
KST 01:22
  • 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
HomeStory Cup 28 - Info & Preview12Rongyi Cup S3 - Preview & Info3herO wins SC2 All-Star Invitational14SC2 All-Star Invitational: Tournament Preview5RSL Revival - 2025 Season Finals Preview8
Community News
Weekly Cups (Jan 26-Feb 1): herO, Clem, ByuN, Classic win2RSL Season 4 announced for March-April7Weekly Cups (Jan 19-25): Bunny, Trigger, MaxPax win3Weekly Cups (Jan 12-18): herO, MaxPax, Solar win0BSL Season 2025 - Full Overview and Conclusion8
StarCraft 2
General
StarCraft 2 Not at the Esports World Cup 2026 Weekly Cups (Jan 26-Feb 1): herO, Clem, ByuN, Classic win HomeStory Cup 28 - Info & Preview Weekly Cups (Jan 19-25): Bunny, Trigger, MaxPax win Oliveira Would Have Returned If EWC Continued
Tourneys
RSL Season 4 announced for March-April PIG STY FESTIVAL 7.0! (19 Feb - 1 Mar) HomeStory Cup 28 StarCraft Evolution League (SC Evo Biweekly) $21,000 Rongyi Cup Season 3 announced (Jan 22-Feb 7)
Strategy
Custom Maps
[A] Starcraft Sound Mod
External Content
Mutation # 511 Temple of Rebirth The PondCast: SC2 News & Results Mutation # 510 Safety Violation Mutation # 509 Doomsday Report
Brood War
General
[ASL21] Potential Map Candidates BW General Discussion Can someone share very abbreviated BW cliffnotes? Liquipedia.net NEEDS editors for Brood War BGH Auto Balance -> http://bghmmr.eu/
Tourneys
[Megathread] Daily Proleagues Azhi's Colosseum - Season 2 Small VOD Thread 2.0 [BSL21] Non-Korean Championship - Starts Jan 10
Strategy
Zealot bombing is no longer popular? Simple Questions, Simple Answers Current Meta Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Nintendo Switch Thread Battle Aces/David Kim RTS Megathread Path of Exile Mobile Legends: Bang Bang Beyond All Reason
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Join illminati in Luanda Angola+27 60 696 7068
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine European Politico-economics QA Mega-thread The Games Industry And ATVI Canadian Politics Mega-thread
Fan Clubs
The herO Fan Club! The IdrA Fan Club
Media & Entertainment
Anime Discussion Thread [Manga] One Piece
Sports
2024 - 2026 Football Thread
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
Play, Watch, Drink: Esports …
TrAiDoS
My 2025 Magic: The Gathering…
DARKING
Life Update and thoughts.
FuDDx
How do archons sleep?
8882
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1686 users

In Defense of Hard Counters in Real Time Strategy

Blogs > waywardstrategy
Post a Reply
waywardstrategy
Profile Blog Joined October 2015
United States62 Posts
Last Edited: 2021-07-27 19:43:27
July 27 2021 19:42 GMT
#1
If you like this article, you can read the whole thing on my blog, where it looks a bit better.

I feel like hard counters get a bad rap in RTS games. There are a lot of arguments out there both for and against such systems, but I've been thinking about them a lot lately and I honestly wanted to try to lay out a clear case for why I think they're an affirmative good in real time strategy games, at least from my perspective. As per usual, I think nuance is going to get in the way of things a little bit, but let's give it a try.

What is a Hard Counter? Plus Some Examples

[image loading]

As always, I'm going to start by defining my terms. In an RTS, a 'hard counter' is an interaction where it is practically or actually impossible for one unit or army composition to defeat another unit or army composition. I want to mostly talk about unit hard counters rather than army or strategy hard counters, but the two are related.

So, just as an example: in an hypothetical real-time strategy game, we might have 2 units: one is a ground-based infantry unit which can only attack ground targets. The other is a flying unit which can attack ground units but not other air units. In this situation, whether or not the flying unit is designed to effectively kill infantry units, the air unit is a hard counter to the ground unit in this example. The ground unit cannot hurt the air unit in any way, and the air unit can hurt the ground unit. This relationship is based on innate and immutable differences between the two unit types.

[image loading]
There is no situation in C&C 3 where Riflemen beat Flame Tanks, thanks to damage bonuses and penalties on both sides

As a second example: let's take a look at the Flame Tank and Rifleman Squad from Command and Conquer 3. The Flame Tank deals bonus damage to the Rifleman squad, which in turn deals drastically reduced damage to the Flame Tank. Practically, the Flame Tank will melt almost any number of Riflemen while the Riflemen will never kill the flame tank in a reasonable amount of time. This is another hard counter. In this case, of course, the relationship relies on damage bonuses and penalties instead of innate unit attributes, as the previous example. We'll look into damage bonus and penalty systems later on in this piece.

To be super clear: a hard counter is a practical evaluation of the relative capabilities of the two things being compared. Damage bonuses and penalties alone don't make a 'hard counter' system. For instance, the relationship between the Baneling and Marine from StarCraft 2 is sometimes considered a 'hard counter' - Banelings will always kill Marines instantly when they hit them. But practically, Marines and Banelings are a 'soft counter' to each other, since Marines can and do come out on top in this relationship based on the player's control over their units. A more true 'hard counter' relationship between the Baneling and Marine might be if the Marine couldn't damage the Baneling effectively, or if the Baneling's explosion radius were much larger and it had more health.

The Baneling/Marine relationship has a highly variable cost efficiency, making it not really a 'hard counter' - instead, I think of it as a volatile relationship based on the fact that Banelings often either do tremendous damage (while dying themselves) or nothing at all, or to do partial damage or to only hit a few targets. Due to the volatility of the Baneling's damage profile and AOE range, it's really easy to produce a lot of different cost efficiencies on both sides of this particular unit pairing.

[image loading]


Another way to look at hard counters is the amount of resources required to overcome the health reserves and damage output of the opponent's unit(s). In the Marine/Baneling relationship, it's pretty easy for either unit to come out on top in terms of making the player's opponent trade badly in terms of cost efficiency. In the relationship between the Flame Tank and Riflemen, the Flame Tank can take out its own cost in Riflemen many times over, requiring the opponent to choose another tool to deal with the Flame Tank.

The harder the counter, the more cost efficient the trade will always be between 2 participants in combat. As with the air unit example above: that 1 air unit cannot be killed by any number of those ground units. Now, of course, the ideal situation would be if the air unit in question was designed to kill infantry. A combat scenario where you have an air unit that can't adequately damage its target on one side, and a ground unit that cannot hit the air unit at all on the other side is just flat out boring. Technically by my definition it counts as a hard counter, but that particular gameplay outcome would be a problem since on both sides you have an uninteresting and unsatisfying engagement.

Rock Paper Scissors?

[image loading]

So, in the classic kids' game "Rock, Paper, Scissors" you have these 3 binary relationships you're dealing with. I won't go into it because I assume that's common knowledge and if it isn't, Google it I suppose? Often, hard counter systems are called "Rock, Paper, Scissors" or RPS systems. I have a bit of a quibble with this.

In practical terms, in RTS games you're almost never going to have a "rock" unit that will instantly and immediately invalidate the entire presence of "scissors" units from the game in a binary way. There may be relationships where the "rock" unit invalidates the presence of all nearby "scissors" units but even in small scale RTS like Company of Heroes, having powerful anti-infantry options on the field doesn't mean that infantry are all of a sudden useless. They might be better suited elsewhere on the map, or used to lure the anti-infantry vehicle into a trap, but they still have a role in the game.

[image loading]

To me this is one of my key frustrations with regards to talking about hard counters vs soft counters. There seems to be this assumption baked in that hard counters existing means that things are going to rapidly become pointless to make and impossible to use just because their counter is on the field.

Which, in some worst case scenarios, might technically happen? To to pick up our Command and Conquer 3 example of the Flame Tank and Riflemen again: if I have an army of nothing but Riflemen squads for some reason, and my opponent creates a couple of Flame Tanks, and for some reason there's nothing else I can produce then I'm probably screwed. But, realistically, this scenario isn't going to happen. In fact even in the above example I'd want to keep my Riflemen alive as much as possible for potential use in other situations.

In a practical sense, one way to think about hard counters that I find very helpful is to think of them not in terms of "this unit is very good at killing that target type" but more in terms of "this unit is very bad at killing that target type." To me, the unique element of hard counter systems not that some units get instantly deleted from the game if you have a certain unit type on the field; it's that ground unit that cannot attack that air unit, or that Rifleman that will just never do enough damage to take down a tank.

Soft Counters and the HP Problem

[image loading]


OK: I'm having a bit of fun with the above image. Soft counters aren't a "lie" of course. But in my years as a student of RTS design, I have found that it's fairly common for things to not have the effect on a game that players or designers might have desired or anticipated when they set out to create (or play) a particular game.

In my experience, what happens in games with a lot of focus on 'soft counters' tends to break down a bit, especially with large numbers of units in play, towards a place where whichever side has the most overall health and damage in the combat will just win.
Since we defined 'hard counter's let's take a second to talk about soft counters and how I'm defining these. If the 'hardness' of a counter (as defined above) is the pure cost efficiency of a tradeoff: "I put $2,000 of something on the field it can wipe out $20,000 of something else." Then a soft counter would be much lower than this, less than something like a 2:1 cost efficiency ratio for an encounter.

Now remember, we're talking about gameplay outcomes here. So in terms of gameplay outcomes, the baseline assumption is that if cost efficiency is more equal between units, then other things like positioning and micro can come more into play, and the player who controls their units better will win. Right?

Well, maybe? That might represent a best case scenario for soft counter systems. I think though in conversations about counter systems, one bad baseline assumption that's made is looking at best-case scenarios for soft counter relationships and worst-case scenarios for hard counter relationships

I view the overall goal of RTS combat to be focused around players utilizing positioning, micro, and unit abilities to come out on top in an out-and-out battle, as well as harassing the opponent's structures and economy where possible. But, as I said above, it feels like with 'softer counter' systems, the big baseline are the total health and DPS of the units in a battle.
In games with a higher prevalence of harder counters, at the very least the potential pool of effective HP is divided between the various counter types. For example: if the counters are infantry, vehicles, and air units, your effective pools of health reside with those 3 separate categories of damage types (with the possible caveat of damage types which might be effective against more than 1 of the above). In softer counters, sheer effective DPS and HP in one area can be enough to win a fight.

Due to this, it's common for players in games with softer counters to rely heavily on high powered generalist DPS and AOE units where possible, due to the high efficiency in cost and target opportunities. Actually the same thing tends to happen in games that have harder counter systems, as well: reliable generalist DPS (like the Terran Marine in StarCraft 2 or the Tengu in Red Alert 3) is often a constant thorn in the side of players and gameplay designers alike.

[image loading]

In several Command and Conquer games, I believe this was referred to as the 'medium tank problem' - faction's mainline battle tanks were cost efficient and well rounded to the point that many games came down to whomever was best at building and preserving their tank ball. Now, of course, this isn't all down to 'counters' of course: units can overperform roles just fine without blaming it on something like a game's ingrained counter system. But units which are too useful and too well rounded in general are a definite problem in many RTS games, and cut down on the depth and fun of these games. And in my mind, this is harder to achieve in games with effective hard counter systems.

Downsides and Tradeoffs

[image loading]

To me, both hard counter and soft counter systems can result in the sorts of highly dynamic combat scenarios I was talking about above, but each has its own tradeoffs. You need look no further than a game like Red Alert 3 for an example of a really deep and fun game with a hard(er) counter system, and to StarCraft 2 for a depth and fun with a softer counter system.
For games with a larger number of hard counters, there are a couple of potential issues that typically come up: two unit types which aren't designed to counter each other fighting each other is one of the worst ones. As with the "air unit that doesn't do good damage against infantry units, fighting an infantry unit that can't attack air" above: this is the "rock vs rock" in Rock, Paper, Scissors: not much happens. Actually, of course, a true "Rock vs Rock" situation would be where you have 2 units and neither can attack, block, or impede the other unit in any way. To me, as much as this is an issue in the first place (I don't really see it as an inherent problem with RTS design) it can affect any sort of RTS.

[image loading]

In fact I'd go so far as to say that an RTS without "rock vs rock" interactions is one that you wouldn't really want to play in the first place. Do you really want something like the Firebat to be able to attack the Valkyrie, after all? Or Valkyries to be able to attack workers? We already know there are combat relationships we don't want to see, and there are 'rock paper scissors' interactions built into most RTS.

But, I'm digressing a little bit. I'm supposed to be talking about the weaknesses in both soft and hard counter systems.

I already talked a bit above about how, with softer counters, pure HP and DPS values tend to become more dominant, since (at the least) harder counter systems tend to divide the effective HP and DPS pools of a player's forces into more 'buckets' or categories.
On the flip side, with harder counter systems, the biggest thing you get in terms of downsides are a larger percentage of unit matchups that can feel one sided or bad to a player. This is contrasted with the "Firebat vs Valkyrie" situation I mentioned above, which is another interaction that wouldn't feel good. But being on the losing end of the "Flame Tank vs Riflemen" scenario I keep coming back to also feels pretty bad.

[image loading]

Generally, earlier in the game is when harder counter systems tend to feel worse. Later in the game, larger armies give the system more room to resolve into fun encounters with sufficient depth, control, and interest. This could be a case for hard counter games to include softer counters in the early game phase and ramp up the severity of the counter system with later game units?

With harder counter systems, it's smaller combat situations that tend to feel the worst. In the early game, when you have very few units available, is when hard counter systems tend to feel the worst.

Another danger of harder counter systems is that units have a propensity to be reduced to a damage type and unit type. This can lead to really boring unit design where "shoots X gun" and "is Y unit type" becomes a lot of the core design of the unit. Games like C&C Generals and especially Red Alert 3 prove this isn't necessary, however.

To me, the ideal design of a unit is that it performs some unique function for the player, which the player can exploit or use skillfully in order to help overcome their opponent's units and abilities (there's a whole can of worms there I can't wait to address at some point in the future)

Attribute Design vs Bonuses and Penalties
[image loading]
Free RTS Zero-K utilizes an attribute-based counter system, where Red Alert 3 is a good example of a hard bonus-and-penalty counter system.

When most people think about 'hard counter' systems, they seem to think about what are commonly called "RPS" or "Rock, Paper, Scissors" damage systems. I talked about that a bit above, but I feel like this is a bit of a misnaming. Basically, these systems assign "unit types" and "weapon types" to units, and provide various bonuses and penalties to unit damage based on the target and weapon type.

These bonuses and penalties are found in both softer and harder counter games. For instance: Warcraft 3 uses such a system, as does StarCraft 2, and as do Battle Realms and Command and Conquer: Red Alert 3. However, in Battle Realms and RA3, the damage bonuses and penalties tend to be a lot more emphasized, with 75% or more damage reductions on some matchups and 300% damage bonuses on other matchups.

We've already talked about Attribute design as well, using more immutable design attributes such as: this unit cannot target air units. Or, this melee unit cannot catch up to that fast ranged unit in order to attack it. Or, this unit has a high damage, slow attack, which makes it good for taking out high HP targets but bad at taking out numerous low-HP targets due to its low rate-of-fire and overkill per shot. That sort of thing.

These two systems are of course not mutually exclusive and are actually used together fairly often. And, as I said, such systems are often seen together in many games. Zero-K is one of the premier games that uses attribute-based counters, an Red Alert 3 is one of the better examples of bonus-and-penalty based counter systems.

[image loading]

Combat in Battle Realms is particularly unintuitive thanks to its dense counter system
The tough thing about bonus-and-penalty counters is that they're often unintuitive. While it does make sense that a regular troop with an automatic rifle is not going to be able to take out a tank, it is somewhat less believable that a tank shell would glance off of a regular solider without blasting him to smithereens. In Command and Conquer 3, I believe, tank shots actually have a visual of missing their target, which helps 'sell' the counter relationship a lot better.

Warcraft 3 and to a greater extent Battle Realms have particularly dense counter relationships. I've played both games for years and it's still frustrating to me that it's impossible in many cases to tell the counter relationship between unit types without just memorizing them. Which units do piercing damage vs which units do bludgeoning damage is often possible to determine (Battle Realms' Lotus clan units sometimes make this difficult though: does acid spit do piercing or does it do some other kind of damage?) but armor types can sometimes be really unclear. Why one unit takes triple damage from a sword versus the unit next to it taking 25% damage from the same sword is a matter of memorizing tables and playing over and over - there's no good visual indicator for the player to use. This, along with the terrible feeling when you run up against something that just flat out deletes your army, are some of the worse feelings brought on by harder counter systems.

There are, of course, other damage systems: in Grey Goo, each unit has an Armor rating and an Armor Piercing rating, and the relationship is pretty much what you'd expect: Armor Piercing ignores that much of an enemy's Armor value per attack. Possibly more understandable than unit types and weapon types? But it can still be a bit confusing since it's sometimes not obvious what might have Armor and what might be good at hitting a target with an Armor value.

Anyway, in a counter system, the big differentiator isn't in the specific system used, but in the impact that system has on the gameplay. Generally, bigger bonuses and penalties lead to harder counter scenarios, of course.

It's All About The Proportion
[image loading]


This is where things get a little tricky: "hard counter" games actually themselves often contain a ton of soft counter relationships. In RA3, for instance, when Allied Peacekeepers meet with Soviet Conscripts, or when Soviet Flak Troopers have a run-in with an enemy Sickle. There's a situation where both units have kind of an equal chance of coming out on top. This is great actually, in my book: soft counters are fine to me (despite my joke above about them being a 'lie') and definitely have a place in any RTS. Just, keeping in mind that the game being reduced to whoever has the bigger pool of HP and DPS, is a really bad outcome.

The really important thing in a game with hard counters is, uh, the actual availability and prevalence of hard counter relationships. That tank that's good against infantry is a 'soft counter' to anti-tank infantry units, but the fact that it's there to scare off or take out anti-air or anti-infantry is an important relationship. Weirdly, Command and Conquer: Rivals is almost a perfect stripped-down example of what I'm talking about here.

In C&C Rivals, the player always wants to pair off a unit with what that unit kills best (while keeping it away from things that are good at killing it). This leads to a surprisingly tense dance of counters being moved next to the thing they want to attack while keeping away from things that want to attack them. For such a simple and small scale game it's got surprisingly deep combat with attributes as simple as "if X dies near my unit, Y happens" or "This unit performs that action when it's stationary" or "this unit has a passive element that applies around itself while it's attacking."

[image loading]

In my experience, weirdly, games with a lot of hard counters tend to (when the game is reasonably well balanced, anyway) average out into combat scenarios where the hard counter relationships smooth out the gameplay. If you have tanks, units that are good against tanks, air and units that are good against air, and infantry and units that are good against infantry, you don't have a series of "Rock, Paper, Scissors" binary deletion interactions, but a dance of players trying to find good angles of attack and trying to preserve their units in order to deter or destroy or drive off pieces of the enemy army.
As usual, I've written over 3000 words without feeling like I've more than scratched the surface of this topic. While I addressed (briefly) the idea of attribute-based counters, there's a whole unexplored terrain there that I didn't really feel like I had time to go into: non-damage based counters, like units which can prevent other units from attacking, or the simple act of deterring a unit or army with another unit or army. Time-based advantages are one of my favorite systems in RTS, after all.

Thanks for reading. Looking forward to comments, as usual, and I hope you'll return in the future to read more of my ramblings about competitive RTS design. This is Wayward, signing out.

If you like this article, you can read the whole thing on my blog, where it looks a bit better.

***
Husyelt
Profile Blog Joined May 2020
United States837 Posts
July 28 2021 01:32 GMT
#2
I feel like I have to give this my full attention, good stuff. Have you done a blog about just the map design, and level layouts and how each game does things differently?
You're getting cynical and that won't do I'd throw the rose tint back on the exploded view
waywardstrategy
Profile Blog Joined October 2015
United States62 Posts
July 28 2021 09:11 GMT
#3
Husyelt, I do have a post about map design but it's mostly focused on talking about dynamic terrain https://waywardstrategy.com/2020/09/02/dynamic-map-elements-in-rts-games/
Please log in or register to reply.
Live Events Refresh
Next event in 7h 38m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
trigger 202
TKL 179
ForJumy 6
StarCraft: Brood War
Britney 35072
Calm 4320
Bisu 3110
Jaedong 1313
GuemChi 592
Soma 523
Mini 505
BeSt 377
Light 346
ZerO 286
[ Show more ]
Snow 245
Soulkey 226
actioN 224
Sharp 190
ggaemo 169
hero 161
Rush 151
Mong 90
Hyun 81
Mind 64
sorry 58
JYJ 57
Movie 48
Hm[arnc] 41
Backho 38
Shuttle 36
Hyuk 32
Aegong 31
Yoon 30
Shinee 28
IntoTheRainbow 24
Free 24
scan(afreeca) 21
ajuk12(nOOB) 17
Rock 17
910 16
Sacsri 14
HiyA 14
GoRush 13
Terrorterran 12
ivOry 8
Dota 2
qojqva1981
Dendi651
syndereN298
XcaliburYe93
febbydoto9
Counter-Strike
allub289
adren_tv117
ptr_tv41
Other Games
gofns7321
B2W.Neo1215
hiko804
RotterdaM271
crisheroes240
FrodaN230
Liquid`VortiX136
oskar131
Mew2King81
ArmadaUGS72
KnowMe53
Trikslyr28
ZerO(Twitch)18
Organizations
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 18 non-featured ]
StarCraft 2
• poizon28 36
• LUISG 21
• Kozan
• LaughNgamezSOOP
• sooper7s
• AfreecaTV YouTube
• intothetv
• Migwel
• IndyKCrew
StarCraft: Brood War
• HerbMon 67
• STPLYoutube
• ZZZeroYoutube
• FirePhoenix0
• BSLYoutube
Dota 2
• WagamamaTV205
League of Legends
• TFBlade1664
• Stunt737
• Shiphtur124
Upcoming Events
Replay Cast
7h 38m
The PondCast
17h 38m
WardiTV Invitational
19h 38m
Replay Cast
1d 7h
RongYI Cup
2 days
herO vs Maru
uThermal 2v2 Circuit
3 days
Replay Cast
4 days
Wardi Open
4 days
Monday Night Weeklies
5 days
Sparkling Tuna Cup
5 days
Liquipedia Results

Completed

Proleague 2026-02-03
HSC XXVIII
Underdog Cup #3

Ongoing

CSL 2025 WINTER (S19)
KCM Race Survival 2026 Season 1
Acropolis #4 - TS4
Rongyi Cup S3
Nations Cup 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
SL Budapest Major 2025
ESL Impact League Season 8

Upcoming

Escore Tournament S1: W7
Escore Tournament S1: W8
Acropolis #4
IPSL Spring 2026
HSC XXIX
uThermal 2v2 2026 Main Event
Bellum Gens Elite Stara Zagora 2026
RSL Revival: Season 4
LiuLi Cup: 2025 Grand Finals
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
PGL Cluj-Napoca 2026
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.