Задать вопрос
  • Unreal engine pixel streaming - какие минусы и какие нужны сервера?

    @rPman
    Судя по описанию технологии, если даже от такой простой вещи как отсутствие звуковой карты на хост машине звука не будет и на машинах клиентов, то это выглядит как обычный стреминг с видеокодированием, со всеми вытекающими от сюда бонусами и недостатками.

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

    То же самое и для видеокарты. Несколько одновременно работающих приложений могут работать значительно медленней чем вы рассчитываете, при использовании видеокарты (например при оценке нагрузки на видеокарту приложениями мониторинга, вы видите нагрузку в 10% и потребление памяти в те же 10% и ожидаете что можно будет запустить 10 инстансов, но на практике тормозить все может начать уже на третьем), правда это сильно зависит от того, какими технологиями вы вы будете пользоваться и как это использует железо.

    Бонус - нулевые требования к пользовательскому железу, кроме интернета, который кстати уже вполне себе на высоте. Но это гадания на кофейной гуще, нужно смотреть на практике, как именно сделан unreal poxel streaming.

    При использовании обычного RDP (win10) я подключался очень слабым планшетником к запущенной игре с использованием слабого wifi (5-10мбит) и получал приемлимый результат. Еще лучше выглядело все с использованием teamviewer или anydesk, за за счет адаптивной подстройки качества видеотрансляции к каналу (в т.ч. экспериментировал с расстояниями в десятки километров, правда провайдер проводной, 100мбит), игра была неожиданно отзывчивой.

    Идет глобальный передел рынка облачной игровой дестрибуции, onlive, playkey, sony playstation now,... получается unreal предлагает разработчикам заранее реализовать этот сервис прямо в вашей игре.
    Ответ написан
  • Игра змейка C#(Windows Forms), какую технологию выбрать для взаимодействия игроков по сети?

    @rPman
    Подключение обычные tcp сокеты (в udp пока не лезте, но с ними тоже реально).

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

    От сервера передаете изменения содержимого экрана, по объектам, змейки, корм и прочее. Само собой при подключении вместо дельты сервер должен вернуть текущие координаты. При потере связи тогда все будет автоматом восстанавливаться. Разработайте формат сообщений, воспользуйтесь готовыми сериализаторами, не изобретайте паровоз, хотя...

    На клиенте перерисовываете все это каждый раз как получаете данные от сервера.

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

    Недостаток - у всех пользователей будет небольшой лаг на действия, в зависимости от пингов.

    К сожалению не все игры можно так реализовать, но частично да.
    Ответ написан
    Комментировать
  • Игры в виде файлов изображений?

    @rPman
    Возможно создать html5+javascript игру виде одного файла, закодировать ее в data url с base64 кодировкой, сделать из полученной строки qr-код

    к сожалению в стандарте размер этого кода слишком маленький, поэтому рабочих примеров не ждите но никаких технических сложностей тут нет.

    пример игр 1кб тут https://js1k.com/
    Ответ написан
    1 комментарий
  • Какие есть виды высокоскоростного Интернета для стрима видео на максимальной скорости?

    @rPman
    Все зависит ОТ МЕСТА и количества видеокамер.

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

    Почти наверняка вы не сможете легально оптимизировать свои затраты, проводя проводку самостоятельно (оптика по воздуху или по канализации) или использовать радиоканал (легально на это нужна лицензия), за исключением оптической связи по воздуху (лазерная связь), они никому не мешают поэтому их можно ставить по своему усмотрению, но этот вариант скорее всего имеет смысл, если вы где то в поле камеры хотите установить, а провайдер будет выкатывать шестизначный счет за каждую точку, так как пара устройств и их установка/обслуживание обходится в копеечку.
    Ответ написан
    2 комментария
  • Законно ли хранить историю данных с сайта?

    @rPman
    Формально сайт может определить в лицензионном соглашении порядок использования их данных но по факту никого это не интересует, цены как информация не являются объектом авторского права.

    Закон не разделяет автоматический парсинг и анализ вручную, потому что отличить данные, собранные тем или иным способом невозможно, т.е. если сайт запретит такой анализ, то по факту получения этих данных исполнить этот запрет будет невозможно (доказать что вы собрали данные таким образом) и максимум что может делать владелец данных - отлавливать эти автоматические способы и блокировать их.

    Так что смело собирайте, анализируйте, делитесь этими данными и прочее... и будьте готовы что автоматические парсеры придут к вам ;)
    Ответ написан
    Комментировать
  • Несколько вопросов по компьютерным сетям: как заставить видеть друг друга две windows машины? Как именно инкапуслируется реализация OSI?

    @rPman
    Так как у вас нет контроллера домена и других сервисов (например WINS сервер) то значит у вас используется режим Рабочая группа, список компьютеров сети машины с windows собирают самостоятельно, т.е. они будут появляться/исчезать в списке не сразу. Имя рабочей группы для компьютеров должно совпадать, настраивается в свойства Компьютер -> Дополнительные параметры системы -> закладка Имя компьютера -> кнопка Изменить.

    Чтобы пользователи имели доступ к папкам на другом компьютере в рабочей группе их имена и пароли должны совпадать, иначе будет появляться запрос пароля. По умолчанию, пользователи без пароля доступа к удаленной машине не имеют (это можно изменить в политиках этой удаленной машины). Так же в настройках общего доступа к папке необходимо прописать соответствующего пользователя (или 'Все') и права доступа. Права на файлы и каталоги для файловой системы NTFS так же должны учитывать доступ для этого пользователя.

    Компьютеры должны быть подключены в одну локальную сеть, и у них должны быть IP адреса из одной и той же сети, например 192.168.0.1 - 192.168.0.255 при использовании маски 255.255.255.0. Обычно, при использовании роутера все адреса выдаются автоматически (там есть dhcp сервер), кстати windows 7+ могут использовать ipv6 адреса,..

    p.s. совет, на windows 7 не выбирайте тип сети 'Домашнаяя', выбирайте 'Сеть предприятия'.

    p.p.s. еще совет, исключите русскоязычные имена пользователей (и пробелы в именах), даже если локальная сеть будет работать, проблемы будут вылезать в играх и сторонних программах, не готовых к этому.
    -----------
    Для приложений в коде почти нет разницы при подключении tcp или udp, это просто флаг в методе, но нужно понимать что udp не дает гарантии что данные поступят в том порядке, в котором они ушли, в т.ч. могут вообще какие то пакеты не прийти,.. это вынуждает разработчиков контролировать это (это цена за более высокую 'производительность' udp по сравнению tcp).

    Вам нет никакой необходимости создавать свой ip протокол. Я не знаю, кто вам сказал "если протоколы изменятся, не нужно менять всю систему", но возможно имелись в виду протоколы и форматы общения приложений, например в windows машины передают файлы по протоколу smb а в сетях linux администраторы могут выбрать nfs (поддержка которого в windows прекращена, да и ранее была ограниченной с багами, полагаю намеренно), эти протоколы не совместимы, грубо говоря это то как именно файлы будут передаваться по сети.

    wifi и проводной ethernet - имеют различия на канальном уровне, это уровень ниже ip-протоколов, и не имеет никакой разницы для них и выше, данные могут передаваться как угодно, хоть на голубях (в rfc как я помню даже этот вариант был описан), хотя приложения могут учитывать особенности радио канала (скорость и пинги, например).
    Ответ написан
    Комментировать
  • Как дать доступ к устройствам в клиентской сети VPN со стороны сервера?

    @rPman
    на клиенте vpn, к чьей сети нужно получить доступ, нужно настроить nat (на сеть 192.168.2.xxx) а на vpn сервере необходимо добавить роут 10.0.0.x на этого клиента.
    Ответ написан
    Комментировать
  • Какие есть бесплатные аналоги АСТЕР?

    @rPman
    В свое время очень активно искал альтернативы
    Адекватных - нет.

    Любые решения либо ограничивают вас в выборе софта (т.е. придется выбрать linux), либо вам придется заплатить скоростью и поддержкой железа (виртуальные машины, даже с пробросом видеокарт внутрь, накладные расходы на CPU будут заметными в тех же играх, понижением скорости до 30%-50%, не говоря о том что не каждую видеокарту удастся таким образом использовать, и дешевые материнки/процессоры так же могут не иметь поддержки), либо строить дорогую систему с удаленным доступом (дешевые тонкие терминалы и rdp)

    Дешевле купить АСТЕР.
    Ответ написан
  • Как отобразить 1000 изображений?

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

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

    В итоге у вас будет только один запрос на сервер вместо 1000, что само по себе на порядок быстрее, и иконки будут выведены только после полной их загрузки (в случае с jpeg кстати есть бонус - будут выводиться сначала пониженное разрешение потом повыше).
    Ответ написан
  • Как автоматически вытащить из архивов нужный файл?

    @rPman
    создаете список ваших архивов в виде текстового файла, каждый файл в новой строке
    создаете xxx.bat файл:
    @echo off
    for /f %%a in (путь_и_имя_файла_со_списком_файлов) do "c:\program files\7-zip\7z.exe" e "%%a" *.pdf

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

    7z.exe x ... - будет распаковать файлы с каталогом в архиве, в котором они находятся

    for /r c:\dir %%a in (*.7z) do .... - будет искать все архивы в каталоге c:\dir и его подкаталогах (т.е. файл со списком архивов не надо будет создавать)
    Ответ написан
    6 комментариев
  • Git pre commit как отследить что файл не попал в commit?

    @rPman
    исключите .gitignore из комитов, и делайте с ним что хотите, при необходимости опубликовать изменения, убирайте ваш файл из этого списка, и по новой.
    Ответ написан
    Комментировать
  • Как выводить PayPal на разные счета в РФ?

    @rPman
    Токсичность финансовой системы не даст вам спокойно жить! Уходите от фиата в нерегулируемую область, хоть те же криптовалюты (пусть ваши клиенты сами заморачиваются со вводом выводом, там стейблкоинов как грязи уже, волатильность не так страшна).

    Только так, иначе 'вопросы с банком' будут возникать в любом случае, рано или поздно.

    Вся система финансов предполагает что физики делают платежные переводы юрикам, а юрики кредитные или зарплатные физикам,... обычные переводы физик-физик уже много лет как на уровне - все очень подозрительно, и гайки затягиваются все сильнее.

    Разные банки, разные условия, разные объемы дают разные результаты. банки постоянно меняют свои алгоритмы выявления 'рискованных клиентов' что бы это не значило (сюда входят и отмывание и преступная деятельность вида продажа запрещенных товаров и прочее прочее), по факту у банков заказ - блокировать определенный процент клиентов,..

    Регулярные переводы - вот уже и попадаете под статью получение регулярных доходов без образования ЮЛ. Много мелких примерно одинаковых переводов - вы торговец наркоты. Суммы больше 600к? срочно предоставьте документы откуда деньги и прочее прочее. Каких только вывертов я не наслушался, типа муж жене переводит свою белую зарплату, сумму, порядка 100т.р. и его перевод блокируют, отбирают 13% процентов и впаривают какую то чушь,.. заставляя месяцами бродить туда сюда в банк и что то доказывать.
    Ответ написан
  • Как объединить 2 андроид планшета или телефона?

    @rPman
    Будет не очень но попробовать можно

    Сначала соединить устройства в одну wifi сеть, что то мне говорит что дополнительный роутер, запиатаный от автомобильной сети будет лучше чем точка доступа на одном из этих устройств, но эксперимент провести ничто не мешает.

    Затем, любым remote control хоть тем же teamviewer или anydesk или просто vnc подключиться в режиме только просмотр к ведущему планшетнику и запускать на нем (можно отключить передачу звука, чтобы не было какафонии).
    ----------

    Еще вариант, планшетники принимать miracast не могут, но можно найти портативный монитор (такие есть и по цене терпимые от 3-4 т.р. может чуть дороже если надо с аккумулятором), докупить к нему hdmi донгл miracast/airplay за 600-1000р и расшарить (дублировать) экран ведущего android телефона/планшетника на этот монитор, на небольшом расстоянии это работает без проблем. Поддержка передачи видео по воздуху уже давно почти стандарт, но проверить наличие именно у вас тоже рекомендуется до покупки монитора.
    Ответ написан
    Комментировать
  • Windows SAPI: как задать ударение?

    @rPman
    Этот xml - это Semantic Markup Language (SML) стандарт, в sapi как я понял поддерживается его упрощенное подмножество, когда я тим пользовался, у меня много что не работало, то ли голосовой движок был не полноценным (а это для русскоязычной реализации обычное дело, кстати советую rhvoice) толи действительно sapi корявое.
    Начните от сюда https://docs.microsoft.com/en-us/previous-versions...

    попробуйте теги
    <emphasis level=“strong/moderate/none/reduced”> и <emphasizesyllable affect=“pitch/duration/both”>
    Ответ написан
    Комментировать
  • Как реализовать рассылку на Вайбер, Вотсап, Телеграм?

    @rPman
    Легально проверить наличие - последовательно добавлять телефоны в контакт лист своего телефона и смотреть на реакцию чат-приложений.

    Легально организовать рассылку - нельзя. Судя по тому что я вижу в telegram там очень много ухищрений, чтобы это стало сложно.

    Пример бота рассылки сообщений - на базе web telegram, приложение эмитирует буквально добавление контакта, ввод посимвольно текста и прочее, само собой с фиктивных аккаунтов, ибо после спам деятельности они будут забанены почти моментально.
    Ответ написан
    2 комментария
  • Как через прямое подключение lan кабеля узнать пароль от ssh?

    @rPman
    формулировка ужасная, фиг поймешь что именно вы имеете в виду.

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

    Но если вы не следите за этим, то злоумышленник может воспользоваться атакой man in the middle, установив между вашим ноутбуком и сервером свое оборудование (например подсунув вам фиктивный открытый wifi или подсунув в разрыв кабеля свой сервер, такие существуют, и помещаются в сетевом разъеме) то подсунув по вашему адресу свой сервер злоумышленник может украсть ваш пароль.

    Вот пример утилит для этого www.securrity.ru/terms/631-mitm-attack.html

    p.s. если злоумышленник смог проникнуть к вам на ноутбук, ваши пароли будут украдены без каких либо проблем простым кейлогером или заменой утилит на зараженные.
    ----------

    ssh считается наиболее защищенным и безопасным способом подключения клиента к серверу, многие утилиты (приложения по работе с базами данных, утилиты удаленного доступа к экрану и прочее) обычно предлагают прямо в интерфейсе подключаться к удаленному сервису не напрямую, а через открытие соединения ssh (и туннелирование) и лучшие способы взлома крутятся вокруг попыток ускорить взлом ключей шифрования беспарольной аутентификации через ошибки в генераторах этих ключей или к примеру доступу к оперативной памяти, где они временно хранятся.
    Ответ написан
    Комментировать
  • Как изолировать небезопасный код в dotnet core приложении?

    @rPman
    Список реализаций тут lua-users.org/wiki/LuaImplementations
    Например это https://github.com/chkn/AluminumLua

    Вы можете вообще не добавлять никаких библиотек к вашему контексту и добавлять свои методы в вашем коде которые будут вызываться на функции в lua.

    p.s. библиотеки опенсорс, всегда можно поправить код в том месте где файл открывается.
    Ответ написан
  • Можете подсказать программу для бекапа (WIN)?

    @rPman
    Подключайте ваш webdav как диск (все операционки это позволяют) и обычным архиватором упаковывайте файлы прямо на него с разбиванием на подтома. Локально место под архивы использоваться не будет, да и на webdav будет записываться по томам, без лишних операций (там будет только операция переименовывания).

    Обычные архиваторы умеют даже инкрементальную упаковку, когда выбираются файлы измененные/созданные после указанной даты, пакетный файл на запуск архива будет содержать 2-3 строчки (в зависимости от выбранного языка, например windows bat просто неудобен для хранения даты последнего запуска, поэтому будет еще пара строчек).

    p.s. обсуждение примеров использования 7zip в виде одной строки
    https://superuser.com/questions/544336/incremental...
    Ответ написан
    Комментировать
  • Как сделать систему баннеров?

    @rPman
    Добавьте в таблицу баннеров пользователям поле - время показа, при показе обновлять это поле на текущее время.

    Запрос на случайный баннер - условие фильтрации дата показа меньше начала сегодняшнего дня.

    В итоге, не придется ежедневно обновлять всю баузу, сбрасывая показы. Так же бонусом можете менять интервал сброса (например каждую неделю или каждый час, не важно, это просто меняется дата в условии фильтрации)
    Ответ написан
    Комментировать