Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28

Server: Counter-Strike Source (players - maps)

03.03.2010, 17:29. Показов 3447. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток народ!
Помоги начинающему в VB .net
Помоги создать в программе следующие(Вывод):
Сколько игроков в данный момент находится на сервере.
Какая текущая карта стоит на сервере.

Сервер и программа будут стоять на одной машине!

Всю голову сломал уже , как обратится к своему серверу и вывести эту информацию

Буду благодарен за исходник или код.

Если есть добрые самаритянины , у которых есть время на общение ,
пишите сюда ICQ: 478261391 , благодарность последует )))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.03.2010, 17:29
Ответы с готовыми решениями:

Server insecure при подключении к серверу в Counter-Strike: Source
стим работает хорошо, но захожу в игру и не могу подключиться практически ни на один сервер! пишет server insecure. что делать?

Подскажите от куда можно скачать Counter-Strike Source Server на linux (no steam)
Подскажите от куда можно скачать Counter-Strike Source Server на linux (no steam).Облазил кучу сайтов - парочку скачал (в них ошибки и...

Загрузка ресурсов в Counter-Strike: Source
Пытался найти в интернете и на этом форуме, но безрезультатно, может не так выражаюсь, вследствии чего не верные поисковые слова использую,...

11
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
16.03.2010, 13:36
я почти доделал. но делаю для халв лайв 2 но разницы никакой....

что-то вроде этого:

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Imports System.Net
Imports System.Text ' для System.Text.Encoding.ASCII.GetBytes("privet kot!")
Imports System.Net.Sockets ' для Dim udpClient As New UdpClient(55777)
 
 
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 
        Try
            Dim udpClient As New UdpClient(55777) 'Мой порт на который я прошу дать ответ (с него локально и уйдёт).
            udpClient.Connect("255.255.255.255", 27015) 'Куда на какой порт
 
 
            ' Отправляет сообщение для хоста, к которому вы подключены.
            'Dim sendBytes As [Byte]() = System.Text.Encoding.ASCII.GetBytes("privet kot!")
            Dim sendBytes As [Byte]() = {"255", "255", "255", "255", "84", "83", "111", "117", "114", "99", "101", "32", "69", "110", "103", "105", "110", "101", "32", "81", "117", "101", "114", "121", "0"} 'Задаём содержимое массива вручную
 
            udpClient.Send(sendBytes, sendBytes.Length) 'Отправляем данные
 
            udpClient.Close() 'Закрываем сокет
 
 
        Catch ex As Exception
            TextBox3.Text = (ex.ToString())
        End Try
 
    End Sub
 
End Class

осталось только отловить обратный пакет от серверов в сети. и разобрать их по данным (карта, сервер....). + также извлечь IP.

стучи в асю 305-9-0-3 вместе чтонить придумаем.

пишу на vb.net
0
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28
16.03.2010, 15:47  [ТС]
хорошо
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
17.03.2010, 09:42
Итак, вот конечная версия: но огромная проблема в том что 27015 опрашивает только одного компа, в данном случае комп 192.168.0.58, а мне нужно опросить всю сеть широковещательным запросом. на адрес 255.255.255.255 порт 27015. вопрос, как это реализовать?

вот рабочий код для одного компа:

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Imports System.Net
Imports System.Text ' для System.Text.Encoding.ASCII.GetBytes("privet kot!")
Imports System.Net.Sockets ' для Dim udpClient As New UdpClient(55777)
 
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
 
        Dim Message As [Byte]() = {"255", "255", "255", "255", "84", "83", "111", "117", "114", "99", "101", "32", "69", "110", "103", "105", "110", "101", "32", "81", "117", "101", "114", "121", "0"} 'Задаём содержимое массива вручную
 
        Dim endPoint As New IPEndPoint(IPAddress.Parse("192.168.0.58"), 27015)
 
        Dim client As Socket = New Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp)
        client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 6000)
 
        client.SendTo(Message, endPoint)
 
        Dim sBuffer(1400) As Byte
        Try
            client.ReceiveFrom(sBuffer, endPoint)
 
            TextBox2.Text = System.Text.Encoding.ASCII.GetString(sBuffer)
            TextBox3.Text = endPoint.Address.ToString() 'Так получим IP моя фишка
        Catch ex As SocketException
            MsgBox("Failed to receive response on " + vbCrLf & ex.Message)
        End Try
 
 
    End Sub
 
End Class
0
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28
17.03.2010, 10:27  [ТС]
сорри за не нужный пост.

kot318 я тебе сегодня часиков в 7 вечера в ICQ напишу.

У меня уже есть соборный проект из разных релизов.

Добавлено через 12 минут
Если невтерпеж , то вот проект квери на C# GameServerInfo_src.zip

Если будет проблема с конвертом C# в vb.net пиши помогу.

Он показывает: Сколько игроков в данный момент на сервере , какая карта , название сервер + полные настройки сервера - короче полный мониторинг практически.

В нем есть протоколы: Ace , Doom3 , GameSpy , GameSpy2 , HalfLife , Quake3 и Source.

Меня интересует на сегодняшний день , как сделать показ пинга у игроков и как сделать консоль GUI в Форме.. , чтобы моя форма брала логи сервера и показывала в окне который я назову OutputBox все что пишет сервер в реальном времени.
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
17.03.2010, 10:34
спасибо. посмотрю. меня вечером в асе не бывает. я только днём.
0
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28
17.03.2010, 10:34  [ТС]
Вот все таки решил выложить уже готовый проект в vb.net GameQuery.rar
kot318 Его ты уже сможешь переделать под себя за одно и посмотреть как он устроен )))

Если найду время то включу ICQ на работе.
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
17.03.2010, 13:52
спасибо. тут разбираться мне на неделю. пока не посмотрел, буду дома смотреть. а он делает опрос всех компьютеров сети? или работает только с одним указанным компьютером?

Добавлено через 5 минут
спасибо большое!!! стоящая вешь!!! мало справки в сети по работе с сетью. приходится трудно разбираться.

Добавлено через 1 час 23 минуты
блин мне надо как-то опрашивать всю сетку на поиск серверов. то есть все компы. в этом примерере немножко не то

Добавлено через 1 час 43 минуты
А ларчик просто открывался)) Меняем эти 2 строчки в предыдущем проекте и запрос становится широковещательным!!!!

отвечают все компы сети!!!!

Dim endPoint As New IPEndPoint(IPAddress.Parse("255.255.255. 255"), 27015)

client.SetSocketOption(SocketOptionLevel .Socket, SocketOptionName.Broadcast, 1)
0
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28
17.03.2010, 15:20  [ТС]
kot318 я тут наткнулся на еще один проект мониторинга , может чем-то еще тебе поможет.

Вот ссылка: gsw.zip

Добавлено через 12 минут
Собрал мини проект по твоему код. Увидел что может код.

Запрос становится широковещательным. При нажатие на буттоне увидел: название сервера и айпи на котором держится сервер.. , это просто круто.

Добавлено через 2 минуты
Хотя я давно уже сделал себе информацию об этом , через другие проекты и по одному каналу.

Очень хочется сейчас сделать инфу про пинг и сколько раз умер игрок!

Если узнаешь как это сделать будет еще круче.
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
17.03.2010, 15:23
ага широковещательный запрос это круто)))
0
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 28
17.03.2010, 15:35  [ТС]
Вот мой проект который я делаю сейчас WinCSSourceRcon.rar
Я выложил проект для теста (полный и нормально функционирующий проект рано выкладывать , из-за не достающих компонентов).

Сейчас как я выше писал хочу найти следующие (чтобы закончить проект): Показ - пинга игроков , показ - сколько умер игрок , видеть что пишут в чате игры и взять логи сервера (logaddress_add) и видеть в своей форме что пишет в логах сервер.

Тогда моему проекту не будет цены - это мое мнение для себя чего хочется реализовать для удобства.
0
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 7
18.03.2010, 06:15
в моём проекте осталось сделать тайминг ожидания обратных пакетов и многопоточность для входящего канала. потому что второй ответ не всегда доходит. думаю щас.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.03.2010, 06:15
Помогаю со студенческими работами здесь

Неверна звукопередача в Counter-Strike: Source
Привет ребят! Как делишки?!) В общем дело такое. Проблемы со звуком у меня какие-то. Например человек бежит ко мне с левого или...

Вылетает игра Counter-Strike: Source
Источник: Application Error Код события: 1000 Уровень: Ошибка Описание: Имя сбойного приложения: hl2.exe, версия: 0.0.0.0,...

Зависает клава в Counter Strike: Source
Когда играю, то иногда зависает клава.. т.е. вот я допустим иду вперед, останавливаюсь( не жму W) но все равно продолжаю иди вперед.( как...

Снижение трафика в Counter-Strike: Source
Кол-во данных, которые комп принимает от серва ксс у меня ~ 100-150 кб/с. Как можно понизить этот показатель?

Нет текстур в Counter Strike: Source
такая проблема(скриншот ниже) установил кс соурс играл, играл надоели стандартные модели оружия устанавлив, но попадались такие модели что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
1С: Программный отбор элементов справочника Номенклатура по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор под наименованию группы (на. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника Сотрудники по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru