Веб-интерфейс ТОМ2 на wine. Фантастика или реальность?

Все попытки запустить графический интерфейс ТОМ2 на линуксе заканчивались неудачей.
Так же как и Фурка, ТОМ использует графический движок HGE, который в свою очередь использует DirectX, с которым на wine всё, видимо, очень плохо.
И это, конечно, очень завышенные требования для простой текстовой игры =)

На текущий момент ТОМ можно запустить на линуксе только под wine, и только в консоли.

А как будут обстоять дела с веб-интерфейсом?

После различных многочисленных экспериментов основная схема работы веб-интерфейса теперь выглядит так:
1. Запускается webtom.exe;
2. Открывается динамический порт в диапазоне 49152 — 65535;
3. В диалоговом окне запускается ИЕ;
4. Отображается HTML-страница, полученная с открытого порта на localhost;
Страница использует CSS, JS, библиотеку jQuery.
На windows все прекрасно работает, результат меня вполне устраивает.

А что интересно будет происходить под wine?
Рассмотрим по пунктам:
1. Запуск webtom.exe.
Проблем быть не должно, это обычный экзешник.
2. Открытие порта в диапазоне 49152 — 65535.
Wine умеет работать с портами? видимо должна…
3. Открытие ИЕ в диалоговом окне.
Поставить ИЕ на wine можно. Правда не все сайты корректно работают, но нам многого и не надо.
Для открытия окна ИЕ используется функция в mshtml.dll
Насколько эта библиотека в её вайновском варианте отличается от родной сказать сложно, надо пробовать…
4. Отображение HTML-страницы, полученной с localhost;
Наверное должно работать, какая собственно разница, откуда получена страница.
CSS, JS — стандарт, без них вообще ничего не работает, проблем быть не должно.

ИТОГ: Надо пробовать!

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

epoxa
А для чего именно ИЕ на линуксе? Если запущен веб-сервер, хоть и локальный, то разве нельзя воспользоваться любым браузером?
ASBer
Да, конечно есть возможность запустить любой браузер.
Но ИЕ позволяет сделать это в самой программе, не открывая лишних окон и не запуская браузера вообще.
realsonic
А не достаточно ли будет какого-нибудь компонента HTML-просмотра для работы? А то целый IE тащить… У Microsoft очень плохо с компонентами — они любят пол системы обновить под какой-нибудь свой продукт.
ASBer
mshtml.dll и есть этот компонент.
На windows он всегда есть по умолчанию, на wine появляется после установки ИЕ (как я понимаю).
vvb
Пока, к сожалению, не только сам ТОМ привязан к Виндовс ОЧЕНЬ большими гвоздями, но и реализация ВЕБ-интерфейса к нему также обладает той же хромотой.
По первому пункту надо отметить, что ASBer проводит большую работу по рефакторингу кода ТОМ. И будем надеяться, что в относительно скором будущем владельцы линукс СМОГУТ скомпилировать ТОМ с помощью gcc.
По второму пункту… Возможно, epoxa может помочь. Или ещё кто. Надо разобраться может с апачем? Или ещё с чем? я просто не очень хорошо понимаю веб-технологии и не совсем понимаю почему сейчас ВЕБ-ТОМ так привязан к винде
Будем надеяться на отвязку от виндовс платформы по всем параметрам
epoxa
Я готов помочь с веб-мордой в меру моих скромных сил. Кстати, можно же тупо сделать движок на виндовс-веб-хостинге, и можно будет играть в инете. ASBer — есть желание?
ASBer
Желание есть конечно.
Но и сам движок пока тоже не доделан, так что это вопрос приоритетов.
Что вперед — доводить до ума платформу, или прикручивать её к веб-хостингу.
realsonic
Как обычно — всё и сразу. :)
epoxa
Хотя, правильнее, конечно было бы сделать кроссплатформенность. Может отказаться от HGE? Зачем он для веб-сервера. Ну или сделать параллельную ветку без HGE
ASBer
Так оно и есть. Сейчас в наличии 3 независимых интерфейса: HGE, веб и консоль.
epoxa
Консольная версия не должна требовать HGE, это так?
ASBer
Эксперименты, проведенные Петром, показывают что всё реально.
У него заткнулось на 4-м пункте — не заработал java script. Вполне возможно что дело в настройках безопасности браузера.