|
Devolpe Emulator
|
|
| Sinthetix | Дата: Суббота, 25.05.2013, 19:12 | Сообщение # 391 |
|
Группа: Гости
Сообщений: 153
| Цитата (alqaida) Sinthetix,Вот и обновились,списки серверов не работают,тупо обновляет до бесконечности и все вааще ни одного сервера.В базе все гуд показывает что онлайн и т.д,в игре нету их нифига. Не знаю у меня все нормально показывает. про это не забыл $emulatorIP = 'xxx.xxx.xxx.xxx';?
|
| |
|
|
| TRIADA | Дата: Суббота, 25.05.2013, 19:17 | Сообщение # 392 |
Группа: Проверенные
Сообщений: 518
| а у меня нормально вначале зашло и показало все сервера даже в игру зашол, а счасс тоже поиск серверов и все, попробуй перезапустить
|
| |
|
|
| alqaida | Дата: Суббота, 25.05.2013, 19:44 | Сообщение # 393 |
Группа: Проверенные
Сообщений: 179
| Цитата (Sinthetix) Не знаю у меня все нормально показывает. про это не забыл $emulatorIP = 'xxx.xxx.xxx.xxx';? конфиг и батники от прошлого эмулятора,там изменений нет.
|
| |
|
|
| TRIADA | Дата: Суббота, 25.05.2013, 19:48 | Сообщение # 394 |
Группа: Проверенные
Сообщений: 518
| счасс ваще перестало заходить
|
| |
|
|
| alqaida | Дата: Суббота, 25.05.2013, 19:59 | Сообщение # 395 |
Группа: Проверенные
Сообщений: 179
| нееее,бестолку,настройки те же,просто заменил папки include,lib,nbproject и файлы Plasma.php,и Theater.php,базу залил новую.И результат нет списков серверов,тупо висит обновление и все.
Заметил еще что сервера не обновляет в базе и не удаляет ненужные,у меня два моих сервера в базе одинаковых,что разве порты разные игровые.один онлайн,другой офф,раньше чистил эмулятор автоматом,а щас нет.
..если сегодня не решится проблема,придется делать откат,что нехочется никак.
....а теперь хераааак,и все сервера оффлайн в таблице у всех стоит 0,хотя свои точно онлайн.Чет там не так.
|
| |
|
|
| Sinthetix | Дата: Суббота, 25.05.2013, 21:47 | Сообщение # 396 |
|
Группа: Гости
Сообщений: 153
| Не знаю ребята что у вас, вот поставил все с нуля, эмулятор и чистую базу, запустил 3 сервера все видны как в обычном так и в вьетнам режиме. Да не должны такие приколы быть я вообще не коснулся серверов... В логах что?Добавлено (25.05.2013, 19:36:53) --------------------------------------------- Кстати а через хосты? Попробуйте сначала просто через хосты потом через хук Добавлено (25.05.2013, 19:47:00) --------------------------------------------- Вот поставил с вашим хуком, все работает. Вы наверное в нычку там что то намудрили )) других причин я не вижу.
|
| |
|
|
| alqaida | Дата: Суббота, 25.05.2013, 21:57 | Сообщение # 397 |
Группа: Проверенные
Сообщений: 179
| ни ошибок ничего в логах нет,чтобы настрараживало и интересовало.
PS:готово,рестартанул серверную машину и первым делом запустил эмулятор и все заработало.Банально все так....
|
| |
|
|
| TRIADA | Дата: Суббота, 25.05.2013, 22:45 | Сообщение # 398 |
Группа: Проверенные
Сообщений: 518
| может ли отказать эмулятор если когото выкинуло из игры принудительно, когда ты тока запустил эмуль перед этим, кароче зашол я на сервер, и остался недвигатся в фоне через некоторе время сервак меня выкинул , и выкинул эмулятор, при попытке авторизироватся мне выдавало сообщение типо вы типо исключены тайм аут и у тебя сразу походу начались проблемы с эмулем, если это не совпадение - попробуй сам также зделать
|
| |
|
|
| zmoli775 | Дата: Воскресенье, 26.05.2013, 11:11 | Сообщение # 399 |
Группа: Гости
Сообщений: 42
| @Sinthetix @lqaida
Имя пользователя: AAA создан солдатом по имени: BC2test
Имя пользователя: ABC также можете создать солдата по имени: BC2test
База данных: персон - persona_name иметь то же имя 2 "BC2test
Я думаю, что это не правильно это меньше "persona_name" не может иметь то же имя
Кроме того, я рекомендую всем пользователям использовать зарегистрированный почтовый ящик, чтобы избежать возникновения нежелательного счета
CSocket.class.php
Код$result = dbQuery(sprintf("SELECT * FROM `users` WHERE `user_nuid` = '%s'", $this->vars['nuid'])); if (!preg_match("/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i",$this->vars['nuid']) || mysql_num_rows($result)) { $this->sendErrorPacket("This email address is already registered");
|
| |
|
|
| Sinthetix | Дата: Воскресенье, 26.05.2013, 13:03 | Сообщение # 400 |
|
Группа: Гости
Сообщений: 153
| Цитата (zmoli775) @Sinthetix @lqaidaИмя пользователя: AAA создан солдатом по имени: BC2test
Имя пользователя: ABC также можете создать солдата по имени: BC2test База данных: персон - persona_name иметь то же имя 2 "BC2test
Я думаю, что это не правильно это меньше "persona_name" не может иметь то же имя
Кроме того, я рекомендую всем пользователям использовать зарегистрированный почтовый ящик, чтобы избежать возникновения нежелательного счета
CSocket.class.php
Код $result = dbQuery(sprintf("SELECT * FROM `users` WHERE `user_nuid` = '%s'", $this->vars['nuid'])); if (!preg_match("/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2};)?/i",$this->vars['nuid']) || mysql_num_rows($result)) { $this->sendErrorPacket("This email address is already registered"); Вот молодец, человек сам решил для себя проблему, вот это я называю поучаствовать в развитии эмулятора. Он поставил REGEXP на валидацию NUID и проверяет базу данных на его существование. Осталось тут же еще поставить проверку на максимальное количество допустимых персон и сразу несколько проблем решаются. В следующей версии поставлю эти изменения.
Добавлено (26.05.2013, 11:03:27) --------------------------------------------- Цитата (alqaida) Кстати я заметил насчет статистики, когда заходиш за 2 минуты до конца раунда то начисляются не те очки которые отвечают за игру типо боевые - с ними все впорядке, а начисляются именно наградные очки премия чтоли в большом размере, и некоторые скажем эмблемы или шевроны как их есчо назвать даются не по той стате которая есть, расшифровую: есть эмблема которая дается исходя из подписи снизу за 500 убитых из определенного вида оружия, но я всего 250 настрелял и эта эмблема пришла.Пример кстати всех нашивок здесь и даже эмблема за 5 золотых звезд - хотя ни одной к тому времени я не поймал. Немного про то как работает система обновлении статистики в BFBC2. По сравнению с BF2142 в BFBC2 все проще. Выделенный сервер посылает данные на обновления для ID персоны, эмулятор обновляет в базе только эти поля. Короче когда посылаются данные статистики не имеет значения в какую сторону эмулятор играет только роль перевозки данных, ему все ровно сколько, какие и для чего эти данные. Так что если дед. сервер послал на обновление и поставил тебе эмблему или звездочку не по праве это его проблемы, эмулятор только посылает эти данные. Вот пример пакета обновления статистики игрока: Код [SSocket]Recv packet[rank]: TXN=UpdateStats u.0.o=30 u.0.ot=1 u.0.s.[]=3
u.0.s.0.ut=0 u.0.s.0.k=elo0 u.0.s.0.v=22.0000 u.0.s.0.pt=0
u.0.s.1.ut=0 u.0.s.1.k=elo1 u.0.s.1.v=30.0000 u.0.s.1.pt=0
u.0.s.2.ut=0 u.0.s.2.k=form u.0.s.2.v=-2.0000 u.0.s.2.pt=0
u.[]=1
"u.0.o=30" - это ID персоны "u.0.s.0.k"- elo0 - поле elo0 "u.0.s.0.v"=22.0000 - значение поле elo0 "u.0.s.0.pt=0, u.0.s.1.ut=0" - вот значение этих полей не известно, они походу показывают эмулятору как правильно обновить данное поле, хз.
Опять же про неправильные эмблемы и звездочки, если где то проблема то точно не здесь, а данные статистике обновляются только в этом месте, эмулятор что получает то и обновляет...
Сообщение отредактировал Sinthetix - Воскресенье, 26.05.2013, 13:05 |
| |
|
|
| zmoli775 | Дата: Воскресенье, 26.05.2013, 15:34 | Сообщение # 401 |
Группа: Гости
Сообщений: 42
| persona_name иметь то же имя "сделает игроки не могут войти BC2 имена BAN плохие парни использовать
|
| |
|
|
| Sinthetix | Дата: Воскресенье, 26.05.2013, 17:23 | Сообщение # 402 |
|
Группа: Гости
Сообщений: 153
| Вот вам в помощь инфа о статистика игрока: Визуальный режим - http://bfbcs.com/stats_pc/1ApRiL Сырой вид - http://api.bfbcs.com/api/pc?players=1ApRiL&fields=raw&dev=2
Сравнивая данные с обоих источниках того же игрока, можно определить некоторые поля кто за что отвечают.
К примеру: Код Name Time Kills Headshots Shots Hits Accuracy AEK-971 Vintovka 02h 16m 48s 109 39 7 986 1 348 16.88 %
7 986 - количество выстрелов из оружия AEK-971 , ищем в сыром виде значение 7986, и находим p.raw.c_aek__sfw_g=7986, значит в базе поле "c_aek__sfw_g" показывает количество выстрелов из этого оружия, и так далее для всех атрибутов.
К стати alqaida у тебя опыт игрока не правильный на сайте там где список игроков, ты берешь его с поле elo? Это поле означает что то другое. Убери его а то я чувствую что ты ждешь когда же статистика исправится, она не исправится потому что ты опыт не правильно считываешь, ты сам видаешь как может опыт быть отрицательным...
На этом примере можете изучать структуру статистики, и наверное определить как считываются разные поля с нескольких значений. Изучайте и отпишитесь.
|
| |
|
|
| родя | Дата: Воскресенье, 26.05.2013, 17:57 | Сообщение # 403 |
Группа: Проверенные
Сообщений: 111
| alqaida, я так тебе и не ответил так вот...да я сам не могу сделать эмуль бф3 и признаю это.(если хочешь назовусь для тебя нубом)А ты его сделал?А ты сделал эмуль бэд компани2....А по реальному я рассуждаю не только как программер,но и как экономист и именно с этой точки зрения эмуль бф3 реально выгоден.Не за плату...а за рекламу ты хорошие средства можешь получить...И у меня нет никакой завести к вашему проекту...Я не такой человек..Просто мыслю я глобально...И только поверь буду рад,если на вашем сайте появиться игра бф3. А на самом деле сейчас вы допилите эмуль...А вы уверены, что у вас будет человек 500 играть?////PHP этого не выдержит.. Добавлено (26.05.2013, 15:57:02) ---------------------------------------------
Цитата (родя) А ты его сделал?А ты сделал эмуль бэд компани2 если что я и не делал бэд компани2.А то вдруг не правильно воспримете
И ПОХ,ЧТО ЯНЕ ПРОГРАММИСТ,ЗАТО Я БЛЯ ИДЕЙНЫЙ ГЕНИЙ...
|
| |
|
|
| Sinthetix | Дата: Понедельник, 27.05.2013, 23:40 | Сообщение # 404 |
|
Группа: Гости
Сообщений: 153
| выкладываю новую версию эмулятора Исправления: - Исправлен процесс регистрации учетной записи и создание персон, делается проверка на недопустимые символы и на повторяющиеся имена - Исправлены типы данных статистики.
Что нового: - в config.php есть параметр numberOfUserPersonas который определяет максимальное количество допустимых бойцов для одной учетной записи
BFBC2EMU_V1.08 http://zalil.ru/34536169
|
| |
|
|
| zmoli775 | Дата: Вторник, 28.05.2013, 02:14 | Сообщение # 405 |
Группа: Гости
Сообщений: 42
| @Sinthetix BFBC2EMU_V1.08 предложение: [код ·1] if (!preg_match("/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2};)?/i",$this->vars['nuid'])) { $this->sendErrorPacket("Wrong email format"); return; } ------------------------------------------------------------------ [код·2] global $numberOfUserPersonas; $result = dbQuery(sprintf("SELECT `persona_id` FROM `personas` WHERE `user_id` = '%s'", $this->userData->user_id)); if(isset($numberOfUserPersonas) && $numberOfUserPersonas && mysql_num_rows($result) >= $numberOfUserPersonas){ $this->sendErrorPacket("Maximum number of registered personas has been reached."); return; }
-------------------------------код·1 And код·2 идеальный спасибо “Very good job”
But (но) [код·3] if(!preg_match("/^[a-zA-Z0-9_\-]+$/", $this->vars['name'])){ $this->sendErrorPacket("Wrong characters used"); return; } ------------------------------------------------Я не думаю, что совершенство------------------------ потому что: солдат ID очень однообразный Такие параметры В оригинале "BC2Game" Вы можете использовать _ - ; : | ~ ( ) + Пробел = | < > / ? Не допускается ! ` @ # $ % * \ ' " Длина ID 4-16 --------------------------------------------------------------------Вы можете изменить это?----------- Это мое предложение ID:zmoli775 2013.5.28Добавлено (28.05.2013, 00:13:55) --------------------------------------------- if(!preg_match("/^[a-zA-Z0-9_\-]+$/", $this->vars['name'])){ $this->sendErrorPacket("Wrong characters used"); return; }
Я пытаюсь добавить эти символы _ - ; : | ~ ( ) + Пробел = | < > / ? Simulator ошибке Я не знаком с PHP Вы можете это исправить? Добавлено (28.05.2013, 00:14:43) --------------------------------------------- Длина ID 4-16
|
| |
|
|