Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: OpenHoMM
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III
Страницы: 1, 2, 3, 4, 5
CrackedMind
Вообщем чтобы не быть голословным залил шаблоны форматов h3c, h3m для 010 editor.

http://sourceforge.net/project/showfiles.php?group_id=209045

Так же в архиве присутствует описание h3m в текстовом виде (формат досовский), там не хватает только описания объектов, они есть в шаблоне.

исправление: переименовали проект, из-за http://www.dantar.ru/
Название пока рабочее, и может изменится

БОЛЬШОЕ ОБНОВЛЕНИЕ
Проект является перепиской движка Heroes 3 SoD, включая поддержку RoE и AB (SoD - Дыхание смерти, RoE - Возрождение Эрафии, AB - Клинок Армагедона)

Основные планы для OpenHoMM:
- нативная поддержка Windows, Linux, Mac OS (нужен разработчик)
- легкая модифицируемость

В конце апреля - начале мая 2009 вышел Preview.1

Скачать можно здесь
hippocamus
А для wog не подходит?
CrackedMind
Не знаю, WoG Не ковырял... Думается мне что там отличия только в идентификаторе версии формата, да в объектах.
Necronix
Да даже если не подойдет, то для опен сорса можно заново вог написатьwink.gif Главное что опен сорс. Это наше всеsmile.gif
Ashka
а для самых продвинутых можно пояснить, что сие значит и как его едят?
CrackedMind
это для программеров, и им сочусвтующих smile.gif
hippocamus
На моём форуме идёт обсуждение проекта создания Ремейка Героев на Delphi (в закрытом подфоруме). Кого интересует этот вопрос - регистрируйтесь, оставьте сообщение в соответствующей теме. Я пущу. Или отпишите по аське. Ссылка в подписи. Пока обсуждаем детали будущего ремейка.
qwebek
герои на делфи - вы хотите cделать геройский ад? delphi -> uninstall.
Arseny
чем тебя делфи не устраивает? lupa.gif
CrackedMind
вообщем, не получилось у меня организовать народ, к сожалению... буду пока писать в одиночку...
hippocamus
CrackedMind,
иди к нам!
http://hippocamus.forum24.ru/
Зарегься и отпиши мне. Давай вместе работать.
CrackedMind
Ну отрапортую маленько, если кому еще интересна судьба проекта.
Разработка затянулась маленько, т.к. пока тяну лямку один.

Готово:
-загрузка файлов из LOD(тут еще и распаковка через zlib), SND
-загрузка и отображение PCX
-разный вспомогательный код

ну и некоторые наброски по GUI есть

P.s. по поводу vcmi выскажусь, код у них просто ужасный, я просто в шоке маленько smile.gif
Монца
Какие нить новости есть?
ssmaxss
CrackMind, а язык какой?
CrackedMind
Цитата(Монца @ 28 Nov 2008, 13:09)
Какие нить новости есть?

Да есть smile.gif потихоньку пишется в одиночку

Цитата(ssmaxss @ 16 Jan 2009, 23:27)
CrackMind, а язык какой?

С++ конечно...
CrackedMind
Если все пойдет по плану и будет свободное время, недели через две-три будет первая версия.
ssmaxss
А платформа только windows? Есть ли где-то текущая версия?
CrackedMind
Платформа разработки - Qt 4.5 release candidate

Так что, платформой будет, все под что компилится Qt. В будущем можно даже под Symbian OS сделать версию smile.gif Если художники найдутся smile.gif

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

p.s. подумал, что все же не 2-3 недели, а вместе с релизом Qt 4.5, который должен состоятся в марте месяце.
ssmaxss
То, что это на Qt это круто! Особенно в свете перехода на LGPL резко повышается смысл осваивать Qt. И какие планы на первую версию? Вот только Сорсфорж... эээ может сразу на что-нибудь типа github/launchpad?
И еще: я про язык спрашивал, потому что думал, что будет это интересно на python'e сделать. Скорость тут не сильно важна - всеравно всю отрисовку будет Qt делать, загрузка и парсинг lod'ов как я понял уже есть на плюсах, но это будет легко обернуть и сделать библиотекой, а вот всю логику писать на python'e. Это повысит скорость разработки и имхо сильно упростит возможные последующие моды/расширения.
CrackedMind
GitHub я так понимаю это git? Я с ним мало знаком, умею только clone делать smile.gif launchpad - bazaar, с которым тоже не работал... Вообщем хостинг ерунда smile.gif

ммм, я думал по поводу питона... Все таки склоняюсь в сторону QtScript, т.к. биндинг к кутэшным объектам проще будет.

Правка
По поводу первой версии... ну думаю, не больше чем gui smile.gif
ssmaxss
QtScript для реализации логики или расширений? Я подразумевал писать на питоне всё кроме того, что уже есть на плюсах smile.gif
По поводу git/bazaar - если в принципе bazaar поддерживает workflow полностью идентичный svn - checkout, update, commit + конечно сохраняются все фишки DVCS, а вообще без vcs как-то не серьезно. У ланчпада плюс в наличии интегрированной багзиллы, к гитхабу она тоже в принципе подключается. И по виду багзилла сорсфоржа просто приводит в ужас по сравнению с багзиллой ланчпада. Просто давно хотел подучить python/Qt а тут сразу и LGPL что мощный стимул, да еще и такой проект интересный, можно было бы попробовать помочь. С++ конечно тоже нормально, но я уверен что с питоном разработка пойдет гораздо быстрее. Хотя бы за счет отсутствия необходимости в компиляции.
CrackedMind
Ты имеешь виду PyQt ? Только не ясно когда биндинги к 4.5 будет. А так, на питоне есть уже smile.gif

git://git.assembla.com/heroes-renaissance.git

QtScript конечно же для логики (не всей). Ну вообще думал на С++ таки писать все, что не будет анписано на qtscript.

Думаю на питоне можно утилиты писать... редакторы разные smile.gif Редактор карт/компаний мощный нужен, т.к. планируются новые возможности.

Потыкался по github, launchpad'у. Лаунчпад интересней, пригляжусь получше.
ssmaxss
Оно работает? А в чем тогда смысл еще одного клона? QtScript это что-то JavaScript подобное puke.gif unsure.gif
А для heroes-renaissance нужен heroes complete. Надо будет где-нибудь скачать, а то в моем SODe(WOGe) что-то lodов не хватает.
Launchpad/bzr мне тоже кажется интереснее, единственная проблема базаара - в тестах проигрывает сильно по скорости гиту. Но имхо это не большая проблема.

Хм. Вроде нашел все лоды. Но extract.py не пашет. Что за модуль Image он пытается загрузить. PIL чтоли нужен? Ща поставим...

WOGифицированные SOD'овские лоды не грузятся smile.gif надо качать heroes complete.
CrackedMind
Оно плохо работает smile.gif Клоны всякие нужны) QtScript - ECMAScript, подмножеством которого и является JavaScript... А что, не нравится? smile.gif
CrackedMind
А против питона у меня один аргумент - отсутствие нормальной поддержки многопоточности. В python 3.0 появился модуль multiprocessing, но это не то.
ssmaxss
ИМХО в данном случае GIL не должен быть проблемой, т.к. если один из потоков выполняет С-код (где-то внутри pyglet или pygame или Qt) то GIL не захватывается и другие потоки могут выполнятся.
CrackedMind
https://launchpad.net/openhomm Пока только зарегистрировал проект. Бранчей еще нет. Скоро думаю появятся smile.gif
Монца
Хватит флудить, для разговоров ни о чем есть отдельный раздел!

P.S. )
Shihad
Монца, люди делают великое дело.
Кстати, камрады, http://forum.df2.ru/index.php?showtopic=11...d=300087&st=0&#
посмотрите. Может, у SandySandy есть интересные наработки по родственному движку.
Монца
Почему не хотите присоединиться к команде VCMI?
Shihad
То есть вот к этим парням. http://antypika.aplus.pl/vcmi/forum/portal...46636eeb571803a

ПС. Монца, ставь ссылки. smile.gif
Монца
ага, вот к этим ребятам spiteful.gif
CrackedMind
Цитата(Монца @ 13 Feb 2009, 20:44)
Хватит флудить, для разговоров ни о чем есть отдельный раздел!

P.S. )


Где ж тут флуд?

Цитата(Shihad)
Монца, люди делают великое дело.  Кстати, камрады, http://forum.df2.ru/index.php?showtopic=11...d=300087&st=0&#  посмотрите. Может, у SandySandy есть интересные наработки по родственному движку.


Цитата(Монца @ 13 Feb 2009, 21:15)
Почему не хотите присоединиться к команде VCMI?

Ну читайте выше. Делаю с использованием Qt. Vcmi & freeheroes - SDL. Ну и тем более, мне не нравится код vcmi smile.gif)
Монца
как раз сможете повлиять на код vcmi.
ssmaxss
На лаунчпаде исходники появились smile.gif Ты думаешь имеет смысл парится с lod'ами? Мне понравилась идея heroes-renessance о распаковке lod'a в кучу файлов, и последующее их использование, имхо так будет гораздо легче людям, желающим твикать графику. А в самом коде как-то пустовато.
Код
=== modified file 'src/gui/hrPushButton.hpp'
--- src/gui/hrPushButton.hpp    2009-02-13 14:41:11 +0000
+++ src/gui/hrPushButton.hpp    2009-02-23 11:14:08 +0000
@@ -1,4 +1,5 @@
#pragma once
+#include <QObject>

class hrPushButton : public QObject
{

=== modified file 'src/hrApplication.hpp'
--- src/hrApplication.hpp    2009-02-13 14:41:11 +0000
+++ src/hrApplication.hpp    2009-02-23 11:15:29 +0000
@@ -1,4 +1,6 @@
#pragma once
+#include <QObject>
+#include <QApplication>

class hrApplication : public QApplication
{

После этого билдится под linux с qt 4.4.2
Shihad
Эммм... Как я понимаю, SDL и Qt - граф.библиотеки Гнома и Кед. Но, кроме графики, есть еще всяческий АИ и т.п. - что и можно позаимствовать. Или нет?
ssmaxss
SDL к Gnome отношения никакого не имеет. KDE использует Qt, но неправильно считать Qt исключитально библиотекой для KDE. Куча программ использует Qt: Opera, Skype...
AI насколько я понимаю пока нет нигде. А возможно или нет будет сделать его общим будет зависить от возможности договорится об общем интерфейсе для этого AI. В идеале вообще AI можно сделать подключаемым, и иметь несколько вариантов AI, потом устраивать соревнования AI против AI biggrin.gif
CrackedMind
ssmaxss
Цитата
После этого билдится под linux с qt 4.4.2

Весьма странно ибо QObject, QApplication подключаются в прекомпилированных заголовках. А версия компилятора какая?
Завтра попробую на mingw скомпилировать...

Цитата
Ты думаешь имеет смысл парится с lod'ами? Мне понравилась идея heroes-renessance о распаковке lod'a в кучу файлов, и последующее их использование, имхо так будет гораздо легче людям, желающим твикать графику.

Да имеет. Ибо там куча файлов smile.gif А твикать будет достаточно просто...

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

И так будет подключаемым smile.gif Но до этого еще очень далеко)
ssmaxss
Компилятор конечно gcc. Версия 4.3.2 Вообще т.к. нужна межплатформенность то только им и надо компилировать. Для Qt под него есть QtCreator, который кстати именно с qt 4.5 и идет.

Не понял насчет lod. Как я понимаю, это просто большой архив с кучей файлов. У тебя есть/будет под него адаптер lod:// т.е. в проге будет lod://adata.lod/images/someimage.pcx Так вот имхо гораздо продуктивнее его просто распаковать и положить в папку. В проге картинки забивать по имени, расширение брать сначало стандартное (там pcx вроде или что-то другое?), потом перебирать png,jpg,bmp... тогда моддерам останется только открыть файл, подредактировать его
и сохранить в тоже место, что имхо сильно упрощает процесс. Ведь если все это не загнется, то будет интересно перерисовывать картинки для работы с большим разрешением... Вобщем если в названии "Open" то ИМХО лучше быть как можно более открытыми, и наличие странных, не стандартых бинарных файлов этому не способствует.
CrackedMind
а где я говорил, что будут hardcoded имена файлов? smile.gif

Цитата
Компилятор конечно gcc. Версия 4.3.2 Вообще т.к. нужна межплатформенность то только им и надо компилировать. Для Qt под него есть QtCreator, который кстати именно с qt 4.5 и идет.


Ну в данный момент компилируется MS Visual C++ 2008 Express Edition. Код пишется в Qt Creator (снэпшот от 17 февраля). Правда я качал версию, которая без самого Qt 4.5 идет, только все необходимы бинарники. Ну и в довершение ко всему, я Qt 4.5 обновляю из git'a, поэтому его полюбому необходимо компилировать под mingw отдельно. Конкретно под linux собрать пока не получится, т.к. винчестер на котором он стоял полетел. Под виртуальную машину его поставить пока не представляется возможным, в виду отсутствия необходимого кол-ва свободного места.
trntrn
Очень удивился что решено использовать Qt. Каким образом он поможет разработке игрового движка? Почему не SDL + lua/python?

Что касается lod предлагаю его оставить хотя бы для того, чтобы избавить пользователя от длительного процесса конвертации. Тот же heroes-renaissance делает это часами, хотя понятно что это python. Я думаю многие захотят запустить OpenHOMM на маломощных машинах, вроде нетбуков и прочего.
CrackedMind
Чем поможет? Qt это не только GUI библиотека, это очень мощный фреймворк, в котором уже много чего есть из коробки. Теже скрипты, биндинг который горазде проще, чем биндинг того же питона/луа. Локализация и т.д. Производительность хорошая, тем более в 4.5 (который кстати вышел уже) провели многочисленные оптимизации.

Цитата
heroes-renaissance делает это часами

Ну ренесанс не только лоды распаковывает, но еще всю графику в png конвертирует... Да и по подпапкам сортирует.

p.s. В связи с тем, что на новой работе работать приходится много, то разработка маленько притормозилась. Сегодня-завтра, в репозитарий внесу изменения добавляющие полную реализацию файлового движка lod, и плагин для поддержки pcx, которые можно будет использовать в других проектах, относящихся к героям, на базе Qt smile.gif

p.p.s. http://www.qtsoftware.com/qt-in-use/usage/...d-visualization вот к примеру
trntrn
Цитата(CrackedMind @ 05 Mar 2009, 10:16)
скрипты, биндинг который горазде проще, чем биндинг того же питона/луа. Локализация и т.д.

Согласен насчет биндинга, но предпочтительней все же использовать луа, как широко известный среди моддеров язык. Локализация.. в героях уже есть механизм в некотором роде, достаточно конвертировать в юникод. Кстати герои уже локализованы на многих языках, это планируется использовать?
Короче, я думаю куте идеально бы подошла для редактора, но для игры это стрельба по воробьям из пушки - 90% фреймворка будет не задействовано.

Цитата
ренесанс не только лоды распаковывает, но еще всю графику в png конвертирует

Да это я и имел ввиду. Как я понял выше предлагали поступить так же.

ps и еще насколько я знаю куте не использует directx, а только opengl для 2d акселерации. Все же c поддержкой opengl под win чуть больше проблем, и в будущем видимо будет только хуже.
CrackedMind
По поводу языка.
Цитата
Qt Script is based on the ECMAScript scripting language, as defined in standard ECMA-262. Microsoft's JScript, and Netscape's JavaScript are also based on the ECMAScript standard.


Я думаю этот язык поболее народу знает smile.gif

Пример (функия из файла demo.js, включенный в сорцы Qt Creator'a)
Код
function demoMessageBoxes()
{
    critical(core.mainWindow, "Critical", "critical");
    warning(core.mainWindow, "warning", "warning");
    information(core.mainWindow, "information", "information");
    var a = yesNoQuestion(core.mainWindow, "Question", "question");
    core.messageManager.printToOutputPane("Answer:" +a);
}

Ну разве сложнее луа?

Цитата
90% фреймворка будет не задействовано.

С чего бы это? smile.gif Будут задействованы как минимум следующие модули: QtCore, QtGui, QtScript, QtScriptTools (дебаггер скриптов).

Цитата
  ps и еще насколько я знаю куте не использует directx, а только opengl для 2d акселерации. Все же c поддержкой opengl под win чуть больше проблем, и в будущем видимо будет только хуже.

Проблема только в дровах, чаще всего в атишных. И OpenGL на прямую я не собирался использовать.
trntrn
Ну ок, про то что кутескрипт == жаваскрипт не знал, каюсь smile.gif

Цитата
Проблема только в дровах, чаще всего в атишных. И OpenGL на прямую я не собирался использовать.

Вот я и есть счастливый обладатель ати карты smile.gif А без opengl как будет со скоростью блиттинга и проч? Очень хотелось бы чтоб все летало.
CrackedMind
Ну в кутэ есть экспериментальная поддержка d3d... Но честно говоря сомневаюсь, что опенгль версия будет глючной smile.gif
Мурсинушка
Интересный проект. А есть уже на что посмотреть?
CrackedMind
Я ж говорил уже, что пока нет, скоро появится, из-за работы катострофически нехватает времени. А желающих помочь нет ни одного человека smile.gif
axe
чем я могу помочь, если не знаю C++ ?
CrackedMind
Ну, к примеру, в будущем в написании скриптов. Или продумывании нового удобного интерфейса для редактора карт smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.