Ok I wonder if custom.speedgame ever worked. I looked at the source and it didn't look like the setting in the worldserver.conf would actually do anything. I figured out how to do it though.
This was the original code in Player.cpp...
Code:
/// SMSG_LOGIN_SET_TIME_SPEED
static float const TimeSpeed = 0.01666667f;
WorldPackets::Misc::LoginSetTimeSpeed loginSetTimeSpeed;
loginSetTimeSpeed.NewSpeed = TimeSpeed;
loginSetTimeSpeed.GameTime = GameTime::GetGameTime();
loginSetTimeSpeed.GameTimeHolidayOffset = 0; /// @todo
SendDirectMessage(loginSetTimeSpeed.Write());
I changed it to this...
Code:
// Custom SpeedGame
float speedrate = sWorld->getFloatConfig(CONFIG_SPEED_GAME);
/// SMSG_LOGIN_SET_TIME_SPEED
static float const TimeSpeed = 0.01666667f * speedrate;
WorldPackets::Misc::LoginSetTimeSpeed loginSetTimeSpeed;
loginSetTimeSpeed.NewSpeed = TimeSpeed;
loginSetTimeSpeed.GameTime = ((GameTime::GetGameTime() - GameTime::GetUptime()) + (GameTime::GetUptime() * speedrate));
loginSetTimeSpeed.GameTimeHolidayOffset = 0; /// @todo
SendDirectMessage(loginSetTimeSpeed.Write());
and now realmtime moves really fast at 600.