Following a short discussion that Keiko started on OOC about adding an option for 2vs2 matches in the arena. Here's an elaboration of the idea.
The option to do a team of two in the arena (or more, really).
Syntax:
arena partner <target>
or
arena partner none
This will allow you to set your current partner for the arena and change on the fly. (potential bug involving switching your partner out after a challenge is made, but before it is accepted). Possible pre-emptive if_check to avoid switch partners after a challenge you are a part of has been made (check to see if an arena match is queued, and any user that went to switch partners would be checked to see if they are in the queue - this would have to last until everyone is in the preperation room).
Functionally, if you set a player as your partner, it would send them a personal echo informing them that you intend to use them as your partner and informing them that they need to set you as their current partner as well. Example:
Kotani has set you as his arena partner.
(if_check to see if user already has Kotani as their arena partner, if statement is false...)
If you wish to be Kotani's partner, please type "arena partner Kotani".
One last note that I can think of, an if_check to see if someone already has a partner set, if so, another message cluster...
User's end: "<target> has already chosen an arena partner."
Target's end: "<user> would like to be your arena partner, but are using <current partner> as your partner."
"If you would like to change your partner, please enter "arena partner <user>"
The "arena partner none" simply clears you of a partner.
Last note, I'd see it as advisable to deny people the ability to select an Imm as the partner (not only would this be a way for a player to annoy Imms by constantly setting them as a partner), but I think a lot of people are absent-minded enough that they wouldn't pay attention to check for any Imms involved in a duo challenge.
To start a 2vs2
arena challenge 2vs2 <target>
Command checks to see if you have a partner set for yourself, and to see if the target has a partner set. If either partner doesn't have a partner...
"You have yet to choose an arena partner."
"<target> has yet to choose an arena partner."
On the target's end, if the person who entered the command has yet to pick a partner, nothing will happen. If the user of the command does have one, and the receiver does not...
"<user> would like to challenge you to a 2vs2 match, but you do not have a partner."
"If you would like to have this match, please select a partner and type "arena partner <player>".
Of course, all this loops around to ensure that both teams have a partner, and whomever they choose as a partner will be aware. All in all, fairly friendly system that should avoid too much confusion since it informs all parties to set their partners as needed.
And finally, as far as this part goes, if everything goes correctly, then all players (except the original sender) will get either of these messages (changed to be inline with the current message, no one is online for me to check it right now to ensure its similar):
Kotani and <Kotani's partner> have challenged you and <your partner> to a <ranked> 2vs2 match!
Accept or decline.
To everyone else...
Kotani and <Kotani's partner> have challenged <other guy> and <other guy's partner> to a <ranked> 2vs2 match!
(would check to see if all users were of the same rank)
Once everyone accepts, it follows the normal procedure. Might be a good time to enter a timer for challenges, say a minute or so, so anyone who is afk or idle will automatically decline and allow their partner to find another one, and avoids "hanging queues". Although, this is sketchy with any kind of hidden rating decay if someone declines a match. If it was implemented in that manner, people could simply abstain from declining to prevent any damage to their rank. Possibly use a check to see if anyone was afk at the time of the challenge and just avoid the challenge altogether ("<player" is currently afk and can not participate in a challenge at this time.). However, I definately believe that there should be some form of timer, esp in 2vs2 or more, that kind of hanging queue would be insane if someone idled, unless there was a command to break a challenge... perhaps, arena challenge retract <reason> (must give a reason for the retraction). Such as:
arena challenge retract partner is an idle tool
Global echo...
<user> has retracted <gender> challenge due to "partner is an idle tool".
As far as bets go, once a challenge was accepted by all parties, any other player could bet on any single player and their bet would go for that team.
I think I covered everything with that...
In other news, opens up some other fun possible commands, like the ability to set a team name if you have a mutual partner, and the team name would show up on challenges. Perhaps an "arena teams" command to bring up a queue of all formed duos, as well as their team name, and so on.
I'm fairly certain this structure would hold up for matches larger then a duo. Could probably get pretty spammy if no partners were currently chosen, though. Maybe add an arena hall for teams as well (though, that could get pretty complicated as people moved through ranks 'n such). Appear something like...
Arena Hall: 2vs2
1) Rofl and Pwnz0r (rank)
2) Lol and Pwn (rank)
etc
And one last tidbit I'll throw in at the end... how about a global arena challenge?
arena challenge everyone
or
arena challenge <rank> (possibly require to type a-rank/b-rank/non-rank/etc)
Which will echo out a global (or certain ranked challenge) that will allow anyone to accept. Wouldn't require anyone to actively accept or decline, probably just a simple queue that for so long, allowed anyone that was in a certain rank to accept... like "arena global accept"
With a command like that, avoids the singling out of people if someone is just looking for a random duel.
Hope I covered everything in there.