-
Постов
289 -
Зарегистрирован
-
Победитель дней
22
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные srg91
-
-
40 минут назад, partoftheworlD сказал:
По мне, так это какие-то жесткие и не здоровые извращения.?
А давайте ещё в один цикл ?А, не увидел что подобное решение уже есть (но кажется у меня получилось чуть лаконичнее)Спойлер#include <iostream> int main() { unsigned int height = 20, width = height * 2 - 1; unsigned char space = ' ', letter = 'X'; for (unsigned int i = 1; i <= width * height; i++) { std::cout << ((i % width <= width - (i / width) * 2) ? space : letter); if (!(i % width)) std::cout << std::endl; } return 0; }
СпойлерX XXX XXXXX XXXXXXX XXXXXXXXX XXXXXXXXXXX XXXXXXXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
43 минуты назад, Antonshka сказал:Но за совет спасибо.
После каждой темы ещё дополнительно тестовое задание с проверкой автоматической системой и в конце - курсовой.
- 1
-
29 минут назад, Antonshka сказал:
P.S. Написать без использования string() смог бы?
Очень странно писать на C++ и не использовать std::string Это больше в алгоритмы тогда.
Очень советую начинать с вот этого прекрасного курса, ребята рассказывают вполне современный C++: https://www.coursera.org/specializations/c-plus-plus-modern-development
А дальше время и cppreference.com.
-
3 часа назад, Xipho сказал:
Но если этот поток нужно отдавать куда-то еще, например, в скайп, тогда да, устройство виртуальное нужно.
Ну в общем я скачал демку SoundPad'a, при установке он сказал что нашаманил над аудиоустройствами и попросил перезагрузиться.
И он реально не использует отдельное устройство, а просто как будто бы бубнит в выбранный микрофон за тебя. В целом похожим образом работает изменение голоса в наушниках. Даже не знаю, может ли так WASAPI ?
-
4 часа назад, MEDBEDb сказал:
Я имел ввиду в звуковых устройствах,
В целом тебе @Xipho довольно сильно подсказал, когда назвал слово loopback. По нему отлично находятся нужные статьи:
https://docs.microsoft.com/en-us/windows/desktop/CoreAudio/core-audio-apis-in-windows-vista
https://docs.microsoft.com/en-us/windows/desktop/CoreAudio/loopback-recording
И там есть ссылки на примеры, они сейчас вынесены из Windows SDK, лежат вот тут: https://github.com/Microsoft/Windows-classic-samples/tree/master/Samples/Win7Samples/multimedia/audio
У меня с пинка получилось только перенаправить звук с дефолтного аудио-устройства в wav-файл. Нужно разбираться, нужно ли создавать своё устройство под микрофон, в которое писать или всё же можно писать в стандартное.
В общем вот тебе ссылки - это реально то, что нужно. Но нужно поковырять, с пол-пинка сложно разобраться. Напиши, обязательно, что получится, очень интересно
- 1
-
1 час назад, Ярослав сказал:
фото вот как этом модулём зашифровать сигнатуры ?
На фото ничего не разглядеть, приложи, пожалуйста, нормального размера.
Спойлер -
Попробую на выходных посмотреть, получится ли сделать универсальную таблицу ?
-
10 минут назад, Alex2411 сказал:
хотел спросить . как можно узнать по игре в какой версии рпг макер она сделана ?
Я обычно смотрю на размер персонажей. Раньше было просто - если он две клетки в высоту (нормальный рост), то скорее всего это RPG Maker XP.
Если маленький размером с одну клетку, то скорее всего VX.
Ещё можно посмотреть, что за библиотека используется (например рядом с этой игрой лежи RGSS102E.dll) и по ней выйти на версию (мб через поиск как-то).
Но конкретно её не узнавал никогда, поэтому не могу сейчас точно сказать.
-
Только что, Alex2411 сказал:
на много лучше и проще
Я даже не знаю, что может быть проще команды "Дай мне 10 000 золота" ? Но тут нужно чуть-чуть поработать, да.
Ну, в любом случае у тебя теперь есть скрипт на золото )
-
Если вы вдруг ищете простые пути, то моя статья всё так же работает
Скрипт:
Спойлер[ENABLE] globalalloc(run_script, 64) globalalloc(text, 1024) text: db '$game_party.gain_gold(10000)' run_script: push text call RGSSEval pop eax ret createthread(run_script) [DISABLE] dealloc(run_script) unregistersymbol(run_script) dealloc(text) unregistersymbol(text)
- 1
-
Вечером попробую посмотреть глобальные переменные, может золото простейшим Gold += 10 можно будет поднять
-
О, RPG Maker.
Можно попробовать ломать вот так (правда это не очень красиво и при сохранении может сломаться игра):
Спойлер
И да, конечно тысячи адресов, это же виртуальная машина с Ruby на борту. -
Круто!
Я просто чуть-чуть добавлю, для улучшения стилистики кода на будущее.
Вместо классов с публичным модификатором доступа (class + public:) можно использовать struct:
Спойлерstruct Vector3 { float x; float y; float z; };
struct - тот же класс, только он public по умолчанию
Очень советую больше использовать auto, тогда многие вещи превращаются в лаконичное:
Спойлерauto Entity = reinterpret_cast<LocalPlayer*>(TemporaryObject);
auto pPlayer = reinterpret_cast<LocalPlayer*>(player);
auto i = EntityList.find(TemporaryObject);
Простые структуры прекрасно инициализируются:
СпойлерVector3 entityPos = { TempEntity->pPosition->pos_x, TempEntity->pPosition->pos_y, TempEntity->pPosition->pox_z };
Да и переменные в структуре можно указать в одну строку:
Спойлерstruct Vector3 { float x, y, z; };
Писать class в таких местах не обязательно:
Спойлерstruct Actors { char pad_0000[64]; //0x0000 LocalPlayer* pLocalPlayer; //0x0040 }; //Size: 0x0044
И не используйте в C++ C-подобные приведения типов (как (float)1), как минимум можно записать это как 1.
Если где-то ошибся, пишите, пожалуйста
-
Дополняю эти страшные слова: используй просто char c; вместо char *c;
Плюс если ты хочешь указать один единственный символ - используются одинарные кавычки: if (c == '+')
Вместо system("pause"); лучше использовать cin.ignore();
- 1
-
38 минут назад, Senpai сказал:
Мб не по теме, но у мну какая-то ошибка при попытке зайти в дискорд
Данному пользователю ограничен доступ в Дискорд в связи с предыдущими заслугами перед форумом.
-
-
7 часов назад, Xipho сказал:
wglGetCurrentContext пробовал?
Поддерживаю.
В OGLHook делал именно так: после хука glSwapBuffers сохранял текущий контекст через wglGetCurrentContext, после создавал новый через wglCreateContext, переключался на новый через wglMakeCurrent, рисовал всё что нужно и возвращал старый через wglMakeCurrent.
Главное помнить, что если работать в отдельном потоке - нужно создавать контекст и на него. Я так создавал поток, в котором грузил текстуры параллельно с выполнением основного кода, но пришлось сращивать контексты через wglShareLists.
- 1
-
-
Отключил старый виджет кода. Старые блоки кода редактируются как и раньше, но создать их больше нельзя.
О проблемах, пожалуйста, сообщайте. Но судя по тому, что за почти год не было жалоб, то проблем не должно быть.
Для точного применения изменений поможет сброс кеша браузера.
Визуальные изменения:
- 1
-
1 минуту назад, partoftheworlD сказал:
Я хочу понять как виртуалка инициализируется, потому что в игре есть много строк, но в итоге найти вызов где начинает выполнение виртуалка не могу из-за цикличности, будто бы попал внутрь интерпретатора. Луа модулей не подгружается, в импорте тоже ничего нет от чего можно было оттолкнуться.
спасибо за разъяснение, с такой магией вообще не сталкивался, поэтому отчаливаю
-
Я мимо крокодил, потому что плаваю в этой тебе (сам почти не занимался таким), но попробую начать обсуждение.
Ты хочешь просто создать отдельный lua-state и работать в нем или всё же использовать уже существующий?
Потому что если хочешь использовать уже существующий, то самое главное - это найти уже существующий state (обычная структурка, если не ошибаюсь), а дальше просто передавать её в вызовы сишных lua-функций. В целом есть дока: https://www.lua.org/manual/5.3/manual.html#4
Но я бы еще порекоммендовал посмотреть код cheat-engine и его работы с lua, потому что это нагляднее
-
Я проверил, логин привязан правильный. Я так понимаю проблемы залогиниться в сам Discord.
Мы тут боюсь не сильно поможем, действуй как написали выше - попробуй залогиниться на https://discordapp.com/login
-
Прошу без оффтопа в теме.
-
26 минут назад, Kamcatka сказал:
asm топ это что ? Канал? Язык? Сайт? Форум?
Ассемблер.
Если со знаками препинания - "asm - топ, его с головой хватает для всего".
-
1 минуту назад, nedix сказал:
Можно спросить, почему в том коде нет "aobscanmodule()"?
А зачем? Это обучение вызыва функций, а не туториал по всему cheat engine.
Научишься применять createthread, потом научишься применять aobscanmodule где-нибудь еще.
С++ задание
in Общение
Опубликовано
Да, забавно, я и не заметил. Но похоже лучше уже не сделаю, я очень плох в алгоритмике )