Go Back   EQ2Flames Forum > Server Drama > Barren Sky and Harla Dar

Reply
 
LinkBack Thread Tools
Old 07-30-2007, 04:41 AM  
Planar Manifestation
 
Kuja's Avatar
 
Character: Vigraf
Guild: 1st SK on BS
Server: Barren Sky

Posts: 65
Photos: (0)

Send a message via ICQ to Kuja
Default Оптимизация EQDKP для русских серверов

Перевод EQDKP на русский или же использовать как есть - это дело гильдии.
Однако как в английской версии, так и в переведенной есть несколько существенных недостатков.

Первый и самый неприятный.
При занесении игрока с русским ником движок на отказ не хочет заносить такого в какой-либо ивент. Т.е. выдает ошибку, что поле содержит текст не в латинице.
Хотя EQDKP изначально может работать с никами игроков в любой кодировке. Копать движок долго для решения проблемы не пришлось.

Исправляем проблему:
Открываем .\includes\eqdkp.php

находим:
Code:
    function is_alpha($field, $message = '')
    {
        if ( is_array($field) )
        {
            foreach ( $field as $k => $v )
            {
                $this->is_alpha($k, $v);
            }
            return true;
        }
        else
        {
            $value = $this->_get_value($field);
            if ( !preg_match("/^[[:alpha:][:space:]]+$/", $value) )
            {
                $this->errors[$field] = $message;
                return false;
            }
            return true;
        }
    }
меняем на:

Code:
    function is_alpha($field, $message = '')
    {
        if ( is_array($field) )
        {
            foreach ( $field as $k => $v )
            {
                $this->is_alpha($k, $v);
            }
            return true;
        }
        else
        {
            $value = $this->_get_value($field);
            return true;
        }
    }
Теперь заносить игрока в базу можно хоть на китайском.

Никаких проблем не возникает. Движок корректно заносит ивенты с русскими никами и считает DKP.

Единственная проблема это Индивидуальные настройки. Часть из них может не изменить прикрепленный ник с английского на русский. Поэтому для того чтобы все личные наказания и поощрения были на месте придется их править руками и вписывать вместо англ. ника русский.
Все последующие занесения будут заноситься корректно.

Last edited by Kuja; 07-30-2007 at 04:45 AM.
Kuja is online now   Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are On


Sponsor Ads


All times are GMT -4. The time now is 06:07 AM.


Design By: Miner Skinz.com Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0