Какие ОС включать в поддерживаемые для любительской некоммерческой игры?

+103
NTFSв блоге Gamedev is Friendship!28 мая 2021, 16:01
Только зарегистрированные и авторизованные пользователи могут участвовать в опросах.
Картинка для привлечения внимания

Собственно, вопрос весь уложился в заголовок.
Очевидно, что нужна как минимум Windows от 7 и выше, и судя по топовым играм — MacOS крайне желательна.
Остальное скорее проходит по категории «есть, и хорошо, нет, ну и пофиг».

И тем не менее, голосуем, в предположении, что игра не предполагается к продаже (хотя распространяться может и через платформы типа GOG/Steam)

PS: Я лично склоняюсь к мысли, что сначала всё делаем на Windows, потом, как заведутся лишние 500$, попробовать выпустить версию для MacOS, ну и по остаточному принципу, если вообще никаких дел нет — повозиться с версией для Linux/FreeBSD.

145 комментариев

В ленту игровых разработчиков!
NTFS
0
Макось вроде бы за бугром в первую очередь популярна, а вот линуксоиды и у нас водятся. Но что надо смотреть по ЦА, вроде бы можно отдельно не говорить =)
SMT5015
+1
Но что надо смотреть по ЦА,

«Пони для маленьких девочек!»©
NTFS
0
ЦА игры — ваш Кэп.
SMT5015
0
У меня пока что все игры тоже про пони.
NTFS
0
Во-первых, ЦА делится не только по возрасту.
Во-вторых, у фанфтворчества она может отличаться от основного продукта.
В-третьих, я, честно говоря, удивлён, что тебе это пришлось объяснять отдельно. С тобой всё в порядке?
SMT5015
+1
Да, протупил. Бывает.
Само собой, ЦА — в основном, бородатые понилюбы.
NTFS (ред.)
0
Ну вот. Тогда что дальше? На какой оси сидит наибольший процент бородатых понилюбов?
SMT5015
+1
Windows с вкраплениями Linux, я полагаю.
NTFS
0
Ну вот и делай, чо. Если, конечно, не хочешь челленджа ради челленджа и заточки скилла.
SMT5015
0
Windows с вкраплениями Linux, я полагаю
угу, ещё добавить поддержку Полуоси уровня «Мерлин» или хотя бы «Аврора» и армейской версии BeOS!
888-Р
И да, если кто решит этот как задание воспринять — я даже не прикалываюсь, а откровенно издеваюсь. И в рамках сего события могу ещё DOS-3.22 для «Агата-7» предложить, благо — он же ДОС для «Apple-II» домакинтошевской эпохи (70-е годы прошлого века прошлого тысячелетия)
Navk
0
Винда — обязательно, т.к. большинство людей сидят именно на ней.
Линуксы и маки на самом деле не так уж и важно, ибо линуксоиды могут в виртуализацию/дуалбут/имеют отдельный ПК для игр с виндой, а маководы должны страдать.
Также я рекомендую выпустить версию под ведроиды, ибо сейчас тенденция игростроения пошла в сторону именно мобильного гейминга, и достаточно много людей не имеют дома ПК вообще, заменив его на смартфон/планшет.
Stardisk
+1
акже я рекомендую выпустить версию под ведроиды

Тут упирается в принципиально иную концепцию интерфейса и управления. Для Android проще вообще с нуля делать, чем портировать что-то с Windows

линуксоиды могут в виртуализацию

Всё, что я делал для Windows, прекрасно запускалось под Wine, даже использующее DirectX. Тут да, проблема только в производительности, но не в возможности запуска.
NTFS (ред.)
+2
проблема только в производительности

Боюсь представить, что ты там собрался замутить такое.
Oluja
0
Я обобщил. А так, мои проекты нетребовательны, прекрасно под Wine работают.
NTFS
0
сейчас тенденция игростроения пошла в сторону именно мобильного гейминга

Эта тенденция стала очевидной 10 лет назад, и сейчас, видимо, близка к завершению — более 50% прибыли всего игрового рынка приходится на мобильные платформы
Но сейчас мы же говорим не про коммерческий проект
Nirton_the_brony
+3
Я бы делал в порядке Винда-Андроид-Линух-всеостальное…
KerHarrad (ред.)
+1
Андроид

Страдание
NTFS
0
Винда, как самая популярная на текущий момент. Остальное — по наличию желания-возможности.
Но вообще, на мобилках уже денег больше делают, чем на писюках и консолях, и весь этот шухер с майнингом на всём, что можно в системник воткнуть, сему только способствует, если не сказать, что ставит это одной из целей — пересадить народ на мобилки. Так что, андрюшку надо рассматривать во вторую очередь, по моему скромному. Если айфонов на руках много, то их тоже можно принять во внимание.
Wererat (ред.)
0
Голосующим за последний вариант — я-то могу, благо, даже движок себе сделал на NASM+QuickBasic, но смогут ли игроки?
NTFS (ред.)
0
Когда серьёзный пункт голосования встречается с мемным, серьёзный погибает ©
McFord
+4
Вот они стебутся, а я возьму и сделаю, причем запрещу запуск под DOSBox.
Пусть страдают с установкой DOS на UEFI системах.
NTFS
0
Окей, VirtualBox / VMware в помощь :)
Ponywka
0
детектятся, причем элементарно. Через CPUID с недокументированным, но всем известным ЕАХ
KerHarrad (ред.)
0
Но зачем?
veon
0
Потому что могу?
NTFS
0
запрещу запуск под DOSBox.
А ты знаешь, как досадить людям))
makise_homura
0
А ты знаешь, как досадить людям))

Ну а чего они меня сбивают с пути и соблазняют всяким?
NTFS
+1
Ну, они ж не со зла =)
Не у всех же есть 486DX-й десктоп, 486SX-й ноут и 286-ой PC AT, как у меня =) У многих досбокс — единственный вариант(
makise_homura
0
Я смогу =)
А вообще DOSBox есть на всё, включая даже андроид, емнип (и даже под Эльбрус, если что =)
makise_homura
0
DOS 6.22 на 640 Кб, только реальный режим 8086

Не только лишь все встанут на Путь Машины чтобы разбираться в археотеке…
partizan150 (ред.)
+2
археотеке

Археотеки — это БЭСМ и всякие CP/M, а DOS до сих пор на ходу, где нужен быстрый доступ к железу, но нет денег на настоящие RTOS.

Хотя из области ретроигр его полностью вытеснил DOSBox и это хорошо для всех.
NTFS
0
Эльбрус обязательно))
andreymal
+10
О! И язык «Ада» ещё за компанию!
Navk
+1
Таки без проблем же — могу даже ssh дать, чтобы можно было тестить =)
makise_homura
0
Так сейчас же есть библиотеки, которые поддерживают и Windows и Linux и MacOS. Собственно, если язык позволяет (в основном это C++) то почему бы не использовать их?

Хотя могу ошибаться и что-то неправильно понимать
Ponywka (ред.)
+1
Я так и делаю, тот же Qt спокойно даёт мне возможность заводить один код под всё, что угодно.
Но вопрос всё равно интересный.
NTFS
0
Именно, если сразу писать на этих библиотеках, фреймворках и т.п. — то можно здорово сократить себе время на разработку под другие платформы. Тот же Taisei Project из коробки работает под виндой, пингвином и макосью, ибо написан на GNU C + SDL2 + OpenGL.
makise_homura
0
Потому что это блин C++… Вы будете разбираться, как скомпилировать проект со всеми зависимостями под все платформы дольше, чем собственно писать игру. Даже банально собрать C++ приложение под Linux, сидя на винде — это тот ещё квестик, равно как и наоборот.
Я бы сказал, что C++ один из худших кроссплатформенных языков, если вообще не худший. Потому что кроссплатформенность там приходится реализовывать вручную, и это требует весьма нехилых затрат времени и сил. Не сравнить с каким-нибудь Electron'ом, где она вообще практически из коробки и чуть ли не любой код автоматом оказывается кроссплатформенным.
Lyx (ред.)
0
Даже банально собрать C++ приложение под Linux, сидя на винде — это тот ещё квестик, равно как и наоборот.
Ну, во времена контейнеров и виртуалок кросс-сборка под другую ОС на той же архитектуре — задача не очень оправданная.
А так-то да, современные языки (особенно интерпретируемые+JIT) — куда более кроссплатформенны, это да.
makise_homura
0
Кстати… Если игра некоммерческая и любительская, почему бы не открыть доступ к репозиторию, так люди которым нечем заняться при необходимости даже не кросс-платформенный проект сами портируют игру хоть на кофемашинку.
Ponywka (ред.)
+2
Да, это тоже важно. Некоторые будут тебе пулл-реквесты кидать — правя за тебя те баги, на которые у тебя не хватает времени или возможности.
makise_homura
0
С другой стороны, пулл-реквесты могут исправлять баги не полностью или даже вносить новые баги, и придётся тратить кучу времени на достаточно качественное ревью
andreymal
0
Обычно это зависит от характеристики пулл-реквеста. Достаточно просто прочекать, что ничто нигде не сломалось, что этот PR затрагивает, и норм.
Как минимум, ревью и проверки — это почти всегда куда меньше времени, чем делать это самому.
makise_homura
0
Первоочередно — какие хочешь.
А так — хотя бы винду, а далее по ситуации и если прям потребность будет. Линукс — абсолютный зоопарк из всего. Макось — как вариант, ибо относительно легко поддерживаема (наверное. Ну вариаций там поменьше хотя бы).
StaSyaN
+1
Первоочередно — какие хочешь.

Проблема в том, что если и планировать кроссплатформу, то делать это заранее, а не на середине проекта, когда половина кода завязана на библиотеке, которая работает только в конкретной ОС
Линукс — абсолютный зоопарк из всего

Что ты под этим имеешь ввиду? Много дистрибутивов? Все необходимые библиотеки есть в любом репозитории любого дистрибутива (любого дистрибутива — слишком натянуто. В высере по типу БолдженОС вряд-ли), максимум где не сможет запуститься исполняемый файл — это на другой архитектуре, но и это решается перекомпиляцией исполняемого файла с компилятором под нужную архитектуру.
Ponywka (ред.)
+1
Проблема в том, что если и планировать кроссплатформу, то делать это заранее, а не на середине проекта, когда половина кода завязана на библиотеке, которая работает только в конкретной ОС

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

Что ты под этим имеешь ввиду?

Драйверы видеокарт и вытекающее (даже на казалось бы благополучной винде с казалось бы сверхблагополучным хромиумом, который пытается работать везде при любых условиях, случаются казусы и всратые визуальные баги (да, да, WebGL)). Если будут завязки на фреймворки, то еще и они. Хотя если будет графон на уровне тетриса (доса), то и софтварный рендеринг не должен тормозить.
StaSyaN
+1
Написать собственную ОС специально для своих игр!
Tankony
+1
И свою приставку.
PonyPlayStation
NTFS
+2
Вот вы смеетесь, а есть такие штуки как ZX Evolution например или Reverse U16
KerHarrad (ред.)
+1
А я и не смеюсь. Взять какой-нибудь контроллер помощнее вроде Atmega2560, написать к нему ассемблер и загрузить поддержку PS/2 с VGA — и готова игровая приставка. Только это долго, в одно рыло, а многих рыл не добыть — у всех свои дела и это правильно.
NTFS
0
Ну и Ева и Реверс были именно в одно рыло сделаны.
KerHarrad
0
Правильно, что не смеёшся — у стима есть планы сделать портативный игровой девайс, с пингвином внутри, на котором будет запускаться всё ихнее, что с этим пингвином дружит. Хотя, они уже пробовали с консолькой…
Wererat
0
Про пингвина вроде не было. С пингвином у них попытка уже была, и, вроде как, так себе она взлетела. КМК, вряд ли повторять будут.

Мне кажутся более реалистичными предположения, что на волне дружбы с МС туда поставят какую-нибудь модифицированную Винду.
McStalins
0
Так в новостях сказано было, mmorpg.su. Якобы Габен сначала ляпнул, что вас, мол, ждёт что-то новое, а некоторое время спустя анонсировал портативный игровой девайс, который работает на линуксе.
С консолькой у них не взлетело, да, но тут у нас портативная финтифлюшка, игровой «телефон», грубо говоря. А телефончики на винде тоже звёзд с неба не хватали, даже когда были живы. Плюс, мобильные игры сейчас весьма и весьма прибыльны, и я нисколько не удивлюсь, если стим решит туда влезть, стартовав с тем багажом, что у него уже есть. Про андроид, конечно, ничего сказано не было — упоминался именно линукс, но первый производная второго и эволюционировать в этом направлении можно будет в любой момент, если потребители начнут брать габенову цацку.
Wererat (ред.)
0
Вроде был только ответ «ждите новостей к концу года» на вопрос «будут ли игры Валв на консолях?», а потом были упоминания SteamPal, или Neptune, в коде обновлений, который по косвенным признакам отнесли к портативным устройствам а-ля Свич.

Про прошлый СтимОС, который Линукс, как и про все остальные характеристики этого SteamPal, упоминалось только со словом «likely». То есть это только догадки и предположения. Подтверждённым выглядит только то, что что-то запланировано, и это аппаратное устройство.
McStalins
0
Ну, хз откуда они это взяли — я глубоко не копал в этом направлении, что слышал — то и рассказываю. Поглядим-увидим — пока всё действиьтельно только на словах, как я понял, а что появится на прилавках, если вообще появится, неизвестно.
Wererat
0
Вот здесь вроде бы впервые опубликовали:
arstechnica.com/gaming/2021/05/exclusive-valve-is-making-a-switch-like-portable-gaming-pc/
McStalins
0
Lastly, the SteamPal was built with Linux as a likely target, an idea that aligns with Valve's continued push to make its entire catalog compatible with the open source OS, particularly through Steam Proton. That in no way means Valve's increasingly cozy relationship with Microsoft couldn't result in a deal to get Windows onto the SteamPal, though it would not be surprising to see Valve skip the per-device Windows license and tell users that the SteamPal is open enough for them to customize like any other PC.

Автоперевод добавлять не буду, но я понял так, что хотят пингвина, но вообще, бабушка надвое сказала — если надумают, то сделают винду.
Wererat (ред.)
0
Это Арстехника полагает, что SteamPal вероятно будет делаться под Линукс, так как это соответствует более ранним подвижкам Валв по переводу игротеки на открытую среду.
McStalins
0
И да, на фоне ограниченного доступа к компьютерным комплектующим, появление доступного девайса, который может запускать писюшные игры выглядит гораздо более привлекательно, чем в те времена, когда стим пытался впарить свою консоль.
Wererat
0
Учитывая, как активно они нынче пилят свой Proton — думаю, они продолжают делать ставку на линукс: пусть игры запускаются хоть в вайне, лишь бы с МС не дружить)
andreymal
+1
ZX Evolution
Таки годная штука, скажу я вам, один вид платы приводит меня в восторг, там есть всё — от ZX-bus до VGA =)
makise_homura
0
А что под «некоммерческим» подразумевается? Совсем бесплатное распространение или распространение без расчёта на систематическую прибыль?

Почему бы не айОсь? Мне кажется, что-то такое непретенциозное могут скорее на планшет/телефон поставить, чем на что-то настольное.
McStalins
0
Win как минимум. Для линухи есть wine и proton. На макоси народу куда меньше, а те кто есть (я например) в игры особо не играют. Как выше верно подметили — если планируется кроссплатформа, то об этом лучше подумать заранее; все популярные движки (тот же юнити) умеют в нее с минимальными допиливаниями. Если что то совсем простенькое — то есть смысл впихнуть в браузер (правда vds понадобится, что какие-никакие, а затраты). Играл когда то в довольно навороченные игры прямо из браузера — работали на какой то версии юнити (unity web player), спокойно запускалось и на win и на mac. Ну и мобилки перспективнее, если это простой таймкиллер; но тут снова палка о двух концах — на андроиде пиратят все кому не лень (хотя ценник можно установить в условные 100р); на айфоне нужна лицензия + сам айфон чтобы кодить и отладку делать. Еще один экзотический вариант — кроссплатформа мобилки + свич, сколько стоит вкатиться я не знаю, но отмечаю довольно немаленькое количество игр в шопе которые явно пришли с мобилок и ценник имеют такой же. Лайфхак: достать где то прошитый свич; на нем закодить/протестировать что все работает хорошо; а уже потом думать в сторону шопа — статьи про это были на том же dtf.
oxide
0
Можно и без VDS, вставив напрямую кодом в качестве главы фанфика. Вот пример, если вы скопируете из спойлера весь код после символов подчёркивания (всё начиная со слова data и до конца спойлера) целиком как есть в адресную строку браузера и нажмёте Enter, то получите симпатичную демку с полётом сквозь подземелья.
Код____data:text/html;base64,PCFkb2N0eX BlIGh0bWw+ CjxodG1sPg ogIDwhLS0K ICAoYykgJm NvcHk7IGpz MWsuY29tLC AyMDEwIC0g MjAxOQogIE 5vdGU6IHN1 Ym1pc3Npb2 5zIGJlbG9u ZyB0byB0aG VpciByZXNw ZWN0aXZlIG 93bmVyLCBk byBub3QgY2 9weSB3aXRo b3V0IHRoZW lyIGNvbnNl bnQKICAtLT 4KICA8aGVh ZD4KICAgID x0aXRsZT5K UzFrIDIwMT kgLSBEZW1v IDQyOTMgLS AiTWFnaWNh bCBMaWdodC BUdW5uZWwi PC90aXRsZT 4KICAgIDxt ZXRhIGNoYX JzZXQ9InV0 Zi04Ij4KIC AgIDxtZXRh IGh0dHAtZX F1aXY9IkNv bnRlbnQtU2 VjdXJpdHkt UG9saWN5Ii Bjb250ZW50 PSIgY29ubm VjdC1zcmMg J25vbmUnID sgZGVmYXVs dC1zcmMgJ2 5vbmUnIDsg Zm9udC1zcm MgJ3NlbGYn IDsgZnJhbW Utc3JjICdz ZWxmJyBkYX RhOiA7IHdv cmtlci1zcm MgJ3NlbGYn IGRhdGE6ID sgaW1nLXNy YyAnc2VsZi cgZGF0YTog c3NsLmdvb2 dsZS1hbmFs eXRpY3MuY2 9tIDsgbWVk aWEtc3JjIG RhdGE6IDsg b2JqZWN0LX NyYyBkYXRh OiA7IHN0eW xlLXNyYyAn c2VsZicgZG F0YTogJ3Vu c2FmZS1pbm xpbmUnIDsg c2NyaXB0LX NyYyAndW5z YWZlLWlubG luZScgJ3Vu c2FmZS1ldm FsJyB3d3cu Z29vZ2xlLW FuYWx5dGlj cy5jb20gOy AiIGhlbHA9 InBsZWFzZS ByZXBvcnQg Y3NwLXJlbG F0ZWQgcHJv YmxlbXMgdG 8gdmFsaWQg ZGVtb3MhIi A+IAogICAg PG1ldGEgbm FtZT0iYXV0 aG9yIiBjb2 50ZW50PSJK YW5pIFlsaW thbmdhcyI+ CiAgICA8bW V0YSBuYW1l PSJkZXNjcm lwdGlvbiIg Y29udGVudD 0iSlMxayAy MDE5IGRlbW 86ICZxdW90 O01hZ2ljYW wgTGlnaHQg VHVubmVsJn F1b3Q7IC0t IFlvdXIgdH JlYXN1cmUg bGllcyBiZX lvbmQgdGhl IGNyeXN0YW wgY2F2ZS4u LiI+CiAgIC A8bWV0YSBu YW1lPSJwdW JkYXRlIiBj b250ZW50PS IyMDE5MDMz MSI+CiAgIC A8bGluayBy ZWw9Imljb2 4iIHR5cGU9 ImltYWdlL3 BuZyIgaHJl Zj0iaHR0cH M6Ly9qczFr LmNvbS9mYX ZpY29uLnBu ZyI+CiAgIC A8bGluayBy ZWw9ImNhbm 9uaWNhbCIg aHJlZj0iaH R0cHM6Ly9q czFrLmNvbS 8yMDE5LXgv ZGVtby80Mj kzIj4KICAg IDxsaW5rIH JlbD0iYWx0 ZXJuYXRlIi B0eXBlPSJh cHBsaWNhdG lvbi9yc3Mr eG1sIiB0aX RsZT0iTmV3 IGRlbW8gZm VlZCIgaHJl Zj0iaHR0cH M6Ly9qczFr LmNvbS9mZW VkLnhtbCI+ CiAgICA8bG luayByZWw9 InNob3J0bG luayIgaHJl Zj0iaHR0cH M6Ly9qczFr LmNvbS80Mj kzIj4KICAg IDxzY3JpcH Q+CiAgICAg IHNldFRpbW VvdXQoZnVu Y3Rpb24oKX sNCiAgICAg ICAgdmFyIG dhID0gZG9j dW1lbnQuY3 JlYXRlRWxl bWVudCgnc2 NyaXB0Jyk7 DQogICAgIC AgIGdhLmFz eW5jID0gdH J1ZTsNCiAg ICAgICAgZ2 EuZGVmZXIg PSB0cnVlOw 0KICAgICAg ICBnYS5zcm MgPSAnaHR0 cHM6Ly93d3 cuZ29vZ2xl LWFuYWx5dG ljcy5jb20v Z2EuanMnOw 0KICAgICAg ICBnYS5vbm xvYWQgPSBm dW5jdGlvbi gpe3RyeXtf Z2F0Ll9nZX RUcmFja2Vy KCdVQS0xOT g4MjM1My0x JykuX3RyYW NrUGFnZXZp ZXcoKTt9Y2 F0Y2goZSl7 d2luZG93Lm NvbnNvbGUm JmNvbnNvbG UubG9nKCJn YSBmYWlsID onKCAiKTt9 O307DQogIC AgICAgIHZh ciBzID0gZG 9jdW1lbnQu Z2V0RWxlbW VudHNCeVRh Z05hbWUoJ3 NjcmlwdCcp WzBdOw0KIC AgICAgICBz LnBhcmVudE 5vZGUuaW5z ZXJ0QmVmb3 JlKGdhLCBz KTsNCiAgIC AgIH0sIDEw KTsKICAgID wvc2NyaXB0 PgogICAgPH N0eWxlPgog ICAgICAvKi BodHRwczov L3Fmb3gubm wvbm90ZXMv MzMzICovCi AgICAgIGJv ZHksaHRtbC xpZnJhbWV7 bWFyZ2luOj A7cGFkZGlu ZzowO2Jvcm RlcjowO3dp ZHRoOjEwMC U7aGVpZ2h0 OjEwMCV9aW ZyYW1le3Bv c2l0aW9uOm Fic29sdXRl O3RvcDowO2 xlZnQ6MDsK ICAgICAgcG FkZGluZy10 b3A6NTBweD tib3gtc2l6 aW5nOmJvcm Rlci1ib3h9 IGhlYWRlcn twb3NpdGlv bjpyZWxhdG l2ZTt6LWlu ZGV4OjE7aG VpZ2h0OjQ3 cHg7cGFkZG luZy10b3A6 MnB4OwogIC AgICBib3Jk ZXItYm90dG 9tOjFweCBz b2xpZCAjMD AwO2JveC1z aGFkb3c6MC AtMTBweCAy NXB4ICNjY2 MgaW5zZXQ7 YmFja2dyb3 VuZC1jb2xv cjojZWVlfS Bhc2lkZSxk aXYsaDEscH tvdmVyZmxv dzoKICAgIC AgaGlkZGVu O3doaXRlLX NwYWNlOm5v d3JhcDt0ZX h0LW92ZXJm bG93OmVsbG lwc2lzO3Rl eHQtYWxpZ2 46Y2VudGVy O2ZvbnQtc2 l6ZToxNnB4 O2ZvbnQtd2 VpZ2h0Omlu aGVyaXQ7bG luZS1oZWln aHQ6CiAgIC AgIDIycHg7 cGFkZGluZz owO21hcmdp bjowO2N1cn NvcjpkZWZh dWx0fSBhc2 lkZSxoMXtk aXNwbGF5Om lubGluZX0g YXtjb2xvcj ojMDAwO3Rl eHQtZGVjb3 JhdGlvbjpu b25lO2Jvcm Rlci1ib3R0 b206CiAgIC AgIDFweCBk YXNoZWQgIz AwMH0gYTpo b3Zlcntib3 JkZXItYm90 dG9tOjFweC Bzb2xpZCBy ZWR9IGFbaH JlZj0iMCJd e3RleHQtZG Vjb3JhdGlv bjpsaW5lLX Rocm91Z2g7 cG9pbnRlci 1ldmVudHM6 bm9uZQogIC AgICA7Ym9y ZGVyLWJvdH RvbTowO2Nv bG9yOiNjY2 N9IC5idXR0 b257ZmxvYX Q6bGVmdDt3 aWR0aDo0MH B4O2hlaWdo dDo0MHB4O2 xpbmUtaGVp Z2h0OjQwcH g7dGV4dC1h bGlnbjpjZW 50ZXI7cGFk ZGluZzoKIC AgICAgMDtt YXJnaW46Mn B4IDAgMCAx MHB4O2Jvcm RlcjoxcHgg c29saWQgIz g4ODtib3Jk ZXItY29sb3 I6I2RkZCAj ODg4ICM4OD ggI2RkZDtm b250LWZhbW lseTpzYW5z LXNlcmlmO2 ZvbnQtc2l6 ZTozMHB4Ci AgICAgIDtm b250LXdlaW dodDo3MDA7 Y3Vyc29yOn BvaW50ZXJ9 IC5idXR0b2 46aG92ZXJ7 Y29sb3I6cm VkO2JvcmRl ci1ib3R0b2 0tY29sb3I6 Izg4OH0gLn J7bWFyZ2lu LXJpZ2h0Oj EwcHh9CiAg ICA8L3N0eW xlPgogIDwv aGVhZD4KIC A8Ym9keT4K ICAgIDxoZW FkZXI+CiAg ICAgIDxkaX Y+CiAgICAg ICAgPGgxPg ogICAgICAg ICAgPGEgaH JlZj0iaHR0 cHM6Ly9qcz FrLmNvbSI+ SlMxazwvYT 4KICAgICAg ICAgIDxhIG hyZWY9Imh0 dHBzOi8van Mxay5jb20v MjAxOS14Ij 4yMDE5PC9h PgogICAgIC AgICAgPHN0 cm9uZz48L3 N0cm9uZz4g ZGVtbwogIC AgICAgICAg Jm1kYXNoOw ogICAgICAg ICAgIk1hZ2 ljYWwgTGln aHQgVHVubm VsIiBieSBK YW5pIFlsaW thbmdhcwog ICAgICAgID wvaDE+CiAg ICAgICAgPH A+CiAgICAg ICAgICA8ZW 0+CiAgICAg ICAgICAgIF lvdXIgdHJl YXN1cmUgbG llcyBiZXlv bmQgdGhlIG NyeXN0YWwg Y2F2ZS4uLg ogICAgICAg ICAgPC9lbT 4KICAgICAg ICA8L3A+Ci AgICAgICAg PGFzaWRlPg ogICAgICAg ICAgJm1kYX NoOwogICAg ICAgICAgMT AyMyBieXRl cwogICAgIC AgICAgJm1k YXNoOwogIC AgICAgICAg PCEtLSAtLT 4KICAgICAg ICAgIDxhIG hyZWY9Imh0 dHBzOi8van Mxay5jb20v MjAxOS14L2 RldGFpbHMv NDI5MyI+ZG VtbyBkZXRh aWxzPC9hPg ogICAgICAg ICAgJm1kYX NoOwogICAg ICAgICAgPG EgaHJlZj0i aHR0cHM6Ly 9qczFrLmNv bS8yMDE5LX gvZGVtb3Mi Pmxpc3Qgb2 YgZGVtb3M8 L2E+CiAgIC AgICAgICA8 IS0tIAogIC AgICAgICAg PGI+PGEgaH JlZj0iaHR0 cHM6Ly9qcz FrLmNvbS8y MDE5LXgvZG Vtby8iPgog ICAgICAgIC AgICBVcGRh dGUgYXZhaW xhYmxlIGhl cmUhCiAgIC AgICAgICA8 L2E+PC9iPg ogICAgICAg ICAgPCEtLS AtLT4KICAg ICAgICAgIC ZtZGFzaDsK ICAgICAgIC AgIDxhIGhy ZWY9Imh0dH BzOi8vanMx ay5jb20vND I5MyIgdGl0 bGU9InNob3 J0IGxpbmsg Zm9yIHlvdX IgbW9iaWxl IGRldmljZX MiIHJlbD0i bm9mb2xsb3 ciPmpzMWsu Y29tLzQyOT M8L2E+CiAg ICAgICAgPC 9hc2lkZT4K ICAgICAgPC 9kaXY+Cgog ICAgICA8YS BocmVmPSI0 MjkyIiBjbG Fzcz0iYnV0 dG9uIHAiPi ZMYXJyOzwv YT4KICAgIC AgPGEgaHJl Zj0iNDI5NC IgY2xhc3M9 ImJ1dHRvbi BuIj4mUmFy cjs8L2E+Ci AgICA8L2hl YWRlcj4KCi AgICA8c2Ny aXB0IHR5cG U9ImRlbW8i Pgpmb3IoXz 0nY1tjLkQs RFopLFlZRF hdKFcrMipW cDwxVS4wNl RNYXRoLnNp bigfH3AeKn AdKzMqHh0c KkMbLjE4Mx saXVtwPj4Z LDEYKS8XJT EWMDAVO0Mt LTspFDAsEx 0sEiwfQxEs LjYQQxY3PT 0zDyxVNDQm cA4pKgxdPQ taZnkLCWZv cigILzIHRG ZjVwYdWQYo TS1DBwxwBS 8fKBorMS44 MgQRHSp0KT wwJh9DHR0p Pi43AykWLj U3Ky43OSkC BAIBCEMgaW 4gYyljW0Nb MF0rW0NbNl 1dC0M7dD1N PXk9bz1JPT Isc2V0SW50 ZXJ2YWwoaD 0+ewh0PXQl MxUrVCxhLn dpZHRoPWEu aGVpZ2h0PS Q9ORUJIiMx MTEiWmdDCy JsaWdodGVy IlpzUwsiIz MzMyIsBhMT JCwkWHRhVy QHLDYVWHND CyIjMGZmIi xDPTgyLFI9 dC85LTIzLH A9UjwzP1I6 MyxNKz1vPS FNfE0+Nzg/ LW86byx5Kz 1JPSF5fHk+ MhU/LUk6SS xSPjAmJihE c0ILNSxSPj UmJkRzUlct QwcSMiotQx JDEjIuOBsF LCh5LTIbDH AsMhI0BSp5 L0MvMy05Ek MHEjE4Ejgd KVhzQgsTaT 0xO2krKzwy NDtjLmNsaX AoKSl7aWYo cD10K2l8E1 I9JC8oaS10 FllzPVIvNB NrPVUyOD8w Oh8eLzEyDC o1DCQqOS9S LGw9VTc1Pz A6awlgaHNs KCR7cBYyOD w2ND8yFToz FX0sNzUlLC R7NTArNTAq Hi84KX0lKW BaZ0ELVC0o aTw0DHQWKl QsYy5maWxs KFhnQQsxCS IjOWJmIg4l MzI8MSkIQz 0xNhQGUi84 Gy1SLC0kBy 0zKlIscwcs JCk7CERsZA tSLzgOPjE2 JiYocBY2fH xjLnN0cm9r ZSgpWGJhV1 lDPTI0FHI9 UipbLjYBLH AlNHxwPDQ4 PzEBOjEQBC twLzYCEC8f KC4yNjIbKz EuNwIQET4+ MSZwFzMrMR EHK3AXNC0e Bxc2Ky43LS EoQx0lORc2 EAErHi80K3 QvMxc0GTVd WmxXQT1rKx 9kX2E9Gi0y LjEMci1zBy xCPWwtH2Rf YSs3Ljg0DH IqKHA+MTky PzM6MSktcw dZWw8sDyso HgdWdAwoMl YfdCkpfDBZ Qzw0HCl8Qz 4xORxZQz09 KChwLzgmMT 82OjkMdCUy MHwwKRgRK3 ArdCk8E0M+ OSZDPDE0LC hDGytwVnQX NSYxGBgsEz ADAxgYGTRd JiYGQSxCLH Mscyl9fRg3 KSc7Rz0vWw EtH1QtWkRd Ly5leGVjKF 8pOyl3aXRo KF8uc3BsaX QoRykpXz1q b2luKHNoaW Z0KCkpO2V2 YWwoXykKIC AgIDwvc2Ny aXB0PgogIC AgPHNjcmlw dD4KICAgIC AgKGZ1bmN0 aW9uKCl7dm FyIG09ZG9j dW1lbnQsYj 1tLmdldEVs ZW1lbnRzQn lUYWdOYW1l KCJoZWFkZX IiKVswXSxo PWIuZmlyc3 RDaGlsZCxu PW0uZ2V0RW xlbWVudHNC eUNsYXNzTm FtZSgicCIp WzBdLGY9bQ ogICAgICAu Z2V0RWxlbW VudHNCeUNs YXNzTmFtZS gibiIpWzBd O2IuaW5zZX J0QmVmb3Jl KG4saCk7Yi 5pbnNlcnRC ZWZvcmUoZi xoKTtiLmFw cGVuZENoaW xkKG0uZ2V0 RWxlbWVudH NCeVRhZ05h bWUoInAiKV swXSl9CiAg ICAgICkoKT soZnVuY3Rp b24gcmVsb2 FkKCl7ZnVu Y3Rpb24gaC hhKXtnLmJv ZHkucmVtb3 ZlQ2hpbGQo ayk7ZC5wYX JlbnRFbGVt ZW50LnJlbW 92ZUNoaWxk KGQpO3Q9Yz 1kPWs9bnVs bDtyZWxvYW QoYSl9dmFy CiAgICAgIC AgQj1UX0NB TlZBU19TSE lNPXRydWUs CiAgICAgIC AgTj1UX1dF QkdMPWZhbH NlLAogICAg ICAgIEY9VF 9NQVhfV0lE VEg9MCwKIC AgICAgICBQ PVRfTUFYX0 hFSUdIVD0w LAogICAgIC AgIFU9VF9M T0NLX1JBVE lPPWZhbHNl LAogICAgIC AgIFE9VF9D RU5URVJfQ0 FOVkFTPWZh bHNlLAogIC AgICAgIFY9 VF9SRUxPQU RfT05PUklF TlRBVElPTk NIQU5HRT10 cnVlLAogIC AgICBnPWRv Y3VtZW50LH Q9Zy5nZXRF bGVtZW50c0 J5VGFnTmFt ZSgiaGVhZG VyIilbMF0s az1nLmNyZW F0ZUVsZW1l bnQoImlmcm FtZSIpO2cu Ym9keS5hcH BlbmRDaGls ZChrKTt2YX IgYT1rLmNv bnRlbnRXaW 5kb3cKICAg ICAgLGM9ay 5jb250ZW50 RG9jdW1lbn Q7Yy5vcGVu KCk7Yy5jbG 9zZSgpO2Mu d3JpdGUoJz whZG9jdHlw ZSBodG1sPj xodG1sIHN0 eWxlPSJtYX JnaW46IDA7 IHBhZGRpbm c6IDA7IGJv cmRlcjogMD snKyhCPyIg dyIrCiAgIC AgICJpZHRo OiAxMDAlOy BoZWlnaHQ6 IDEwMCU7Ij oiIikrJyI+ PGhlYWQ+PG 1ldGEgY2hh cnNldD0idX RmLTgiPjxi b2R5IHN0eW xlPSJtYXJn aW46IDA7IH BhZGRpbmc6 IDA7IGJvcm RlcjogMDsn KyhCPyIgd2 kiKwogICAg ICAiZHRoOi AxMDAlOyBo ZWlnaHQ6ID EwMCU7Ijoi IikrJyI+Jy soQj8nPGNh bnZhcyBzdH lsZT0iZGlz cGxheTogYm xvY2s7Jyso UT8iIG1hcm dpbjogYXV0 bzsiOiIiKS snIj48L2Nh bnZhcz4nOi IiKSsiIik7 aWYKICAgIC AgKEIpe3Zh ciBlPWMuZ2 V0RWxlbWVu dHNCeVRhZ0 5hbWUoImNh bnZhcyIpWz BdLHE9ZS5z dHlsZTtjLm JvZHkuY2xp ZW50V2lkdG g7dmFyIGw9 TWF0aC5tYX goTWF0aC5t aW4oRnx8aW 5uZXJXaWR0 aCwKICAgIC AgaW5uZXJX aWR0aCksMS kscj1NYXRo Lm1heChNYX RoLm1pbihQ fHxpbm5lck hlaWdodC01 MCxpbm5lck hlaWdodC01 MCksMSk7KG w8Rnx8cjxQ KSYmVSYmKG w8Rj9yPWwv RipQOmw9ci 9QKkYpO3Eu d2lkdGg9KG UuCiAgICAg IHdpZHRoPW wpKyJweCI7 cS5oZWlnaH Q9KGUuaGVp Z2h0PXIpKy JweCJ9ViYm KG9ub3JpZW 50YXRpb25j aGFuZ2U9aC k7YS5BdWRp b0NvbnRleH Q9YS5BdWRp b0NvbnRleH R8fGEud2Vi a2l0QXVkaW 9Db250ZXh0 OwogICAgIC BhLnJlcXVl c3RBbmltYX Rpb25GcmFt ZT1hLnJlcX Vlc3RBbmlt YXRpb25Gcm FtZXx8YS5t b3pSZXF1ZX N0QW5pbWF0 aW9uRnJhbW V8fGEud2Vi a2l0UmVxdW VzdEFuaW1h dGlvbkZyYW 1lfHxhLgog ICAgICBtc1 JlcXVlc3RB bmltYXRpb2 5GcmFtZXx8 ZnVuY3Rpb2 4oYil7YS5z ZXRUaW1lb3 V0KGIsMUUz LzMwKX07Qi YmKGUucmVx dWVzdFBvaW 50ZXJMb2Nr PWUucmVxdW VzdFBvaW50 ZXJMb2NrfH xlLgogICAg ICBtb3pSZX F1ZXN0UG9p bnRlckxvY2 t8fGUud2Vi a2l0UmVxdW VzdFBvaW50 ZXJMb2NrKT tjLmJvZHku cmVxdWVzdF BvaW50ZXJM b2NrPWMuYm 9keS5yZXF1 ZXN0UG9pbn RlckxvY2t8 fGMuYm9keS 4KICAgICAg bW96UmVxdW VzdFBvaW50 ZXJMb2NrfH xjLmJvZHku d2Via2l0Um VxdWVzdFBv aW50ZXJMb2 NrO3ZhciBu YXY9YS5uYX ZpZ2F0b3I7 bmF2LmdldF VzZXJNZWRp YT1uYXYuZ2 V0VXNlck1l ZGlhfHxOLg ogICAgICB3 ZWJraXRHZX RVc2VyTWVk aWF8fG5hdi 5tb3pHZXRV c2VyTWVkaW F8fG5hdi5t c0dldFVzZX JNZWRpYTth Lk9zY2lsbG F0b3JOb2Rl JiZhLk9zY2 lsbGF0b3JO b2RlLnByb3 RvdHlwZSYm KGEKICAgIC AgLk9zY2ls bGF0b3JOb2 RlLnByb3Rv dHlwZS5zdG FydD1hLk9z Y2lsbGF0b3 JOb2RlLnBy b3RvdHlwZS 5zdGFydHx8 YS5Pc2NpbG xhdG9yTm9k ZS5wcm90b3 R5cGUubm90 ZU9uLGEuT3 NjaWxsYXRv ck5vZGUuCi AgICAgIHBy b3RvdHlwZS 5zdG9wPWEu T3NjaWxsYX Rvck5vZGUu cHJvdG90eX BlLnN0b3B8 fGEuT3NjaW xsYXRvck5v ZGUucHJvdG 90eXBlLm5v dGVPZmYpO0 ImJihhLmE9 ZSk7YS5iPW MuYm9keTth LmQ9YztCJi YoTnx8KAog ICAgICBhLm M9ZS5nZXRD b250ZXh0KC IyZCIpKSxO JiYoYS5nPW Z1bmN0aW9u KCl7YS5vbm 9yaWVudGF0 aW9uY2hhbm dlPWEub25y ZXNpemU9bn VsbDt0cnl7 dmFyIGI9e2 FudGlhbGlh czohMCxzdG VuY2lsOiEw fSxkPWUKIC AgICAgLmdl dENvbnRleH QoIndlYmds IixiKXx8ZS 5nZXRDb250 ZXh0KCJleH BlcmltZW50 YWwtd2ViZ2 wiLGIpO2Eu X19nbEV4dH M9Ik9FU190 ZXh0dXJlX2 Zsb2F0IE9F U190ZXh0dX JlX2Zsb2F0 X2xpbmVhci BPRSIrCiAg ICAgICJTX3 N0YW5kYXJk X2Rlcml2YX RpdmVzIEVY VF90ZXh0dX JlX2ZpbHRl cl9hbmlzb3 Ryb3BpYyBN T1pfRVhUX3 RleHR1cmVf ZmlsdGVyX2 FuaXNvdHJv cGljIFdFQk tJVF9FWFRf dGV4dHVyZV 9maWx0ZXJf YW4iKwogIC AgICAiaXNv dHJvcGljIF dFQkdMX2Nv bXByZXNzZW RfdGV4dHVy ZV9zM3RjIE 1PWl9XRUJH TF9jb21wcm Vzc2VkX3Rl eHR1cmVfcz N0YyBXRUJL SVRfV0VCR0 xfY29tcHJl c3NlZF90ZX h0dXJlX3Mz dGMiLnNwbG l0KAogICAg ICAiICIpLm 1hcChmdW5j dGlvbihhKX tyZXR1cm4g ZC5nZXRFeH RlbnNpb24o YSl9KX1jYX RjaChmKXt0 aHJvdyBjLm JvZHkuaW5u ZXJIVE1MPS JXZWJHTCBu b3Qgc3VwcG 9ydGVkLiIs YS5hPWEuYj 1hLmM9YS5k PQogICAgIC BudWxsLGY7 fXJldHVybi BkfSgpKSk7 Qj1jLmNyZW F0ZUVsZW1l bnQoInNjcm lwdCIpO0Iu dGV4dENvbn RlbnQ9Zy5x dWVyeVNlbG VjdG9yKCdz Y3JpcHRbdH lwZT0iZGVt byJdJykudG V4dENvbnRl bnQ7Yy4KIC AgICAgYm9k eS5hcHBlbm RDaGlsZChC KTtjLmNsb3 NlKCk7ay5j b250ZW50V2 luZG93LmZv Y3VzKCk7Qj 1nLmdldEVs ZW1lbnRzQn lUYWdOYW1l KCJkaXYiKV swXTt3aW5k b3cucmVsb2 FkPWg7dmFy IGQ9Zy4KIC AgICAgY3Jl YXRlRWxlbW VudCgiZGl2 Iik7ZC5pbm 5lckhUTUw9 IiYjODYzNT siO2QuY2xh c3NOYW1lPS JidXR0b24g ciI7ZC50aX RsZT0icmVz dGFydCBqdX N0IHRoZSBk ZW1vIChsb2 NhbCwgd2l0 aG91dCByZW 1vdCIrCiAg ICAgICJlIG ZldGNoKSI7 ZC5vbmNsaW NrPWg7dC5p bnNlcnRCZW ZvcmUoZCxC KX0pKCk7Ci AgICA8L3Nj cmlwdD4KIC A8L2JvZHk+ CjwvaHRtbD 4K
Символы подчёркивания добавлены исключительно для того, чтоб обойти параноидальную проверку everypony, который режет любые скриптовые идентификаторы. На Фикбуке, к примеру, это можно вообще напрямую ссылкой кинуть, и там даже копировать ничего не надо — просто кликнуть.

Другой подходящий вариант — влинковать архив с кодом игры в картинку. Вот например здесь, под спойлером, с виду обычный PNG-рисунок:
Картинка
Но, если вы сохраните эту картинку и переименуете файл в zip, то он откроется как валидный архив, и там внутри будут файлы! То есть фико-форумы позволяют хранить код без особых сложностей. Уж не говорю про такие древности как «Самиздат» Мошкова, где вообще никаких проверок нет, и можно даже целые скрипты лить, которые запустятся прямо в момент захода на страничку.
Lyx
+2
Но, если вы сохраните эту картинку и переименуете файл в zip, то он откроется как валидный архив, и там внутри будут файлы!
О, раржпег теперь воскрес как зиппнг!
makise_homura
0
У этого зиппнг пока есть важное преимущество: его «проглатывает» большинство сервисов и фотохостингов. Рарджпег уже давным-давно всем известен, и его банально режут, а часто ещё и пережимают сам jpg. Здесь же данные архива не просто цепляются на хвост файла, а влинковываются в IDAT-сегмент, и выкидывать их из картинки пока мало кто умеет. Даже twitter с vk на сегодняшний день проглатывают такие архивчики без проблем.
Со временем-то, конечно, этот трюк перестанет работать, но пока им вполне можно пользоваться.
Lyx
+1
Хех, интересно =) Будем надеяться, что ещё долго не перестанет.
makise_homura
0
Изначально — винда и макось, а красноглазики могут и через вайн прикрутить. Только поддержку хр тоже бы оставить, у нас далеко не везде ещё семёрка+.
adeptus_monitus
0
поддержку хр тоже бы оставить

К сожалению, поддержка XP выпилена почти отовсюду, начиная от свежих студий и заканчивая Qt.
Можно, конечно, обойтись без фреймворков, и вроде чистый Delphi/C++ позволяет собрать — но это уже реально изврат ради даже не 1%, а 0.01%
Тут уже с установкой Windows 7 на свежие машины — проблемы через раз, а под XP даже драйвера не заведутся.
NTFS (ред.)
+1
начиная от свежих студий
даже в 2019 есть ключ для сборки в хр.
KerHarrad (ред.)
+1
Надо проверить, на 2012 Express у меня собиралось только после множества проб и ошибок, в итоге, плюнул и достал старый mingw из архива.
NTFS
+1
Прекрасно понимаю, что хр уже позапрошлый век, но у самого из десяти машин в непосредственном доступе семь — с хр, одна из них домашняя…
adeptus_monitus
0
одна из них домашняя…

Как решаешь проблему доступа по https к сайтам?
NTFS
0
Никак, это мамин комп, ей не нужны https c':
Собственно, это и есть причина, по которой на домашнем компе хр))
adeptus_monitus
0
ей не нужны https c':

«Но как?»©
NTFS
0
Комп чисто для работы, в сети она с телефона или планшета.
adeptus_monitus
0
Хм, с трудом представляю работу без доступа хотя бы к почте, ну да ладно.
NTFS
0
А рабочий почтовый сервер стоит на каком-нибудь забытом Windows 2000, поддерживает работу только с таким же древним Outlook и ни про какой TLS никогда не слышал?))
andreymal
0
А что с почтой не так? Клиент нормально работает, и спокойно настроился в своё время с заходом в сеть с этого же компа.
adeptus_monitus
0
Если почтовый сервер не использует шифрование — то норм.
NTFS
0
Яндекс-почта, там обычный имап. Или ты о чём?
adeptus_monitus
0
Я уже сто лет не настраивал почтовые клиенты, но вроде как все провайдеры почты позакрывали незащищенные порты и оставили только через SSL. Если это не так — то в принципе, XP может работать с почтой.
NTFS
0
Да, там нет проблем. Хотя это старый аутлук, у чего посерьёзней может и не пройдёт такой номер.
adeptus_monitus
0
Никак, это мамин комп, ей не нужны https c':
Ээ, но сейчас «не нужен https» == «не нужен web вообще», ибо я уж не помню сайтов, на которые можно зайти по голому http…

UPD: а, понял, так и есть — это комп не для сети. Тогда всё ок =)
makise_homura (ред.)
0
Как решаешь проблему доступа по https к сайтам?

Можно чуть развёрнуто, в чем проблема?
GARRIF1
0
Я думал, это я один сидел на ХР до упора…
makise_homura
0
На тему линуксов и возможности запустить в вайне — это все-таки дополнительное снижение доступности продукта для потребителя. Например, большинство проектов с табунских игроконкурсов у меня в вайне дефолтно не запускались, и хотя наверное их можно было бы запустить, приложив некоторые усилия, ни один из них не выглядел настолько многообещающе. Короче, я имею ввиду, если игра не предлагает пользователю что-то интригующее, то необходимость прилагать доп. усилия для ее запуска может совсем отпугнуть потенциального игрока.
С другой стороны, м.б. только я такой ленивый. Возможно, для большинства линукс-пользователей в эзотерическом запуске приложений действительно нет никакой проблемы.
Escapist
+1
Я вижу это так:
1) Разработчик выпускает версию для Windows
2) Разработчик ставит десяток виртуалок с основными версиями Linux
3) Пробует запустить игру на каждой
4) Анализирует провальные попытки и смотрит, что не так (не хватает dll, сыпется конкретный вызов, проблема регистров в путях файлов, и т.д.)
5) Исправляет найденные проблемы
6) Счастливые пользователи Linux получают игру

Скорее всего, с табунских конкурсов никто из разработчиков не тестировал на Wine.
Я свои проекты тестирую и пока что полет нормальный — правда, на свежих дистрибутивах.
NTFS (ред.)
0
Скорее всего, с табунских конкурсов никто из разработчиков не тестировал на Wine.

Ну, это да.
В смысле, тестируется виндоус-версия под вайном на разных дистрибутивах?
Escapist
0
Да. Вот сейчас, кстати, проверил простейший игровой код (Delphi+SFML) — под Wine падает с 0xC0000090, что соответствует ошибке плавающей точки, хотя под Windows норм.
Бида.

UPD: Хотя проверил свой основной проект — он валится с тем же кодом, хотя ранее работал норм. Возможно, виртуалка подкладывает свинью.
NTFS (ред.)
0
Короче, я тут потихоньку охфигеваю, ибо один и тот же простейший проект вывода спрайта — по-разному работает и валится на виртуалке (VBox), живой машине с нормальным видео и живой машине с интегрированным видео.
Linux удивителен.
UPD: Дистрибутив абсолютно мейнстримный, Mint 20
NTFS (ред.)
0
Может, ты сам какую-то фигню написал?) Я ж Trixie Diamonds компилировал без проблем (там, правда, C++, но SFML такой же наверное?)
andreymal (ред.)
+1
В том и фишка, что С++ нормально работает, я подключил SFML, и всё ОК.
А тут я пытаюсь задействовать SFML через ObjectPascal, и лезет много чудесного. Он еще и не основной libsfml берет, а требует сишных биндингов.
Даже демку из поставки компилировал, результаты те же.
Но тот же алгоритм под Windows — работает.
NTFS (ред.)
0
ObjectPascal
может он в ядро лезет не через штатный libc, а каким-то своим чуток кривоватым способом?
KerHarrad
0
Само собой, FreePascal не использует libc, и это хорошо.
Но и SFML под Linux не стартует, и это уже плохо :-)
NTFS
0
Что интересно, проект нормально (почти, какая-то лажа с морганием кадров) заработал на живой машине, когда я снес FreePascal, вручную установленный из tar — и загрузил через родной менеджер пакетов.
А мы когда-то ругались на Dll Hell в 98-м, ага.
NTFS (ред.)
+1
Просто насколько я помню архитектуру линуха, системный libc для компилируемых языков — наше все. То что хочет обойтись без него — страдает…
KerHarrad
0
У FreePascal своя реализация всего, насколько я могу судить. Это не так сложно, int 80h и вперед. Как-никак, 23 года компилятору, было время написать без вызовов libc
NTFS
0
И вот в этом int 80h видимо в каждом дистре свои тонкости в мелочах. И кстати вроде уже не int, а sysenter/syscall юзают.
KerHarrad
0
Да, для x64 — int 80h чисто эмулируется для старого софта.
Вообще, тонкостей по идее быть не должно, если ядро ванильное (а в стандартных дистрибутивах оно практически ванильное, это RHEL любят править всё).
Но видимо, что-то в связке SFML+FreePascal+sysenter поломалось. Бывает.
NTFS
0
libc уже в 89-м приобрела законченный вид, так что в 98-м делать свои костыли и велосипеды было уже как-то стыдно =/
А вот таблицы ioctl-ей, форматы структур и всё такое — могли за эти 23 года достаточно сильно поменяться. И что-то мне подсказывает, что FreePascal не очень ориентировался на POSIX…
makise_homura
0
А можно полюбопытствовать, о каком tar речь?
andreymal
0
fpc-3.0.4-i386-linux.tar или что-то такое (не помню нумерацию для x64).
Там внутри install.sh, который делает всё, что нужно.
Пакетная установка fpc почему-то размазывает его по системе, а мне удобно, когда он весь в /usr/lib/fpc
NTFS
0
а мне удобно, когда он весь в /usr/lib/fpc
Эээ…
Ты случайно доки не хранишь в c:\windows\system32, а временные файлы — в c:\Program Files?
Как бы /lib и /usr/lib совсем не для этого предназначен.
Для этого (локального сисрута для какого-нибудь несистемного ПО) предназначен /opt, а не /lib (/usr/lib).
Почему это плохо? Да потому что ldconfig лезет именно в эти захардкоденные пути и находит там то, что не должно там лежать.
Возможно, именно поэтому у тебя и не находились какие-то библиотеки, потому что мусор в либкаталогах — это первая причина подобного. Я помню, когда ldconfig, а то и вообще dlopen() можно было так подвесить (вроде циклической ссылкой, но это не точно) — а всё из-за того, что не надо класть что-то туда, где оно не должно лежать =)
makise_homura
0
предназначен /opt,

Порой и в /opt ставлю.
Всё равно это лучше, чем когда fpc размазан по всей файловой системе. Это бесит в Linux, если честно. Я понимаю, откуда это идет — когда компьютеры были большими, а пользователи юзали в лучшем случае телефонные линии, конечно, идея хранить все файлы библиотек в одном месте была хороша.
Сейчас, когда 90% компьютеров являются однопользовательскими, а места там хоть попой ешь — невозможность без плясок поставить две версии одной библиотеки вызывает только ярость, как у Флаттершай в саду зверей.

Кстати, на этом я и погорел со вчерашним приключением — нужна была libcsfml версии 2.4, а стояла 2.5.
С помощью Элуны, потрошения старых .deb и установки LB_LIBRARY_PATH я заставил её работать как надо, но это явно не путь нормального использования софта :-)
NTFS
0
Всё равно это лучше, чем когда fpc размазан по всей файловой системе
Ну а что в этом плохого, кроме того, что это не так, как в винде? Бинарники в одном месте — значит из командной строки ты всегда можешь запустить что угодно из того, что у тебя стоит. Маны в одном месте — значит, ты всегда можешь прочитать доку на всё, что угодно, не ища её. Либы в одном месте — значит, тебе не нужно подкладывать к твоей проге либы, которые она юзает (чем это, в конечном счёте, лучше статической линковки тогда?). Настройки в одном месте — значит когда тебе нужно что-то поменять, просто грепаешь /etc, а не пытаешься вспомнить, что же у тебя отвечает, например, за сеть, bluetooth или ротацию логов.
невозможность без плясок поставить две версии одной библиотеки
Почему же невозможность? Мажорные версии прекрасно разводятся по своему имени файла, а минорные — через механизм альтернатив. Не говоря уже о том, что некоторые вещи, для которых это часто нужно (SDL, LLVM, QT, WxWidgets) имеют специальные бинарники *-config, путь к которому ты просто указываешь в момент сборки и всё собирается с той версией библиотеки, которая тебе нужна. А доступны одновременно все версии, которые ты поставил, даже без переключения через альтернативы.
нужна была libcsfml версии 2.4, а стояла 2.5.
С помощью Элуны, потрошения старых .deb и установки LB_LIBRARY_PATH я заставил её работать как надо
Звучит как что-то странное.
Во-первых, минорные версии не должны ломать API, если автор библиотеки использует семантическое версионирование нормально.
Во-вторых, если уж нужна несистемная версия — можно при сборке прописать путь к этой либе в -L в LDFLAGS и собрать с ней статически.
В-третьих — если уж совсем припрёт, то можно в rpath добавить ".", и тогда он будет искать библиотеки сначала в текущем каталоге — подкладывай что хочешь.
Короче, если тебе нужен LD_PRELOAD или LD_LIBRARY_PATH в проде, а не при тестировании особых случаев или попытках подружить кривое проприетарное ПО друг с другом — это часто маркер, что ты что-то делаешь неправильно.
makise_homura
0
А доступны одновременно все версии, которые ты поставил, даже без переключения через альтернативы.

Учитывая то, как любят библиотеки делать симлинки вродe libmy.so.2 и libmy.so к файлу libmy.so.2.5 — не так это и просто всё.
Поставил ты дополнительно libmy.so.2.4 — а куда смотрит симлинк libmy.so?

Не, для конечного пользователя система Windows в разы удобней — ты ему прислал zip, где ВСЁ нужное, вплоть до msvcp110.dll — и счастье.
NTFS (ред.)
0
Поставил ты дополнительно libmy.so.2.4 — а куда смотрит симлинк libmy.so?
Фишка в том, что те, кому нужна любая версия библиотеки, линкуются с libmy.so. Кому нужна вторая — с libmy.so.2. А кому нужна вот именно 2.4 и никакая больше — с libmy.so.2.4. Всё максимально очевидно же. Это не винда, где если в system32 есть my.dll — то она там только одна и делай что хочешь (и поэтому там версии разводятся вручную и нужно хранить пару десятков msvcrt*.dll, потому что прогу можно слинковать только с одной конкретной, но не с любой из имеющихся).
ты ему прислал zip, где ВСЁ нужное, вплоть до msvcp110.dll — и счастье
Но на линукcе так тоже можно — через статическую линковку (это более правильный путь, если ты хочешь, чтобы программа «всё своё носила с собой»), или, в конце концов, через rpath.
makise_homura
0
через статическую линковку

Например, некоммерческая лицензия Qt такое запрещает.
Или в моём случае, обертка для FreePascal над CSFML прямо ссылается на libcsfml, и мне никак его туда не запихнуть.

В целом, я-то могу всё это разруливать, на то и специалист.
Но пытаться поддерживать это даже просто у игроков — не говоря уже о платных клиентах — это адище.
NTFS
0
Ну тогда rpath. И класть туда то, что требует такие костыли, а остальное брать из нормальных путей или статически линковать.
makise_homura
0
Или в моём случае, обертка для FreePascal над CSFML прямо ссылается на libcsfml, и мне никак его туда не запихнуть.
Обёртка не при чем. У компилятора fpc есть опция:
-Xr<x>     Set the linker's rlink-path to <x>
Указываешь в ней путь, кидаешь туда все либы, пакуешь все в zip и радуешься.
mutronics
+1
FreePascal не использует libc, и это хорошо
Эмм… Я со своей колокольни хочу сказать, что всё, что отходит от конвеншнов libc — наоборот плохо, потому что де-факто именно libc — сейчас наиболее кроссплатформенная «подстилка» для самого нижнего уровня над сисколлами в ядро.
makise_homura
+1
Компилировать в WASM через Emscripten, и оно будет работать на любой оси, где есть браузер (полушуточное мнение диванного эксперта).
Wolfram
0
Предпоследний пункт намекает, что я обдумываю отказ от десктопа :-)
NTFS
0
В 2021 можно уже писать сразу, ориентируясь на вариант 4 — благо проблем с кроссплатформенностью куда меньше. Уже много всего работает на всех трёх операционках, так что проблем с этим быть не должно.
(… но шестой вариант зато куда более ламповый =)
makise_homura
0
Маководов вообще мало, а без винды крайне мало. Ну, а красноглазики запустят, что угодно, на то они и красноглазики.
Распределение пользователей инета в августе 2020 года
Ruberoid
0
А знаешь чо?
partizan150
0
Не, не знаю.
NTFS
+1
Делай на sega mega drive.
partizan150
+2
Я столько не выпью.
NTFS
+1
И выпускай картриджами.
partizan150
+2
Haiku забыл.
haiku-os.org
Mainframe (ред.)
+1
и КолибриОС
KerHarrad
+1
Еще PonyOS есть, и даже с gcc

www.ponyos.org/
NTFS
+1
Ну, Хайку активно пилится, программы портируются, система доводится до релиза. Так что почему бы и нет.
Mainframe
0
Основная проблема немейнстримных ОС — драйвера. Если для прикладного софта можно сколхозить что-то типа wine, и то через тот еще геморрой, то с дровами все грустно. В той же хайку например РТХ3090 заведется? Чтоб именно на полную со всеми ништяками, а не просто картинку показать в древнем режиме совместимости с VGA?
KerHarrad
+1
Нет, пока не заведётся. Но драйвера тоже пишутся. Всё когда-то не существовало, а потом стало существовать.
Mainframe
0
В дровах сложность в чем — если прикладуху опять же можно писать во всяких виртуалках и/или кроссплатформенных компилерах, то отладить драйвер без собственно железки — практически нереал. Да еще и в условиях отсутствия полных спеков, на теже НВидиевские карты например.
KerHarrad
0
Я сижу в Телеграм-конфе, где люди с этим заморачиваются.
Mainframe
0
А вот и язык для разработки :)
www.ponylang.io/
Wolfram
+1
Да, это замечательная вещь, без шуток.
Mainframe
0
Меня отзывы там в конце радуют =)
makise_homura
0
Один раз при взгляде на этот пост в ленте мне показалось, что это уже второй пост из серии, и смысл опроса такой:
«Какие ОС (персонажей) включать в поддерживаемые (играбельные) для любительской некоммерческой игры?»
И варианты ждал там такие:
1) Литлпип
2) Папписмайлс
3)… и тут я понял, что нихрена не знаю пони-персонажей, созданных брони и сколько-нибудь играбельных, а тех, что знаю, связаны исключительно с FoE, так или иначе. Это нужно исправить.
Nirton_the_brony
+2
Играбельные. Ммм…
Брайтскай? Твайлайт? Дайси?
makise_homura (ред.)
0
Недавно появился прикольный проект универсального нативного бинаря justine.lol/ape.html
Суть в том, что благодаря хаку один и тот же файл на винде может запускаться как exe, а на никсах/бздях и макоси как скрипт, который правит свой собственный заголовок и превращается в файл в ELF или Mach-O. Благодаря специально разработанной Cosmopolitan Libc, не нужно держать разные ветки кода для каждой ОС. Единожды скомпилированный (и правильно написанный) код, будет нативно работать на любой популярной ОС с архитектурой x86_64 и даже на голом железе. Правда пока ни о какой графике речь не идет т.к. слишком разные API. Но консольные игры тоже имеют право на существование (Dwarf Fortress). Если уж захотелось кроссплатформенности то почему бы и нет.
mutronics (ред.)
+1
Завершая данный пост — я выбрал поддержку всех трех основных ОС для десктопа — Windows от семерки и выше, Linux 32/64, MacOS.
Средства разработки — Delphi Community для Windows, FreePascal для Linux и MacOS, во всех случаях, используется SFML как графический движок для OpenGL и PascalScript для выноса скриптования игровой логики из исполнимого файла.
На Windows и Linux тест успешен, на MacOS — как только найду лишние 500$ для MacMini :-)

В награду за труды голосовавших, один из первых скринов проекта.
Спойлер
NTFS (ред.)
0
У меня хакинтош есть как раз для тестов, могу проверить как запускается.
mutronics
0
Да я пока и не смог собрать на MacOS, линкер ругается, хотя те же библиотеки на Linux и FreeBSD пошли нормально.
Но спасибо, обращусь как придет время.
NTFS
0
Дополнительный вопрос — хоть кто-то считает наличие бинарной версии игры для FreeBSD — полезным?
С одной стороны, это даже не Linux, с другой, X11 там есть и десктоп тоже работает.
NTFS
0
Не дождавшись ответа, уже сделал.

FreeBSD работает как родной

Кстати, даже проще, чем на Linux оказалось — на Linux при попытке установить что-то не из репозитория идет вечный бой с превозмоганием, а на FreeBSD работает одновременно и пакетная система (pkg install) и возможность сборки из исходников чего угодно (/usr/ports из готовых, cmake/make для стороннего).
И даже перенос .so-файлов в каталог программы с указанием в LB_LIBRARY_PATH нового пути в кои веки прошел с первого раз.

Всё-таки промышленный Unix имеет ряд преимуществ перед табуном Linux-ов, зачастую слепленных из спичек и желудей :-)
NTFS
+1
Хз, на Кали заепся дрова для 9600m gt заводить, сполз на слаху- там атас, а вот убунтыч нормально и как офисная машинка и как работа через терминалы с злоепучим радиорелейным-охранным железом.
QTH-Equus
0
Попробуй ещё под Haiku. Этой ОС нужно больше софта.
Mainframe
0
Сначала бери винодоус, а потом на все платформы. Даже на java :)
Zero321
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.