mumut
-
Постов
86 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные mumut
-
-
7 минут назад, Senpai сказал:
Те же самые?
Да. Если честно я думаю что надо сделать скрипт на 1 и 3 инструкции но вот что делать в инструкциях я не знаю.
-
22 минуты назад, Senpai сказал:
а если занопить, сдвинуть камеру, а потом разнопить?
Камера возвращается в обратное состояние.
23 минуты назад, Senpai сказал:Там одна инструкция, которая пишет в адрес с углом поворота ?
К этому адресу обращается 3 инструкции которые на скриншоте. Да там одна инструкция которая пишет в адрес.
-
2 часа назад, Senpai сказал:
Ставишь на адрес бряк на запись. Там будут инструкции. Смотришь, куда они пишут. Если есть такая, которая пишет только в нужный адрес, то всё гуд. Нопишь её и поехал дальше.
Есть но если занопить то все не гуд потому что камера перестает двигаться.
-
В Borderlands 2 при изменении поворота камеры она становится обратно. К примеру поворот камеры был -100 я изменил на 0 а она обратно на -100. К повороту камеры обращаются 3 инструкции. При занопливании только 1 или 3 камера перестает поворачивается а при занопливании только 2 ничего не происходит. Как изменить инструкцию так что бы при изменении поворота камеры, камера не становилась обратно а думала что она так и находилась. К примеру поворот камеры был -100 я изменил на 50 и игра думала что она так и стояла. Но после изменения поворота камеры чтоб можно поворачивать камеру как и всегда.
P.S. Если вы захотите помочь то вот: Borderlands2.CT
-
10 часов назад, Senpai сказал:12 часов назад, mumut сказал:
angles[0] = (float)(asinf(delta[2] / hyp) * 5215.5f); // как я понял это значение записывается в Y поворот "16385/3.14"
angles[1] = (float)(atanf(delta[1] / delta[0]) * 10427.8f); // а это значение записывается в X поворот "32750/3.14"То есть в angles[0] и angles[1] значение которое надо добавить в текущему повороту а не записать в поворот камеры или нет ?
Прости что спросил просто я уже поплыл с этим аимботом.
-
26 минут назад, Senpai сказал:
Читаешь 4 байта, переводишь в float, делаешь вычисления ,а потом переводишь обратно и записываешь 4 байта.
angles[0] = (float)(asinf(delta[2] / hyp) * 5215.5f); // как я понял это значение записывается в Y поворот "16385/3.14"
angles[1] = (float)(atanf(delta[1] / delta[0]) * 10427.8f); // а это значение записывается в X поворот "32750/3.14"То есть в angles[0] и angles[1] значение которое надо добавить в текущему повороту а не записать в поворот камеры или нет ?
-
3 минуты назад, Senpai сказал:
Я про углы говорю. Читаешь 4 байта
Самое интересное что в проекте нет строчки прочтения поворота камеры.
Ну ты понял ;D
-
16 минут назад, Senpai сказал:
(читать тоже надо, как 4 байта)
Что читать ? координаты в типе float а поворот в типе 4 байта.
-
3 минуты назад, Senpai сказал:
везде должно быть 10427.8f
А почему, просто же диапазон Y равен от -16385 до +16385. Да даже когда я ставил 10427.8f ничего не изменялось вообще.
-
2 минуты назад, Garik66 сказал:
тебе нужно сначала рассчитать углы в радианах
Так я не могу понять как найти и рассчитать этот самый угол на который надо повернуть камеру.
5 минут назад, Garik66 сказал:При этом рассчитываешь во float
Да но потом я перевожу в 4 байта. Если бы я не переводил то скорее всего у меня прицел поворачивал в какую то не понятную сторону а у меня не поворачивает только по Y координате
-
20 часов назад, Senpai сказал:
Возьмём число из игры
Можешь помочь решить мою проблему. Она состоит в том что камера не поворачивается по Y. По твоей формуле я
сделалчучуть поменял функцию вот так:Спойлерvoid CalcAngle_Test(float *myCoords, float * enCoords, float *angles) { float delta[3] = { (myCoords[0] - enCoords[0]), (myCoords[1] - enCoords[1]), (myCoords[2] - enCoords[2]) }; float hyp = sqrt(delta[0] * delta[0] + delta[1] * delta[1]); angles[0] = (float)(asinf(delta[2] / hyp) * 5215.5f); // как я понял это значение записывается в Y поворот "16385/3.14" angles[1] = (float)(atanf(delta[1] / delta[0]) * 10427.8f); // а это значение записывается в X поворот "32750/3.14" if (delta[0] >= 0.0) { angles[1] += 32760.0f; } }
-
10 часов назад, Garik66 сказал:
Вопрос эти значения игровые?
Да, это диапазон поворота камеры "от -32750 до +32750" это по X а это по Y "от -16385 до +16385"
-
4 часа назад, Senpai сказал:
Не думаю, что будет что-то подходящее. Тут лучше самому подумать. Вот 32750 это π . тогда 32750/π мы получаем какое-то число . если на него поделить число из игры, то получим значение в радианах
Если 32750 это число пи тогда зачем 32750 делить на 32750 ?
-
2 часа назад, Senpai сказал:
Может, why not?
Можно у тебя еще кое что узнать а точнее про эту функцию:
Спойлерfloat Get3dDistance(float myCoordsX, float myCoordsY, float myCoordsZ, float enCoordsX, float enCoordsY, float enCoordsZ) { return sqrt(pow(double(enCoordsX - myCoordsX), 2.0) + pow(double(enCoordsY - myCoordsY), 2.0) + pow(double(enCoordsZ - myCoordsZ), 2.0)); }
-
Только что, Senpai сказал:
А зачем переводить в градусы, а потом в радианы, если можно сразу в радианы, ну ,в принципе, делай как хош
Нет это как пример может ли такое сработать или лучше проверить и узнать.
-
15 минут назад, Senpai сказал:
то получим значение в радианах
А можно ли сделать так:
- Получить текущий поворот камеры
- Поделить на максимальный поворот камеры
- Умножить на 180
- Проверить если значение меньше 0 то прибавить 360
- По формуле преобразовать из градусов в радианы
- Прибавить к нашему значению значение из математической магии
- По формуле преобразовать из радианов в градусы
- Проверить если значение больше 0 то отнять 360
- Поделить на 180
- Умножить на максимальный поворот камеры
- Записать в поворот камеры
Или получится какая то кашица ?
-
1 минуту назад, Senpai сказал:
Хз, по какой-то формуле, мейби
Спасибо за помощь я посмотрю какие есть формулы связаны с радианом
-
3 минуты назад, Senpai сказал:
а потом из радиан в значения из игры
Окей допустим я преобразовал значения из игры в радианы а как мне обратно преобразовать в значения из игры ?
-
5 минут назад, Senpai сказал:
А вот как думаешь
То есть мне надо прочитать угол поворота преобразовать в 360 градусов прибавить полученное значение из математической магии и обратно преобразовать в значение исходного типа. Если да то у меня вопрос по поводу как преобразовать обратно.
-
У меня такой вопрос, я правильно предполагаю что мне надо сначала преобразовать поворот камеры в 360 градусов а только потом записывать значение или нет ?
-
-
3 часа назад, Senpai сказал:
И распиши, что не так с аим ботом.
Сначала он не записывал в адрес "поворот камеры" но я это исправил. Теперь он поворачивает но не туда куда нужно примерно в диапазоне от нуля до ста по X и Y координате когда максимальный поворот камеры по X составляет примерно "от -32750 до +32750" а по Y "от -16385 до +16385". Я предполагаю что за почти всю математическую магию
отвечает эта функция.
Спойлерvoid CalcAngle_Test(float *src, float * dst, float *angles) { double delta[3] = { (src[0] - dst[0]), (src[1] - dst[1]), (src[2] - dst[2]) }; double hyp = sqrt(delta[0] * delta[0] + delta[1] * delta[1]); angles[0] = (float)(asinf(delta[2] / hyp) * 57.295779513082f); angles[1] = (float)(atanf(delta[1] / delta[0]) * 57.295779513082f); angles[2] = (float)0; if (delta[0] >= 0.0) { angles[1] += 180.0f; } }
Но я не могу понять что делает вторая, третья, и четвертая строчка если можно то объясните.
-
2 часа назад, Senpai сказал:
А что не так? Аим там какого типа? Fov или шо?
По идеи как я понял мы получаем координаты игрока и врага делаем математическую магию и ложем в поворот камеры. А какого типа такой аимбот я не знаю.
-
6 часов назад, Senpai сказал:
Попробуй вывести сначала просто координаты игроков в консоли или куда-то ещё
Вывести на консоль у меня получается и игрока и противников
7 часов назад, JustHack сказал:чтобы за тебя сделали.
Я не прошу сделать за меня я прошу указать на ошибку из за которой проект не работает так как надо
[Borderlands 2] Поворот камеры
in Вопросы по созданию читов в одиночных играх
Опубликовано
Ты думаешь что я нашел что то типа экранного значения ?