messageslc.h 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /*-------------------------------------------------------------------------
  2. * \src\Lobby\MessagesLC.h
  3. *
  4. * Interface between Lobby and Allegiance
  5. *
  6. * Owner:
  7. *
  8. * Copyright 1986-2000 Microsoft Corporation, All Rights Reserved
  9. *-----------------------------------------------------------------------*/
  10. #ifndef _MESSAGES_LC_H_
  11. #define _MESSAGES_LC_H_
  12. #include "MessageCore.h"
  13. #define LOBBYVER 8
  14. /*
  15. *************************************************
  16. MESSAGES START HERE
  17. Messages range for this file is 251 - 300
  18. *************************************************
  19. Message prefixes:
  20. L_ lobby to client
  21. C_ client to lobby
  22. LC_ both ways
  23. */
  24. // We've changed the logon message but need to let older clients connect and
  25. // auto-update. We should remove this post-beta.
  26. DEFINE_FEDMSG(C, LOGON_LOBBY_OLD, 251) // if the lobby is in club mode, everyone has to have a valid ticket, otherwise the ticket is ignored
  27. FM_VAR_ITEM(ZoneTicket); // Encrypted
  28. short verLobby;
  29. int crcFileList;
  30. DWORD dwTime;
  31. END_FEDMSG
  32. DEFINE_FEDMSG(C, LOGOFF_LOBBY, 252) // note: we don't care whether they joined a game or quit altogether
  33. END_FEDMSG
  34. // When a client receives ART_SERVER_INFO, it logs off
  35. DEFINE_FEDMSG(L, AUTO_UPDATE_INFO, 253)
  36. FM_VAR_ITEM(FTPSite); // FTP Server
  37. FM_VAR_ITEM(FTPInitialDirectory);
  38. FM_VAR_ITEM(FTPAccount);
  39. FM_VAR_ITEM(FTPPassword);
  40. int crcFileList; // correct version of server's filelist
  41. unsigned nFileListSize;
  42. END_FEDMSG
  43. DEFINE_FEDMSG(C, CREATE_MISSION_REQ, 254) // client should lock ui until it gets back an ack or nack
  44. END_FEDMSG
  45. DEFINE_FEDMSG(L, CREATE_MISSION_ACK, 255)
  46. DWORD dwCookie; // when the client gets the lobby mission info for this guy, he's free to join. Maybe make that more explicit?
  47. END_FEDMSG
  48. DEFINE_FEDMSG(L, CREATE_MISSION_NACK, 256) // the mission could not be created, because there are no available servers
  49. END_FEDMSG
  50. DEFINE_FEDMSG(C, JOIN_GAME_REQ, 257) // successful request is responded w/ a JOIN_MISSION
  51. DWORD dwCookie;
  52. END_FEDMSG
  53. DEFINE_FEDMSG(L, JOIN_GAME_NACK, 259)
  54. END_FEDMSG
  55. DEFINE_FEDMSG(L, JOIN_MISSION, 260)
  56. DWORD dwCookie; // client should ignore this message unless it's the cookie for the most recent join/create request
  57. char szServer[16];
  58. GUID guidInstance;
  59. END_FEDMSG
  60. DEFINE_FEDMSG(L, LOGON_ACK, 261)
  61. DWORD dwTimeOffset;
  62. END_FEDMSG
  63. DEFINE_FEDMSG(L, LOGON_NACK, 262) // tells client that theyt can't join the lobby.
  64. FM_VAR_ITEM(Reason);
  65. bool fRetry;
  66. END_FEDMSG
  67. DEFINE_FEDMSG(C, FIND_PLAYER, 263)
  68. FM_VAR_ITEM(szCharacterName);
  69. END_FEDMSG
  70. DEFINE_FEDMSG(L, FOUND_PLAYER, 264)
  71. DWORD dwCookie;
  72. END_FEDMSG
  73. //
  74. // If LOGON_LOBBY ever changes, existing clients will not be able to AutoUpdate to this lobby's version.
  75. // unless we pull another LOGON_LOBBY_OLD trick.
  76. //
  77. #define CL_LOGON_KEY ("%x:%s: Corrupt artwork file ") // just to confuse a hacker
  78. DEFINE_FEDMSG(C, LOGON_LOBBY, 265) // if the lobby is in club mode, everyone has to have a valid ticket, otherwise the ticket is ignored
  79. FM_VAR_ITEM(ZoneTicket); // Encrypted
  80. FM_VAR_ITEM(CDKey); // Scrambled with the key CL_LOGON_KEY, dwTime, CharacterName
  81. short verLobby;
  82. int crcFileList;
  83. DWORD dwTime;
  84. char szName[c_cbName];
  85. END_FEDMSG
  86. #endif // _MESSAGES_LC_H_