12.11.2011, 10:05 | #1 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
Статистика рейдов
Нужен патч который бы записывал в таблицу статистику рейдов .
То_есть игрок прошел к примеру ЧХ(чёрный храм), а в таблицу character_raids записались данные guid(игрока)raid(энтри рейда)boss_1,boss_2,boss_3,boss_4,boss_5,boss_6,boss_7,boss_8,boss_9,boss_10,boss_11,boss_12,boss_13,boss_14,boss_15,boss_16,boss_17,boss_18,boss_19,boss_20(боссы идут по порядку как в рейде)data(время последнего обновления) получаем что-то типа 1 1 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1235556 где 1 2 1 - это первые 3 босса число показывает, сколько раз данный босс был убит. Если что-то не так разъяснил или не поняли - переспросите. Буду очень благодарен. //Прости не удержался и поправил ошибки //Evilstar Последний раз редактировалось evilstar; 12.11.2011 в 16:35. Причина: Ну и грамотеи нынче пошли :( |
12.11.2011, 17:02 | #2 |
MaNGOS Dev
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
|
Разве эта инфа не записывается в таблицу с ачивками? Хотя бы частично....
|
12.11.2011, 17:37 | #3 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
записывается но нужно более точнее
пожалуйста сделайте кто может я не очень в c++ шарю Последний раз редактировалось NeatElves; 13.11.2011 в 00:01. |
12.11.2011, 19:06 | #4 |
Почетный флудер
Старожил
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
|
сейчас темпура придет и сделает... а если догонит, то вообще хана.
ну а если серьезно, вряд ли вы найдете хоть кого-нибудь, кому это надо (задача глупая и неинтересная). людей с подобными идеями в сети - вагон, а вот людей способных их реализовать - единицы. так что придется все же учить C++. |
12.11.2011, 19:32 | #5 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
я бы рад, вот только один с кучами книг из инета не справлюсь(
если бы кто мог обьяснить, хотя есть один знакомый... почитал дату которую создаёт патч для вов армори_(шадес) был в ужасе - 1327 строк_(если пробел считать как разделительный знак) где во многих местах по 10 раз и больше повторяется одно и то же число , причём это такие числа, как 1065353216, 4294967295 >_< Последний раз редактировалось NeatElves; 13.11.2011 в 00:01. |
12.11.2011, 21:49 | #6 |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
Число строк в патче не является показателем его сложности.
Эти числа проще воспринимать в шестнадцатеричной системе счисления) Первое число какой-то флаг. А второе число это -1 в unsigned int.
__________________
SpellWork Qt4 |
12.11.2011, 22:00 | #7 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
Речь идёт не о патче а о структуре заносимой в бд минут 10 точно по строкам числа разносил
|
13.11.2011, 00:08 | #8 |
MaNGOS Dev
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
|
Последний раз редактировалось TOM_RUS; 13.11.2011 в 00:29. |
13.11.2011, 00:20 | #9 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
с точностью до босса
|
13.11.2011, 00:34 | #10 |
MaNGOS Dev
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
|
|
13.11.2011, 10:28 | #11 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
понятное дело, но ведь некоторые ачивки не отслеживают боссов, да и вообще не работают
|
15.11.2011, 17:52 | #12 |
Новичок
Регистрация: 08.03.2010
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 7 раз(а) в 6 сообщениях
|
Могу дать старый патчик на логирование убийств элитников, записывает кто был в группе.
|
15.11.2011, 18:16 | #13 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
буду благодарен
|
15.11.2011, 18:30 | #14 |
Новичок
Регистрация: 08.03.2010
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 7 раз(а) в 6 сообщениях
|
В виде патча не нашол
где-то в файле Unut.cpp Код:
if (pVictim->GetTypeId() == TYPEID_UNIT) { group_tap = ((Creature*)pVictim)->GetGroupLootRecipient(); // Вставка начинается Отседова :) if(((Creature*)victim)->GetCreatureInfo()->rank == CREATURE_ELITE_WORLDBOSS) { std::ostringstream TmpTextMassage; TmpTextMassage << "Death \"" << victim->GetName() << "[" << victim->getLevel() << "]\""; if (Player *player_tap = killer->GetCharmerOrOwnerPlayerOrPlayerItself()) { if (player_tap->GetTypeId() == TYPEID_PLAYER && player_tap != victim) { TmpTextMassage << " looting by \"" << player_tap->GetName() << "[" << player_tap->getLevel() << "]\" " << player_tap->GetSession()->GetAccountId(); if( Group *pGroup = player_tap->GetGroup() ) { TmpTextMassage << " Asistent: "; for(GroupReference *itr = pGroup->GetFirstMember(); itr != NULL; itr = itr->next()) { Player *pGroupGuy = itr->getSource(); if( pGroupGuy && player_tap->GetName() != pGroupGuy->GetName()) { TmpTextMassage << pGroupGuy->GetName() << "[" << pGroupGuy->getLevel() << "] " << pGroupGuy->GetSession()->GetAccountId() << " "; } } } } TmpTextMassage << " ! Location : X: " << player_tap->GetPositionX() << ", Y: " << player_tap->GetPositionY() << ", Z: " << player_tap->GetPositionZ() << ", MapId: " << player_tap->GetMap()->GetMapName() << " (" << player_tap->GetMapId() << ")"; // Тут была самописная функция записи в мускул (она за собой тянет много строк, поэтому не выкладываю ее тут), можете вписать вывод в файл лог или в саму игру как сообщение } } // Вставка заканчивается тут ! if (Player* recipient = ((Creature*)pVictim)->GetOriginalLootRecipient()) player_tap = recipient; } Последний раз редактировалось Lurker; 15.11.2011 в 18:35. |
Пользователь сказал cпасибо: | wroud (15.11.2011) |
15.11.2011, 18:35 | #15 |
Новичок
Регистрация: 19.10.2010
Сообщений: 21
Сказал(а) спасибо: 4
Поблагодарили 0 раз(а) в 0 сообщениях
|
а sql?
|
15.11.2011, 18:42 | #16 |
Новичок
Регистрация: 08.03.2010
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 7 раз(а) в 6 сообщениях
|
Вот сама пропущенная строка из предыдущего поста :
Код:
sWorld.SendGlobalMessageOnlyGM(3,player_tap,TmpTextMassage.str()); Код:
// Вставка начинается Отседова :) void World::SendGlobalMessageOnlyGM(uint32 type, Player *cheater, std::string msg) { CharacterDatabase.PExecute("INSERT INTO log_cheaters_alert (typeaction,account,player,timeact,message) VALUES ('%u','%u','%s',UNIX_TIMESTAMP(),'%s')", type, cheater->GetSession()->GetAccountId(), cheater->GetName(), msg.c_str()); WorldPacket data; ChatHandler::FillMessageData(&data, NULL, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, NULL, 0, msg.c_str(), NULL); SessionMap::const_iterator itr; for (itr = m_sessions.begin(); itr != m_sessions.end(); ++itr) { if (itr->second && itr->second->GetPlayer() && itr->second->GetPlayer()->IsInWorld() && itr->second->GetPlayer()->isGameMaster()) {itr->second->SendPacket(&data);} } } // Вставка заканчивается тут ! namespace MaNGOS { где-то в файле World.h Код:
void LoadConfigSettings(bool reload = false); // Вставка начинается Отседова :) void SendGlobalMessageOnlyGM(uint32 type, Player *cheater, std::string msg); // Anticheat // Вставка заканчивается тут ! void SendWorldText(int32 string_id, ...); Вот структура базы: Код:
DROP TABLE IF EXISTS `log_cheaters_alert`; CREATE TABLE IF NOT EXISTS `log_cheaters_alert` ( `entry` bigint(20) NOT NULL AUTO_INCREMENT, `typeaction` int(3) NOT NULL default 0, `account` int NOT NULL default 0, `player` varchar(60) NOT NULL default '', `timeact` int NOT NULL DEFAULT '0', `message` text NOT NULL, PRIMARY KEY (`entry`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=33 ; ну вот както так .... вроде ничего не пропустил, должно работать... Кроме занесения записи в таблицу, анонсируется в чат игры ГМ'ам Последний раз редактировалось Lurker; 15.11.2011 в 18:45. |
Пользователь сказал cпасибо: | wroud (15.11.2011) |
15.11.2011, 20:14 | #17 |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
OFFTOPIC
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
Пользователь сказал cпасибо: | Lurker (15.11.2011) |
15.11.2011, 21:48 | #18 |
Новичок
Регистрация: 08.03.2010
Сообщений: 13
Сказал(а) спасибо: 32
Поблагодарили 7 раз(а) в 6 сообщениях
|
Последний раз редактировалось Lurker; 15.11.2011 в 21:50. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[fix] статистика на бг WS | Chipleo | Отвергнутые патчи | 4 | 19.12.2010 14:51 |