Ну немного праздничного говнокода Вот еще говнокодистей include("packets.php"); $arDeleteItems = array(1111, 2222, 3333, 4444); //для удаления группы предметов $arItemsLocs = array( array('pocket','items'), array('equipment','inv'), array('storehouse','items'), ); $mysql = mysql_connect($mysqlconf["host"], $mysqlconf["user"], $mysqlconf["password"]); $selectdb = mysql_select_db($mysqlconf["db"], $mysql); $query = mysql_query("select * from `users`"); while ($array = mysql_fetch_array($query)) { $roles = GetUserRoles($array['ID']); if ($roles == null) continue; foreach ($roles as $role) { $data = GetRoleData($role['ID']); foreach($arItemsLocs as $itemLoc){ foreach ($data[$itemLoc[0]][$itemLoc[1]] as &$value){ if (in_array($value['id'], $arDeleteItems){ $value['id'] = 0; } } unset($value); } PutRoleData($role['ID'], $data); } } Потекла.
Ну немного праздничного говнокода — удаление предмета со всех щелей. В $mysqlconf свои укажи http://mmorpg-devs.ru/threads/Функции-управления-данными-персонажа-через-php.18715/ include("packets.php"); $deleteitem = 1222; $mysql = mysql_connect($mysqlconf["host"], $mysqlconf["user"], $mysqlconf["password"]); $selectdb = mysql_select_db($mysqlconf["db"], $mysql); $query = mysql_query("select * from `users`"); while ($array = mysql_fetch_array($query)) { $roles = GetUserRoles($array['ID']); if ($roles == null) continue; foreach ($roles as $role) { $data = GetRoleData($role['ID']); foreach ($data['pocket']['items'] as &$value) if ($value['id'] == $deleteitem) $value['id'] = 0; unset($value); foreach ($data['equipment']['inv'] as &$value) if ($value['id'] == $deleteitem) $value['id'] = 0; unset($value); foreach ($data['storehouse']['items'] as &$value) if ($value['id'] == $deleteitem) $value['id'] = 0; unset($value); PutRoleData($role['ID'], $data); } } function GetUserRoles($userid) { $GetUserRoles = new WritePacket(); $GetUserRoles -> WriteUInt32(-1); $GetUserRoles -> WriteUInt32($userid); $GetUserRoles -> Pack(0xD49); if (!$GetUserRoles -> Send($host, $port)) return -1; $GetUserRoles_Re = new ReadPacket($GetUserRoles); $GetUserRoles_Re -> ReadPacketInfo(); $GetUserRoles_Re -> ReadUInt32(); $GetUserRoles_Re -> ReadUInt32(); $rolescount = $GetUserRoles_Re -> ReadCUInt32(); for ($i = 0; $i < $rolescount; $i++) { $role['ID'] = $GetUserRoles_Re -> ReadUInt32(); $role['Name'] = $GetUserRoles_Re -> ReadUString(); $roles[] = $role; } return $roles; }
Вот теперь пишет, но не прекращает. Выключил машину. Ctrl + C?
Што за мода пошла у парней делать селфи... Мм какой красаучег У меня монитор сломался или у него JPG последней стадии? UPD: всё, допер, что это ава.
Просто ржач как чел пытается заработать на моём эмуле. http://forum.maindev.ru/threads/emu-perfect-world-2-2.20614/ "Номер релиза" убил [IMG] Сяп джосе (@Joslian) за ссылку. P.S. Вообще это какое-то хайло с морга, только нескольким посонам с морга кидал эмуль. P.P.S. Вообще продажа чужих разработок и выставление как своей — не айс, так что я расстроен :C
Ну.. фраза "wtest" прописанная где-то в текстовой секции (боюсь представить, где именно) еще не включает ничего. Если новичок, то лучше поучить ассемблер для начала Как я вас понял, мой текст не имеет не какой функции и не к чему не привязан. Как это сделать? Я бы рад заняться, да и займусь. Но сейчас праздники, в ближ. 2 недели не смогу. А это реализовать мне надо как можно быстрее. Херней не страдай, закажи у смерта (инта). Он берёт немного — в районе 5к.
Есть два вопроса Вот есть код кнопки <STILLIMAGEBUTTON Name="Btn_Broadcast" x="39" y="2" Width="38" Height="38" SoundEffect="SFX\Interface\ClickB.wav"> <Hint String="^ffcb4aname^ffffff"/> <Text FontName="方正细黑一简体" FontSize="12"/> <Resource> <FrameUpImage FileName="version100500\系xx统\主界面\二级\完美服务【常态】.tga"/> <FrameDownImage FileName="version100500\系xx统\主界面\二级\完美服务【按下】.tga"/> <FrameOnHoverImage FileName="version100500系xx统\主界面\二级\完美服务【高亮】.tga"/> </Resource> </STILLIMAGEBUTTON> Оно вызывает определенное окно, как понять какое? 2 Вопрос. Как сделать свою кнопку, например хочу кнопку которая вызывает окно. Пробывал-не кликабельна. Ищешь в экзешнике какой-то сраный массив в стиле a["ololo"] = 0x9832535; дописываешь в него своё окно - профит.
поиск багов Может хватит? Это уже не смешно.
Интересно, что же не хватает... мозг
Не начинай — я это тяну из дотнета. Там дефолтно for быстрее foreach, в пыхе хз. В пыхе foreach быстрее, чем for :) Да и удобнее P. S. Вычисление размера массива на каждой итерации не ок) Даже в дотнете) Обновил.
#offtop $data['pocket']['items'][$i]['count'] = $data['pocket']['items'][$i]['count'] * 100; Чем не угодил вариант: $data['pocket']['items'][$i]['count'] *= 100; :) Туплю. Поправил. foreach Не начинай — я это тяну из дотнета. Там дефолтно for быстрее foreach, в пыхе хз.
Позволяет клепать скрипты для редактирования любых данных персонажей как пирожки (код становится в три строчки). Внутри комплект: packets.php + packet_class.php Пример (выкинуть все монетки у персонажа (id 1024) из банка): $data = GetRoleData(1024); $data['storehouse']['money'] = 0; PutRoleData(1024, $data); Пример (умножить у персонажа количество единиц вещи (id 1222) на 100): $data = GetRoleData(1024); foreach ($data['pocket']['items'] as &$value) if($value['id'] == 1222) $value['count'] *= 100; PutRoleData(1024, $data); Achtung! Внутри packets.php изменить значения $host и $port на свои. Спасибки принимаю на R886298849911 или Z152378827400
Меня прикалывает когда находится "советчик" и жуёт вату. ТС столкнулся с конкретной проблемой, которую требовалось решить. Причем решение довольно простое. А трещать про мифические байты и фиксы, при этом ссылаясь на спецов, чтоб те за бабло вам клиент переписали. Локо, самому не смешно? Есть конкретный вопрос, так дай конкретный, развернутый, ответ. Либо уйди в тень - если не хочешь делиться инфой. Если она у тебя вообще есть. Теории тут не требуются, ибо в теории можно всё. Ты еще порекомендуй к разрабам обратиться, чтоб за бабло новую версию выслали, со всеми плюшками. Тема исчерпана, фикс автору предоставлен. Всем Удачи. Слышь, тип, ты о чём вообще? Локо сказал, что проблема в экзешнике и предложил ему использовать 106, мы подискутировали на эту тему. Кто кому рассказывал про мифические байты? Ты решил выепнуться на в том месте. [IMG]
[IMG] [IMG] Отлови пакет, найди место в ядре, куда это пляшет, отредактируй его.
Проблема в экзешнике. Но я советую перейти на версию 106. Что от руоффа была. Изменения для этого нужны минимальные. Всего отключение проверки в EXE А потом они будут открывать окно клана и жаловаться, что у них клиент тут же вылетает.
ну вот что не так с кодом книфа? http://govnokod.ru/16774 то есть опровергаешь выражение, работает не трогай, ладно я понял, Ваш вариант того куска кода? Почему-то не заметил сразу. Ну ладно, отвечаю спустя год. Если ты считаешь его код нормальным, убейся об стену.
Знаем трекера как парня какого-то монгола (куда это он делся?). Теперь в любовники оладушек записался — да у вас тут гей пати.
Лойс.
Так понимаю опкод 81(Dec:129), второе 62(Dec: 98 ) неизвестный параметр, возможно тип операции int localsid; какое значение там может быть? [IMG]
Никто и не говорил, что он прекрасный. Не стоит ёрничать. В отличии от тебя, у меня нет высокой самооценки, скорей всего, ты ее приобрел, когда получил ленточку "Программист" Ой да ладно тебе. Диз все равно говно.
Имена участников (разделяйте запятой).