Мини-чат
Наш опрос
Категории раздела
Читоновости [2] |
Новости сайта [6] |
Новости JA [1] |
Главная » 2012 » Февраль » 18 » Игровой Чат
04:06 Игровой Чат | |
Chat Online v0.1 (php) У меня появилась идея интегрировать игровой Чат в web, то есть сделать подобие обычного чата, в котором можно общаться с игроками на игровом сервере через обычный браузер установленный на вашем компьютере или телефоне. И я эту идею воплотил в реальность. Чат работает за счет считывания qconsole.log лог файла, затем обрабатывает информацию - находит ключевые фрагменты, оформляет полученные данные в читаемый вид и отправляет в сжатом виде в окно чата. Особенности работы, алгоритм в деталях. Краткое описание. Файл chat.php является окном, он посылает запрос через(ajax) определенный промежуток времени(стандарт - через 3 секунды) в файл in.php. Тот считывает информацию из qconsole.log с конца файла на определенную глубину(стандарт - 50000 байт), это нужно для быстрого считывания больших по объему файлов. Потом происходит поиск ключевых слов и символов, по которым строиться массив данных. Затем массив в цикле обрабатывается, получая на выходе нужную информацию в html виде и в зависимости от того, поддерживает ваш браузер gzip сжатие или нет - отдает предпочтительное содержимое. Chat.php принимает ответ, записывает его через innerHTML в нужный html тег. Потом все повторяется вновь через указанный промежуток времени. Возможности чата. 1] Чат имеет два режима 1) Простой - показывает обычные сообщения от игроков (не приватные) 2) Детальный - Показывает все сообщения(кто кому написал приватное сообщение), также показывает кто зашел в игру, кто вышел, кто кого убил(каким способом убил), какие команды на сервере выполнялись и так далее. 2] Пароль Изменять параметры работы чата или отправлять сообщения на сервер без правильного пароля нельзя. 3] Параметры. Параметры вводятся в адресной строке браузера. Вопрос - Почему таким неудобным способом? Ответ - Легко интегрировать в iframe с заданными настройками, или добавить в закладки. И потом уже не нужно будет настраивать параметры под себя снова. При обновлении страницы, информация введенная в форму стереться, а так нет. Да и мне проще сделать так. 1) pw - пароль(должен состоять только из цифр). Изменить его можно в файле in.php Если пароль будет введен не верно, то все параметры будут не действительны и чат будет работать по стандартным правилам. 2) o - глубина считывания лог файла в байтах. Чем больше глубина, тем больше информации скрипт прочитает из лога. Считывание идет с конца файла. Но не стоит ставить большие значения, это сильно повлияет на нагрузку центрального процессора. Значения от 1000 до 9999999 3) n - максимальное количество строк, отображаемых в чате от 1 до 999 4) m - метод отображения сообщений 0,1 1 - Новые сообщения появляются снизу(как в игре) 0 - Новые сообщения появляются сверху. 5) t - Интервал времени в секундах, своего рода пауза, после которой начнется этап обновления чата. От 1 до 999 6) dev - выбор режима чата. 0,1 0 - Простой 1 - Детальный 7) s - "легкий" режим. 0,1 При значении 0 ответ будет приходить тогда, когда есть новые сообщения. Значения по умолчанию. pw-null,s-1,dev-0,n-50000,m-1,n-31,t-5 Установка. p.s Для работы требуется возможность исполнять php скрипты. И web доступ. В server.cfg прописать: seta g_log "1" seta logfile "3" А в скрипте запуска игрового сервера добавить значение: +set fs_homepath /opt/lampp/htdocs/ - это путь до web папки. Туда будет сохраняться лог, и будет доступен php скриптам. В файле in.php и msg.php нужно изменить пароль 123456 на свой. В файле in.php указать правильный путь до лог файла (если требуется) В файле msg.php найти строку яяяяrcon passrcon svsay и заменить на яяяяrcon (ваш rcon пароль) svsay В файле msg.php изменить ip и port сервера на свой. | |
|
Всего комментариев: 5 | |||||||||||
| |||||||||||