⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gmain.pas

📁 2009年传奇私服游戏启动程序源代码。Delphi版本
💻 PAS
📖 第 1 页 / 共 5 页
字号:
    5: SaveList.Add(format(sRunGate5,[g_sLocalIPaddr,
                                      g_sExtIPaddr,g_nRunGate1_GatePort,
                                      g_sExtIPaddr,g_nRunGate2_GatePort,
                                      g_sExtIPaddr,g_nRunGate3_GatePort,
                                      g_sExtIPaddr,g_nRunGate4_GatePort]));
    6: SaveList.Add(format(sRunGate6,[g_sLocalIPaddr,
                                      g_sExtIPaddr,g_nRunGate_GatePort,
                                      g_sExtIPaddr,g_nRunGate1_GatePort,
                                      g_sExtIPaddr,g_nRunGate2_GatePort,
                                      g_sExtIPaddr,g_nRunGate3_GatePort,
                                      g_sExtIPaddr,g_nRunGate4_GatePort,
                                      g_sExtIPaddr,g_nRunGate5_GatePort]));
    7: SaveList.Add(format(sRunGate7,[g_sLocalIPaddr,
                                      g_sExtIPaddr,g_nRunGate_GatePort,
                                      g_sExtIPaddr,g_nRunGate1_GatePort,
                                      g_sExtIPaddr,g_nRunGate2_GatePort,
                                      g_sExtIPaddr,g_nRunGate3_GatePort,
                                      g_sExtIPaddr,g_nRunGate4_GatePort,
                                      g_sExtIPaddr,g_nRunGate5_GatePort,
                                      g_sExtIPaddr,g_nRunGate6_GatePort]));
    8: SaveList.Add(format(sRunGate8,[g_sLocalIPaddr,
                                      g_sExtIPaddr,g_nRunGate_GatePort,
                                      g_sExtIPaddr,g_nRunGate1_GatePort,
                                      g_sExtIPaddr,g_nRunGate2_GatePort,
                                      g_sExtIPaddr,g_nRunGate3_GatePort,
                                      g_sExtIPaddr,g_nRunGate4_GatePort,
                                      g_sExtIPaddr,g_nRunGate5_GatePort,
                                      g_sExtIPaddr,g_nRunGate6_GatePort,
                                      g_sExtIPaddr,g_nRunGate7_GatePort]));
  end;
//  if g_nRunGate_Count > 4 then
//    case g_nRunGate_Count of    
//      5: SaveList.Add(format('%s %s %d',[g_sExtIPaddr,g_sExtIPaddr,g_nRunGate4_GatePort]));
//      6: SaveList.Add(format('%s %s %d %s %d',[g_sExtIPaddr,g_sExtIPaddr,g_nRunGate4_GatePort,g_sExtIPaddr,g_nRunGate5_GatePort]));
//      7: SaveList.Add(format('%s %s %d %s %d %s %d',[g_sExtIPaddr,g_sExtIPaddr,g_nRunGate4_GatePort,g_sExtIPaddr,g_nRunGate5_GatePort,g_sExtIPaddr,g_nRunGate6_GatePort]));
//      8: SaveList.Add(format('%s %s %d %s %d %s %d %s %d',[g_sExtIPaddr,g_sExtIPaddr,g_nRunGate4_GatePort,g_sExtIPaddr,g_nRunGate5_GatePort,g_sExtIPaddr,g_nRunGate6_GatePort,g_sExtIPaddr,g_nRunGate7_GatePort]));
//    end;

  SaveList.SaveToFile(sIniFile + g_sDBServer_ServerinfoFile);
  SaveList.Free;

  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_Dir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_IdDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_HumDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_FeeDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_BackupDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_ConnectDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_Config_LogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sDBServer_Directory + g_sDBServer_ClearLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
end;

procedure TfrmMain.GenLoginServerConfig;
var
  IniGameConf:TIniFile;
  sIniFile:String;
  SaveList:TStringList;
begin
  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  IniGameConf:=TIniFile.Create(sIniFile + g_sLoginServer_ConfigFile);

  IniGameConf.WriteString('Server','GateAddr',g_sLoginServer_GateAddr);
  IniGameConf.WriteInteger('Server','GatePort',g_nLoginServer_GatePort);
  IniGameConf.WriteString('Server','ServerAddr',g_sLoginServer_ServerAddr);
  IniGameConf.WriteInteger('Server','ServerPort',g_nLoginServer_ServerPort);

  IniGameConf.WriteString('Server','MonAddr',g_sLoginServer_MonAddr);
  IniGameConf.WriteInteger('Server','MonPort',g_nLoginServer_MonPort);
  
  IniGameConf.WriteInteger('Server','ReadyServers',g_nLoginServer_ReadyServers);

  IniGameConf.WriteBool('Server','EnableMakingID',g_boLoginServer_EnableMakingID);
  IniGameConf.WriteBool('Server','EnableGetbackPassword',g_boLoginServer_EnableGetbackPassword);
  IniGameConf.WriteBool('Server','TestServer',g_boLoginServer_TestServer);
  IniGameConf.WriteBool('Server','DynamicIPMode',g_boDynamicIPMode);

  IniGameConf.WriteBool('Server','AutoClear',g_boLoginServer_AutoClear);
  IniGameConf.WriteInteger('Server','AutoClearTime',g_dwLoginServer_AutoClearTime);



  IniGameConf.WriteString('DB','IdDir',sIniFile + g_sLoginServer_IdDir);
  IniGameConf.WriteString('DB','FeedIDList',sIniFile + g_sLoginServer_FeedIDList);
  IniGameConf.WriteString('DB','FeedIPList',sIniFile + g_sLoginServer_FeedIPList);
  IniGameConf.WriteString('DB','CountLogDir',sIniFile + g_sLoginServer_CountLogDir);
  IniGameConf.WriteString('DB','WebLogDir',sIniFile + g_sLoginServer_WebLogDir);
  IniGameConf.WriteString('DB','ChrLogDir',sIniFile + g_sLoginServer_ChrLogDir);
  IniGameConf.WriteString('DB','IdLogDir',sIniFile + g_sLoginServer_IdLogDir);

  IniGameConf.Free;


  SaveList:=TStringList.Create;
//  if g_boRunGate4_GetStart then begin
//    SaveList.Add(format('%s %s %s %s %s:%d %s:%d',[g_sGameName,'Title1',g_sLocalIPaddr,g_sLocalIPaddr,g_sExtIPaddr,g_nSelGate_GatePort,g_sExtIPaddr,g_nSelGate_GatePort1]));
//  end else begin
//    SaveList.Add(format('%s %s %s %s %s:%d',[g_sGameName,'Title1',g_sLocalIPaddr,g_sLocalIPaddr,g_sExtIPaddr,g_nSelGate_GatePort]));
//  end;
  SaveList.Add(format('%s %s %s %s %s:%d',[g_sGameName,'Title1',g_sLocalIPaddr,g_sLocalIPaddr,g_sExtIPaddr,g_nSelGate_GatePort]));


  SaveList.SaveToFile(sIniFile + g_sLoginServer_AddrTableFile);

  SaveList.Clear;
  SaveList.Add(g_sLocalIPaddr);
  SaveList.SaveToFile(sIniFile + g_sLoginServer_ServeraddrFile);

  SaveList.Clear;
  SaveList.Add(format('%s %s %d',[g_sGameName,g_sGameName,g_nLimitOnlineUser]));
  SaveList.SaveToFile(sIniFile + g_sLoginServerUserLimitFile);
  SaveList.Free;

  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory + g_sLoginServer_IdDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory + g_sLoginServer_CountLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory + g_sLoginServer_WebLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory + g_sLoginServer_ChrLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  sIniFile:=g_sGameDirectory + g_sLoginServer_Directory + g_sLoginServer_IdLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
end;

procedure TfrmMain.GenLogServerConfig;
var
  IniGameConf:TIniFile;
  sIniFile:String;
begin
  sIniFile:=g_sGameDirectory + g_sLogServer_Directory;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  IniGameConf:=TIniFile.Create(sIniFile + g_sLogServer_ConfigFile);
  IniGameConf.WriteString('Setup','ServerName',g_sGameName);
  IniGameConf.WriteInteger('Setup','Port',g_nLogServer_Port);
  IniGameConf.WriteString('Setup','BaseDir',sIniFile + g_sLogServer_BaseDir);

  sIniFile:=sIniFile + g_sLogServer_BaseDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;  
  IniGameConf.Free;
end;

procedure TfrmMain.GenM2ServerConfig;
var
  IniGameConf:TIniFile;
  sIniFile:String;
  SaveList:TStringList;
begin
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  IniGameConf:=TIniFile.Create(sIniFile + g_sM2Server_ConfigFile);
  IniGameConf.WriteString('Reg','Key',g_sM2Server_RegKey);
  IniGameConf.WriteString('Reg','IP',g_sExtIPaddr);
  IniGameConf.WriteString('Reg','ServerAddr',g_sM2Server_Config_RegServerAddr);
  IniGameConf.WriteInteger('Reg','ServerPort',g_nM2Server_Config_RegServerPort);

  IniGameConf.WriteString('Server','ServerName',g_sGameName);
  IniGameConf.WriteInteger('Server','ServerNumber',g_nM2Server_ServerNumber);
  IniGameConf.WriteInteger('Server','ServerIndex',g_nM2Server_ServerIndex);

  IniGameConf.WriteString('Server','VentureServer',BoolToStr(g_boM2Server_VentureServer));
  IniGameConf.WriteString('Server','TestServer',BoolToStr(g_boM2Server_TestServer));
  IniGameConf.WriteInteger('Server','TestLevel',g_nM2Server_TestLevel);
  IniGameConf.WriteInteger('Server','TestGold',g_nM2Server_TestGold);
  IniGameConf.WriteInteger('Server','TestServerUserLimit',g_nLimitOnlineUser);
  IniGameConf.WriteString('Server','ServiceMode',BoolToStr(g_boM2Server_ServiceMode));
  IniGameConf.WriteString('Server','NonPKServer',BoolToStr(g_boM2Server_NonPKServer));

  IniGameConf.WriteString('Server','DBAddr',g_sDBServer_Config_ServerAddr);
  IniGameConf.WriteInteger('Server','DBPort',g_nDBServer_Config_ServerPort);
  IniGameConf.WriteString('Server','IDSAddr',g_sLoginServer_ServerAddr);
  IniGameConf.WriteInteger('Server','IDSPort',g_nLoginServer_ServerPort);
  IniGameConf.WriteString('Server','MsgSrvAddr',g_sM2Server_MsgSrvAddr);
  IniGameConf.WriteInteger('Server','MsgSrvPort',g_nM2Server_MsgSrvPort);
  IniGameConf.WriteString('Server','LogServerAddr',g_sLogServer_ServerAddr);
  IniGameConf.WriteInteger('Server','LogServerPort',g_nLogServer_Port);
  IniGameConf.WriteString('Server','GateAddr',g_sM2Server_GateAddr);
  IniGameConf.WriteInteger('Server','GatePort',g_nM2Server_GatePort);

  IniGameConf.WriteString('Server','DBName',g_sHeroDBName);


  IniGameConf.WriteInteger('Server','UserFull',g_nLimitOnlineUser);

  IniGameConf.WriteString('Share','BaseDir',sIniFile + g_sM2Server_BaseDir);
  IniGameConf.WriteString('Share','GuildDir',sIniFile + g_sM2Server_GuildDir);
  IniGameConf.WriteString('Share','GuildFile',sIniFile + g_sM2Server_GuildFile);
  IniGameConf.WriteString('Share','VentureDir',sIniFile + g_sM2Server_VentureDir);
  IniGameConf.WriteString('Share','ConLogDir',sIniFile + g_sM2Server_ConLogDir);
  IniGameConf.WriteString('Share','LogDir',sIniFile + g_sM2Server_LogDir);

  IniGameConf.WriteString('Share','CastleDir',sIniFile + g_sM2Server_CastleDir);
  IniGameConf.WriteString('Share','EnvirDir',sIniFile + g_sM2Server_EnvirDir);
  IniGameConf.WriteString('Share','MapDir',sIniFile + g_sM2Server_MapDir);
  IniGameConf.WriteString('Share','NoticeDir',sIniFile + g_sM2Server_NoticeDir);

  IniGameConf.Free;

  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_BaseDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_GuildDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_VentureDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_ConLogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_LogDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_CastleDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_EnvirDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_MapDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  sIniFile:=g_sGameDirectory + g_sM2Server_Directory + g_sM2Server_NoticeDir;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;

  sIniFile:=g_sGameDirectory + g_sM2Server_Directory;
  SaveList:=TStringList.Create;
  SaveList.Add('GM');
  SaveList.SaveToFile(sIniFile + g_sM2Server_AbuseFile);

  SaveList.Clear;
  SaveList.Add(g_sLocalIPaddr);
  SaveList.SaveToFile(sIniFile + g_sM2Server_RunAddrFile);

  SaveList.Clear;
  SaveList.Add(g_sLocalIPaddr);
  SaveList.SaveToFile(sIniFile + g_sM2Server_ServerTableFile);
  SaveList.Free;
end;

procedure TfrmMain.GenLoginGateConfig;
var
  IniGameConf:TIniFile;
  sIniFile:String;
  SaveList:TStringList;
begin
  sIniFile:=g_sGameDirectory + g_sLoginGate_Directory;
  if not DirectoryExists(sIniFile) then begin
    CreateDir(sIniFile);
  end;
  IniGameConf:=TIniFile.Create(sIniFile + g_sLoginGate_ConfigFile);
  IniGameConf.WriteString('LoginGate','Title',g_sGameName);
  IniGameConf.WriteString('LoginGate','ServerAddr',g_sLoginGate_ServerAddr);
  IniGameConf.WriteInteger('LoginGate','ServerPort',g_nLoginServer_GatePort{g_nLoginGate_ServerPort});
  IniGameConf.WriteString('LoginGate','GateAddr',g_sLoginGate_GateAddr);
  IniGameConf.WriteInteger('LoginGate','GatePort',g_nLoginGate_GatePort);
  IniGameConf.WriteInteger('LoginGate','ShowLogLevel',g_nLoginGate_ShowLogLevel);
  IniGameConf.WriteInteger('LoginGate','MaxConnOfIPaddr',g_nLoginGate_MaxConnOfIPaddr);
  IniGameConf.WriteInteger('LoginGate','BlockMethod',g_nLoginGate_BlockMethod);
  IniGameConf.WriteInteger('LoginGate','KeepConnectTimeOut',g_nLoginGate_KeepConnectTimeOut);
  IniGameConf.Free;
end;

procedure TfrmMain.GenSelGateConfig();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -