Краткая информация: =========== Название проекта: NarutoShippuden - Shinobi New War Автор карты: Faion a.k.a Bezarius Жанр: Anime oRPG Размер: 256*256 Язык: Русский, в будущем планируется переводить и на другие языки Кол-во игроков: ~10 Поддержка компьютера: нет
Описание проекта: =========== В данном проекте демонстрируется мир всемирно известного аниме Naruto который собрал под свом флагом миллионы фанатов по всему миру. Вам предоставляется уникальная возможность создать свою уникальную историю играя за своего собственного персонажа!
О проекте: ===========
=== Контент
Это первое чем выделяется проект, это конечно же огромным количеством нестандартного контента, большая часть которого авторская. Благодаря качественному контенту вы сможете в полной мере погрузится в атмосферу мира "Наруто". Используя богатый опыт в моделировании в маленький объем(8мб) было умещено огромное количество моделей(к примеру разных вариаций зданий более 100), причем в хорошем качестве. Контент постоянно улучшается, ведь нет пределов для совершенства В работе над моделями так же принимали участие такие люди как Velmir и Potr@$itel.
=== oRpgGameSystem
Ну и конечно же главная особенность проекта, это oRpgGameSystem. Именно благодаря этой системе гемплей становиться таким уникальным и неповторимым. Эта система объединяет в себе десятки подсистем, таких как система квестов, подземелий, телепортов, смертей, рангов, прокачки и многих других. Впрочем главная цель этой системы помочь в создании контента в промышленных масштабах не прибегая к хардкодингу. Так же систематизация всего предполагает хорошую стабильность на более поздних этапах разработки.
=== Способности
На счет способностей особо не похвастаюсь, они "обычные", по крайней мере в поем понимании. К сожалению не так давно была какая то у меня "гениальная" идея, но поленился записать, и забыл. Сижу жду нового озарения. В целом я вообще давно пришел к выводу, что сами по себе способности не должны быть какими то сверхнавороченными и уникальными, и даже на против, чем проще, тем лучше. Главное что бы способности можно было комбинировать, и чем больше комбинаций, тем лучше. Впрочем эту роль частично на себя берет система элементов.
=== Способности ч2
Описанное выше не значит, что все так грустно:) Есть еще особенность одна, которая позволяет разнообразить гемплей, это обучение способностям. Игрокам предстоит не только изучать способности, но и в прямом смысле прокачивать их, применяя их в бою или на тренироваках.
=== Элементы
Система элементов сильно отличается от того что вы привыкли видеть в других проектах и играх. Особенность в том, что некоторые элементы усиливают другие элементы, и наоборот ослабляют другие. Такая простая, но в некотором смысле, гениальная система дает возможность выстраивать очень интересные тактики, а так же повышает роль командной игры. На данный момент существуют 5 основных элементов. Огонь, Вода, Земля, Молния, Ветер. В дальнейшем будут добавлены и другие. От уровня прокаченности элемента зависит, можете ли вы изучить какую либо способность, а так же ее сила.
=== Квест система
Ну же я не могу не похвастаться квест системой, которую я разработал для проекта Впрочем хвастаться можно долго, но не буду и опишу лишь основные особенности. Система позволяет создавать сложные квесты, со сложными диалогами и различными действиями\событиями\развилками\разными концовками\ролевкой\цепочки. Не прибегая к кодингу, просто используя ранее написанные API. Для баланса в этой системе используется подсистема которая сама просчитывает опыт который получит игрок за выполнение квеста, что позволяет добиться более строгого баланса и избавить от расчетов.
=== Квесты
В целом сейчас мир забит скучными и повседневными квестами. В дальнейшем планируется продумывать сюжеты и реализовывать их по средствам квестов. Хотя скучные и повседневные они наверно только в моем понимании Отмечу только то, что я старался избежать по максимуму квестов в стиле "убей 100500".
=== Прокачка
так же нестандартная, в прочем в ней нет ничего такого особенного. При получении уровня у вас будет возможность самостоятельно распределить очки способностей(сила, ловкость,инт) и мастерства(элементы).
=== Смерть
Тут я постарался придать миру реализма и исключил возможность реальной смерти вашего персонажа как таковую. При низком уровне здоровья ваш персонаж будет терять сознание, и вырубаться. Есть шанс, что при этом вы получите штраф к характеристикам, а так же потеряете 10% от текущего уровня опыта. Ваш персонаж перейдет из "горизонтального" в "вертикальное" положение в случае если ваш уровень здоровья выше 50%, или если вас полечат. Данная простая, но интересная особенность позволяет поднять тимплей на новый уровень, а так же повысить важность сапортерских классов, которые как правило не играбельны в рпгшках.
=== Кланы
Честно говоря кланы еще толком не реализованы, только "функционал" для них. Но по задумке, клан позволит овладеть какими либо способностями(по другой версии к пассивке клановой), и предоставит доступ к клановым квестам.
=== Ранги
Ранг влияет на доступность различных фич, таких как квесты к примеру, а так же к примеру на скорость обучения способностям(да да, у способностей есть тоже ранги)
=== Репутация
Весьма важный параметр. У игрока существует репутация по отношению к конкретным нпц, и к группам\кланам. Игрок не сможет быть хорошим в глазах всех, т.к. многие нпц могут быть "злыми", "нейтральным", "добрыми". И сам игрок может отыгрывать роль злодея, нейтрала или добряка. Хотя честно говоря "пощупать" это можно всего лишь в нескольких квестах. Так же нпц который плохо к вам относится откажет в квесте и даже может напасть.
=== Новая фича
Не так давно, г-н ~Diazzz подал весьма годную идею. Разбить мир на множество карт(отставить думать про компанию с Рексаром), что позволит создать безграничный мир, существенно снизить нагрузку. Суть идеи --наполеонская-- простая, и как следствие --задротна-- гениальна, сделать возможность загрузить своего персонажа по средством Save-Load, на разных картах. В общем идея понравилась мне, и я планирую ее реализовывать. По задумке на первых порах я разобью мир на 5 больших карт(256*256), по 1 на каждую "Великую страну". Потом и для других стран можно будет, при необходимости конечно же. Собственно текущую карту я недавно урезал до 256*256, ну и переделал ланд заодно. Собственно задумка требует больших трудозатрат, но думаю я справлюсь, буду юзать свой скилл автоматизации по максимуму
Готовность ==============
Страна Огня ~80%
Немного скриншотов ==============
Немного истории ==============
=== Вступление У проекта достаточно длинная история, которая начинается в далеком 2008(или 2009?). Насмотревшись аниме, как и многие другие, я решил "покорить мир" создав сие творение. На момент начала работы мои знания были ничтожными, а амбиции необъятными. И конечно же я понимал, что создать что то действительно хорошее и запоминающееся не так просто. После ряда неудачных попыток рекрутинга толковых помощников, я осознал на своей шкуре, что если хочешь что бы что то было сделано - делай сам и занялся изучением всех аспектов модеймкинга wc3. Очень быстро я поднял скилл да более менее приемлемого и даже слепил первый свой пак моделей зданий. Так как в то время(в прочем как и сейчас) данный жанр воспринимался, мягко говоря, негативно и серьезные разработчики попросту игнорировали данное направление, контента, в особенности моделей, катастрофически не хватало. По этому я решил воспользоваться этой возможностью, что бы выделиться среди потенциальных конкурентов и как следствие я долгое время занимался в основном только графикой. Через некоторое время получилась "конфетка", с красивой оберткой, но отвратительным содержанием...
=== 0.01 (2009 год)
Первая версия вышла совершенно неиграбельной, содержала колоссальное количество багов, дико лагала, да и вообще, нестандартную камеру, движение по средствам использования стрелок никто не оценил. Но я не собирался сдаваться так легко. Я сразу же начал работать над следующей версией. Проанализировав причины неудачи, я пришел к выводу, что прежде всего нужно улучшить навыки и развивать идею, чем собственно и занимался... В последствии это привело к полному рефакторингу проекта.
=== 0.02 и 0.03 (2010 год)
Эти две версии я объединил потому что они концептуально схожи. В этих версиях я улучшил как --обертку-- графику, так и скрипты, начал предпринимать попытки использовать cs для удаления утечек. Появился даже некоторый гемплей, хотя в некотором смысле это стало похоже на аос. В целом было даже немного интересно, хотя по прежнему бажно. Но в целом я понимал, что это не то чего я хочу достичь. Кстати 0.02 и 0.03 до сих пор можно найти в инете, если постараться =)
=== 0.04 (2011 год)
Эта версия была уже написана полностью на нубожассе. Появились первые относительно неплохие модели. Хотя по прежнему в проекте отсутствовал как таковой гемплей, как и во всех предыдущих. При первом тесте же мне это и стало ясно. По этому эта версия в свет не вышла. Долгое время я не решался продолжать проект, так как был разочарован в себе и попросту не знал, как же мне вытянуть проект и сделать его интересным, а не просто пустышкой с красивой оберткой. Именно эта версия дала мне понять, что нужно продумать гемплей, а не создавать проект экспромтом.
=== 0.05 (2012 год)
Данная версия, которая разрабатывается и по сей день является полностью переработанным проектом, который включает опыт предыдущих неудач. Ну а о ней собственно вы уже должны были узнать из описания выше:)
Проекту требуются помощники! ============================
Так как я уже давно не школьник, и даже не студент, у меня мало времени на проект, а порой просто нету сил, по этому для того что бы ускорить процесс я приглашаю в проект всех желающих, при условии что вы действительно можете помочь проекту не словами, но делом.
И так, проекту требуются люди которые смогут писать по шаблонам диалоги к квестам, по собственному сценарию. Прикручивать квесты я буду сам, т.к. так быстрее будет. Желательно обладать хорошим знанием русского языка, а так же знать хотя бы концепцию мира Naruto. Количество "мест" неограниченно, так как проекту требуется не одна сотня квестов. Так же проекту требуются спеллмейкеры, обязательным требованием является знание cjass'a, так как в разработке способностей обязательно использование моих систем, а они на cjass. Тема способностей в целом свободная, так как мой проект использует лишь концепцию мира Naruto. По этому не обязательно знание аниме, хотя знание хотя бы концепции было бы плюсом. Так же проекту не помешает модельщик, умеющий делать анимации, владеющий скиллом оптимизации моделей.
Replicas npc_ask = "Группа шиноби которых я направил в разведку на юг страны давно не выходит на связь. Возможно с ними что то произошло." quest_tips = "Узнайте что случилось с группой шиноби которая патрулировала Юг страны Огня." strHELP = "Детали миссии" strMEAN = "Принять миссию" strEXIT = "Отказатся от миссии" qweHELP = "Какова моя задача?" qweMEAN = "Что ж, я постараюсь что нить разузнать о твоей группе." qweEXIT = "Я слишком занят" ansHELP = "Нужно добыть любые сведения о группе. Если что то с ними произошло, то нужно спасти их." ansMEAN = "Рядом с местом в которое я отправил есть небольшая деревушка. Лучше всего начать поиск с нее." ansEXIT = "Всеравно спасибо" EndReplicas
QuestActions MeanAction CreateQuestAdventure(12000.,-24200., 600., "Вы добрались до деревушки. Вам стоит поспрашивать у местных о судьбе шиноби, быть может они что то знают...", ""); EndAction EndQuestActions
IsNpcIdAndStage(286, 3)
Replicas npc_ask = "Чего нужно?" quest_tips = "Найдите шиноби о котором говорил стражник" strMEAN = "Спросить о группе" qweMEAN = "Я ищу группу шиноби из селения Листа которую недавно направили в этот регион. Они должны были остановиться здесь. Ты что нибудь знаешь?" ansMEAN = "Хм, я особо не вкурсе, но вроде бы один из группы сейчас в деревне." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(117, 4)
Replicas npc_ask = "*Не реагирует на ваше присутствие*" strMEAN = "Спросить о группе" qweMEAN = "Эй! Ты же из группы шиноби которую послали на миссию в этот регион?" ansMEAN = "*Никак не реагирует*" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(117, 5)
Replicas quest_tips = "По всей видимости от шиноби не получиться добиться ответа.\n Отправляйтесь в разведку, быть может найдутся какие нить зацепки." strMEAN = "Спросить еще раз" qweMEAN = "Эй! Я с тобой разговариваю, ты слышишь?" ansMEAN = "*Никак не реагирует*" EndReplicas
QuestActions MeanAction CreateQuestAdventureWithTrap(11000., -27000., 600., Bandit, 5, "Судя по этой засаде вас явно ждали. Раберитесь с бандитами и постарайтесь что нить узнать о судьбе остальных шиноби") EndAction EndQuestActions
IsNpcIdAndStage(158, 7)
Replicas npc_ask = "Тебя послали за мной?" strMEAN = "Говорить" qweMEAN = "Ты один из тех шиноби которых послали в этот регион с миссией?" ansMEAN = "Да. Слушай, нам нужно торопиться. Что то произошло, и нападавшие бросили меня тут и куда то ушли. Но я боюсь они могут скоро вернутся." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(158, 8)
Replicas quest_tips = "Сопроводите спасенного шиноби в деревню" strMEAN = "Говорить" qweMEAN = "Хорошо, ты сможешь идти сам?" ansMEAN = "Да, поторопимся." EndReplicas
QuestActions MeanAction Escort(Npc_Unit[158], 12600.0 , -24300.0 , "Вы успешно добрались до деревни", "Вы не смогли спасти шиноби, миссия провалена", "Шиноби",Bandit) EndAction EndQuestActions
IsNpcIdAndStage(158, 10)
Replicas npc_ask = "Спасибо тебе за помощь." strMEAN = "Говорить" qweMEAN = "Не думаю, что они нападут в открытую на нас здесь, по этому мне кажется что тебе стоило бы рассказать что же произошло с вашей группой." ansMEAN = "Нашей целью была разведка. Когда мы начали исследовать регион, мы обнаружили большое количество шиноби отступников и прочей нечисти. Передвигаться группой стало опастно и мы решили разделится. В скоре меня обнаружили, что с остальными я не вкурсе. Возможно их тоже поймали..." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(158, 11)
Replicas strMEAN = "Говорить" qweMEAN = "Что ж, спасибо за сведения. Кстати один из вашей группы в деревне. Но... как бы это сказать... он странно себя вел. Я пытался задавать ему вопросы о произошедшем, но он как будто меня не замечал" ansMEAN = "Тогда я отправлюсь к нему, быть может когда он увидит меня ему станет лучше." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(158, 12)
Replicas quest_tips = "Отправляйтесь в поиски сведений об остальных членах группы" strMEAN = "Говорить" qweMEAN = "Хорошо, удачи, я постараюсь найти зацепки об остальных" ansMEAN = "Будь осторожен." EndReplicas
QuestActions MeanAction UnitOrderMoveToPoint(Npc_Unit[158], 13170.0, -24100.0, 320.0) CreateQuestAdventureWithTrap(16000., -28300., 1000., Bandit, 5, "Судя по этой засаде вас явно ждали. Раберитесь с бандитами и постарайтесь найти зацепки о других шиноби") EndAction EndQuestActions
IsNpcIdAndStage(159, 14)
Replicas npc_ask = "Эй, ты шиноби селения листа? Помоги мне отсюда выбраться..." strMEAN = "Говорить" qweMEAN = "Ты шиноби из группы которую послали в этот регион с миссией?" ansMEAN = "Нет, но если ты мне поможешь мне спастись, я поделюсь ценными сведениями" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(159, 15)
Replicas strGOOD = "Спасти" qweGOOD = "Хорошо, я помогу тебе, ты как, *вы замечаете легкие ранения* сам сможешь идти?" ansGOOD = "Думаю да, это лишь царапины..."
strEVIL = "Бросить" qweEVIL = "В мою миссию не входит спасение посторонних, пускай даже ты шиноби нашей деревни. Прощай" ansEVIL = "Черт... если я выберусь, я тебе это припомню..." EndReplicas
QuestActions GoodAction Escort(Npc_Unit[159], 12600.0 , -24300.0 , "Вы успешно добрались до деревни", "Вы не смогли спасти шиноби, миссия провалена", "Шиноби",Bandit) EndAction EvilAction GoToStage(21); CreateQuestAdventureWithTrap(18800., -28300., 600., Bandit, 5, "Судя по этой засаде вас явно ждали. Раберитесь с бандитами и постарайтесь найти зацепки о других шиноби") EndAction EndQuestActions
// ветка квеста в котором игрок играет роль хорошего шиноби
IsNpcIdAndStage(159, 17)
Replicas quest_tips = "Отправляйтесь в поиски сведений об остальных членах группы" npc_ask = "Мы добрались... *теряет сознание*" strMEAN = "Говорить" qweMEAN = "Эй! Эй! Что с тобой? *шиноби не регирует*. *Вы быстро осматриваете его раны и замечаете что раны были не простыми, они были нанесены ядовитым оружием*" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(159, 18)
Replicas strGOOD = "Спасти" qweGOOD = "Держись, сейчас я соберу травы и сделаю противоядие!"
QuestActions GoodAction CreateNItemInRange('I01W', 5, "Лечебные травы","Вы собрали достаточно лечебных трав", 11500., -24600., 1000., false, onGRASS) EndAction EvilAction GoToStage(21); CreateQuestAdventureWithTrap(18800., -28300., 600., Bandit, 5, "Судя по этой засаде вас явно ждали. Раберитесь с бандитами и постарайтесь найти зацепки о других шиноби") EndAction EndQuestActions
IsNpcIdAndStage(159, 20)
Replicas npc_ask = "*Шиноби выглядит плохо и у него бред*" strMEAN = "Использовать травы" qweMEAN = "*Из собраных трав вы сделали противоядие, остается только ждать*" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(159, 21)
Replicas npc_ask = "*Шиноби пришел в себя* Спасибо тебе дружище... если бы не ты... я бы точно погиб. Я обязан тебе жизнью дважды" strMEAN = "Спросить про сведения" qweMEAN = "Ты сказал, что у тебя есть какие то ценные сведения" ansMEAN = "На самом деле я соврал. Прости. Но за то что ты спас меня аж дважды, я не могу тебя не отблагодарить." EndReplicas
QuestActions MeanAction AddRewardItem('I01V', "Получено: Взрывные кунаи х3") CreateQuestAdventureWithTrap(18800., -28300., 600., Bandit, 5, "Судя по этой засаде вас явно ждали. Раберитесь с бандитами и постарайтесь найти зацепки о других шиноби") EndAction EndQuestActions
Replicas strMEAN = "Говорить" qweMEAN = "Ты шиноби из группы которую послали на разведку в этот регион?" ansMEAN = "Да. Я из этой группы, тебя послали к нам на помощь?" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(160, 25)
Replicas strMEAN = "Говорить" qweMEAN = "Не совсем. Меня основная задача узнать о вашей судьбе." ansMEAN = "Понятно, но знаешь, помощь мне бы не помешала. Нашей группе пришлось разделиться. Судя по всему некоторые попали в плен. Я пытаюсь узнать их месторасположение и попытаться спасти товарищей" EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(160, 26)
Replicas strMEAN = "Говорить" qweMEAN = "Не стоит беспокоиться, я уже выручил твоих товарищей, они в целости и сохранности в деревушке неподалеку" ansMEAN = "Так значит все спасены? Со всеми все впорядке?" EndReplicas
Replicas npc_ask = "Эй! Ты! Ублюдок! Ты хоть понимаешь что я из за тебя теперь не смогу спасти своих товарищей?!" strMEAN = "Говорить" qweMEAN = "Успокойся, я уже выручил твоих товарищей, они в целости и сохранности в деревушке неподалеку" ansMEAN = "Так значит все спасены? Со всеми все впорядке? Тогда мне больше нечего сдесь делать." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(160, 29)
Replicas quest_tips = "Вернитесь с последним шиноби в деревню" strMEAN = "Говорить" qweMEAN = "Да. Давай возвращаться." ansMEAN = "Хорошо, думаю действительно лучше будет встретиться с остальными." EndReplicas
QuestActions MeanAction Escort(Npc_Unit[160], 12600.0 , -24300.0 , "Вы успешно добрались до деревни", "Вы не смогли спасти шиноби, миссия провалена", "Шиноби",Bandit) EndAction EndQuestActions
IsNpcIdAndStage(160, 31)
Replicas npc_ask = "Спасибо за то что помог мне и моим товарищам, я перед тобой в долгу" strMEAN = "Попрощаться" qweMEAN = "Что ж, на этом моя миссия тут завершена, мне нужно вернуться в селение Листа и сообщить о том что вы живы." ansMEAN = "Я понимаю, что это эгоистично, но не мог бы ты помочь еще кое чем? Доставь пожалуйста в селение Листа этот отчет. Он очень важен." EndReplicas
QuestActions EndQuestActions
IsNpcIdAndStage(160, 32)
Replicas quest_tips = "Вернитесь в селение Листа" strMEAN = "Взять отчет" qweMEAN = "Хорошо, я доставлю твой отчет в селение Листа." ansMEAN = "Будь осторожен по дороге обратно." EndReplicas
Replicas npc_ask = "Я смотрю ты вернулся. Ты смог узнать что случилось с отправленной группой?" strMEAN = "Говорить" qweMEAN = "Да. Группа которую вы отправили в южный регион с разведой был атакована превосходящими силами. Мне удалось их спасти. Потерь среди группы нет. Так же они попросили передать этот отчет." ansMEAN = "Значит все целы? Что ж отлично. *Читает отчет* Спасибо за работу. Можешь идти." EndReplicas