Задать вопрос
  • Не запускается vbs в реестре, как исправить?

    saboteur_kiev
    @saboteur_kiev
    А просто .vbs файлы из проводника у вас запускаются?
  • Запретить подключаться к порту через прокси?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    Александр Ануфриев: Очень просто. Берите список бесплатных адресов с proxy-fresh.ru/proxy и забаньте их всех, тем более что их там немного.
  • Помощь в составлении плана для быстрого изучения wp?

    saboteur_kiev
    @saboteur_kiev
    Александр: Если вы пробовали кого-либо самостоятельно научить чему-нибудь с нуля, вы очень удивитесь тому, что это непросто, и занимает не 5-10 минут.
    Никто ж не знает, что вам нужно учить. Может надо с азов того, что такое http и байт, может надо с того, что такое цикл и ветвление, может надо с того, что такое запрос, и что такое сертификат.
    Только перечисление тем (именно основных тем, а не дополнительных), которые необходимо знать для создания многофункционального интернет-магазина, займет больше 5-10 минут. А вы хотите аккуратненький план.

    Я постараюсь еще раз посоветовать освоить сперва простой уровень, а потом составлять план более сложного, когда у вас в голове начнет укладываться база. На текущем этапе уточнение и детализация что учить, чтобы не учить все - это ненужная затея.
  • Помощь в составлении плана для быстрого изучения wp?

    saboteur_kiev
    @saboteur_kiev
    longclaps: Без навыка гугления, не получится выучить ничего. Вопрос как научиться делать на WP многофункциональные магазины - прям вот возьми и расскажи какой плагин поставить чтобы все заработало - так же не будет. Все меняется, через полгода какой-то плагин перестанет развиваться, а какой-то новый появится.
    Человеку нужно понять, что нельзя составить план как развиться с нуля до сеньора. Нужно развиться до джуниора, потом уже с навыками джуниора составлять план до мида, потом уже развившись до мида, составлять план дальше.
  • Какую ОС накатить на домашний сервер?

    saboteur_kiev
    @saboteur_kiev
    ОС берется под задачи, а они нам неизвестны. Если софт под ваши задачи есть под просто убунту - ставьте просто убунту. Если он есть под LTS - ставьте LTS.
  • Как выйти из режима интернет-кисока?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    Позовите сисадмина.
  • Могу ли я развернуть приложение в Azure если при регистрации требуется указать Имя, Фамилию и Email?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    Pamir: Они все являются персональными данными.
    Вы некорректно пользуетесь терминологией. Персональные данные бывают разные и требуют разного отношения.
    Например, возможность 100% идентифицировать по ним человека просто дополнительно накладывает на вас определенные обязательства.
  • Как правильнее изучить ассемблер(дизассемблер) для написания бота(ММО)?

    saboteur_kiev
    @saboteur_kiev
    old_mamont: Вы понимаете что именно говорит человек на видео?

    Человек знает про программирование очень много, а не пару команд в ассемблере.

    Например, он не ставит брейкпоинт в рандомную EAX команду ассемблера, он говорит что мы используем winsock, это библиотека в windows, и мы ставим брейкпоинт на вызов конкретной функции, например клик мышки, после чего ставит брейкпоинт и несколько раз кликает мышкой, чтобы попасть в нужное место в коде, в котором после клика на определенного персонажа появляется функция разговора с ним.

    Отловив в коде этот момент, он начинает восстанавливать функциюи какие параметры она передает, чтобы потом сделать подобную функцию отдельно от клиента.
    Обратите внимание, что синтаксис функции у него в блокноте от языка C, а не ассемблера.

    Зная где находится в коде функция, и в каком файле она лежит (engine.dll), он может попытаться ее заинжектить в своем внедренном коде, и например выполнить уже не тем способом который предлагает клиент (подойти к персонажу и кликнуть на него на экране), а просто нажать кнопку в менюшке, причем даже не поворачиваясь к персонажу экраном (сервер не проверяет куда вы смотрите, он проверяет на каком расстоянии вы от персонажа, когда ему приходит пакет "игрок в диалоге с персонажем x вызвал меню y).
    То есть все, что делает функция - создает сетевой пакет и отправляет на сервер. Если такой пакет отправить другим способом, или вызвать функцию другим способом - можно проще автоматизировать процесс.

    Но малости знаний тут совсем недостаточно. Тут как раз перечислено все, что я выше описывал - умение программировать на каком-то языке программирования, в данном случае на С/С++ чтобы писать свою dll, которую будете подставлять вместо/вместе с оригинальной. Иметь представление о структуре данных и процессе компиляции (обратите внимание, что он легко понимает сколько параметров нужно функции и какой у них размер). Иметь знание о библиотеках целевой платформы - в данном случае windows, тот же winsock это стандартная сетевая библиотека.
  • Как правильнее изучить ассемблер(дизассемблер) для написания бота(ММО)?

    saboteur_kiev
    @saboteur_kiev
    Да, почитайте про dll injection - для этого не нужно пользоваться именно ассемблером. Можно пользоваться нормальными языками выского уровня.
  • Как правильнее изучить ассемблер(дизассемблер) для написания бота(ММО)?

    saboteur_kiev
    @saboteur_kiev
    old_mamont: ollydbg это просто отладчик, который позволяет просмотреть текущий процесс в памяти.

    Нужно понимать, что неважно, на чем была написана программа, в памяти будут уже машинный код (который можно дизассемблить в получитабельный ассемблер), но еще нужно учитывать платформу и архитектуру приложения.

    То есть, понимать то, что вам покажет ollydbg - нужно учить ассемблер с приложением к целевой платформе (например знать windows API).

    С другой стороны, мобы - это не mov, jpz, eax. Мобы и другие объекты - это данные, котороые хранятся не в виде языка программирования, а в виде байт и структур. Неважно на каком языке их обрабатывать, важно понять в каком виде они там лежат. Для MMO игр, было бы удобнее лазить не в память, а перехыватывать и разбирать сетевые пакеты.

    Чтобы хорошо взламывать игры, хорошо сперва научиться их писать. Хотя бы базовые навыки программирования, понимание процесса компиляции, понимание сетевого траффика, понимание хранения разных типов данных в памяти ( байт, слово, массив, структура).

    А то, складывается впечатление, что вы не очень правильно понимаете значение слова бот.
  • Какой выбрать язык программирования новичку?

    saboteur_kiev
    @saboteur_kiev
    DiaTM: Если вы хотите почитать основы языка программирования и сразу выполнять работу за деньги, то быстрее устроиться в макдональдс. Если вы чего-то не понимаете - это нужно изучать, и в программировании, прежде чем сделать что-либо, что снаружи кажется простым, изучать нужно ОЧЕНЬ много и обычно долго и через боль.
  • Как обоснование причину необходимости в прохождении курса?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    Скорее всего вам такой курс для выполнения рабочих обязанностей не нужен, и руководство не желает тратить денег. В первую очередь пример служебки уточните у того, кто требует бумажку.
  • Как создать zip-архив через командную строку?

    saboteur_kiev
    @saboteur_kiev
    сперва добейтесь, чтобы в командной строке успешно выполнялась команда
    zip
  • Как декодировать Base64 (RFC 2045)?

    saboteur_kiev
    @saboteur_kiev
    Дмитрий: а ну да. из первых 64 символов ascII почти треть нечитаемые, поэтому и таблица )
  • Как лучше организовать хранение игрового инвентаря в базе данных?

    saboteur_kiev
    @saboteur_kiev
    fortael: Тут другой момент, что у вас за проект. Поскольку если идет про веб-проект, где каждый http-запрос должен бегать в базу за предметами - это одно. В MMORPG база периодически обновляется, но не каждый клик, в основном все в памяти.
    Например предметы, у которых нет овнера-игрока/кланового хранилища, в базу не сохраняются совсем - для них нет позиции, и при ребуте сервера пропадают.

    В текстовом MUD, который я писал в 90-е, делалось проще - все хранится в памяти.
    Раз в xx минут все данные игроков сохраняются в базу.
    Чтобы данные были консистентными, и не было большой нагрузки - если игрок совершал любые действия, связанные с предметами, он "помечался", и при сохранении сохранялись данны всех помеченных игроков с их предметами, и метка снималась. Это позволяло сохранять не все, а только изменения.
    Но вообще, смотрите не по количеству записей, а сделайте перфоманс тест.
  • Игровая КОНСОЛЬ. Получение лога по ркону?

    saboteur_kiev
    @saboteur_kiev
    можно. Любой клиент, который ведет лог в файл вам поможет, вроде ж ркон это обычный телнет? Но разве сервер майнкрафта сам по себе не логирует то, что нужно?
  • Правильная ли последовательность разработки проекта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    Symer: Как заказчик скажет, как ПМ решит, как требования будут написаны и меняться в ходе работы.
  • Обязательно ли изучать Unit тестирование на должность junior asp.net mvc developer?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    Установите свой собственный срок вступления в должность, и все успейте.
  • Есть ли общие требования к комментированию кода?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    Vapaamies: По возможности, лучше сразу писать на английском. Комментарии получаются короче, нет никаких потенциальных проблем с кодировками. Английского на уровне pre-intermediate более чем достаточно.
    Исключения могут быть, но только, если программа полностью нацелена на внутренний рынок, и то. Вдруг захочется потом отдать на аутсорс индусам.
  • Как создать несколько конфигураций проводной сети?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    ssafronov: Что значит писать скрипт не нравится?
    Скрипт это готовый и встроенный штатный софт.
    Скрипт в батнике можно прикрутить к ярлычку на рабочем столе и запускать в два клика.
    Можно поставить по расписанию.
    Можно прикрутить к веб-серверу и управлять удаленно через cgi
    Можно написать GUI часть на любом языке программирования, даже на питоне, но тогда нужно будет сперва запустить GUI, а затем выбрать конфигурацию.