Lua and even SOC should be able to make boss enemies that can have totally custom and very flexible behaviours (in the case of Lua).
For SOC I recommend checking
this page from the Wiki to get started.
If you've ever used Lua,
this pages explains how to define new objects like SOC
and a
MobjThinker hook will let it perform all kinds of crazy actions.
I also recommend cracking open any mod that does something similar and take a look at their code, you can learn a thing or two. Just look up anything you don't understand on the SRB2Wiki since you'll most definitely find an answer there.
For bots, there is no in-game way to directly get a Tails bot to spawn in netgames, the only way that doesn't involve heavy (?) source code editing would be to code your own using Lua, which will prove tedious since player physics are
weird to say the least and have a million of variables to take into account, and Lua may not necessarily have access to all of them. (The movement acceleration code itself is already a sight to behold)
To my knowledge there's no way to edit existing characters' stats through a seperate S_SKIN as it'll just create a new entry on the skin list instead (And to make it worse, Sonic's stats are hardcoded in the EXE itself). Lua is ALSO unable to edit the skin list directly so your only influence on stats would be
editing player variables through Lua (like normalspeed, jumpheight etc etc)