Inspired by the new 5e Purple Dragon Knight subclass, and the surprising reaction by the 5e community, I was driven to write this up. The Purple Dragon Knight subclass lets any fighter who takes it, get a dragon friend at 3rd level. People flipped out. As you know, the cardinal rule of D&D is that Fighters Can’t Have Nice Things. Even the players know this and demand it. It’s also the epitome of what I don’t want in my games.

At 3rd level you get a small dragon friend, 7th it grows to medium, and you gain the dragon rider ability, and at 15th level it becomes large. Apparently giving a pet like this is the end of the world. I found it funny though. I’m a dragon riding character, who has an ability called Dragon Rider, but I don’t get to do my schtick until 7th level. Wizards can cast fly at 5th level, so this shouldn’t even be concerning. I’m getting it late, but whatever, I can live.
Wait… what’s that?
You can use the dragon as a mount if you
are Medium or smaller, but while you’re riding it,
the dragon falls at the end of a turn if it’s
airborne and the only thing holding it aloft is its
Fly Speed.
So I gain an ability called “Dragon Rider” but I can’t actually ride my dragon? God damn WoTC. Even when you accidentally do something cool, you just can’t help yourself. If my subclass is about dragon riding, and I don’t get to ride dragons until the campaign ends, you’ve failed full stop. Go back to the drawing board and start over.

For context by the way, since this article is tagged as a 3.5 article, goddamn eldritch knight fighters at 13th can also cast fly. Yes, “not dragon rider” fighters can fly sooner than “dragon riders”. I was writing up a 5e revision of the subclass, but the old “man I don’t even care” krept back in.

This is one of those concepts that a huge hassel to write into 5e because of their avoidance of standard rules, and everything being special unique mechanics, thats actually fairly easy to slide into 3e.
So without further adeu, a single feat to allow for dragon riders, but also unicorn riders, giant spider riders, and ogre riders.
I Want A Pet

This feat is balanced as a noticable step down from leadership, the single most powerful feat in the game. Its also a bit above wild cohort, a good, but not really “what I want” feat. If your DM is cool with letting people have sidekicks, take leadership, etc, its fine. If they aren’t, well then don’t take it. As a DM, you could also give it as a free feat to run a game set in Dragonlance where everyone rides dragons and uses lances (I’m very hazy on the details), or do your own original setting like Unicornglaive. Where everyone rides unicorns and wields glaives, or a game in a world like His Dark Materials.
Prereq: None
Benefit: You gain a Cohort as per the leadership feat. You do not gain followers.
Your leadership score is always equal to your level for determining the strength of your cohort. It is not modified by anything. This means at level 1, while you can take the feat, you don’t get anything, but you don’t get a level 2 feat and you know you want a pet soon. At level 2 you get a 1st level cohort, and at level 10 you can trade it in for a 7th level cohort.
Your Cohort does not earn XP or count towards XP budgets for encounters. It gains levels when your leadership score (level) increases per the table.
Your cohort does not need to have class levels, or be a playable character. It can be a horse if you want. If its not normally a playable creature, treat its cohort level as its ECL+1, round fractions down.
Variants
Horde: You can get multiple cohorts. Do this by splitting their level. If your leadership score is 7, you normally get a 5th level cohort. Instead, you can choose to get a 4th level and a 1st level cohort. It will be broadly worse, unless you do something like take a 15th level cohort, and choose a 12 and 3 1st level guys with esoteric/weird powers that you shouldn’t normally get. IE this is very abusable, but played straight its fine.
Just take Leadership: Your DM may let you take this multiple times. They shouldn’t but mechanically it works fine.
