Username:    Password:        Click Here To Signup     Forgotten Password
Main Menu
Online
Members: 0

Guests: 30

157.55.x.x news
216.244.x.x forum
40.77.x.x forum
46.229.x.x forum
46.229.x.x forum
46.229.x.x forum
46.229.x.x forum
46.229.x.x forum
46.229.x.x forum
46.229.x.x user
46.229.x.x forum
46.229.x.x dilbertplus
46.4.x.x forum
54.225.x.x forum
54.36.x.x forum
54.36.x.x forum
54.36.x.x forum
54.36.x.x dilbertplus
54.36.x.x top
54.36.x.x guestbook
54.36.x.x forum
54.36.x.x user
54.36.x.x forum
54.36.x.x lgsl
54.36.x.x lgsl
54.36.x.x user
54.36.x.x forum
54.36.x.x forum
54.36.x.x forum
66.249.x.x forum

Last Seen

haigiacmo06 Wed 23:38
85filip58 Wed 11:04
Dodgeitorelse Tue 20:14
Wussie Tue 13:27
Rowdy Tue 21:12

Newest Members

Forum
Richard Perry - GreyCube.com :: Forums :: Public :: Live Game Server List - No English :: Re: LGSL и игры на платформе HL2
Your Name:
Reply:


Jump:

Thread Topic
Rostov114
Posted: Tue Oct 12 2010, 03:27PM
На некоторых серверах на ядре HL2 не отображалась подробная информация о сервере (настройки сервера) [ возможно даже сервер определялся как оффлайн ].


Вот исправление


Открыть: ./lgsl_files/lgsl_protocol.php
Найти:
elseif ($packet_type == 4) { $packet_order = ord($packet[9]);      $packet = substr($packet, 18); }

Заменить на:
            elseif ($packet_type == 4) 
            { 
                $packet_order = ord($packet[9]);
 
                if ($packet_order == 0)
                {
                    list(, $packet_checksum) = unpack('V', substr($packet, 14, 4)); // CRC32 checksum
                    $packet = substr($packet, 18); 
                }
                else
                {
                    $packet = substr($packet, 10); 
                }
            }

Найти:
$buffer = bzdecompress($buffer);

Добавить ниже:
              if (crc32($buffer) != $packet_checksum)
            {
                $server['e']['bzip2'] = "unavailable"; $lgsl_need['e'] = FALSE;
                return TRUE;
            }

Закрыть и загрузить на сервер.

Ошибка имееться в том числе в версии 5.8.

Опережая крики нафига это у меня все нормально, рассказываю некоторые сервера отдают информацию в BZip и в 2х пакетах, LGSL по дефолту и 2го пакета режет 18 байт сверху ( хотя если продолжение пакета то служебная информация занимает всего 10 байт ) из-за этого повреждался сам архив и естественно его не возможно было распаковать.
$packet_checksum - хеш CRC32 данных в архиве, т.е. если архив и распаковался...но оказался поврежденным то дальше его обрабатывать нет смысла поэтому и делается выход.
Latest replies

You are not logged in - Click Here To Signup

Username:    Password:   

Mini Buttons

.... © GreyCube.com - Richard Perry - Powered by e107.org