I found out why jail kicks the user. :o The command looks like this in src\commands\moderation.cpp
void Jail(const std::vector<std::string>& arguments, Command_Source* from, bool announce = true)
{
Character* victim = from->SourceWorld()->GetCharacter(arguments[0]);
do_punishment(from, victim, std::mem_fn(&World::Kick), announce);
It should be this though:
void Jail(const std::vector<std::string>& arguments, Command_Source* from, bool announce = true)
{
Character* victim = from->SourceWorld()->GetCharacter(arguments[0]);
do_punishment(from, victim, std::mem_fn(&World::Jail), announce);
All you gota do is replace Kick with Jail ;o
I'm sure everyone figured it out by now but just incase.