Example #1
0
        public static int Open(lua_State L)
        {
            VCR_t *VCR = (VCR_t *)NativeInterface.LoadVariable <VCR_t>("tier0.dll", "g_pVCR");

            OHook_recvfrom = NativeInterface.OverwriteVCRHook(VCR, new_Hook_recvfrom = Hook_recvfrom_detour);
            var netsock = Symbols.GetNetSocket();

            udpSock = netsock->hUDP;

            var iserver      = Symbols.GetIServer();
            var gamedll      = NativeInterface.Load <IServerGameDLL>();
            var filesystem   = NativeInterface.Load <IFileSystem>();
            var engineServer = NativeInterface.Load <IVEngineServer>();

            var description = gamedll.GetGameDescription();


            var steamID    = engineServer.GetGameServerSteamID();
            var infoPacket = new ReplyInfoPacket
            {
                AmountBots    = 0,
                AmountClients = 50,
                Appid         = engineServer.GetAppID(),
                GameDirectory = "garrysmod",
                GamemodeName  = "infinite wars",
                GameName      = "this is my server name?",
                GameVersion   = ReplyInfoPacket.default_game_version,
                MapName       = "gm_fuckmynuts",
                MaxClients    = 60,
                OS            = ReplyInfoPacket.OSType.Windows,
                Passworded    = false,
                Secure        = false,
                Server        = ReplyInfoPacket.ServerType.Dedicated,
                UDPPort       = (short)netsock->nPort,
                SteamID       = 0,
                Tags          = "ayyy"
            };

            var playerPacket = new ReplyPlayerPacket
            {
                Players = new List <ReplyPlayer>
                {
                    new ReplyPlayer {
                        Name = "Duck", Score = 123, Time = 10
                    },
                    new ReplyPlayer {
                        Name = "F**k", Score = 456, Time = 9
                    },
                    new ReplyPlayer {
                        Name = "Suck", Score = 789, Time = 8
                    },
                }
            };

            staticInfoPacket   = infoPacket.GetPacket();
            staticPlayerPacket = playerPacket.GetPacket();

            Console.WriteLine("DotNet Query loaded");
            return(0);
        }
Example #2
0
 public static T OverwriteVCRHook <T>(VCR_t *VCR, T newDelegate) where T : class
 {
     return(OverwriteVCRHook((IntPtr)VCR, newDelegate));
 }