Столкнулся с такой проблемой , нашел в игре указатель но он не постоянен и каждый раз при переходе в локацию он меняется самопроизвольно и становиться не валидным , и так же наоборот через некоторое время становиться валидным. Пошарил на всемирной паутине но ни чего подобное не нашел и близко. Кто знает как решить такую делему буду рад помощи.
А в чем проблема-то?
По такому описанию можно придумать очень много вариантов:
0) Ты нашел область памяти, в которой появляются +- случайные значения. Иногда адекватные указатели
1) Ты нашел неправильную последовательность указателей (где-то в другом месте он обитает статично)
2) Объект, на который "указывает" указатель создается динамически и используется только в некоторые моменты. При этом не всегда очищается (при смене локации он, например, очищается всегда)
3) Последний указатель является частью динамического массива, который по какой-либо причине выполнен в таком ключе, что удаление элемента приводит к смещению указателей
4) То, что ты нашел обозначает не то, что ты думаешь ;) соответственно, значение там не пропадает, а просто корректно меняется, или корректно очищается
5) Матрица пытается обмануть тебя и указатель верен, но ты видишь будто бы это не так :)
А в чем проблема-то?
По такому описанию можно придумать очень много вариантов:
0) Ты нашел область памяти, в которой появляются +- случайные значения. Иногда адекватные указатели
1) Ты нашел неправильную последовательность указателей (где-то в другом месте он обитает статично)
2) Объект, на который "указывает" указатель создается динамически и используется только в некоторые моменты. При этом не всегда очищается (при смене локации он, например, очищается всегда)
3) Последний указатель является частью динамического массива, который по какой-либо причине выполнен в таком ключе, что удаление элемента приводит к смещению указателей
4) То, что ты нашел обозначает не то, что ты думаешь ;) соответственно, значение там не пропадает, а просто корректно меняется, или корректно очищается
5) Матрица пытается обмануть тебя и указатель верен, но ты видишь будто бы это не так :)
почему то мне кажется что он вообще нашел одноуровневый указатель. конкретики в его посте нет и тут можно гадать до посинения.
А в чем проблема-то?
По такому описанию можно придумать очень много вариантов:
0) Ты нашел область памяти, в которой появляются +- случайные значения. Иногда адекватные указатели
1) Ты нашел неправильную последовательность указателей (где-то в другом месте он обитает статично)
2) Объект, на который "указывает" указатель создается динамически и используется только в некоторые моменты. При этом не всегда очищается (при смене локации он, например, очищается всегда)
3) Последний указатель является частью динамического массива, который по какой-либо причине выполнен в таком ключе, что удаление элемента приводит к смещению указателей
4) То, что ты нашел обозначает не то, что ты думаешь ;) соответственно, значение там не пропадает, а просто корректно меняется, или корректно очищается
5) Матрица пытается обмануть тебя и указатель верен, но ты видишь будто бы это не так :)
Мысль очень интересна из твоих вариантов я склоняюсь к номер 2 или 3. Используя авто-поиск было найдено более миллиона указателей после правильного отсева сократилось до 100-и , но как ни странно после еще одного отсева указателей не осталось. Делема заключается в том что указателей много и в какой то момент они все являются валидными , но к примеру после смерти персонажа или при смене локации или просто со временем валидность пропадает. Возникает вопрос , а вообще есть ли валидный указатель на адрес в моём случаи , или этого указателя вообще не существует при таком алгаритме работы данного массива.
Добавлено через 4 минуты
Цитата:
Сообщение от Тигрь
почему то мне кажется что он вообще нашел одноуровневый указатель. конкретики в его посте нет и тут можно гадать до посинения.
А можно поточнее что вы считаете одноуровневыми указателями.....в моем случаи указатели были и с одним смещением и с двумя и с тремя и с четырмя....ах да и еще с пятью смещениями , думаю одноуровневыми их не назовешь. Гадать тут не нужно если кто сталкивался с таковым случаем то знает как это решается , я пока просто упростил поиск данного адреса , но находить его постоянно после смерти или после загрузки локации довольна нудно. Вот и подумал может тут кто то с подобным сталкивался.
Последний раз редактировалось Animechnik; 29.06.2015 в 18:16.
Причина: Добавлено сообщение
Мысль очень интересна из твоих вариантов я склоняюсь к номер 2 или 3. Используя авто-поиск было найдено более миллиона указателей после правильного отсева сократилось до 100-и , но как ни странно после еще одного отсева указателей не осталось. Делема заключается в том что указателей много и в какой то момент они все являются валидными , но к примеру после смерти персонажа или при смене локации или просто со временем валидность пропадает. Возникает вопрос , а вообще есть ли валидный указатель на адрес в моём случаи , или этого указателя вообще не существует при таком алгаритме работы данного массива.
Добавлено через 4 минуты
А можно поточнее что вы считаете одноуровневыми указателями.....в моем случаи указатели были и с одним смещением и с двумя и с тремя и с четырмя....ах да и еще с пятью смещениями , думаю одноуровневыми их не назовешь. Гадать тут не нужно если кто сталкивался с таковым случаем то знает как это решается , я пока просто упростил поиск данного адреса , но находить его постоянно после смерти или после загрузки локации довольна нудно. Вот и подумал может тут кто то с подобным сталкивался.
Как ни странно, радар.
Тоже ищу указатели для применяемых способностей монстрами - индикатор "красных глаз" но каждый раз разные структуры, в которых как будто свалка мусора.