Pull to refresh

Comments 63

Наоборот, вся игра на кликах, что делать пальцами будет очень комфортно. Понятно что вариант не для чемпионатов, а вот поиграть в поездке будет прекрасно.
Я тут Дюна2 под андроидом поиграл, гораздо удобнее управление чем на ПК была.
Там половина секрета успеха в использовании горячих клавиш на клавиатуре :)
UFO landed and left these words here
Правого клика не будет, шоткатов не будет. Т.е сдвинуть юнитов — только через кнопки вправо внизу. Впрочем, если ее адаптировать к жестам — может получиться вполне ничего.
Никакого микро же. Если только побаловаться…
Это мегакруто. А вот эти слова просто убили:
дизассемблировал игру в IDA, затем конвертировал код на C с помощью инструментов собственной разработки (их пришлось написать в процессе работы специально для этой задачи), потом скомпилировал в нормальную программу и связал с библиотекой winelib, которая работает с Win32 API из-под ARM-версии wine. Задача поначалу казалась простой

Задача поначалу казалась простой

Нифигасебе простая задача! А что тогда сложная?

На самом деле, современные версии HexRays (плагин для превращения кода в C-код для IDA Pro) восстанавливают код достаточно точно. Достаточно для того, чтобы какую-нибудь функцию скопировать и скомпилировать.
UFO landed and left these words here
А в чем профит от дизассемблирования и последующей компиляцией/линковкой с winelib и «просто взять запустить под wine»?
Подозреваю нельзя «просто взять запустить под wine» из за разницы в системе команд x86 и ARM
Виртуально эмулировать нужные команды никак? Игры Плейстейшен2 сейчас на х86 запускают (хоть и работает на костылях), неужели старика 386-нельзя заэмулировать (темболее что старкпафт старый и никаких расширений типа 3DNow не использует)
Ну это по сути и есть эмуляция. Разве что не в реальном времени.
Можно, только тормозить будет… Старик-386 — чрезвычайно паршивая с точки зрения эмуляции платформа, особенно если архитектура хоста — RISC.
И посмотрите, какая нужна машина, что бы сэмулировать PS2? Какие накладные расходы на эмуляцию? Там соотношение даже не 1 к 10.

Ну и условно говоря, DosBox например, существует и эмулирует, но на одноядерном ARM7 на 1 ГГц он эмулирует (в плане скорости) где-то 486й на 66/100 Мгц. Причем эмулирует он не всю обвязку, а только ту, что критично нужна. Здесь же придётся эмулировать всё, что необходимо для запуска Windows.
>>>Какие накладные расходы на эмуляцию?
Современные компы тоже не пальцем деланные — у меня бюджетный 4-ядерник за 150$ и парой 2 Гб оперативки достойно осилил GTA: VCS — правда звук паршивый, проблемы с разрешением (изменить нельзя), но то такое — жить можно.
Бюджетный 4-ядерник — это телефон?
А. А то тут народ собрался и обсуждает ARM'ы.
Лучше бы ты молча взял на себя эту задачу и помог бы ему.
Лучше бы вы оба заткнулись и восхищались…
Лучше бы для этого автор сначала исходники выложил. Или предлагает последовать его стопам и сконвертить бинарник с той приставки на Андроид?)
UFO landed and left these words here
Тоже верно. Но хотя бы инструкция по сборке была бы явно не лишней.
Обычно лицензия запрещает любые изменения в коде программы, не говоря уже о выкладывании исходников.
UFO landed and left these words here
Только для собственного использования и при наличии оригинальной лицензии.
Еще бы под макось собрал бы кто, с 10.6 не играл в starcraft :(
Кстати, а ведь на коробочке с диском написано PC/Mac CD-ROM. По гуглю видно, что совместимость распростраяется на Mac OS X включительно. А дальше всё, обратной совместимости между ОС нет?
Он скомпилен под PowerPC, а Rosetta (бинарный транслятор на Intel) перестали включать начиная с 10.7.
Вообще говоря, странно, что по прошествию стольких лет Blizzard так и не открыли исходники (хотя желающих их скачать, уверен, много).
UFO landed and left these words here
Они до сих пор её продают, и, более того, до сих пор находятся люди, которые её покупают (например, я). Поэтому не думаю, что в ближайшее время исходники появятся в открытом доступе.
P.S. Они даже Warcraft II до сих пор продают, что уж там говорить.
А подскажите где WCII купить? На батлнете только третий есть.
Ох-ох, видимо, я дезинформировал вас. Последний раз заходил на сайт в 2013 году, вот тут был и WCII Battle:Net Edition. Сейчас нету.
Не видел ее там в прошлом году. По крайней мере варианта купить, даже на диске в их магазине нету.
И что, открытие исходников помешает его продавать?
Конечно нет, однако открытие исходников чаще всего связано с одновременным релизом бесплатной версии, поэтому я так и считаю.
Игра состоит не только из программы, и открытие исходников не делает её бесплатной. Аналогично, например, с Doom — исходники открыты, существует множество портов на разные платформы, но для того, чтобы поиграть, всё равно нужны файлы купленной игры, в которых содержатся, графика, карты, музыка, звуки и прочее.
Хм… В StarCraft уже давным-давно можно было поиграть на ARM-девайсах, причем без монструозной зависимости от winelib/Winulator. Неужели автор порта не слышал о таком проекте, как Stargus?

Я это к тому, что вместо полугодового ада дизассемблирования, можно было внести лепту в открытый проект, допилить его до ума. Хотя, надеюсь, что дизассемблированный код, в частности, логика, войдет и в проект Stargus.
Upd: Оказывается, автор порта — Notaz, человек весьма известный и уважаемый в узких кругах владельцев портативных консолей от GamePark (Caanoo, WIZ) и OpenPandora. Ему не привыкать тянуть на себе очень сложные проекты, например, эмулятор PS One с динамическим MIPS->ARM recompiler; или известный многим эмулятор Sega — PicoDrive, который был портирован на все что только можно. Так что дизассемблирование такой игры не представляет особой сложности для него.
По сути, Stargus (как и Wargus) — это не портирование, а создание игры с нуля с использованием оригинальных ресурсов. Т.е., механика делается частично по тому, что удалось раскопать в ресурсах, частично «на глазок». Если же портировать именно код — получаешь всю «логику» из коробки. Что проще — тот ещё вопрос…
Если это был не риторический вопрос, то автор определенно знаком с Stargus, поскольку его можно видеть в списке игр на первых секундах видео (или же изображение в заголовке этого поста). Так что вполне возможно, как вы и предположили, результат распиливания игры пойдет в код проекта.
Stargus нереально допилить до ума как минимум потому, что движок Stratagus не поддерживает и половину нужных фич. Сейчас оно представляет собой очень сырое поделие, в котором не работает почти ничего, а то что работает — работает не так. А переписывать Стратагус… Не, уж проще и быстрее рекомпилировать.
Ну насчет «не работает ничего» вы загнули… В принципе, там достигнут уровень WarCraft 2 (ну может с частью фич из Battle.Net Edition). Но StarCraft использует изометрию (что накладывает специфику на расчет путей и прочего) и множество других фич, которых в движке пока нет.
UFO landed and left these words here
UFO landed and left these words here
Выше писали
Он скомпилен под PowerPC, а Rosetta (бинарный транслятор на Intel) перестали включать начиная с 10.7.

В тред призывается Мамаич.
Если вдруг кто не знает: гражданин подобным образом портировал Герои 1 и 2 для КПК
UFO landed and left these words here
Титаническая работа :) Но скорее всего он кучу законов нарушил и на него еще в суд подадут.

> вылезло очень много неожиданных проблем
Вспомнилась эта статья, где рассказывается, что код батонов вывели в отдельную ветку и приходилось все изменения делать отдельно для обычных юнитов и для батонов. Разумеется возникнут проблемы…
Sign up to leave a comment.

Articles