Модераторы: Rickert

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Игрушка для программистов, Молодёж, предлагаю поиграться... 
:(
    Опции темы
Gorcer
Дата 23.7.2006, 03:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: 1
Всего: 4



Здарова народ!

Давно вертится мысль разработать игрушку в которую можно засовывать своих персонажей, причём персонажи создаваться будут не в линейном интерфейсе игры, а на любом языке программирования, компилится в DLL и подключатся в игру.

Что это будет за игра?
В голове всегда вертелся остров на котором живут всякие твари и подчиняются законам сисетмы, например закону гравитации.....тоесть нельзя создать сверх монстра серовго волка со сверх большими зубами, зубы отвалятся и волк умрёт. Я вижу игру исключительно online' овскую. 
Вы регестрируетесь, качаетет шаблон на выбраном языке программирования, делаете DLL-монстра, отсылаете и наблюдаете за его развитием на этом острове.


Что это будут за монстры?
Монстры будут описаны как классы с заранее определёными методами и свойствами, например пользователю будет предлагаться класс шаблон (например TCreature)  он наследуя его (TGrayWolf = class(TCreature)) переопределяет основные методы, пришивая какойто свой функционал.

Модели монстра также можно делать свои в 3dmax'е или собирать монстра из разных запчастей.
Для того чтобы пользователь не создавал сверх сильных гигантов с кучей конечностей, ему при регистрации в системе будет выдаваться какаянить экспа начальная (опыт типа) и в процессе своей жизнедеятельности экспа будет расти, 
эта экспа будет влиять на возможности монстра, например её можно использовать в описании ног монстра для увеличения скорости перемещения, программист сам решает как распоряжаться этой экспой, тоесть где её прописывать.

Если хитрый программист внесёт слишком большие параметры (сила, количество конечностей) у монстра откажет произвольная конечность.

кто что думает, идея крайне сырая и хотелось бы её развить и даже в будущем совместными усилиями чтото разработать.....
 


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
Академик
Дата 23.7.2006, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник...
Сообщений: 114
Регистрация: 21.6.2006
Где: Столица РТ - Каза нь

Репутация: -1
Всего: -13



IMHO Слишком широко шагаешь. Идея конечно хорошая, но до реализации дело не дойдет. 
--------------------
IDE := D2006; DB := Firebird 1.5  
PM MAIL   Вверх
Gorcer
Дата 23.7.2006, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: 1
Всего: 4



Академик
зануда, ты хоть сам чегонить добился в своей жизни? или всегда твои идеи заканчивались мыслью что до реализации не дойдёт.

ты бы хоть написал почему не дойдёт, ты ведь ничего не знаешь о моих возможностях..... 


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
Meeer
Дата 23.7.2006, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 3.6.2006
Где: Ukraine

Репутация: нет
Всего: нет



Gorcer
остынь, чего ты так кричишь на Академика?
Идея, по моему, реальная, но надо продумать все детали (например, если там, например, будет человек-зверушек 500 или 1000, то до каких размеров тогда будет доходить сам остров, или если я захочу сделать вообще безногого зверя, например змей или птица, или дельфин).
Тогда нужно делать нлесколько островов, и нейтралов(всякую другую живность).

А до реализации дело может не дойти, потому-что эту игрушку надо писать командой, а сам ты будет лет пять ее продумывать (это я утрирую)  smile 
Вот так  smile  
PM MAIL   Вверх
Ch0bits
Дата 23.7.2006, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Python Dev.
****


Профиль
Группа: Завсегдатай
Сообщений: 2124
Регистрация: 21.2.2005
Где: Казань

Репутация: 2
Всего: 62



Gorcer
То что это реально никто не сомневатся. Только предварительно требует тщательного планирования и разработки спецификации на "зверушку". Времени уйдёт море, а у кого оно есть?
Думаю начать стоит, а потом открыть проект например на sourceforge.net, если идея людям понравится, то и разработчики сами появятся.

П.С. Задумка сильно смахивает на Terrarium, только там мир исключительно насекомых и растений, тоже по сети, но всё на C# пишется. 
PM WWW   Вверх
powerOn
Дата 23.7.2006, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: нет
Всего: 159



Можно еще поковырять в сторону каких-нибудь боевых роботов. Например, Вы реализуете интерфейсы и абстрактные классы поведения боевого робота или танка, а потом этот робот подключается к сражению. Ну там один на один или куча на кучу, неважно. Там уже в чистом сражении и выявлять эффективные алгоритмы... Роботов можно разным оружием снабжать и прочей ерундой... ИМНО, очень интересно бы было... 
 


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
arilou
Дата 23.7.2006, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 6
Всего: 61





--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
Exekutor
Дата 24.7.2006, 08:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 1.11.2005
Где: Казахстан. Костан ай

Репутация: нет
Всего: 4



Gorcer, идея неплохая, как я уже сказал в пм. Если хочешь что бы управлял ИИ то опять же - ИИ, наверное, должен быть встроен в самого зверя. Т. е. человек пишет зверюгу, снабжает ее своим разработанным ИИ и отпускает в "лес". Чья зверюга дольше протянет - тот и победил. Мне кажется это интересно, но таое уже есть. Называется, вроде бы, Terrarium. Хотя могу ошибаться.  

Это сообщение отредактировал(а) Exekutor - 24.7.2006, 08:10


--------------------
[color=blue][size=2]En taro addun, ma sol larinas[/size][/color]
PM MAIL   Вверх
Sister
Дата 24.7.2006, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 23.9.2005

Репутация: нет
Всего: нет



У меня была похожая идея, но только исключительно для стратегий, когда войска при помощи заложенного в них игроком-программистом кода сами воюют. 

Основная мысль - соединение программирования и игры - очень интересная! Если ВСЕ тщательно продумать, думаю, игрушка будет иметь успех среди программеров... которым делать нечего!!! ))) 
PM MAIL   Вверх
Gorcer
Дата 27.7.2006, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: 1
Всего: 4



Идея с роботами не менее интересна чем с монстрами...давай её тоже прорабатывать!

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

с другой стороны можно всё упростить и сделать чтото типа РОБОКОТА (посмотрел, впечатлило и очень понравилось) только 3д движок и чтоб поразнообразней униты были, чтоб и летающие были и плавающие....ну и код описания юнита будет канечно занимать больше одной страницы (как в робокоте)

для начала можно внести один класс - "Tходячий_монст", у него обязательно будут ноги как средство передвижения и тело как место для крепления прочих органов, вплоть до органов размножения.....
каждый орган имеет силу, которая напрямую зависит от имеющейся экспы,.......можно например сделать 10 слабых маленьких рук или однин большой и сильный.....руку!:-)
все эти руки представляются в описании класса как массив элементов (типа "THand") с которыми можно делать что угодно.

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

давайте придумаем как будет происходить бой между существами, а то я както слабо вижу эту картину.

   

Это сообщение отредактировал(а) Gorcer - 27.7.2006, 13:34


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
Exekutor
Дата 28.7.2006, 07:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 1.11.2005
Где: Казахстан. Костан ай

Репутация: нет
Всего: 4



Нужно сперва определиться что это будут за существа... Составить их список и список их возможностей smile  


--------------------
[color=blue][size=2]En taro addun, ma sol larinas[/size][/color]
PM MAIL   Вверх
Sardar
Дата 28.7.2006, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: нет
Всего: 317



Писать зверский ИИ под 1 игрока мало кому понравиться ИМХО. Дургое дело если:
  • есть планета или некий мир, заселённый полумеханическими существами - историю можно придумать любую, например в виду тяжёлой экологической ситуации существа рождаються не жизнеспособными и их приходиться "апгрейдить" техникой. Главное тут придумать реальную причину почему воюем smile
  • каждый игрок управляет группой существ, т.е. они как бы соеденены в единый разум. Каждая группа живёт на "источнике жизни", это может быть абстрактно "энергия" или более приземлённое - источник хлора для дыхания.
  • "источник жизни" мал и постепенно уменьшаеться, но появляються новые "от природы". Новые нужно разрабатывать, а за это время можно и загнуться. Источник либо "то что от туда достаём" можно купить/завоевать/ограбить у соседа smile
  • вся техника мобильна и продвинута, построить укрепление или "замок" вокруг источника должно быть просто и быстро с одним исключением - работы не могут проводиться под огнём соперников.
  • игрок не может управлять юнитами на прямую, вместо этого пишуться скритпы от банального "ходи вокруг и стреляй по чему видишь", до "увидел, начни обстрел и веди противника к засате, если он конечно 'купиться' на это" smile
  • все юниты общаються телепатически либо имеют вечную рацию, единый ИИ тут же может задейстовать всенеобходимы юниты на оборону или атаку.
  • карта, всем видна, но вражеские юниты только во время боя. Во время боя человек не может "подправить" скрипты smile
Вся мощь в простом скриптинге (специально заточенный под задачу, что бы писать кратко) и продумывании плана действий. Есть база, ты видишь её устройство (хардкорщиким могут и это скрыть). Первая часть сценария двинет лёгкие юниты к базе что бы занести на карту вражеские юниты (можно повесить сверху сателит и надеяться чтое го не собьют раньше времени smile ). Далее двинеться боевая техника, при этом учитываеться что всё может пойти совсем не так как ожидалось, так что если 80% разведчиков сразу уничтоженно и нормальной карты "горячих точек" нет, то лучше отступать. Противник же может догнать и размочить всех если противник разработал скрипт для такого неожиданного поворота событий smile

Графика по барабану, 2D "под наклоном" (2-3 по моему называеться, карта ромбами) и красивые анимации достаточны. Суть в разнообразии "инструментов" (типы юнит, типы технологий и сбораюнит под задачу, хорошо продуманные плюсы и минусы) и главное в сценарии боя. Хардкорщики смогут програмить целые баталии на несколько дней.

Для ясности:
  • человек не может управлять юнитом вообще в момент боя.
  • режим боя для каждого игрока свой, он начинаеться по первому выстрелу любого своего юнита, либо при попадании вражеского снаряда в любой из юбнитов или построек, а также просто по желанию игрока. Т.е. режим боя автоматом навязываеться если на тебя напали, остаёться только надеяться что оборону ты продумал хорошо smile
    Режим боя заканчиваеться если в течении 3 минут свои юниты не стреляли ни разу и никто из противников не попал ни в одного из наших юнит или построек. т.е. можно во время боя и просто мирно остановиться, не стрелять. Юниты также могут призывать к миру, типа белый флаг smile
  • при продумывании тактики важно знать карту, хотя её можно просто запоминать (естественно это всё доступно в скриптовом движке, "реализовывать карту" не нужно smile ) во время разведки. Юниты видны быть не должны, так что внезапный ракетный удар не возможен, ну только если наугад smile
  • постройки защищены куполом, разрушить их или опустошить запасы "жизни от источника" можно только войдя в купол, т.е. встретиться нос к носу с разьярённым противником. Купол генериться "источником жизни" и ограничен в размерах, поэтому построить "гигантскую базу" не получиться. Можно конечно, но тогда часть её вылезет из купола и враг сможет бить постройки  артилерией с далека, что не приятно smile
  • скрипты работают "паралелльно", т.е. юниты могут выполнят кучу действий одновременно и не нужно писать "отстреливаться когда я стою", "отстреливаться когда я бегу" и т.д. Сценарии могут запускать друг друга, так можно писать библиотеки "опыта" на все случаи жизни.
Это всё интересно, как разработка так и игра. Как off-line шахматы, всё время думаешь "а он это продумал?". Етественно все юниты могут совершать базовые действия сами, например бежит танк на помощь к соседней базе, выбор пути отдельный малый скрипт:

Код
/**
* Эффективно "в слепую" добежать до любого места.
* Скрипт заставляет обходить не дружелюбные для юнита этого типа места,
* пытаться экономить топливо и обходить возможные опасные места.
* @param place место куда бежим
* @paramt force плевать ли на расход топлива и возможность повреждений
*/
action runto (place, force) {
   route = place.path(this); //расчитать "ближайший" путь
   if(!force) {
     //подправим путь
     route.trace {|segment| //segment - точка выбора следующего направления
        segs = segment.path(segment.next(3)) {|loc_route| //расчитать возможные пути до 3 от этого сегмента
            return loc_route.steps.first {|step| //расчитываем на сколько "дружелюбный" для нас шаг
                //алгоритм может быть любой сложности, сейчас просто выфильтровываем "риродным"
                //характеристикам местности под шагом
                return this.capabilities("hostile.terrain").contains(step.terrain);
            }
        }
        //путей может быть много, подправлять нам их позже всё равно придёться, кешируем результаты
        //эти пути будут пользоваться при следующих trace вытесняя низкоэффективный полный расчёт
        route.priorityPath(segs);
     }
   route = route.mergePriority(); //здесь путь с наиболее выгодными комбинациями ходов,
   //путей по такому можеть быть масса, сегменты можно склеивать как угодно. Юнит бует двигаться по дефлтовому
   //пути в route, он пока выставлен в наикрадчайший. После по мере обнаружения врагов мы будет его править поль
   //зуясь ранее вычисленными сегментами

   }
   //событий на подправку пути не задаём, бежим "в слепую", если только скрпт "зрение", не остановит нас при
   //встрече чего нибудь инстересного и не подправит путь
   this.actions.schedule("moving", route);
}


И так побежали smile

P.S. замечаем что написание не эффективного скрипта может заставить свой ИИ жутко тормозить, нодругие ИИ работают в своих тредах, потому у них будет элементарное преимущество в "скорости мышления", это тоже стимул писать хорошо smile 


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Никто
Дата 28.7.2006, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 21.3.2006

Репутация: нет
Всего: нет



А почему бы не сделать как в Теккене,количество вживленного железа в теле не должно превышать установленную норму.При этом игрок может собирать из готовых деталей.Кто захочет,может загрузить и свои.Еще я предлагаю дать возможность выбирать,свой ИИ или готовый. 
--------------------
   
PM MAIL   Вверх
maxim1000
Дата 28.7.2006, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 2
Всего: 110



у меня когда-то была тоже была идея в эту сторону
только там можно было ещё и конструировать роботов, которые будут воевать:
брать шасси, навешивать какой-нибудь источник энергии, что-то типа процессора, всякие устройства типа сканеров, оружие и пр.
даже где-то тут описывал, но давно это было smile 


--------------------
qqq
PM WWW   Вверх
Sardar
Дата 28.7.2006, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: нет
Всего: 317



Цитата(maxim1000 @  28.7.2006,  16:12 Найти цитируемый пост)
брать шасси, навешивать какой-нибудь источник энергии, что-то типа процессора, всякие устройства типа сканеров, оружие и пр.

Сложно по настоящему продумать сбалансированную систему, всегда оно сводиться к лучшей броне, лучших фишках  и т.д. с единственным реально сдерживающим фактором - цена. А вот если пойти дальше, описать каждую деталь и вклад в бой который она может принести (способность дальше видеть, быстрей перемещаться, нести больше амуниции и т.д.), а потом позволить пересобираться юнитам во время боя, то был бы не плохой цирк smile
Представь в момен боя крупный танк сменяет пушку на что нибудь более эффективное для ближнего боя войдя "по купол". Пушка приноситься другим юнитом, задача которого только добежать не повредив новую пушку. 5-7 секунд "монитирования" прям на месте боя и вот оно - новое грозное оружие. Пользы от такой фичи не много, но просто реализовать если сборка юнит уже модульна и главное смотриться красиво smile 


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование игр, графики и искуственного интеллекта"
Rickert

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.

  • Литературу, связанную с программированием графики, обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы связанные с программированием графики и мультимедии на языках С++ и Delphi
  • Вопросы по реализации алгоритмов рассматриваются здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема »


 




[ Время генерации скрипта: 0.0726 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.