Проект с кодовым названием Cursed Earth
#1
Привет всем фанам ПЗ.

Cursed Earth - это техническое название порта к Проклятым Землям. Игра будет переписана, будет запускаться на многих платформах (как минимум Win, Linux, Mac), код открыт (GPL).

Попробую рассказать о проекте в виде целей.
1. Это не новая игра, это порт в прямом смысле. Креатива не будет (кроме графики).
2. Я хочу использовать максимум оригинальных ресурсов. В идеале - удалил все *.exe и *.dll, положил новый бинарник и всё заработало Smile
3. Когда будет сделан - понятия не имею. Может через год, а может и никогда. Сроков нет. Я это делаю на энтузиазме.
4. Наверно, главная цель - это сохранить дух ПЗ. В ПЗ отличные ресурсы (музыка, тексты-диалоги, сюжет). Одна беда - win32+dx. Вот это мы и исправим.

Ну и вот ссылка на сам проект (кое-что уже есть!).

Все предложения о помощи принимаются. Кто чем может. Всё в лучших традициях open source.
Windows - аналог плохо понятых механизмов Unix
Use Linux - open your mind
Ответ
#2
Круто! Ща будем заценять %).

З.Ы. а зачем git? Ибо под вендами же есть такая мега-штуковина как TortoiseSVN и ей очень удобно в svn-ом работать ).
Gipat Group
Ответ
#3
Офигеть! С удовольствием присоединюсь к разработке.
Ответ
#4
Привет и тебе!
Да, идея замечательная, посмотрим, что из этого выйдет Smile
Ответ
#5
Супер
надеюсь выйдет
<_<
Ответ
#6
Могу вынести код работы с mob-ами из MobSurgeona в отдельную библиотеку, ничего кроме стандартных сишных либ не требующую, аналогичную либу могу сделать для базы данных.

З.Ы. зачем GPL? Она же вирусоподобная, имхо лучше LGPL.
Gipat Group
Ответ
#7
Нде. Позырил код - жуть... >_<

Хоть бы один коммент где встретился. Ну и стандарт оформления кода гнушный нечитаем. Мне страшно туда теперь заглядывать. :fear:
Duty is everything, the greatest of joys, the deepest of sorrows.
Ответ
#8
Sagrer,Четверг, 28 Января 2010, 15:11 Написал:З.Ы. а зачем git? Ибо под вендами же есть такая мега-штуковина как TortoiseSVN и ей очень удобно в svn-ом работать ).[right][snapback]39951[/snapback][/right]

Для git под win есть msysgit. С GUI для любителей.
Ответ
#9
Цитата:Хоть бы один коммент где встретился.

+1 %).
Gipat Group
Ответ
#10
Sagrer,Thursday, 28 January 2010, 16:11 Написал:З.Ы. а зачем git? Ибо под вендами же есть такая мега-штуковина как TortoiseSVN и ей очень удобно в svn-ом работать ).
[right][snapback]39951[/snapback][/right]
Git распределенный, быстрый. TortoiseSVN медленный аж жуть - оправдывает своё название. Я долго им пользовался - когда перешёл на гит не могу вернуться обратно Smile

Добавил: v1s0r [mergetime]1264700878[/mergetime]
Sagrer,Thursday, 28 January 2010, 17:36 Написал:З.Ы. зачем GPL? Она же вирусоподобная, имхо лучше LGPL.
[right][snapback]39955[/snapback][/right]
GPL вполне подходит. Игра некоммерческая и предназначена для некоммерческого использования.

Добавил: v1s0r [mergetime]1264701289[/mergetime]
ALtair,Thursday, 28 January 2010, 18:03 Написал:Нде. Позырил код - жуть... >_<

Хоть бы один коммент где встретился. Ну и стандарт оформления кода гнушный нечитаем. Мне страшно туда теперь заглядывать. :fear:
[right][snapback]39956[/snapback][/right]
Код ясен как чистый лист (программисту, знакомому с геймдевом). Вопрос: нафиг его читать другим людям, всё равно ничего не поймут?. Комменты нужны в некоторых местах, они там будут, как только стабилизируется код.
Тупые комменты типа "увеличиваем i на единицу" и "присваиваем a b" я не хочу. Не хочу засорять код. Все функции самодокументирующиеся. Код процедурный, стараюсь минимизировать зависимости.
Если есть претензии, распишите подробно. Если не прав - исправлю.


Добавил: v1s0r [mergetime]1264701533[/mergetime]
IDoL,Thursday, 28 January 2010, 19:59 Написал:Для git под win есть msysgit. С GUI для любителей.
[right][snapback]39957[/snapback][/right]
А под линуком есть konsole. Ничего удобнее и, особенно, быстрее просто нет Smile
Windows - аналог плохо понятых механизмов Unix
Use Linux - open your mind
Ответ
#11
Цитата:Код ясен как чистый лист (программисту, знакомому с геймдевом). Вопрос: нафиг его читать другим людям, всё равно ничего не поймут?.

если кто-то считает что вот такой способ оформления кода и такие комментарии (в бровзере включите кодировку win1251) _мешают_ пониманию кода - пусть первый бросит в меня камень. Или смысл отсутствия комментариев как раз в том чтобы никто не догадался окромя программеров, знакомых с геймдевом? %). Я ни в коем разе не утверждаю что у меня там идеальный код (сам вижу кучу косяков), но по крайней мере я без проблем вспомнил где у меня там чего, хотя не открывал этот файл наверное уже больше года. Не будь там комментов - фиг бы я чего вспомнил даже будучи автором, не говоря уже о чтении чужого кода.

Цитата:GPL вполне подходит. Игра некоммерческая и предназначена для некоммерческого использования.

а если потребуется подключить код или ресурсы, не совместимые с GPL? Скажем те же bik-и надо чем-то играть. Возможно за основу движка будет взят Ogre (а там всякие библиотеки к нему под разными тоже лицензиями, скажем чтобы проще было GUI рисовать внутри игры)... Ибо GPL требует чтобы всё что связано с GPL-ной софтиной тоже шло под GPL. LGPL - всё проще - с одной стороны защищает код от того что кто-то стырит и закроет. С другой - не мешает объединять это дело с кодом под другими лицензиями или даже закрытыми бинарниками раз уж на то пошло.

З.Ы. дай что-нить вроде своей аськи или жаббера, тут ещё GrAd горит желанием к проекту присоединиться, он уже скачал код а у него чего-то там не линкуется в линуксе при сборке... с аськой всё проще будет %).
Gipat Group
Ответ
#12
v1s0r,Четверг, 28 Января 2010, 20:58 Написал:Код ясен как чистый лист (программисту, знакомому с геймдевом). Вопрос: нафиг его читать другим людям, всё равно ничего не поймут?.
Хочу спросить, ты - профессиональный геймдевелопер?

v1s0r,Четверг, 28 Января 2010, 20:58 Написал:Все функции самодокументирующиеся.
Тебе так только кажется.

v1s0r,Четверг, 28 Января 2010, 20:58 Написал:Код процедурный, стараюсь минимизировать зависимости.
Если есть претензии, распишите подробно. Если не прав - исправлю.
Есть претензии, да:
1) Отсутствие ООП.
2) GNU-оформление.
3) Отсутствие каких-либо комментариев.
4) Отсутствие структурированности проекта, хотя тут пока и структурировать особо нечего.
5) Отсутствие опубликованного плана действий Smile
Duty is everything, the greatest of joys, the deepest of sorrows.
Ответ
#13
Цитата:4) Отсутствие структурированности проекта, хотя тут пока и структурировать особо нечего.
5) Отсутствие опубликованного плана действий

+1, но вообще это дело наживное. Для плана вполне сойдёт трекер который есть на SourceForge, кстати я краем уха слыхал что там где-то есть возможность заюзать Trac. А вот насчёт структуры - за всеми руками и ногами - схемки на UML и вообще ООП-шность с чётким описанием функции и структуры классов очень бы пригодились - при наличии классов-заглушек разработка сведётся уже больше к простому кодированию нужных методов - причём можно будет поручать разные классы или даже разные методы одного класса разным людям не особо боясь что их код будет сильно косячить на стыковочных моментах.

Короче так, я постараюсь этому делу помогать (но всё-таки подумай насчёт LGPL), и для начала, как уже говорил, вынесу код работы с мобами и базой данных из своих редакторов в отдельную библиотеку (dll для линковки в свой delphi-проект редактора базы, но вообще в движок проще будет просто статически залинковать, добавив сорцы в основной исходник, ибо у меня всё на С++).

Ещё момент - я правильно понял что сейчас там всё пишется по правилам структурного программинга и на чистых сях без плюсов (код я уже мельком поглядел, да)? Это без шансов на пересмотр? %).
Gipat Group
Ответ
#14
Sagrer,Пятница, 29 Января 2010, 00:48 Написал:если кто-то считает что вот такой способ оформления кода и такие комментарии (в бровзере включите кодировку win1251) _мешают_ пониманию кода - пусть первый бросит в меня камень.

Скажу что лишние комментарии в приведенном коде есть. (Например в void KillUnit (const int ObjNumber); //Замочить юнита - комментарий не несет нагрузки, т.к. он повторяет название функции)
Но по сути согласен - некие нетривиальные вещи, как например разбор mpr - стоит комментировать. С другой стороны чтото элементарное, наподобие GLUT функций движения камеры или создание поверхности из массива вершин документировать не имеет смысла.
Насчет того что комментарии планируются так же говорилось.

Sagrer,Пятница, 29 Января 2010, 00:48 Написал:а если потребуется подключить код или ресурсы, не совместимые с GPL? Скажем те же bik-и надо чем-то играть. Возможно за основу движка будет взят Ogre (а там всякие библиотеки к нему под разными тоже лицензиями, скажем чтобы проще было GUI рисовать внутри игры)... Ибо GPL требует чтобы всё что связано с GPL-ной софтиной тоже шло под GPL.
[right][snapback]39960[/snapback][/right]

Чести ради, стоит заметить, что GPL совместим довольно со многими свободными лицензиями список.
Да и работать с бинарниками возможность есть(если мне не изменяет память)
Насчет конкретно Bink - его практически допилили в виде плагина ffmpeg (под lgpl). http://codecs.multimedia.cx/?p=243

Вообще хочу заметить для всех, что каждый пишет так, как ему привычно и кто на каком коде учился.
Еще, что ООП не единственная парадигма программирования. Но даже если в итоге использовать C++ для ускорения разработки - ничто не мешает использовать вставки на C для, допустим, разбора ресурсов.

PS Давайте будем все же менее агрессивными. Проект находится в самом начале и еще вполне есть время для обсуждения и планирования.
Ответ
#15
Я воздержусь от комментариев.
Лишь пара слов. Я определил структуру проекта, языки, систему сборки, оформление, стиль. Это зафиксировано. Любой может посмотреть. Ужаснуться и уйти. Или, если ему это близко по духу, присоединиться.
Я толерантен относительно языков. Я читал много УЖАСНЕЙШЕГО, ОТВРАТИТЕЛЬНОГО (по моим соображениям) кода к улититам на гипат.орг на дельфи и на с++. Дельфи не переношу Smile. Но претензий к вам нет, наоборот, уважуха за проделанную работу. Из кода утилит я много узнал.
Так что предлагаю прекратить, всё равно бесполезно, а продолжить сотрудничество. Если будем делать вместе (кто утилиты на дельфи, кто игру на с) - чего-то получится. Если будем прятать по углам код и ругаться, то так и останемся в каменном веке.
Рассчитываю на вашу помощь в дальнейшем.

По поводу геймдева, uml и т.п.
Да, я отдал 2 года профессиональному геймдеву. Но таких знаний не требуется! Достаточно основ - игровой цикл, таймеры, программирование, синхронизированное со временем. Без этого нет смысла что-то пытаться написать серьёзное. Дизайнить умею плохо. Это мой первый большой самостоятельный проект. На нём я буду учиться. Остальные, надеюсь, тоже. Кто умеет и знает UML - милости прошу.

Вроде бы всё. Воздержаться не получилось Smile

Добавил: v1s0r [mergetime]1264787808[/mergetime]
Sagrer,Friday, 29 January 2010, 01:48 Написал:а если потребуется подключить код или ресурсы, не совместимые с GPL?
[right][snapback]39960[/snapback][/right]
Здесь проблем нет. Я сказал почти все ресурсы. Mp3 придётся переделать в ogg как минимум. Ну и с bik размберёмся в своё время.
Windows - аналог плохо понятых механизмов Unix
Use Linux - open your mind
Ответ
#16
Цитата:Mp3 придётся переделать в ogg как минимум.

зачем? Есть же lame, он под LGPL - и если уж на то пошло то LGPL с GPL совместима. А патенты действуют только в США и Японии... А bik - если действительно в ffmpeg есть декодер - то опять же всё ок %).

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

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

З.Ы. можно в личку что примерно там ужасно и отвратительно? %). Про редактор базы я и сам в курсе что там ужасно _все_ %) , а вот насчёт MobSurgeon интересно.
Gipat Group
Ответ
#17
Sagrer,Saturday, 30 January 2010, 01:23 Написал:Вообще о лицензии
[right][snapback]39965[/snapback][/right]
Насколько я знаю, для коммерческих приложений сам факт использования mp3 без отчисления денег является незаконным.
Видимо тоже самое и с нивальскими форматами.
Нам вряд ли что-то грозит, мы делаем не на продажу. Тут вопрос только в чистоте...
Вообще неплохо было, если бы нашёлся кто-нибудь шарящий в тонкостях лицензирования.
Windows - аналог плохо понятых механизмов Unix
Use Linux - open your mind
Ответ
#18
Цитата:для коммерческих приложений
А у тебя же опенсоурс, ака некоммерческое приложение с доступным исходным кодом будет Wink Так причём тут это тогда?

А вообще планы наполеоновские Smile Взяться за то, за что никто не решался браться(или брались, но почти сразу бросали) - это многого стоит.
Мальчик за сливами в садик полез,
Сторож Евсей достает свой обрез.
Выстрел раздался и сторож упал,
Мальчика сзади отец прикрывал.
Ответ
#19
Цитата:Насколько я знаю, для коммерческих приложений сам факт использования mp3 без отчисления денег является незаконным.

поправка - только если это коммерческое приложение должно будет продаваться на территории стран, где действуют программные патенты (США, Япония и несколько других недоразвитых %). В ЕС такого нет кстати.). В РФ не действуют. Но Нивал же игрушки по всему миру продаёт.
Gipat Group
Ответ
#20
fa3,Saturday, 30 January 2010, 12:21 Написал:А у тебя же опенсоурс, ака некоммерческое приложение с доступным исходным кодом будет Wink Так причём тут это тогда?
[right][snapback]39967[/snapback][/right]
http://www.mega-nerd.combsndfile/FAQ.html#Q020
Судя по словам автора, преследуют юридических лиц. "Студентам" ничего не грозит Smile
Но я всё же хочу использовать ogg.

fa3,Saturday, 30 January 2010, 12:21 Написал:А вообще планы наполеоновские Smile Взяться за то, за что никто не решался браться(или брались, но почти сразу бросали) - это многого стоит.
[right][snapback]39967[/snapback][/right]
Спасибо. В основном критикуют Sad
Будем надеятся, сохранятся мотивация и цели до конца проекта.
Windows - аналог плохо понятых механизмов Unix
Use Linux - open your mind
Ответ


Перейти к форуму:


Пользователи, просматривающие эту тему: 7 Гость(ей)