Alexander-mx Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Написал скрипт на бессмертие(http://forum.gamehacklab.ru/topic/1830-far-cry-3/page__pid__12428#entry12428) . Проблема в не заполнененых полосках жизней, хотя бессмертие работает нормально. Как можно это исправить, а то выглядит не красиво. Ссылка на комментарий Поделиться на другие сайты Поделиться
Loner Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 возможно это не максимальное значение жизней...пробуй просто увеличить значение.Или же..(могу и ошибатся)...каждая полоска отвечает "за жизни" определённого участка тела...В какой-то игре это видел...поэтому смею предположить что здесь может быть это Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Надо найти инструкцию на максимальное значение.Скорее всего так но могу ошибаться mov [ecx+10],(float)9999 // Текущее Healthmov [ecx+14],(float)9999 //Максимум Health я просто взял пример смещение 14 Ссылка на комментарий Поделиться на другие сайты Поделиться
Loner Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 исходя и твоего скрипта,вы установили 999 жизней.....а в игре максимум это 150 (осходя из скриптов) товарища kostya555 Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 исходя и твоего скрипта,вы установили 999 жизней.....а в игре максимум это 150 (осходя из скриптов) товарища kostya555Если он найдет максимум, то без разницы какое значение, но Рекомендую не боле трех девяток. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Если он найдет максимум, то без разницы какое значение, но Рекомендую не боле трех девяток.Да можешь хоть 0xFFFFFFFF туда писать, ничего не изменится. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Да можешь хоть 0xFFFFFFFF туда писать, ничего не изменится.И что тут?Чего не изменится, пиши четко. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 И что тут?Чего не изменится, пиши четко.Это намёк на то, что здоровье типа DWORD.Максимальное значение, которое может содержать тип DWORD - 0xFFFFFFFF.Я не понимаю правда, нафига ты пишешь 999 или 9999 ведь в этом нет смысла, потому что у персонажа есть параметр максимальное здоровье, и разумнее писать это значение.Но я решил пойти по твоей тактике, и писать 0xFFFFFFFF) Ссылка на комментарий Поделиться на другие сайты Поделиться
Alexander-mx Опубликовано 1 декабря, 2012 Автор Поделиться Опубликовано 1 декабря, 2012 А какая вообще разница кто какое значение пишет, если должно быть максимальное оно и будет максимальное хоть 999999 пропиши. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Этой игры у меня нет и какой тип хранится без понятие, ничего немогу сказать пишу по факту как пишут пользователи, и что тут сказать, я предложил пользователю что как, а так пусть он сам решаеть писать или нет.Я не понимаю правда, нафига ты пишешь 999 или 9999 ведь в этом нет смысла, потому что у персонажа есть параметр максимальное здоровье, и разумнее писать это значение.Но максимальное здоровье можно увиличить насколько надо.У героя максимальное значение в игре допустим 250, ну это естественно можно делать 999 ,и почти три раза больше запаса здоровье.Как я писал пост3mov [ecx+10],(float)9999 // Текущее Health mov [ecx+14],(float)9999 //Максимум Health вот оно прибавляем максимум к здоровье. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Этой игры у меня нет и какой тип хранится без понятие, ничего немогу сказать пишу по факту как пишут пользователи, и что тут сказать, я предложил пользователю что как, а так пусть он сам решаеть писать или нет. Но максимальное здоровье можно увиличить насколько надо. У героя максимальное значение в игре допустим 250, ну это естественно можно делать 999 ,и почти три раза больше запаса здоровье. Как я писал пост3 mov [ecx+10],(float)9999 // Текущее Health mov [ecx+14],(float)9999 //Максимум Health вот оно прибавляем максимум к здоровье. Вот про тип ты сказал зря.ecx у нас что? 4-х байтовый регистр. Значит значение типа DWORD. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 1 декабря, 2012 Поделиться Опубликовано 1 декабря, 2012 Вот про тип ты сказал зря.ecx у нас что? 4-х байтовый регистр. Значит значение типа DWORD.Если честно я не знал. Ссылка на комментарий Поделиться на другие сайты Поделиться
keng Опубликовано 2 декабря, 2012 Поделиться Опубликовано 2 декабря, 2012 Я каэш извиняюсь, что вклиниваюсь в разговор, но намного более надёжный вариант - отключить нанесение урона, нежели выдать 100500 жизней или здоровья. Никогда не понимал конструкций вида "mov [eax+0x24],999999999", потому что с моей точки зрения код игры сходит с ума, забивается в угол и начинает плакать от такого. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 2 декабря, 2012 Поделиться Опубликовано 2 декабря, 2012 Я каэш извиняюсь, что вклиниваюсь в разговор, но намного более надёжный вариант - отключить нанесение урона, нежели выдать 100500 жизней или здоровья. Никогда не понимал конструкций вида "mov [eax+0x24],999999999", потому что с моей точки зрения код игры сходит с ума, забивается в угол и начинает плакать от такого. Ну конеч.. девять девяток это перебор Были предложение максимум 999, с моей стороне .В других ресурсах пишут что хватает и 100.newmem:mov [ecx+10],(float)100 Ссылка на комментарий Поделиться на другие сайты Поделиться
Grom-Skynet Опубликовано 2 декабря, 2012 Поделиться Опубликовано 2 декабря, 2012 вот твой скрипт.... малость изменил я его... на смещении 14 хранится максимум здоровья в тот или иной момент....[ENABLE]alloc(newmem,2048)label(returnhere)newmem:push [ecx+14]pop [ecx+10]comiss xmm0,[ecx+10]jb FC3_d3d11.RunGame+6347D5jmp returnhere"FC3_d3d11.dll"+6394A9:jmp newmemnopreturnhere:[DISABLE]"FC3_d3d11.dll"+6394A9:comiss xmm0,[ecx+10]jb FC3_d3d11.RunGame+6347D5dealloc(newmem) Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 2 декабря, 2012 Поделиться Опубликовано 2 декабря, 2012 ecx у нас что? 4-х байтовый регистр. Значит значение типа DWORD. Кодер, ты не прав в своем выводе. В четырехбайтном регистре может и флоат значение храниться, это так, если что. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 2 декабря, 2012 Поделиться Опубликовано 2 декабря, 2012 Кодер, ты не прав в своем выводе. В четырехбайтном регистре может и флоат значение храниться, это так, если что.И тем не менее это двойное слово.Double Word, float кстати можно также хранить и в DWORD.Ну не буду вдаваться в подробности. Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 4 декабря, 2012 Поделиться Опубликовано 4 декабря, 2012 Самое большое в игре 150 во (float),если не открывать ячейки опыта,а если их открыть то максимум 300 будет,только не понять почем 4 жёлтые, а в 4 белые, но он бессмертен хоть откуда падай даже не запнется.... под 9dx[ENABLE]alloc(newmem,2048)label(returnhere)label(originalcode)label(exit)newmem:mov [ecx+10],(float)300originalcode:comiss xmm0,[ecx+10]jb FC3.RunGame+626758exit:jmp returnhere"FC3.dll"+62B699:jmp newmemnopreturnhere:[DISABLE]dealloc(newmem)"FC3.dll"+62B699:comiss xmm0,[ecx+10]jb FC3.RunGame+626758 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 5 декабря, 2012 Поделиться Опубликовано 5 декабря, 2012 (изменено) Тэг "code" ещё никто не отменял.Скрипты выкладываем в этой теме.P.S. Смотри мой пост, там без всякого выделения памяти// Coder Изменено 6 декабря, 2012 пользователем Coder Используй тэг "code" и смотри мой пост. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения