> > > > >
AMX Mod X 1.9.0

AMX Mod X 1.9.0 5232

Нет прав для скачивания
Сообщения
892
Рейтинг
598
TrapManiak, Нужно скачивать base и counter-strike, далее counter-strike заливать поверх base
1538649918118.png
 
  2
Сообщения
11
Рейтинг
-4
после смены амх и компилировании плагинов ,стало кикать игроков,либо вообще кс зависает.вернул обратно онлайн вернулся
 
Сообщения
11
Рейтинг
-4
пока не стал делать эксперименты,все плагины компилируются.откатился на 183 все в норму пришло ,плагины остались без изменений
 
 
Сообщения
152
Рейтинг
36
borzoy, То есть ты будешь ждать пока за тебя кто-то решит такие же проблемы? Смысл тогда ставить было новый amx?
 
  5
Сообщения
184
Рейтинг
157
borzoy, возможно ты не все обновил. Нужно заливать файлы из 2 архивов (base и cstrike). Смотри внимательно что заменяешь, желательно по папкам: config, data, dlls и т.д. Обрати внимание, нет ли ошибок, когда компилируешь плагины. 1.8.3RE достаточно старый, возможны какие то отличия по инклюдам, какой то плагин не скомпилировался и отрабатывает некорректно.
 
  1
Сообщения
152
Рейтинг
36
При обновление на последнюю версию амх, перестает отображаться сервер в монике кс банса и gamecms. Реюнион ставил последние две версии
 
Последнее редактирование:
 
Сообщения
152
Рейтинг
36
Алексеич, изначально залил новый амх на сервер с реюнион 92,сервак не отображался в мониторинге ксбанса, потом залил новый реюнион и он перестал отображаться и в ксбансе и в gcms, так же есть два сервера которые стоят с версией амх 5218 и последним реюнион, они отображаются только в gamecms, в ксбансе нет.
 
 
Сообщения
573
Рейтинг
403
Angerfist, поставь 92 версию и в ксбанс замени код в файле Serverinfo.php
PHP:
<?php
/**
 * @author Craft-Soft Team
 * @package CS:Bans
 * @version 1.0 beta
 * @copyright (C)2013 Craft-Soft.ru.  Все права защищены.
 * @link http://craft-soft.ru/
 * @license http://creativecommons.org/licenses/by-nc-sa/4.0/deed.ru  «Attribution-NonCommercial-ShareAlike»
 */

/**
 * Модель для таблицы "{{serverinfo}}".
 *
 * Доступные поля таблицы '{{serverinfo}}':
 * @property integer $id ID сервера
 * @property integer $timestamp Дата
 * @property string $hostname Название сервера
 * @property string $address Адрес
 * @property string $gametype Тип игры
 * @property string $rcon RCON пароль
 * @property string $amxban_version Версия плагина
 * @property string $amxban_motd Ссылка на MOTD
 * @property integer $motd_delay Время показа MOTD
 * @property integer $amxban_menu Меню (?)
 * @property integer $reasons Причины
 * @property integer $timezone_fixx Разница во времени
 */
class Serverinfo extends CActiveRecord
{
    private $connect;
    public $players = null;
    public $playersmax = null;
    public $name = null;
    public $map = null;
    public $game = null;
    public $os = null;
    public $osimg = null;
    public $secure = null;
    public $playersinfo = array();
    public $online = null;
    public $modimg = null;
    public $vacimg = null;
    public $contact = null;
    public $nextmap = null;
    public $timeleft = null;
    public $mapimg = null;

    public static function model($className=__CLASS__)
    {
        return parent::model($className);
    }

    public function tableName()
    {
        return '{{serverinfo}}';
    }

    public function scopes()
    {
        return array(
            'sort'=>array(
                'order'=>'`hostname` ASC'
            ),
        );
    }
    
    public function rules()
    {
        return array(
            array('motd_delay, amxban_menu, reasons, timezone_fixx', 'numerical', 'integerOnly'=>true),
            array('rcon', 'length', 'max'=>32),
            array('amxban_motd', 'length', 'max'=>250),
            array('id, timestamp, hostname, address, gametype, rcon, amxban_version, amxban_motd, motd_delay, amxban_menu, reasons, timezone_fixx', 'safe', 'on'=>'search'),
        );
    }

    public function relations()
    {
        return array();
    }

    public function attributeLabels()
    {
        return array(
            'id' => 'ID',
            'timestamp' => 'Дата',
            'hostname' => 'Имя сервера',
            'address' => 'Адрес',
            'gametype' => 'Мод',
            'rcon' => 'Rcon',
            'amxban_version' => 'Версия',
            'amxban_motd' => 'MOTD',
            'motd_delay' => 'Задержка перед MOTD',
            'amxban_menu' => 'Меню Amxban',
            'reasons' => 'Группы причин банов',
            'timezone_fixx' => 'Разница во времени',
            'map' => 'Карта'
        );
    }

    public function search()
    {
        $criteria=new CDbCriteria;

        $criteria->compare('id',$this->id);
        $criteria->compare('timestamp',$this->timestamp);
        $criteria->compare('hostname',$this->hostname,true);
        $criteria->compare('address',$this->address,true);
        $criteria->compare('gametype',$this->gametype,true);
        $criteria->compare('rcon',$this->rcon,true);
        $criteria->compare('amxban_version',$this->amxban_version,true);
        $criteria->compare('amxban_motd',$this->amxban_motd,true);
        $criteria->compare('motd_delay',$this->motd_delay);
        $criteria->compare('amxban_menu',$this->amxban_menu);
        $criteria->compare('reasons',$this->reasons);
        $criteria->compare('timezone_fixx',$this->timezone_fixx);
        $criteria->order = '`hostname` ASC';
        return new CActiveDataProvider($this, array(
            'criteria'=>$criteria,
        ));
    }


    public function getInfo() {
        $sip = explode(':',  $this->address);
        
        //include ROOTPATH . '/include/GameQ.php';
        
        $server = new GameQ;
        
        $server->addServer(array(
            'id' => $this->id,
            'type' => $this->gametype,
            'host' => $this->address
        ));
        
        $server->setOption('timeout', 1);
        
        $s = $server->requestData();
        $s = $s[$this->id];

        $rules = array();
        $info['online'] = $s['gq_online'] == 1;
        
        if($info['online'])
        {
            $info['players'] = $s['num_players'];
            $info['playersmax'] = $s['max_players'];
            $info['name'] = $s['hostname'];
            $info['map'] = $s['map'];
            $info['game'] = $s['game_dir'];
            $info['os'] = $s['os'] == 'l' ? 'Linux' : 'Windows';
            $info['secure'] = $s['secure'] == 0 ? FALSE : TRUE;
            $info['playersinfo'] = isset($s['players']) && is_array($s['players']) ? $s['players'] : array();
            $info['timeleft'] = isset($s['mp_timeleft']) ? $s['mp_timeleft'] : isset($s['amx_timeleft'])?$s['amx_timeleft']:false;
            $info['nextmap'] = isset($s['amx_nextmap'])?$s['amx_nextmap']:FALSE;
            $info['contact'] = isset($s['sv_contact'])?$s['sv_contact']:FALSE;
            $game = $this->gametype ? $this->gametype : $info['game'];
            $info['modimg'] = Yii::app()->urlManager->baseUrl .
                    DIRECTORY_SEPARATOR .
                    "images".
                    DIRECTORY_SEPARATOR .
                    "games" .
                    DIRECTORY_SEPARATOR .
                    $game .
                    ".gif";
            $info['vacimg'] = Yii::app()->urlManager->baseUrl .
                    DIRECTORY_SEPARATOR .
                    "images".
                    DIRECTORY_SEPARATOR .
                    ($info['secure'] ? "vac.png" : "no_vac.png");
            $info['osimg'] = Yii::app()->urlManager->baseUrl .
                    DIRECTORY_SEPARATOR .
                    "images".
                    DIRECTORY_SEPARATOR .
                    "os" .
                    DIRECTORY_SEPARATOR .
                    $info['os'].
                    ".png";

            if(!$info['online'])
            {
                $mapimage = Yii::app()->urlManager->baseUrl ."/images/maps/noresponse.jpg";
            }
            elseif(is_file(ROOTPATH ."/images/maps/" . $game . '/' . $info['map'] . ".jpg"))
            {
                $mapimage = Yii::app()->urlManager->baseUrl . "/images/maps/" . $game . '/' . $info['map'] . ".jpg";
            }
            else
            {
                $mapimage = Yii::app()->urlManager->baseUrl . "/images/maps/noimage.jpg";
            }

            $info['mapimg'] = CHtml::image($mapimage, $info['map'], array('title' => $info['map'], 'class' => 'img-polaroid'));
            return $info;
        }
        return FALSE;
    }
    
    public function rconCommand($command)
    {
        $addr = explode(':', $this->address);

        $rcon = new Rcon;
        $rcon->Connect($addr[0], $addr[1], $this->rcon);

        $test = $rcon->RconCommand('echo Hi');

        if($test == 'Bad rcon_password.' || $test == 'No password set for this server.' || $test != 'Hi')
            return FALSE;

        return $rcon->RconCommand(CHtml::encode ($command));
    }

    public function getPlayersInfo()
    {
        if(!$this->rcon)
            return FALSE;

        $q = $this->rconCommand('amx_list');

        if(!$q)
            return FALSE;

        $players = array();
        foreach(explode("\x0A", $q) as $p)
        {
            $i = explode("\xFC", $p);

            switch($i[4])
            {
                case 0:
                    $type = 'Игрок';
                    break;
                case 1:
                    $type = 'Бот';
                    break;
                case 2:
                    $type = 'HLTV';
                    break;
                default :
                    $type = 'Неизвестен';
            }

            $players[] = array(
                'nick' => $i[0],
                'userid' => $i[1],
                'steamid' => $i[2],
                'ip' => $i[3],
                'playertype' => $type,
                'immunity' => $i[5]
            );
        }
        return $players;
    }

    public static function getCommands()
    {
        return array(
            '' => 'Выберите команду',
            'amx_reloadadmins' => 'Перезагрузить список админов',
            'restart' => 'Перезапустить карту/плагины',
            'stats' => 'Команда stats',
            'status' => 'Команда status',
            'amx_plugins' => 'Список AMX плагинов',
            'amx_modules' => 'Список AMX модулей',
            'meta list' => 'Список модулей MetaMod'
        );
    }

    public static function getAllServers($all = TRUE, $id = false)
    {
        $model = Serverinfo::model()->findAll(array('order' => 'hostname ASC'));

        $return = array();

        if($all)
            $return['0'] = 'Выберите сервер';

        foreach($model as $server)
        {
            $return[$id ? $server->id : $server->address] = $server->hostname;
        }

        if($all)
            $return['unknown'] = 'Любой сервер';

        return $return;
    }

    public function afterFind() {
        if(!$this->amxban_motd)
            $this->amxban_motd = "http://{$_SERVER['HTTP_HOST']}/motd.php?sid=%s&adm=%d&lang=%s";
        return parent::afterFind();
    }

    public function afterSave() {
        if($this->isNewRecord)
            Syslog::add(Logs::LOG_ADDED, 'Добавлен новый сервер <strong>' . $this->address . '</strong>');
        else
            Syslog::add(Logs::LOG_EDITED, 'Изменены детали сервера <strong>' . $this->hostname . '</strong>');
        return parent::afterSave();
    }

    public function afterDelete() {
        Yii::app()->cache->flush();
        Syslog::add(Logs::LOG_DELETED, 'Удален сервер <strong>' . $this->address . '</strong>');
        return parent::afterDelete();
    }

}
 
 
Сообщения
152
Рейтинг
36
Алексеич, вернул старый реюнион, файл заменил, все равно сервак из избранного пропал, хотя он работает
 
 
Сообщения
152
Рейтинг
36
fantom, сейчас 0, пробовал и 1 и 2, в избранном сервер появился, а в мониторинге(ксбанс) пишет что не серв не работает
 
 
Сообщения
932
Рейтинг
819
Angerfist, так как тема превращается в оффтоп создайте отдельную тему, где разберем все по частям. Даный вопрос ни коим боком не касается АМХХ. Также как видно из последних вопросов на форуме вы не едины, потому помогите себе и другим одновременно создав отдельный топик
 
  2
Сообщения
188
Рейтинг
20
Angerfist, порт на веб-хостинге открыт(где кс:банс)? у меня так же было, попросил открыть порт - вуаля.
 
Сообщения
18
Рейтинг
0
Думаю уже неделю обнавлятся с 183 до 190 или подождать пока.

Что нужно учитывать при переходе на новую версию?
 
 
Сообщения
932
Рейтинг
819
soob, ничего не нужно. 1.9.0 базируется на 1.8.3
 
  1
> > > > >