Venom's RP Azeroth
4 поста
4 поста
Продолжаю делиться новостями по проекту Venom's RP Azeroth. Давно не было новых постов, я был занят большим блоком, и вот, есть что показать.
С NPC можно говорить, языки учить, магию комбинировать, а погода влияет на геймплей. Играя в такую версию, все равно не покидало ощущение, что я играю в ММО. Мы так же бесконечно били болванчиков по заданиям, мы так же проходили буквально перед носом врагов благодаря радиусу агро, мы так же убивали десятки медведей в поисках пяти сердец. И я понял, нужно менять сам подход к тому, как этот мир функционирует. Больше всего в игре встречаем мы зверей, поэтому первыми под модернизацию попали они.
И начать предлагаю с главного.
Как устроено классическое зрение в игре? А никак, его попросту нет. Все мобы имеют скан 360 градусов вокруг себя. Погода, время суток, рельеф и т. д. совершенно никак не влияет. Единственное, что меняет радиус агро, это разница уровней и наличие или отсутствие стелса у игрока.
Как можно понять, это совершенно точно рушит любой отыгрыш, да и просто мир ощущается картонным. Как это исправить? Всё уже придумано, добавить лучи, которые будут определять, что же видят NPC.
Что же было сделано.
Базовая дальность зрения игрока, а именно подгрузка мобов, в обычном варианте около 100-150 ярдов. Я поднял эту планку до максимально возможной для сервера — 250. Это теперь наш предел, на который можно смотреть как игрокам, так и NPC.
Но, думаю, очевидно, что дать всем такой радиус было б ошибкой, поэтому каждому виду была присвоена своя острота зрения. Опирался где-то на лор, где-то на живую природу нашего мира. Орел или лев куда более дальнозоркий, чем краб или кабан.
Игроков тоже не обошло стороной, для примера стандарт для человека в ясный день можно заметить стоящего в полный рост человека примерно на расстоянии 180–200 ярдов. Кровавый эльф — до 230-250 ярдов. Опираясь на лор, это самая зрячая раса в игре. По крайней мере, из играбельных.
Думаю, уже и так очевидно, но упомяну, всем выданы корректные конусы зрения, согласно их биологическим особенностям. Подкрадывание сзади теперь работает для всех, но не у всех это получится, но об этом позже.
Если заметили, что я упомянул ясный день, молодцы.
Да, в зависимости от освещенности, погоды, тумана, времени суток и размера цели расстояние меняется.
Ночью оно сокращается для рас без ночного зрения примерно на 35%. Ночным эльфам, естественно, выдано полное ночное зрение, нежити тоже, так как их глаза давно функционируют на некротической энергии, также оркам ночь порежет зрение лишь на 20–25%. Среди животных это, очевидно, все кошачьи и т. д.
Холмы, деревья, туман, непогода скрывают игрока от NPC, стелс стал доступен обычным классам, достаточно только быть внимательным и использовать окружение. Более того, для локаций с плохой освещённостью, типа того сумеречного леса, указаны свои параметры видимости, так что там, даже если в Элвинском лесу ясный день, видимость будет ограничена.
Ночью, в сильный ливень с туманом, удалось получить дальность видимости у человека около 65 ярдов. На фоне 200 днем это действительно заметно, а главное, выглядит естественно, за счет тумана и прокачанного рендера света.
Помимо освещенности и непогоды, как уже догадались, размер объекта тоже учитывается.
Для игрока это работает нативно, т. е. сам игрок на обычном мониторе гнома за 200 ярдов увидит с трудом. И чтобы имитировать это и для NPC, у них видимость прямо привязана к размеру модельки. Гнома они увидят сильно позже, чем человека, орка или таурена. Но есть лайфхак: если тот же таурен ляжет, его станет хуже видно, примерно как гнома. Т. е. расчет идет именно от видимой части модельки. Соответственно, зелья уменьшения и увеличения тоже работают.
Можно было решить, что теперь при появлении на локации все агрессивные NPC сразу вас заметят и побегут отрывать вам лицо, но нет. Вас видят, но замечать вас начнут сильно позже. Как это работает: на границе зрения шанс заметить у рядового NPC около 1%, т. е. практически нулевой, но чем ближе вы к нему, тем выше шанс, что на вас обратят внимание. Причем шансы для разных рас разные. Скажем, ночных эльфов или тауренов животные подпустят ближе, чем человека или орка. А друида в форме зверя вообще могут принять за своего. Кривая внимания динамически зависит от действий игрока или NPC, его расы и текущего состояния, об этом подробнее тоже ниже. Итак, зрение у них теперь есть, но чего-то не хватает... Ах да, слуха!
Звук — это уровень в децибелах (дБ) на расстоянии 1 ярда от источника + частота (Гц). Нет, это не справка из Википедии, звук в игре теперь считается в децибелах и имеет частоту. Звук летит без потолка/ограничений по дальности, пока полностью не затухнет от дистанции (закон затухания −6 дБ на каждое удвоение расстояния), впитывания воздухом (ISO 9613-1), стен, дверей, рельефа и углов зданий. Ухо слышит звук, только если он выше фонового шума («тишины» локации) с учётом остроты слуха существа. Да, NPC теперь выданы уши, у каждой расы разная чувствительность. Краб слышит хуже, чем лев. У гуманоидов пока все слышат одинаково, но в будущем и это поправлю. Как же это работает на практике? У всех появился порог слышимости:
Уравнение Arrival > (QuietAt(listener) - Acuity), где QuietAt — фоновый шум места, Acuity — острота слуха (у кошек/волков +4...+6 дБ, у раков −6 дБ, у спящих −4 дБ).
Звук в игре не рассекает стены по прямой, он ходит так же, как ходит всё остальное, по пути. Если зверь стоит за углом здания, слышит он то, что дошло вокруг угла, а не сквозь стену. На ослабление влияет всё, что звук встретил:
Двери и преграды на пути;
Комнаты и помещения: закрытое помещение гасит звук, открытое нет;
Ввода;
Повороты. Чем больше крутишь, тем меньше доходит.
Важна и частота. Низкий звук проходит преграды лучше высокого, поэтому шаги и шёпот ведут себя по-разному. Стоишь за стеной таверны и тихо говоришь с товарищем, и зверь снаружи тебя не услышит, а вот шаги ещё можно уловить.
На границе слуха слово доходит обрывками. Понять, что кто-то говорит, можно, а о чём именно, нет.
Что же создает звук?
Шаги/бег (зависят от походки, типа доспехов, маунта, размера);
Шёпот (40 дБ), обычная речь (60 дБ), громкая речь (72 дБ), крик (85 дБ) (да, теперь волк услышит, если вы закричите или будете говорить с товарищем). Ах да, крики воина — тоже крики, а не безвредный бафф. Когда и где кричать, нужно учитывать;
Шум драки (растёт на +0.25 за каждого участника). Чем больше потасовка, тем больше внимания она привлечёт;
Реальные физические параметры выстрелов (~130 дБ) и взрывов (~150 дБ). Да, взрыв динамита, зов инфернала или выстрелы из ружья теперь имеют последствия;
Звуки заклинаний. Причем важен тип заклинания, фаерболл громче, чем фростболл. Для примера. Что разделено по логике, что-то по типу. Звук есть как и от каста, так и от точки попадания, NPC отлично слышат, что и где произошло.
Ну и, естественно, звуки самих животных. Рык, вой и т. д.
Для корректной работы звука в разных условиях разному окружению был добавлен разный фоновый шум.
Например:
Поле ночью: 25–30 дБ
Лес днем: 40 дБ
Деревня / Город: 45–50 дБ
Погода: дождь, снегопад, шторм не срезают дистанцию звука искусственно, а поднимают фоновый шум местности (например, сильный дождь = 55 дБ), из-за чего тихие звуки в нем естественным образом тонут.
Фоновый шум меняется динамически от местности, времени суток, погоды, как уже стало понятно из списка выше. Также внутри помещений на открытом пространстве он различается. Вы будете спокойно слышать в пещере спокойную речь (/s) товарища на куда большем расстоянии, чем в городе или в лесу. И да, теперь, если вы слышите речь на границе слуха, то это не есть текст в чате или нет, а именно обрывки фраз. Т. е. понять, что что-то говорят, можно, но сложно. Итак, звери нас слышат и видят, что же осталось? Верно, нюх!
Тут всё просто. Велосипед изобретать не стал, в игре нет понятия ветра, пока я отбитый, может и появится, но сейчас запах распространяется просто по кругу. Я думал, чтобы заставить пахнуть всех, но понял, что это, во-первых, перегрузит игру. А во-вторых, игроку будет крайне непонятно, почему его замечают звери, так как запах очень сложно объяснить интерфейсом. НО, может быть, в будущем... Сейчас же пахнут две вещи. Трупы и кровоточащие раны. Да, если у вас открытое кровотечение, то шанс, что на вас обратит внимание хищник, выше. А трупы... Чем дольше лежат, тем больше радиус, и тем выше шанс, что его заметит хищник... А зачем NPC замечать труп? И вот тут мы переходим к самому вкусному.
И так. У животных теперь есть зрение, слух и обоняние. И что им с ними делать? Гулять по заданному квадрату, нападать на всех, кого увидит? Нет, это поведение мобов с радиусом агро из какой-то ММО. Пора вдохнуть жизнь в этот мир.
Живой мир активен только в радиусе 300 ярдов вокруг живых игроков. Вне этой зоны звери ведут себя как в стандартной игре. Вынужденная мера из-за особенностей движка. Вдали от игрока мобы просто отключены для экономии ресурсов. Но если учесть, что максимальная дальность зрения 250 в идеальных условиях... Тесты показали, что 300 ярдов хватает с головой.
Все животные поделены на категории:
Хищники — питаются мясом. Приоритет по питанию: травоядные — хищники — прочее (гуманоиды, драконы, нежить);
Насекомые — тоже питаются мясом, от хищников отличаются отсутствием приоритетов. Ребята отбитые, готовы сожрать кого угодно.
Травоядные — жертвы природы и моей экосистемы;
Далее каждая категория уже дополнительно делится на:
Стайные — сбиваются в группы, вместе охотятся, заботятся друг о друге;
Одиночки — живут свою лучшую жизнь в гордом одиночестве;
Каннибалы — могут есть своих сородичей;
Ночные или дневные — когда идет максимальная активность вида;
Домашние или дикие - влияет на то, где обитает и кого боится;
Также каждому животному выданы параметры личной пугливости, травоядные более пугливые, и хищники менее, а также голода. И вот мы подобрались к основным механикам.
Хищники теперь умеют охотиться. И нет, они не просто нападают на мимо проходящих оленей и не грызут мышей. Как это было в оригинальной игре. Они могут гулять по огромной территории, обычно от половины до трети средней локации. Переходить в соседние локации, ориентируясь на новые органы чувств, они ищут, чем заняться. Сытые хищники будут отдыхать, спать, сидеть или просто гулять по округе. Но голодные будут искать жертву. Цель животных теперь — выжить.
При встрече с другими животными, NPC или игроком бросаются кубики действия.
Результат может быть один из трех. Агрессия, бегство или игнорирование. И в зависимости от состояния зверя шанс смещается в одну или другую сторону. Сытый зверь с большей вероятностью или проигнорирует, или убежит. Ему нет цели сражаться. Даже если игрок его атакует первым. Животное оценивает размеры цели, ее уровень, ее состояние, свое состояние. Скажем, раненный на 5% игрок или другой хищник, истекающий кровью, будут восприниматься как легкая добыча. Тогда как полностью здоровая цель, представляющая опасность, — нет. И все это вместе формирует новое поведение.
Звери заняты своим делом, если их не трогать и они не тронут
Система привязки к конкретной точке тоже убрана. Теперь, если зверь решит, что не прочь вами перекусить, будет гнаться за вами, несмотря на расстояние, пока не устанет. И даже потом не «улетит» на стартовую позицию, а останется там, куда добежал, и продолжит жить там или пойдет домой, оставаясь доступным для атаки.
Более того, звери запоминают, кто их обидел. И если, скажем, вы убили члена прайда львов, а потом вновь появились в поле зрения этого прайда, то с большой вероятностью они на вас нападут. И да, стаи, прайды и иные сборища социальных животных теперь действуют сообща. Они охраняют сородичей, сообща охотятся, защищают спящих и т. д.
Вот так, например, охотятся львы. Они предпочитают подкрадываться вне поля зрения жертвы. А что случилось во время второй демонстрации охоты, даже я не понял. Межвидовая конкуренция?
Помимо охоты, звери могут ходить на водопой или рыбачить, последнее могут не все. Скажем, медведи с этим отлично справляются.
Системы агрессии теперь тоже две, есть режим охоты, где они будут пытаться загнать и убить цель для трапезы, и режим защиты территории. Скажем, если подойти к занятому поеданием добычи зверю, он зарычит и кинется на вас, но стоит отойти, как он вернется к своей туше. Зверю, у которого есть еда, нет смысла тратить силы на убийство кого-то, кто ему не мешает.
Неосмотрительно было ему мешать их трапезе
И да, это всё работает не только NPC — игрок, а также NPC — NPC. Животные пытаются отбить друг у друга добычу, дерутся за территорию. Гоняют друг друга ради пропитания (так уж устроена экосистема мира, что хищников там в разы больше, чем травоядных) и т. д.
Как уже стало понятно, животные научились есть, но что это значит для игрока.
Первое, у трупов появилось четыре стадии:
Свежий — обычный нетронутый труп;
Растерзанный — труп, который изрядно потрепали, из него пропадает часть лута, который можно съесть, а предметы получают повреждения;
Обглоданный — животные съели почти все мягкие ткани, такой труп уже нельзя лутать.
Съеден — по сути, трупа уже нет, труп исчезает;
Второе, у животных есть чувство голода:
Сытый — зверь практически не реагирует на трупы и потенциальную еду, от опасности предпочитает убегать;
Голодный — зверь активно ищет пропитание, старается найти травоядных или свежие трупы, может решить, что игрок, который на него напал, неплохая еда;
Голодающий — зверь на грани смерти от голода. Страх почти полностью уступает чувству голода, может атаковать любого, кого посчитает съедобным;
У мёртвого тела есть запас прочности, и каждый укус зверя отнимает часть этого запаса. Величина укуса зверя рассчитывается исходя из его размера и размера тела.
Для примера, обычный голодный медведь за трапезу спокойно съест тело гнома, а вот трупом тауренка можно будет накормить несколько медведей или небольшой прайд львов.
Третье, у тел появился уровень свежести:
Свежий — только убитый, не успевший еще протухнуть;
Гниющий — над телом начинают роиться мухи, тело больше привлекает падальщиков, а также крыс или тараканов;
Скорость гниения зависит от климата. В жарком оно проходит быстрее, чем в умеренном. В зимних же локациях гниение отсутствует.
В итоге получается цельная система. Звери могут загнать и убить добычу или найти уже убитую, например, игроком, и в случае голода начать ее есть. Тем самым оставляя для игрока меньше лута. С другой стороны, животные естественным образом очищают территорию от мертвых тел.
*В серии роликов ниже, представлен таймлапс работы экосистемы. Для большей наглядности, игровые сутки были установлены на один реальный час. От чего голод у животных наступал гораздо быстрее, а трупы гнили за минуты, разнося аромат по округе. В штатной игре, данные процессы займут часы реального времени
Я всего лишь убил пару десятков жителей деревни, а потом стал наблюдать, что будет происходить. В какой-то момент трупы начали гнить и привлекать полчища крыс
После того, как все жители были убиты и съедены, звери по праву заняли новые территории и успокоились
Немного даже зловеще, ферма без жителей
Важный момент. Звери также могут есть и игрока. В случае если тело игрока было растерзано, он уже не сможет воскреснуть, а его одежда получает сильные повреждения, вплоть до полного разрушения прочности. Дополнительно, в зависимости от размера игрока и размера едока, он может проглотить предмет, как надетый на игрока, так и лежащий в сумке. Причем это может быть что угодно. Шанс минимальный, но он есть. Чтобы вернуть предмет, придется выследить и убить зверя, который его съел. Также звери при поедании игрока будут есть либо его, либо то, что у него в сумках, если оно подходит им для пищи.
Скажем, собирали вы сердца медведей по заданию или просто нажарили кучу вкусных стейков, а вас растерзали голодные львы. Но, вернувшись к телу, обнаружите, что оно не тронуто, скорее всего, львы нашли у вас в запасах более вкусное мясо и полакомились им, не тронув саму тушку. Зверь может совмещать как поедание содержимого сумок, так и самого игрока. Но он всегда прекратит, когда насытится.
При этом лев никогда не съест ничего крупнее кольца или ожерелья с тела человека, а вот с тела гнома вполне может слопать и перчатки, и шлем. А тот же T-Rex из Кратера Унгоро спокойно проглотит целиком и таурена, оставив его без меча, нагрудника или штанов. Но, повторюсь, цель зверей не в том, чтобы съесть одежду игрока. Но мизерный шанс есть.
Гном медведю на один укус
Для всех живых существ, включая гуманоидов, добавлены новые состояния:
Выброс адреналина — ускорение атаки и скорости бега. Может активизироваться при атаке у хищников или побеге. Работает у всех, у кого бьётся сердце;
Критические ранения — падают скорость бега и атаки. Существо получило серьезные повреждения. Появляется после выброса адреналина, который случается при сильном падении здоровья;
Предсмертная агония — отключается пассивное восстановление здоровья, открывается кровотечение, которое можно остановить только лечением;
Эти эффекты накладываются как на игроков, так и на всех живых NPC. А что ж с мертвыми и конструктами? Адреналина у них нет, как и предсмертной агонии, зато они получают «критические ранения». При битве с нежитью в какой-то момент ее атаки становятся медленнее, как и скорость бега. Сама она от полученных ран не умрет, но и выброса адреналина для финального броска или побега у нее тоже не будет. То же касается механизмов. Над драконами и демонами пока думаю.
Смерть от полученных ран в бою, он пытался вернуться к стае, но не успел
Что это дает? Во-первых, добавляет иммерсивности, раненные существа теперь действительно раненные. Они больше не могут бегать и прыгать, как раньше. Во-вторых, животные получили реальный шанс спастись, если все пошло не по плану, или, напротив, догнать раненную добычу. А сильно раненные звери, если не найдут пропитание, просто умирают, становясь едой для других.
А теперь немного о страхе. Зверя можно испугать. Скажем, громким звуком. Падение метеорита того же Инфернала или взрыв динамита способен распугать зверей вокруг. Крик, в целом, тоже может испугать. Охотник с ружьем теперь рискует распугать всю округу. Это можно использовать в своих целях. Скажем, отогнать стаю от тела или, напротив, погнать животных в деревню, и пока жители ими заняты, проникнуть на территорию незамеченным. Также зверей пугает смерть их сородичей. Животные, получившие много урона или один, но очень болезненный удар, могут убежать. Смерть или побег сородичей при атаке стаи сигнализирует остальным, что враг силен, и, возможно, лучше его оставить в покое.
Стая попыталась отогнать меня со своей территории, и как только я вышел за пределы, оставила меня в покое, но атака по сородичу, заставила из передумать, а его смерть передумать второй раз
Взрывы или просто столб огня — вполне действенный способ прогнать зверей, но не гарантированный
А вот что действительно пугает, так это орущее дерево
Пару слов о переработанной системе лута. Может показаться, что теперь выполнять квесты станет значительно сложнее, ведь мало того, что нужно выбить какой-то крестовый предмет, еще и нужно зверя поймать и т.д. и вы будете и правы и нет. Теперь со зверей, и с гуманоидов, да и вообще со всех, шанс выпадения органов и частей тела 100%. Если нужно добыть три кабаних сердца, вам потребуется убить ровно трех кабанов. Клыки - тоже самое. Более того, все что может выпасть из зверя при убийстве и относится к его телу (кишки, глаза, клыки, перья, когти, мясо и т.д.) выпадает также со 100% вероятностью. Убив зверя вы получаете с него все, что возможно вообще выбить с этого животного.
Дополнительно, рассматриваю возможность увеличить количество выпадаемых предметов. Скажем, если выпадает глаз, то сразу два. Мяса, 5-10 или 15 шт с туши и т.д. Так как охота стала сложнее, и награда должна быть. Что бы обеспечить себя медвежатиной, должно быть достаточно загнать и убить одного медведя. Но это пока на тестировании.
Также исправлена логика массовой атаки. Так как у моделек NPC и игрока нет коллизии, они могут стоять друг в друге. Что приводит к некоторым условностям, когда игрока бьют 20 человек, они все могут стоять в одной модельке. Это сильно ломает погружение. Поэтому теперь бьющие рассредоточиваются вокруг цели. Причем один «танчит» ее, а остальные стараются держаться позади. Если же место вокруг цели закончено, то те, кому не хватило места, просто ожидают своей очереди, как только кто-то будет убит или убежит, его место сразу будет занято свежим бойцом. Это немного исправляет ситуацию с балансом, если сорвалась целая деревня, а также выглядит более корректно. Также дальнобойные ребята теперь стараются отходить, если к ним подходят.
Наглядная демонстрация, как разница в размерах влияет на количество одновременно атакующих и чем заняты остальные. Ну и бонусом, экосистема не спит, ворги пришли на запах крови и трупов
Эта часть пока проработана очень поверхностно. Основные силы были брошены на проработку животных. Но вот что уже сделано:
Защита территории — гуманоиды и разумная нежить теперь охраняют свои границы от враждебных индивидов. Скажем, фермеры защищают свои поля и скот от хищников. Причем, если к ним приблизится игрок, они не бросятся в атаку, а вначале попросят уйти. Если же игрок их проигнорирует — атакуют;
Поддержка — в случае если кто-либо вступает в открытый конфликт с жителями поселения, на защиту выходят все, кто видит драку, в зависимости от своей смелости. Женщины чаще будут убегать и звать подмогу. Первыми в бой вступают стражники. Но и остальные мужики быстро присоединяются.
Распорядок дня — теперь в поселениях жители могут ходить спать, гулять в вечернее время. Собираться в тавернах и у костров и т. д. Это пока на очень ранней стадии, но частично работает. И да, если игрок потревожит тренера или торговца в момент отдыха, ему придется заплатить повышенную цену как компенсацию прерванного отдыха;
Запоминание обиды — если игрок или зверь напал на поселение, его отогнали, и он вернулся, то стража сразу бросится в атаку, и поднимется тревога. Так как враг, с которым уже был конфликт, вернулся. И чем больше убийств на счету, тем больше сил будет брошено;
Так как им также выданы слух и зрение, теперь можно это использовать в своих интересах. Выманивать NPC в уединенные места, где с ними расправляться без лишних глаз и ушей;
Как и во всех предыдущих модулях. Этот так же можно полностью настроить под себя. Шансы охоты, страха, углы обзора, острота зрения, слуха и т.д. и т.п. Все константы и шансы задаются непосредственно в таблицах базы или в файле конфигурации.
Если кто-то дошел до сюда, спасибо за внимание!
Я далеко не всё упомянул, планы по развитию той же экосистемы зверей также есть, как и экосистем других видов. Как минимум обязательно нужно закончить блок гуманоидов и нежити.
Сейчас мир игры ощущается уже куда живее. Периодически случаются разные события, вне зависимости от действий игрока. Банально, частенько можно увидеть, как те же мурлоки кошмарят местных воргов или две стаи грызутся за чью-то тушу. Этот блок отнял у меня порядочно времени, думаю, ближайшее время сосредоточусь на мелких задачах, чтобы немного передохнуть. Спойлер, появились мысли, как улучшить систему погоды, возможно, этим и займусь =)
В оригинальном WoW у нас полностью разделены Альянс и Орда по языковому барьеру. Почему Blizzard так поступили, я понимаю, но мне всегда это казалось странным. Так как еще в Warcraft 3 у нас фракции спокойно общались друг с другом. А Тралл, так вообще, прожил среди людей немало лет. Разработчики заложили в игру возможность говорить на разных языках, но сделали это очень условно. Особенно абсурдно смотрелись всегда Отрекшиеся. По сути, люди, забывшие язык людей. Так это оставлять было нельзя.
Теперь все языки в игре являются навыками. Игроки, боты и все NPC получили знание того или иного языка. Логика простая. Кто с кем контактирует, те языки и учит. NPC орк, стоящий среди отрекшихся, будет понимать их речь лучше, чем орк, стоящий у рандомной башни в степях. Также уровень NPC влияет на то, какие языки знают, чем выше уровень, тем лучше владение.
С игроками ситуация иная. Со старта каждой расе доступен свой набор языков, причем теперь знание языка - это не просто флаг «знает/не знает», а это именно навык, который можно прокачивать. Даже если персонаж знает язык на 0, строка языка у него есть, а вот реального знания нет.
Работает это следующим образом: у каждой расы есть полное владение своим и/или дополнительным языком. Возьмем отрекшихся: они в совершенстве знают наречие нежити, а также язык людей, или, как он называется, «всеобщий». Нежить совершенно полностью понимает то, что говорят люди, а вот люди хуже, но понимают, что говорит нежить. Так как язык нежити является искаженным языком людей, полным воровского жаргона и прочих искажений из социальных низов. Из-за чего, скажем, таурены вообще не понимают язык нежити, а люди и дварфы вполне могут уловить суть сказанного. Так как и жаргон они знают, и язык людей тоже.
В ту же сторону орки и ночные эльфы, они соседствуют, у них многолетняя история противостояния. Так что они хоть и ломанно, но могут общаться.
Про это язык вполне можно прокачать, общение с представителями фракции, выполнение квестов и просто частое нахождение среди иноязычных прокачивает навык. Так что стать полиглотом и выучить все языки - вполне реальная, но сложная задача.
Это, наверное, самая большая часть переделки. Раньше сервер фактически отправлял одну и ту же строку всем. Так работать наша система не могла. Представим, что орк говорит на орочьем с уровнем знания 100. Человек знает орочий на 50. Он понимает примерно половину. Другой персонаж знает орочий на 10 - для него эта же фраза будет практически полностью тарабарщиной.
Поэтому теперь каждое сообщение собирается отдельно для каждого слушателя. Причём слушатель может слышать не просто «50% фразы понятно».
Система работает по словам и языкам.
Сначала определяется, на каком языке реально смог говорить сам персонаж, а затем уже каждый слушатель пытается разобрать получившуюся смесь.
Как это работает. Если хоть раз кто-то пытался говорить на языке, который плохо знает, он прекрасно понимает, чем заменяются слова, которые он не знает. Правильно, матом! Шутки в сторону, естественно, они заменяются родной речью. Give me a сосиску, please. =)
Так это и работает в новой системе. Отрекшийся знает орочий на 50%. Он пытается говорить с орком на орочьем. 50% слов он действительно знает и произносит на орочьем, а остальные 50% автоматически выходят на его родном языке - гнилоустом. Для самого Отрекшегося фраза полностью понятна, потому что он знает, что хотел сказать. А орк получает смесь из двух языков и уже со своей стороны понимает только то, что знает.
Если орк знает гнилоустый на 10%, то получается: 50% × 100% орочьего + 50% × 10% гнилоустого = примерно 55% понятого текста. А если он оба языка знает на 100%, то он также полностью поймет фразу. И это работает как в сторону игроков, так и в сторону NPC и ботов.
Не «процент понятности всей строки», а нормальная сумма понимания каждого фрагмента.
У них сгнившее горло и челюсть, поэтому даже если Отрекшийся знает чужой язык, говорить на нём ему сложнее .Поэтому любое его обращение не на гнилоустом дополнительно теряет 15% речи, и эти слова снова превращаются в гнилоустый.
Это влияет только на речь.
Слушать Отрекшиеся могут нормально. Т.е. понимают они все, а вот при разговоре есть проблемы. Только тот кто хорошо знаком с нежитью, сможет понимать полностью, что она пытается сказать.
Здесь я специально пошёл по самому простому пути. Blizzard уже всё придумала за нас. В клиенте есть LanguageWords.dbc - 1663 слова, которыми WoW сам заменяет непонятную речь. Я просто использовал эти данные. Поэтому орк и эльф звучат по-разному, если общаться с ними, не зная языка.
Все каналы, квесты, сообщения NPC. Вся речь идет через один фильтр.
Как выглядел диалог с палачом с его стороны, а не со стороны игрока:
- Палач: Остановись, живой. У меня дело к тебе.слушаешь ли?
- Тестзвука: что ште сечало?
- Палач: Ты приостановился, живой? Мне нужно, чтобы ты убил десятерых воинов из Алого ордена. Докажи свою ценность Темной Госпоже.
- Тестзвука: Ти'ха, я бало авак понимаю
- Палач: Понимаешь, живой, я не на таурахе. Но если кратко: убей десятерых воинов из Алого ордена, докажи свою ценность Темной Госпоже.
- Тестзвука: Акитича, нитава анохе, ти'ха штеовачи, согласна
- Палач: Понятно, живой. Язык у тебя странный, но суть я уловил. Дело записано. Удачи в битве с Алым орденом.
В группе могут находиться таурен, орк и отрекшийся. И при общении каждый будет понимать только то, что знает. И если в группе окажется еще и человек или ночной эльф, то орк или отрекшиеся смогут стать переводчиками для тауренов, так как он неплохо знает орочий, но очень плохо всеобщий. С другой же стороны, отрекшийся и орк знают всеобщий на хорошем уровне. Понятно, что игроки могут сидеть через внешние системы и общаться там, но это не отменяет квестов.
Попытка прокачаться на локациях другой фракции может и будет осложнена, если не знать языка. И да, можно включить метки на карте и прочее. Но суть проекта как раз в том, чтобы добровольно отыгрывать роль. Так что эта система в первую очередь направлена на погружение.
Здесь всё просто.
Если рядом NPC разных рас, они используют общий язык компании, чтобы все могли понять разговор. Если разговаривают два представителя одной расы - используют свой язык. А если конкретного общего варианта нет, выбирается язык, который лучше всего понимает собеседник. При обращении к игроку та же схема. Если орк NPC обращается к игроку, он выбирает тот язык, который оба знают лучше всего, чтобы речь была максимально понятной.Игрок всё равно читает обычный русский текст.
Поэтому атмосферность создаёт сам факт того, на каком языке говорит персонаж, а не намеренно испорченные буквы.Тарабарщина нужна только там, где персонаж действительно чего-то не понял.
Раньше язык в WoW был по сути фильтром клиента:
знаешь → читаешь нормально
не знаешь → читаешь тарабарщину
Теперь это уже полноценная система. Персонаж может знать язык на 10, 50 или 100%. Говорящий может сам неправильно знать язык. Слушающий может понимать его по-разному. В одной фразе могут одновременно присутствовать два языка. NPC имеют собственный набор языков, в зависимости от расы, места обитания и уровня. Можно постепенно выучить язык просто слушая его. А один и тот же персонаж может говорить с разными людьми на разных языках.
Именно этого я и хотел добиться. Чтобы языки в Азероте были не декоративной механикой из окна навыков, а настоящим свойством мира.
По большому счету сделано всё, что хотел. Осталось дело за малым. Научить NPC обучать игрока своему языку. При личной просьбе персонаж сам будет решать, обучит он бесплатно, за услугу или за деньги. На это будет и отношение к игроку, и суть персонажа. Тот же гоблин не упустил случая подзаработать. А демон чернокнижника не сможет ослушаться своего хозяина или требовать что-то взамен. Но чтобы обучение не стало читом, один сеанс будет учить 3 пунктам знания языка. У людей 5-ти. Так как они, лорно, самые дипломатичные. Также язык будет поднимать специализация, скажем, демонологи тоже будут учить демонический быстрее, чем прочие. А после обучения через NPC будет вешаться дебаф на несколько часов. Мол, мозги кипят, слишком много выучил, нужно переварить. При этом естественным путем язык спокойно продолжит изучаться. Это даст возможность немного бустить прокачку, при этом языки будут естественным образом сами повышаться по мере выполнения заданий, торговли и т. д. И чем дольше будет жить персонаж, с чем большим количеством фракций будет взаимодействовать, тем больше языков будет знать.
P.S. У проекта есть телеграмм канал Venom's RP Azeroth и страница на бусти (все открыто без подписок). Присоединяйтесь, кому интересно следить за проектом.
Вам зашел мой прошлый пост о переделке WoW в более иммерсивную и живую версию, поэтому решил продолжить постить новости по модификации. В этот раз речь пойдет о системе погоды. Я ее уже касался вскользь, теперь же расскажу подробно, тем более что почти довел ее до состояния, которое удовлетворяет меня.
Пока реализованы основные: огонь, холод, вода и молния, если у кого-то будут светлые идеи, что еще можно ввести, я открыт к предложениям :)
И так, игру добавлена комплексная система климатических условий. Теперь погода, время суток и ландшафт (например, водоемы или лава) оказывают прямое влияние на всех существ в мире - от игроков до монстров.
Я не делю существ в мире на игроков и NPC, мы все тут в одной лодке.
Теперь нахождение под проливным дождем, лечение шаманом с помощью Прилива или погружение в воду накладывает эффект «Мокрый».
Также его можно получить при сочетании некоторых заклинаний (раскрывать каких не буду, интереснее же самому открывать подобные механики ;)).
Мокрая цель становится более уязвимой к магии льда и молний, но при этом получает меньше урона огнем.
Эффект держится на цели 10 минут, в холодных регионах эффект держится дольше, в тёплых меньше. Чтобы просохнуть, нужен огонь, или физический, или магический. Урона огнем в лицо, в целом, тоже неплохо высушивает. Так как цель высыхает от урона огнем, то часть энергии огня расходуется именно на это, от чего урон ниже.
Если же в мокрую цель прилетит ледяной спелл с шансом заморозить, этот шанс сильно повышается. Так как вода, ну вы знаете, может застывать. Естественно, при заморозке эффект также снимается.
А вот молния по мокрым бьет значительно больше, почти гарантированно критует, еще и может перескочить на соседнюю цель, и при этом не высушивает. Так что шаманом в дождь или грозу прямо сладость бегать.
А если цель в воде... То эффекты всех вариантов еще больше усиливаются..
Холодных регионов в классике не так много, но все же они есть, и я решил сделать их более суровыми.
Попадая в заснеженный регион, вы сразу получаете дебаф «Жгучий холод». Он замедляет скорость атаки, каста, бега и восстановления здоровья и маны (думаю также что-то сделать с яростью и энергией, но пока не решил, не хочется сломать классы), а также значительно продлевает эффекты заморозки по вам. Жители зимних регионов иммунны к данному эффекту, но не все и не полностью. Со стороны игроков же эффекту не подвержены дворфы, а нежить и таурены имеют ослабленный эффект дебаффа.
Если вам не посчастливится в холодном регионе намокнуть, то через непродолжительное время жгучий холод и мокрый сольются в новый эффект «Обледенение жгучим холодом».
Этот эффект, по своей сути, усиленный эффект простого холода. И вот тут уже дварфы иммуна не имеют, дебафф будет слабее, но будет. Для того чтобы отогреться, придётся приложить больше усилий, в самом регионе дебафф не имеет таймера. Огненная магия, костры, оружие с эффектом огня, укрытия от непогоды вам в помощь. Также на дебафф влияет класс и таланты. Фрост-маг будет иметь больше пассивного сопротивления к ледяному воздуху, чем, скажем, аркан.
Казалось бы, на этом всё? Но есть еще модификаторы.
Если в снежном регионе пойдет метель, то «Жгучий холод» заменяется на «Невыносимый холод», этот эффект сильнее, держится только пока идет метель, а также имеет два новых модификатора:
Снижен шанс попадания по цели дальше 25 ярдов;
Уменьшена дистанция обнаружения в стелсе;
А если вы умудритесь намокнуть во время метели... Тут обледенение имеет максимальную силу, а через время и вовсе начинает наносить урон, так что держите ноги сухими, когда вокруг бушует стихия.
Ну и вишенка на всем этом празднике отморозки, система учитывает время суток. Днем дебаффы слабее, а ночью сильнее. Смена идет динамически, плавно по мере наступления темноты.
Более того, на всё это также влияет и надетая одежда, и форма друида или шамана. В медведе зимой теплее, чем в коте. Чем ее больше, тем теплее. И да, у показателей есть порог, замедление бега не может быть более 90%, но если вы перейдете этот порог, он трансформируется в урон. Чем дальше от порога, тем больше урон. Мокрым, ночью, в метель, голым урон будет составлять около 25% от максимального здоровья в секунду. Так что откинуться в холодной локации теперь можно, просто неудачно сходив на рыбалку.
И не дай бог вам зимой в метель попадется отрекшийся фрост-маг, решивший, что вы ему мешаете...
Пустыни, локации, полные лавы и огня. Таких в игре намного больше, и про них я тоже не забыл. В целом, ситуация схожая с холодными локациями. Только дебаффы слабее и более щадящие. При этом к вечеру или ночью в пустынных регионах вовсе проходят. А в вулканических всегда жарко на полную катушку. Лава ночью не спит.
1 просмотр видео
Чтобы охладиться, подойдет купание в ближайшем водоеме, использование магии льда или воды или просто зайти под крышу, спасаясь от палящего солнца.
Также жару лучше переносят таурены, орки и тролли, последние в меньшей степени из-за особенностей своего ареала проживания.
С лавой же чуть иначе. Ее жар же считывается от дистанции. Чем к ней ближе, тем горячее. Вплотную к лаве вы вполне себе можете загореться. Более того, броня и форма тут также сильно влияют. Скажем, мишка, покрытый шерстью, будет гореть куда ярче ;)
Персонажи сами могут становиться источниками погодных эффектов. Любая постоянная стихийная аура (например, огненный щит или тотем) распространяет свой «микроклимат» на пару шагов вокруг. Так что, заходя в холодную или знойную зону, желательно иметь с собой мага или шамана, кто хорошо знаком со стихийной магией и сможет помочь перенести непогоду. 15 секунд возле источника тепла или холода, и ваша жизнь удалась.
Чтобы отогреть себя или, напротив, остудить, всего лишь нужно применить либо щит нужной стихии, либо АОЕ-заклинание вокруг себя, скажем, «Фрост Нова» отлично охлаждает в жару. Либо же какой-то каст длительностью более 1,5 секунд.
Почти обо всем рассказал. Отмечу еще, что внесенные правки также работают на бой. Урон огнем по замороженной цели ее разморозит. Урон льдом по горящей - потушит. Огненный маг сможет вырваться из новы, если создаст вокруг себя взрыв либо кинет фаербол. Также прилетевший фаербол собьет нову или снимет замедление холодом. Боевая система и PVP немного перестроились при появлении взаимодействия стихий. Это теперь тоже стоит учитывать.
В будущем подумываю еще завязаться на типе доспехов. Чтобы в латах было холоднее и жарче, чем в робе, но пока решил остановиться на том, что уже есть. Как игрок скажу, что теперь мне нравится находиться в холодных регионах, теперь это не просто белая текстура, а у локаций появилась своя фактура. Также не все мобы, которые должны быть иммунны к эффектам, являются таковыми. Это тоже буду править.
Если вам показалось, что тут нет баланса. Разбойник или воин заведомо проигрывают магу или шаману, то вам не показалось. Ничего удивительного нет в том, что мужик в латах с дубиной в метель менее эффективен, чем маг огня, окруженный аурами. Собственно, в книгах по вселенной маги часто грели замерзающих пехотинцев.
Ну и на последок техническая часть. Все статусы, длительности, силы дебаффов спокойно настраиваются в окне конфигурации. Они все всегда можно подогнать под тут уровень погружения, который нужен вам и вашей кампании.
На этом всё. Я не раскрыл все нюансы, если кто-то помимо меня будет играть, может и оценит мелкие иммерсивные детали, которые я добавил в эту систему. Я бы предпочел, чтобы игроки нашли их сами ;)
P.S. Увидев отклики, решил завести телеграмм канал Venom's RP Azeroth. Кому интересно пообщаться, поучаствовать в обсуждении механик, может предложить свою, присоединяйтесь.
P.P.S Так же упомяну, что в итоге все будет выложено на бусти (бесплатно). Можете так же там подписаться. В этой статье на бусти есть видео демонстрация работы воды со знойной жарой. Да и сама статья там вышла на пару дней раньше.
Это проект на базе AzerothCore, который использует техническую основу World of Warcraft 3.3.5, но нацеленный на превращение MMO в полноценную партийную (с ботами или друзьями) RPG.
Я не держу свой сервак, и не планирую. Я ничего не продаю. Я просто делаю свой проект мечты, и решил, если это будет интересно людям, сделаю клиент для установки.
Главная идея проста:
Канон мира важнее игровых ограничений и баланса. Логика мира важнее удобства механики. А если игра чего-то не позволяет - это ещё не значит, что этого не может существовать в самом Warcraft.
Одно из первых мест, где особенно хорошо видно отличие проекта от обычного WoW - NPC.
В стандартной игре большая часть персонажей существует вокруг заранее написанных реплик и квестов. Здесь мы пытаемся сделать иначе. Теперь с обычным NPC можно поговорить, через систему локальной нейросети. Для этого, конечно, нужно иметь некоторые ресурсы.
Игрок пишет сообщение в чат рядом с персонажем, обращается к нему по имени - и NPC отвечает через ИИ, учитывая его характер, окружение и отношения с игроком. Болванчик знает кто он, кто рядом, чем он занимается. У каждого жителя азерота теперь есть личная репутация с игроком, которая прокачивается в зависимости от взаимодействия игрока с миром. Есть память, они запоминают, о чем они говорили с игроком, что он делал и т.д.
Реализованы системы запугивания, соблазнения, убеждения и торговли. Можете уболтать квестодателя накинуть награды, или уменьшить требуемые задачи. Убить не 10 гоблинов, а 2х.
На успех влияет и ваш статус в мире, и личное отношение с NPC, и убедительность аргументов, были ли вы вежливы и т.д. Система все это анализирует и бросает кубик.
Более того, теперь возможно брать и сдавать квесты через чат, болванчики умеют рассказывать о задании, подсказывать дорогу. Любой NPC может помочь. Личная же репутация прямо влияет на цены торговцев и тренеров. Появляется смысл выстраивать отношения со своим классовым тренером, так как это нехило может сократить расходы. А при достижении высшей ступени, когда вы закадычные друзья, а то и больше, можно будет получить обучение вовсе бесплатно.
При этом все честно. Если будете нахальным или достанете человека, он может просто отменить квест и отказаться вам его выдать вовсе. Да, вас теперь могут послать в WoW.
Реализована система слухов. Общаясь, торгуя, выполняя задания по миру начинают ползти слухи. Они могут перемещаться между локациями. Система работает как круги на воде. Каждое действие порождает слух, и они могут суммироваться. Чем больше и активнее вы взаимодействуете с миром, тем больше он о вас помнит. Положительные слухи при достижении определенного уровня, могут начать поднимать вашу репутацию в глазах тех, кто с вами вовсе не встречался. А если станете слишком знаменитым, то можете обнаружить, что о вас уже судачат в закоулках. Ну и пик, это статус легенды. Тогда готовьтесь, что вас будут окликать, поздравлять и восхищаться!
Слухи работают не только на дружественных. Если убивать разумный вид слишком много, то о вас там будут знать. В случае следующего появления, часть врагов может сразу кинуться на утек, часть же, напасть с большей дистанции. Вас помнят.
Когда мы вышли из пещеры, мобы разбежались в страхе с криками. Так как мы устроили небольшой геноцид, когда выполняли задание
Призываемый питомец может помнить места, в которых он был вместе с хозяином, и события, которые пережил. Они теперь умеют комментировать происходящее, у них есть настроение, оно зависит от того, как игрок обращается со своим питомцем. Питомцы охотника, хоть и не умеют говорить, но научились декларировать эмоции в чат. Скрести когтями, стучать жвалами, сердиться или проявлять доброту. Более того, это не просто декорация, теперь можно попросить питомца выслеживать определенного моба, или вещь, и он, если заметит, будет сообщать. При этом тот же имп, являясь тем еще проказником, при плохом с ним отношении, может заведомо врать, и радоваться, что обманул.
Мой Имп не взлюбил жену, так как она редко его лечит. Часто на это жалуется и в целом негативно к ней относится.
Второе большое направление проекта — playerbots. Этот аддон существовал до меня, я просто его доработал.
В данный момент по ним проведено минимальное количество правок. Первое что я сделал, это научил их полноценно пользоваться аукционом. На других сборках для этого нужно ставить отдельный аддон-аукционера, который будет имитировать работу аукциона. Мне это показалось неправильным. Теперь каждый бот-игрок, может как выставлять так и покупать предметы. У живого игрока нет никакого преимущества. Ваши вещи могут купить, а могут не купить. Боты покупают то, что им нужно. Появились новые профессии ботов, такие как фармеры. Которые берут две собирательные профессии и начинают зарабатывать.
Второе минорное обновление, я сделал ботам имена, которые отражают их расы, а так же дал им новые голоса, согласно расам и классам. Они так же умеют общаться через нейросеть, только теперь делают это более осознанно.
И третье, теперь боты игроки спокойно заходят с вами в подземелье, без лишних телепортаций, а как простые игроки. Вы собрались, пришли и зашли в данж.
Ещё одна важная часть проекта - расы.
Стандартные расовые способности WoW сохраняются, но поверх них создаётся более глубокая система расовых особенностей.
Первое и самое главное. Нет больше разделения игрок и NPC.
Второе глобальное различие. Нежить, теперь нежить.
Все расы получили ребаланс, но больше всего времени, в данный момент, уделено нежити, о ней и поговорим.
Я стремился сделать нежить каноничной, по этому они получают дебаффы к броне и здоровью. Также они теперь получают на треть меньше лечения от света, а также, он накладывает на них дебафф. По лору свет нежить жжет, заставляет чувствовать боль своей гниющей плоти. Поэтому если нежить жрец использует свет, он получает дебафф, нежить ,на которую применяют свет, так же получает дебафф. При накоплении, он может оглушить. Друиды и вовсе потеряли возможность лечить нежить, так как их лечение идет через изумрудный сон, а его духам противна магия некромантии. Они не входят в привычный цикл природы. Шаманы тоже лечат нежить хуже. И может показаться, что нежить стала неиграбельной. Но нет. Нежить теперь иммунна к ядам и кровотечениям. Вся, не только игроки, как я сказал, нет больше разделения на игрок и NPC. Ей намного сложнее сбить каст при уроне, так как она не чувствует боли. Гаррота разбойника так же теперь не может наложить на нее молчание - нежить не дышит. Но главное, часть темной магии теперь может лечить нежить. Скажем, теперь чернокнижник, может передавать свое здоровье не только в питомца, но и в союзную нежить, и это очень сильно меняет то, как можно лечить танка отрекшегося в рейде или подземелье.
Подробнее я буду постепенно выкладывать статьи у себя на бусти (доступны всем, никаких ограничений), еще кратко отмечу следующее. Чем меньше цель, тем сложнее ее заметить, тем сложнее по ней попасть. По гномам вы будете мазать куда чаще, чем по таурену. То же самое касается и стелса. Орка заметить проще, чем того же гнома.
Так же выданы лорные бонусы к профессиям. У нежити у всех, кроме воина, алхимия качается х2. То же самое у кузнецов воинов дварфов, у гномов инженеров и т.д.
А также появилась синергия классов и рас. Я переработал то, как работает магия. И об этом ниже
В обычном WoW класс определяет практически всё. Я решил провести границу между: «игра не позволяет» и «мир Warcraft этого не допускает».
Это разные вещи.
Поэтому персонаж может изучать способности, которые обычно принадлежат другим классам. Для этого создана система из 24 магических направлений. Каждая школа развивается отдельно — от 1 до 300 для первых 60 уровней.
И персонаж может специализироваться в ней независимо от своего игрового класса. Были созданы 1200 книг заклинаний со всей доступной игрокам магией, которые с небольшим шансом выпадают из мобов, которые относятся к тому или иному классу. С магов книги магов, со жрецов книги жрецов и так далее.
Чтобы эта свобода не превращалась в кнопку "получить всё", межклассовые способности оформлены как реальные знания. Т.е. теперь, изучив новую школу, ее нужно качать, причем каждое заклинание может прокачать свою ветку на 5 пунктов выше уровня, на котором оно доступно. Не выйдет прокачать фростболтом школу льда до 300, выбив его один раз. Более того, есть полностью несочетанмые школы. Свет паладина не может уживаться с магией скверны или тьмой. Друидизм вовсе недоступен для нежити, так как изумрудный сон для них закрыт и т.д. Если хотите сделать гибридный класс, придется постараться. К слову, учителя других классов можно уломать, обучать вас, но как это сделать я рассказывать не буду =)
Теперь все школы магии и расы имеют синергию. Тьма у жреца будет качается проще, если он изучит магию скверны. Но при этом свет, станет качаться заметно слабее. Нежить жрец будет испытывать трудности в прокачке ветки света, тогда как тьма будет даваться ему гораздо проще. И более того, прокачка магии усиливает способности этой ветки. Если уровень знания школы сильно выше уровня, который требуется для заклинания, то оно будет кастоваться быстрее, если оно моментальное, то откат быстрее, если поддерживаемое, то поддерживается дольше. Если же школа магии ниже, то эффект обратный. Теперь игра за магические классы стала куда более динамичной, и заклинания низкого ранга перестают бысть бесполезными.
Почему маг не может надеть латы? Потому что так устроена игровая механика. Но действительно ли это означает, что маг в мире Warcraft физически не способен носить латный доспех? Нет. Поэтому классовые ограничения экипировки были сняты. Теперь персонаж может использовать гораздо больше типов оружия и брони. Но это не бесплатная суперсила. Использование "чужого" снаряжения сопровождается штрафом к скорости атаки и чтению заклинаний. Маг в полных латах с щитом будет иметь приличный штраф к скорости каста. А разбойник к скорости атаки. Ты платишь за броню, тем, что она сковывает твои движения. Все красиво и логично
То есть игрок получает свободу, но должен решить: Стоит ли эта свобода цены?
В проекте появилась и система окружающей среды. Погода и окружение начинают иметь значение. Дождь может намочить персонажа, мокрого персонажа проще заморозить, а молния так вообще получает возможность перескакивать между мокрыми целями. Если локация снежная - персонаж медленнее двигается, во время метели падает шанс попадания на дальних дистанциях. А о том чтобы в метель залетать в озеро поплавать, вовсе лучше забыть. Если идете в снежную локацию, лучше иметь с собой либо мага с огненными заклинаниями, который сможет вас отогреть, либо оружие с огнем. Молот Рагнароса отлично подходит, а если у вас таковой не завалялся - костер.
Время суток тоже учитывается. Ночью холоднее. В знойных же зонах, типа Танариса, ледяные эффекты держатся меньше. Лед имеет свойство таять. Близость к лаве так же теперь считается. Но всегда можно облиться водой и перепрыгнуть через ручей лавы. Огонь только высушит, но не подпалит. В стелсе же проще ходить ночью под дождем, чем днем при свете солнца.
Это только начало системы, в которой окружающий мир перестаёт быть красивой декорацией и начинает влиять на персонажа.
Ещё одна проблема классической MMO - бесконечный фарм одного и того же контента. Поэтому создана система одного прохождения. В конце с босса упадет весь именной лут. Сами подземелья стали чуть сложнее. А квесты можно выполнить постфактум. Если вы прошли какое-то подземелье, а потом получили квест на убийство тамошнего главаря. То просто скажите, что вы уже были и убили, и получите награду. Если же нужно принести доказательство, просто вернитесь. Найдите труп, снимите голову (если требуется она) и доставьте. Тела больше не исчезают. Софтлок не наступает. А каждый данж стал одноразовым приключением на вашем пути.
Отдельное направление — инструменты разработки.
Создана единая панель управления, из которой можно:
запускать сервер;
запускать клиент;
останавливать их;
видеть таймер автоматического завершения;
делать резервную копию базы.
Бэкапы автоматически архивируются, при этом сохраняются только три последние копии. Удобно просматривать все конфиги по модулям.
Ах да, все правки легко редактируются через конфиги и таблицы в базе данных. Можно включать и отключать любые модули, а так же ребалансить силы кастомных эффектов под себя.
На данный момент сделано уже гораздо больше, чем планировалось в самом начале. Но идей что еще сделать стало только больше.
В Warcraft 3 орда и альянс спокойно общались между собой. Планирую вернуть эту особенность. Каждая раса будет знать всеобщий язык, в той или иной степени. Чем больше выполняешь квестов у расы, чем больше взаимодействуешь, тем лучше изучаешь язык. Языковой барьер должен будет пасть
Ирок альянса должен иметь возможность не только говорить, но объединяться с игроком орды, если они оба этого хотят. История мира Warcraft неоднократно показывала, что объединение возможно
Возможность NPC не только говорить, но и действовать. Пойти с игроком, если на это есть причина. Или напротив, если игрок угрожает торговцу, чтобы стража могла подойти и выдать предупреждение, а то и не только его. Чтобы питомцы охотников научились выслеживать добычу полноценно. Т.е. вести своего хозяина к ней. И т.д.
В перспективе хочется сделать систему, которая позволит запустить проект без глубоких технических знаний. Собственно, если увижу интерес к нему, постараюсь собрать установщик.
Пока это сложно: база занимает больше 3 ГБ, отдельно требуется ИИ-модель примерно на 9 ГБ и достаточно мощное железо. Если хотите играть именно с живыми NPC. Но без нейронных фишек, тоже есть чем заняться.
В будущем планируется возможность переключаться между профилями Classic, TBC и WotLK. Но сейчас эта задача сознательно отложена. Пока мы качаемся, и все силы брошены на Classic.
Много чего еще остается. Мыслей куча, постепенно изучаю лор игры, идей куча, в процессе игры возникают новые, все записывается и планомерно развивается.
На этом, думаю, все. Сомневаюсь, что многие осилят эту стену текста. Если кого заинтересовало, можете нажать кнопочку "Отслеживать" на бусти, совершенно бесплатно. Я пока думаю, как его лучше развивать, но мне нравится как там можно оформлять посты с обновлениями, по этому пока там. Еще раз, ничего под платными подписками не скрыто. В целом, просто хочется поделиться проектом, и сморю, сколько человек это заинтересует.
