Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Необходима помощь в создании Elite-подобной игры | страница 1
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 1 из 5
На страницу: 1, 2, 3, 4, 5  След. | Все страницы
Поиск в этой теме:
Канал Игры Мечты: «Необходима помощь в создании Elite-подобной игры»
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
Здравствуйте.

Начата разработка новой Elite-подобной игры.

Задумка (в плане gameplay'я)

1. Гигантская игровая галактика, которая, в основном, генерируется игрой. Предполагается, что заселённая часть галактики будет насчитывать 10 тыс. систем (в каждой до пяти населённых планет и некоторое количество станций). Заселённые миры предполагается "оснастить" такими атрибутами, как своя культура, история. Незаселённых миров - около нескольких миллиардов (незаселённые не означает - мёртвые, а скорее - неосвоенные).
2. В этом гигантском мире кипит жизнь. Одновременно просторы космоса бороздят миллионы кораблей. Большинство из них - торговцы. Так же системы патрулируют полиция и военные, защищающие торговцев от пиратов, убийц и прочих опасностей. Но патрулированием всё дело не ограничивается. За злостными нарушителями закона идёт настоящяя охота. Постоянные облавы и военные рейды. Не спасёт пиратов даже расположение их опорных пунктов, которые находятся в неосвоенном пространстве.
3. Безопасные туннели гиперпрыжков проложены во всех системах. Пространство трасс "Планета - гиперпереход" хорошо охраняются. Но за безопасность приходиться платить. Другое дело неуправляемый гиперпрыжок - опасно, но единственный пункт затрат - топливо.
4. Развитая система званий (военных и других) и "ярлыком" (по типу "спаситель утопающих" Улыбка )
5. Динамичность мира. Постоянно что-то происходит: вспыхивают войны и локальные конфликты, создаются независимые объединения миров и гибнут империи, осваиваются новые мира и покидаються старые (неудачная терраформация, экологические катострофы и тд.)

Задумки (технические)

1. Графика
1.1 Использование безтекстурной технологии(всё основано на материалах и моделях).
1.2 Широкое использование динамически создаваемых моделей.
2. Физика
2.1 Применение Ньютоновской физики.
2.2 При скоростях выше 200000 км/с будет использоваться физика по теории относительности.
3. ИИ
3.1 Будет делиться на несколько уровней: государственный (поведение какого-либо объединения в целом), торговый(создание и уничтожение торговых маршрутов), военный (координация сил военных, полиции и добровольцев в борьбе с врагами) и тд.
3.2 Просчитывание таких показателей, как мораль (на поле боя), наклонности и прочее.

Примечания

Эта игра, во всяком случае так задумано, будет более требовательна к процессору и ОЗУ, чем к видеокарте. Это объясняется спецификой алгоритмов графического движка и развитостью игрового интеллекта. Так же предполагается, что дистрибутив игры будет занимать очень малый размер (до 20 мегабайт).
Язык разработки - C# (это означает, что игра пишется под платформу .NET). Графическая библиотека - Menaged DirectX.

Сейчас ведётся разработка (программная реализация) только графического движка. Остальные части приложения находятся на стадии алгоритмической разработки.

Мои вопросы к обществу пилотов

1. Будут ли какие-нибудь замечания или предложения?
2. Знает ли кто-нибудь о форматах звука на много более компактных, чем mp3, но намного более качественных (по звучанию), чем MIDI (это необходимо для дальнейшей разработки звукового движка игры).
3. Как вы оцениваете шансы написать такую игру одному (или небольшой командой) с нуля?
    Добавлено: 19:06 04-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Vitaliy :
1. Будут ли какие-нибудь замечания или предложения?

ДА! Гы-гы

Vitaliy :
1.1 Использование безтекстурной технологии(всё основано на материалах и моделях).
1.2 Широкое использование динамически создаваемых моделей.

Оофигенно плохая идея!
1.1 - это зачем? Если не можешь организовать систему, хотяб с текстурой одной- то советую подучиццо в этом смысле.
1.2 - потеря в производительности. Сложность в моделировании

Vitaliy :
2.2 При скоростях выше 200000 км/с будет использоваться физика по теории относительности.

Подозрение. мм..
1)Зачем?
2)Тебя не беспокоит поведение типов при таких больших числах. float будет давать погрешности здоровенные, а то и вообще вылетит за пределы.

Vitaliy :
3. Как вы оцениваете шансы написать такую игру одному (или небольшой командой) с нуля?

Ну если забить пока что на графическую систему и делать игровую логику + обрезать половину фич - то вполне.

Vitaliy :
5. Динамичность мира. Постоянно что-то происходит: вспыхивают войны и локальные конфликты, создаются независимые объединения миров и гибнут империи, осваиваются новые мира и покидаються старые (неудачная терраформация, экологические катострофы и тд.)

Опиши как ты это реализуешь?
_________________
MOV topka, C++
    Добавлено: 20:13 04-02-2007   
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
Цитата:
Оофигенно плохая идея!
1.1 - это зачем? Если не можешь организовать систему, хотяб с текстурой одной- то советую подучиццо в этом смысле.
1.2 - потеря в производительности. Сложность в моделировании


Я сознательно не хочу использовать текстуры, и это не говорит о знании или незнании DirectX. Поясню свой выбор. Во-первых, текстуры жрут немеряно байт (что при выкачке из инета имеет огромное значение). Во-вторых, текстуры имеют законченное разрешение и качество. Чем текстуры лучше, тем больше размер. И наоборот. Я не хочу создавать проект на 200-300 метров или более (пример такого арационального использования трафика юзеров - WOW). В-третьих, есть и другие способы "украсить" мир. Например, материалы в DX. Неудобно? Программисту и художнику - да, юзеру - нет.

На счёт динамических моделей я не согласен. Сложность проектирования - возможно. Но на счёт снижения производительности - я не согласен. Что сжирает много процессорного времени? Отсечение вершин. А так как мы генерим модели во время работы алгоритма, то нам не нужно отсекать невидимые вершины (это делается на стадии генерирования). Так же нам не нужно держать в памяти модели с заранее определённым максимальным "разрешением" (качество регулируется во время генерирования). Это экономит память (ОЗУ) и процессорное время. По моим подсчётам при разрешении 1024х768 необходимо генерить всего несколько тысяч полигонов. При достаточно хорошем алгоритме эта задача не будет напрягать компьютер.
Цитата:

Подозрение. мм..
1)Зачем?
2)Тебя не беспокоит поведение типов при таких больших числах. float будет давать погрешности здоровенные, а то и вообще вылетит за пределы.


1. При достаточном количестве топлива это будет реально (а мне не хочеться, что бы нарушался принцип, что в нормальном пространстве скорость света - это высшая скорость, не говоря уже о явлениях сжатия времени).
2. Двух интов хватит выше крыши (а float - это действительно плохая мысль Подмигиваю)

Цитата:
Опиши как ты это реализуешь?


В каком смысле? Исходник выложить? У меня его пока нет. А на счёт алгоритма, то он пока сформулирован в общих чертах. В двух словах - это будет "коллектив" ИИ, которые будут взаимосвязаны, но будут решать разные задачи, а, следовательно, иметь разные алгоритмы.

Цитата:
Ну если забить пока что на графическую систему и делать игровую логику + обрезать половину фич - то вполне.


Ну на счёт подзабить на графический движок, то тут ничего не получиться. Графика - это первая стадия, вторая - физика (после этого можно полетать по безжизненной галактике), уж за тем буду оживлять игровой мир. А на счёт фич - не хочу ничего урезать. Иначе это уже будет не "игра моей мечты".
    Добавлено: 21:02 04-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Ты уверен что при отсутствии текстур ты сможешь добиться нормального качества графики?

Vitaliy :
Двух интов хватит выше крыши

Инты? Два? Т.е. длинная арифметика? Я не доганяю смысла таких танцев с бубном...

Vitaliy :
Но на счёт снижения производительности - я не согласен. Что сжирает много процессорного времени? Отсечение вершин.

Процессорное время? Нет конечно. Это время видеокарты, и поверь - оно ничтожно - простая проверка нормалей и всё!
А на деле - ты берешь это перекладываешь из GPU на CPU - как раз начинаешь жрать процессорное время. + Ты создаешь динамические буфера, которые по любому медленнее статических.

Vitaliy :
Так же нам не нужно держать в памяти модели с заранее определённым максимальным "разрешением" (качество регулируется во время генерирования). Это экономит память (ОЗУ) и процессорное время.

ОЗУ - возможно, но никак не процессорное время!

Vitaliy :
А на счёт фич - не хочу ничего урезать. Иначе это уже будет не "игра моей мечты".

Ну верно, впринципе, попробуй - получиться ли. Подмигиваю
_________________
MOV topka, C++
    Добавлено: 22:26 04-02-2007   
Crimson
 560 EGP


Рейтинг канала: 4(83)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
По поводу безтекстурки. Мне тоже в свое время так казалось. Грамотное использование материалов это зашибись бесспорно, но модели все равно получатся "лысыми". В общем сам увидишь что получится.

Есть конечно вариант сделать вместо текстуры много-много полигонов. Но это не будет ни быстрее по обсчету, ни экономнее по памяти.
    Добавлено: 22:42 04-02-2007   
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
Цитата:
Инты? Два? Т.е. длинная арифметика? Я не доганяю смысла таких танцев с бубном...


Ладно. Оговорился (Паскаль почему-то вспомнил Улыбка ). Не инты. Тут и long покатит (ещё и на 64 разрядах быстрее бегать будет Подмигиваю). Кстати long хватит, что бы сделать систему радиусом в 53 (примерно) астрономические единицы. Это при том, что единицы измерения мм.

Цитата:

Процессорное время? Нет конечно. Это время видеокарты, и поверь - оно ничтожно - простая проверка нормалей и всё!
А на деле - ты берешь это перекладываешь из GPU на CPU - как раз начинаешь жрать процессорное время. + Ты создаешь динамические буфера, которые по любому медленнее статических.


Возможно. Но не забывай, что и передача данных съедает мегагерцы. Только не процессора, а системной шины. Так вот, это замедляет работу всей системы. А если каждый раз, при построении сцены передавать большую кучу инфы (в случае статической модели с большим "разрешением" для планет - это куча мегабайтов).

Цитата:
ОЗУ - возможно, но никак не процессорное время!


Я не хочу идти по другой схеме - держать несколько моделей разного разрешения на винте и считывать их параллельно прорисовки. Поясняю: как сделать модель для планеты диаметром в 12000 км так, что бы на расстоянии в 2-3 метра над поверхностью не было видно погрешностей, вызванных "грубостью" модели? Есть два варианта: хранить модель по объёмам мало чем отличающуюся от базы данных на миллиард записей; второе - динамическое создание модели. Вернулись к чему и пришли.

Цитата:
Есть конечно вариант сделать вместо текстуры много-много полигонов. Но это не будет ни быстрее по обсчету, ни экономнее по памяти.


Возможно. Я этот вариант рассматриваю, как одну из альтернатив. Есть так же вариант большинство "простых" текстур генерировать при установке приложения. Благо, ИМХО, это дело не хитрое.

PS спасибо за отзывы. Очень помогают найти "тонкие места" движка.
    Добавлено: 23:04 04-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Vitaliy :
Возможно. Но не забывай, что и передача данных съедает мегагерцы. Только не процессора, а системной шины. Так вот, это замедляет работу всей системы. А если каждый раз, при построении сцены передавать большую кучу инфы (в случае статической модели с большим "разрешением" для планет - это куча мегабайтов).

Раньше и деревья были выше и партизаны толще... Не спорь со мной в этих вопросах Гы-гы Гы-гы
1) Передача статики происходит только 1 раз - при инициализации буфера.
2) Шина супер скоростная - AGP или PCI Express - так что всё крута!

3) В твоём слушае генерации будет тоже самое (ну меньше немного, если ты таки будешь отсекать невидимые грани на CPU - но оно того не стоит)


Планеты должны считаться динамически - особым алгоритмом уровней детализации по какой то карте высот.

зы. Считывать с винта параллельно прорисовке - это убъет всю скорость. Винт - самое узкое место по скорости - минимизируй доступ к нему.
_________________
MOV topka, C++
    Добавлено: 23:21 04-02-2007   
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
Цитата:
Планеты должны считаться динамически - особым алгоритмом уровней детализации по какой то карте высот.


Ну вот. На моё и вышло. Я ведь не говорил, что ВСЕ модели будут создаваться динамически. Динамически будут создаваться модели БОЛЬШИХ естественных и искусственных тел. Модели же кораблей (не считая некоторых гигантов) будут создаваться только раз (при инициализации игры). При загрузке игры с винта будут загружаться файлы-описания моделей, по которым и будут создаваться модели формата DirectX. Для динамических моделей (планеты и тд) будут постоянно (при изменении детализации, угла и тд) генерироваться в соответствии с заданными условиями. Для других же моделей (корабли и разная мелочь) модель будет постоянная.

Цитата:
зы. Считывать с винта параллельно прорисовке - это убъет всю скорость. Винт - самое узкое место по скорости - минимизируй доступ к нему.


А я и не говорил, что это хороший вариант (точнее это кошмар для игры).
    Добавлено: 23:38 04-02-2007   
Sasha
 





А я во многом согласен с Vitaliy. Я уже не первый год и не первый раз пытаюсь сделать элиту (как тут говорят "игру мечты"). Но так ни одного релиза и небыло. А всё потому, что постоянно во время работы хочется сделать не просто игру а "мечту". (при работе на энтузизме по другому сложно). Всегда процесс разработки затягивает в такие дебри, что довести начатое не получается. Поэтому считаю текстуры не самым важным моментом. Их добавить не так сложно, как сделать игру. Хотя бы не "мечту", а просто игру. Кстати по поводу динамически создаваемых объектов типа поверхности планет тоже заморачивался. Задачка не из легких. Советую оставить её на потом Улыбка

p/s сейчас делаю ремейк ZX Elite на Delphi+GLScene (OpenGL), пока без тектур Улыбка
    Добавлено: 16:07 06-02-2007   
TpuCTaH
 63 EGP


Рейтинг канала: 1(4)
Репутация: 8
Сообщения: 128
Откуда: Харьков
Зарегистрирован: 12.06.2006
Я приводил уже гдето в этой конференции как Брабен сделал псевдорандом с примерами на сишке. Линк сами можете поискать. Делать любую Игру тяжело и муторно. Тем более что есть очень навороченные образцы уже сделанных до тебя. Сам сейчас по долгу учебы влез в шарп с менаджит дайректом. НО с другой стороны если ничего не делать то ничего и не получиться. Автор пиши игру! Улыбка
_________________
Если вы считаете, что C++ труден, попытайтесь выучить английский.(с)Bjarne Stroustrup
С++&&DirectX
    Добавлено: 23:42 06-02-2007   
Robomaniac
 312 EGP


Репутация: 92
Сообщения: 713
Откуда: Питер
Зарегистрирован: 15.03.2006
программерство, эт конечно хорошо, но есть два немаловажных аспекта, которые все разработчики-энтузиасты как правило выпускают из вида, кипя бурной энергией Улыбка
первое - геймдизайн (баланс и играбельность)
второе - менеджмент (саморганизация, понимание процесса производства игры от А до Я)
ну и куча других моментов... я даже знаю, фактически что мне ответят.. и знаю как закончится проект...
з.ы. нихотел никого обижать, просто интересно, т.к. сам в свое время бился лбом ап стену Гы-гы и имею не один незаконченый проект..
з.ы.ы. как-то тоже хотел покусится на фрилансер+элита, сел сгоряча и начал прикидывать, т.к. опыт по производству игр был... "пыла" хватило на оценку половины проекта, а потом я понял, шо когда я это всетаки сделаю (упорныя я такой), то это уже никому ненадо будет, а если делать бустрей, то я стоко людей не насобираю... Рыдания.
_________________
...mind integration succes... new world accepted... mind connected..
    Добавлено: 02:11 07-02-2007   
Robomaniac
 312 EGP


Репутация: 92
Сообщения: 713
Откуда: Питер
Зарегистрирован: 15.03.2006
хочу добавить пару советов (сам им следую):
1. собери/нарисуй "блок-схему" работы твоей игры и распиши каждый "кирпичик" (в ms visio удобно)
2. никогда не начинай делать игру бе прототипа, пусть там вместо кораблей летают квадратики, а вместо планет висят кубики.. важно определить принцип и понять для себя КАК будет выглядеть игра "изнутри"
3. всегда ВСЁ стараться документировать, даже хистори аськовские сбрасывать в доки.. т.к. вся инфа должна быть под рукой и чтоб 200 раз не объяснсять людям, что и как (советую просто тетрадку завести и туда всё зарисовыват и записывать)
4. не начинай делать игру до тех пор, пока ясно для себя не будеш представлять ЧТО и КАК работает в ней, и какие фичи РЕАЛЬНО нужны. а какие только для понтов.
_________________
...mind integration succes... new world accepted... mind connected..
    Добавлено: 02:19 07-02-2007   
Sasha
 





Согласен со всеми последними высказываниями и признаю необходимость их соблюдения. Но писать документацию программеры очень не любят (я точно). Поэтому я решил сделать просто ремейк, а там если доделаю можно будет его и разнообразить Улыбка

Насчет псевдорандома там всё просто, вот ф-ии для делфи.

RandSeed := 500; // задает последовательность
а := Random(1000) + 1000; // выдет значение от 1000 до 1999

В С++ примерно такиеже ф-ии и смысл.

p/s псевдо случайные последовательности для элито подобных игр очень полезная возможность (для тех кто не вкурсе)
    Добавлено: 08:10 07-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Да разве генерация -проблема? Как раз это и не проблема, проблемы начинаються когда начинаешь писать и лезть в дебри Подмигиваю
_________________
MOV topka, C++
    Добавлено: 18:35 07-02-2007   
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
Спасибо всем за поддержку.

Приятно осознавать, что мой проэкт ещё кому-то нужен кроме меня.

2Robomaniac

Я пока создаю графический движёк. Так что про разработку полноценной игры пока речь не идёт. В первую очередь я собираюсь сделать графический движёк (довести до определённой кондиции). Потом в моих планах создать физику. После этого я проведу связку физики и графики. Получившуюся демку с пока ещё "мёртвым" миром выложу на всеобщее обозрение (народ должен оценить и указать на ошибки). Потом ИИ. После этого постоянное улучшение игры (графика, ИИ, звук, квесты и тд). А так как эта операция имеет итеративный (циклический) характер, то игра, я надеюсь будет любима многие годы Улыбка .

Ну... Это мечты. А если серьёзно, то план графического движка (логическое устройство) я вынашивал последних пару лет. Не меньше - идею игры. По-этому, я надеюсь, что проблем из-за непродуманности действий у меня будет мало.

2Jurec

Главное, когда лезишь в дебри, никогда не останавливаться и никуда не сворачивать Улыбка .

PS вообще для меня это всё серьёзно (мечта так сказать). Так что буду благодарен любому совету или помощи.
    Добавлено: 01:04 08-02-2007   
YogSagot
 1175 EGP


Рейтинг канала: 1(8)
Репутация: 275
Сообщения: 2796
Откуда: Daugavpils, Latvija
Зарегистрирован: 17.08.2003
Блин, всегда мечтал создатй что-то Элитоподобное на ДотНете! Подмигиваю Когда примишся за игровую механику, может смогу помоч чем! Гы-гы
    Добавлено: 14:10 08-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Vitaliy :
Я пока создаю графический движёк. Так что про разработку полноценной игры пока речь не идёт. В первую очередь я собираюсь сделать графический движёк (довести до определённой кондиции). Потом в моих планах создать физику. После этого я проведу связку физики и графики. Получившуюся демку с пока ещё "мёртвым" миром выложу на всеобщее обозрение (народ должен оценить и указать на ошибки). Потом ИИ.


Ну будь готов, что это вот надо будет повторить раза 2-3 причем ПОЛНОСТЬЮ ПЕРЕПИСАВ С НУЛЯ!

У меня, например, уже были кораблеги, рокеты, станции. Все это летало - стреляло. Графика тоже не плохая была.

Потом пришлось все переписать, с учетом ошибок, с учетом того что можно_было_и_лучше_архитектуру_движка и т.д.

Правда вот теперь есть супер графика (уровень х3.. прада были бы еще модели такого качества Гы-гы ), но нет самой игры Улыбка Но я работаю!! И останавливацца нельзя!
_________________
MOV topka, C++
    Добавлено: 15:59 08-02-2007   
Vitaliy
 55 EGP


Репутация: 10
Сообщения: 43

Зарегистрирован: 04.02.2007
2Jurec

Не надо меня пугать. Я работы не боюсь. Но и не люблю. По-этому я и вынашивал столько идею. Если есть хороший план и стремление его реализовать, то даже переписывание с нуля не помешает Подмигиваю
    Добавлено: 18:49 08-02-2007   
Jurec
 348 EGP


Ведущий раздела
Рейтинг канала: 4(76)
Репутация: 102
Сообщения: 1441 Заблокирован
Откуда: Seattle
Зарегистрирован: 25.02.2006
Ну так пиши! Гы-гы
_________________
MOV topka, C++
    Добавлено: 18:59 08-02-2007   
Sasha
 





А на этом сайте есть где выложить свою поделку примерно 700кб в архиве. Хочу что-бы Вы заценили, хотя особо нечего заценивать но всё же.
    Добавлено: 12:56 09-02-2007   
Канал Игры Мечты: «Необходима помощь в создании Elite-подобной игры»
На страницу: 1, 2, 3, 4, 5  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: По-моему, пилот просто по образу мыслей должен верить в НЛО. (сказал Hamster)

  » Необходима помощь в создании Elite-подобной игры | страница 1
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18