MX_Master Posted July 29, 2011 Share Posted July 29, 2011 Многим игрокам, особенно новичкам, хотелось бы иметь отдельный браузер серверов, чтобы не запуская мультиплеер быстро просматривать списки серверов, список игроков и инфо выбранного сервера, с возможностью конекта. Может быть и более широкий функционал. Сама идея существования такого внешнего браузера основана на многочисленных отзывах обычных игроков, которые по сути являются основными "потребителями". Кто-то может сказать, что есть онлайн списки серверов и этого достаточно, также как и достаточно встроенного в мультиплеер браузера серверов. Давайте разберемся, что к чему. Итак, встроенный браузер серверов. Что же так не устраивает многих игроков в этом несложном инструменте внутри мультиплеера? Тут все просто. Основной претензией к браузеру является только тот факт, что нужно запустить мультиплеер (соответственно саму игру) для работы с браузером. Для некоторых это время ожидания при запуске и выходе весьма раздражительно, особенно, если игра запускается на весь экран, а нужно что-то быстро посмотреть. Что касается онлайн сайтов со списками серверов. Нужно запускать браузер и переходить по нужной ссылке, искать нужные серверы, или открывать страницы из закладок с нужными серверами. При загрузке нужных данных, мы грузим и ненужные тоже. Конект происходит по ссылке типа mta://адрес:порт или mtasa://. При конекте браузер, естественно, остается работать дальше в фоновом режиме. Неудобства определенно есть. А что может предложить отдельный браузер в виде небольшой программы? Link to comment
StUNt71 Posted July 29, 2011 Share Posted July 29, 2011 Что-то подобное как клиент sa:mp'a? Link to comment
MX_Master Posted July 29, 2011 Author Share Posted July 29, 2011 Тот клиент это и есть браузер серверов. Link to comment
Nodward_Nichrome Posted July 29, 2011 Share Posted July 29, 2011 заинтересовала данная идея, пожалуй попробую поэксперементировать на эту тематику Link to comment
WilliJ Posted July 29, 2011 Share Posted July 29, 2011 А LU вы сделали ведь? Это и есть браузер серверов. Link to comment
lil Toady Posted July 29, 2011 Share Posted July 29, 2011 На C# за час намутить можно, там и редактор гуи адекватный. Link to comment
Nodward_Nichrome Posted July 29, 2011 Share Posted July 29, 2011 собственно первый плод: Link to comment
MX_Master Posted July 30, 2011 Author Share Posted July 30, 2011 неплохое начало, а справа это что? Link to comment
MX_Master Posted July 30, 2011 Author Share Posted July 30, 2011 нашел проект браузера серверов от mabako - https://github.com/mabako/mta-browser. Я сам не С прогер, но если есть знающие люди, посмотрите. Ну а просто посмотреть как он выглядит и заюзать его можно скачав последний релиз - https://github.com/downloads/mabako/mta-browser/mta-browser-1.7.zip Скрин - http://mxgames.kz/images/2011-07-30_102424.png Но тут вы сами видите есть определенные недоработки интерфейса. Я думаю, нам стоит обсудить какой функционал должен быть в браузере серверов... Link to comment
Nodward_Nichrome Posted July 30, 2011 Share Posted July 30, 2011 неплохое начало, а справа это что? в правом столбце страна хоста сервера, но я пока пробую освоиться и поэтому внешний вид и отображение данных значительно изменятся Link to comment
Nodward_Nichrome Posted July 31, 2011 Share Posted July 31, 2011 как я понял в мта, браузер серверов обновляет список через свои источник, а не через game-monitor.com Кто-нибудь знает через какой именно источник идет запрос списка серверов у мта? Link to comment
MX_Master Posted July 31, 2011 Author Share Posted July 31, 2011 чтобы никого не спрашивать, мона просто включить ручной режим фаервола, чтобы он спрашивал о разрешении соединения с каким-либо IP, портом и протоколом. Я так всегда делаю. Но первый список всегда вроде запрашивается у гейм-монитора и только при отрицательном ответе - со своего сервера Link to comment
lil Toady Posted July 31, 2011 Share Posted July 31, 2011 в coreconfig.xml все списки, надо заметить что они могут меняться. Link to comment
Nodward_Nichrome Posted July 31, 2011 Share Posted July 31, 2011 вроде бы через эти источники идет обновление списка: http://master.multitheftauto.com/ase/mta/?v=%VERSION%&id=%ID% http://178.21.21.23/priv_china/ase2.dat http://1mgg.com/affil/mta но расшифровать данные содержащиеся в них мне пока не удалось Link to comment
MX_Master Posted August 1, 2011 Author Share Posted August 1, 2011 обычный бинарник, невооруженным глазом видно, что все числа там, включая IP:PORT, записаны в бинарном виде. Названия, стессна, в виде строк. Если все эти адреса отдают контент в одинаковом виде, то нужно сделать возможность связи с этими ресурсами, если какой-то основной мастер серв недоступен. В том числе, нужно просмотреть контент и от гейм-монитора. Получится своеобразный список бэкап сервов, с которыми браузер тоже должен уметь работать. И только если не один серв не отвечает, показать инфо о недоступности сервов или выключенном соединении с Интернетом. Должно быть обязательное кэширование всех полученных данных. После открытия браузер будет запрашивать список и сравнивать его с кэшем, попутно подправляя его, убирая отсутствующие и добавляя появившиеся серверы. Пинги тоже кэшируются и подправляются только после отображения отредактированного кэш списка. Кэш безусловно важен, даже на тот случай, когда мастер сервы не отвечают. в coreconfig.xml все списки, надо заметить что они могут меняться. Он будет не актуален, если не пользоваться самим браузером серверов внутри клиента. А это зависимость. Link to comment
lil Toady Posted August 1, 2011 Share Posted August 1, 2011 Там же, в coreconfig.xml, написано откуда этот список обновляется Link to comment
Nodward_Nichrome Posted August 1, 2011 Share Posted August 1, 2011 ну вроде как список я озвучивал в предыдущем посте, вопрос был поставлен о расшифровке данных файла а не о том, что очевидно. сам прекрасно вижу что это бинарник содержащий данные о онлайн серверах, меня интересует каким образом его пропарсить можно Link to comment
MX_Master Posted August 1, 2011 Author Share Posted August 1, 2011 Выше давал ссылку на проект другого браузера, можно найти в исходнике, чтобы не создавать парсер заново. Если такой код есть в открытом исходнике клиента, то можно взять инфо оттуда. На каком языке пишите? Link to comment
s3ap Posted August 1, 2011 Share Posted August 1, 2011 Я просто оставлю это тут. function mtaStat($ip, $port, $request) { $port=$port+123; $fp = fsockopen ( "udp://" . $ip, $port, $errno, $errstr ); if ( $fp ) { stream_set_timeout ( $fp, 1, 0 ); fwrite ( $fp, "s" ); $dat = fread ( $fp, 16384 ); fclose ( $fp ); if ( substr ( $dat, 0, 4 ) == "EYE1" ) { $dat = substr ( $dat, 4 ); $i = 0; while($dat!="") { if ( substr ( $dat, 0, 2 ) == chr ( 1 )."?" ) $dat = substr ( $dat, 2 ); $l = ord ( substr ( $dat, 0, 1 ) ); $blks[$i] = substr ( $dat, 1, $l-1 ); $dat = substr ( $dat, $l ); $i++; } $return['name'] = $blks[2]; $return['game'] = $blks[3]; $return['map'] = $blks[4]; $return['version'] = $blks[5]; if ( $blks[6] == "0" ) { $return['public'] = true; } else { $return['public'] = false; } $return['players'] = $blks[7]; $return['maxplayers'] = $blks[8]; $j = 9; while ( substr ( $blks[$j], 0, 4 ) == "Team" ) { $j += 2; } $c = 0; for ( $i = $j; $i<sizeof($blks)-2; $i = $i+5 ) { $players[$c]['name'] = $blks[$i]; $players[$c]['ping'] = $blks[$i+4]; $c++; } } } if($request=="players") return $players; else return $return; } Link to comment
MX_Master Posted August 1, 2011 Author Share Posted August 1, 2011 это РНР парсер инфы от игрового сервера, а не от мастер сервера Link to comment
AirKite Posted August 2, 2011 Share Posted August 2, 2011 Кстати, было бы не плохо увидеть PHP парсер игровых серверов. Имею ввиду список от мастер сервера. Link to comment
MX_Master Posted August 2, 2011 Author Share Posted August 2, 2011 я кста знаю софт для создания Win приложений на РНР, если есть желающие написать Win браузер на РНР.. Link to comment
MX_Master Posted August 2, 2011 Author Share Posted August 2, 2011 ты на РНР пишешь или это ответ на другой вопрос? Link to comment
Arisu Posted August 2, 2011 Share Posted August 2, 2011 Вы еще на .net его напишите, чтобы получилась сотня зависимых дллок и маленький эксешник. Единственное пожелание - чтобы новый браузер был в одном файле. http://rghost.ru/16619771 смотрите, что нашел на винте Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now