Shipping build do not accept comand line arguments

Here is the code that epic uses to create the game mode for default map when game engine is being loaded.

void UGameInstance::StartGameInstance()
{
UEngine* const Engine = GetEngine();

// Create default URL.
// @note: if we change how we determine the valid start up map update LaunchEngineLoop's GetStartupMap()
FURL DefaultURL;
DefaultURL.LoadURLConfig(TEXT("DefaultPlayer"), GGameIni);

// Enter initial world.
EBrowseReturnVal::Type BrowseRet = EBrowseReturnVal::Failure;
FString Error;
TCHAR Parm[4096] = TEXT("");
const TCHAR* Tmp = FCommandLine::Get();

#if UE_BUILD_SHIPPING
// In shipping don’t allow an override
Tmp = TEXT(“”);
#endif // UE_BUILD_SHIPPING

//other code
}

so you can get the real reason in here.