26

» Hunter or Victim / Hunter or Victim

Alan_Gu,
Хотелось бы. Объем работ слишком велик. Разве что если нейронки запрячь.

ScorpioT1000,
Если бы я доковырял UE тулзу для понятного и удобного общего пользовния то был бы смысл)

А так, сейчас генератор разбит на 2 части:
Часть первая (тулзлы и кнопочки):
  1. Создать линию из стен в указанном направлении <∧∨> с указанной или рандомной длинной.
  2. Отменить последнию линию.
  3. Очистить генератор.
  4. Пересобрать стены.
  5. Соединить линии между собой.
Сборка сохраняет действия в строку: "D11112222333300а00"

Часть вторая (чтение строки и спавн ассетов).
Тут вся генерация. Рандомизируются типы стен,крыш ворот и пропсов/домов прилегающих к стенам.

Следующий этап слегка прибраться в нодах и повторить генеративную часть на jass.
В итоге разные типы замков будут описаны примерно вот так:
раскрыть
 void SpawnCityType(int sity_type) {
 if      sity_type == 1 {                    //Пресет города 1
  CastleWall          ("D11112222333300а00") //Повороты стен и доп инфа
  CastleBuildingsLine (1,0,"8")              //Линии домов (x,y,длинна)
  CastleBuildingsLine (3,0,"5")
  CastleBuildingsLine (5,0,"5")
 }elseif sity_type == 2 {
  CastleWall          ("D11223300")
  CastleBuildingsLine (1,0,"5")
  CastleBuildingsLine (2,0,"5")
  CastleBuildingsLine (3,0,"5")
 }
26

» Hunter or Victim / Hunter or Victim

Последние новости!
В итоге решил отказаться от префабов и сделать честный генератор стен и построек.
26

» Администрация XGM / Расскажите о вашем опыте использования XGM

Вот это прикольно, но запускается автоматически жутко ест трафик на телефоне. Считай пол мб в сек.
Загруженные файлы
26

» Hunter or Victim / Hunter or Victim

Последние новости!
Освободил немного места в карте под новые ассеты. Добавил в камеру систему для коллизий с крупными объектами. Когда доделаю генератор думаю получиться эпично.

Префабы для лагерей разбойников собирал в редакторе записывая в хп декораций нужную информацию. А тут подумал что зачем мучаться если можно более универсально сделать это в UE
26

» XGM — Премия года / Hunter or Victim - обзор в рамках премии 2023 года

Последние новости!
Вышла новая версия с обновлённым обучением, подсказками и прочими улучшениями.
26

» Hunter or Victim / Hunter or Victim

Вышла новая версия! Прокрутить к ресурсу

Обновление 1.03c


Исправление критических багов:
Версия 1.03с

Баланс
• Уменьшено макс кол-во юнитов которых могут призвать ревом.
• Теперь в траншеях в 70% случаях лежат сломанные лопаты.
Управление и Интерфейс
• Добавлено отображение при получениии ресурсов в некоторых ситуация.
Исправления
Исправлен критический баг мешающий появлению лагерей разбойников.
Исправлен баг, при котором лопата ломала деревья.
• Переработаны эффекты и звуки при использовании лопаты.

• Версия 1.02 Ru
• Версия 1.01 Ru
• Версия 1.00 Ru
• Версия 0.99 Ru
• Версия 0.98 Ru

26

» Hunter or Victim / Hunter or Victim

Вышла новая версия! Прокрутить к ресурсу

Обновление 1.03


Версия 1.03

События
• Добавлены дополнительные события для брошенного лагеря.
Баланс
• Теперь Жук-Осквернитель создает жуков реже, но периодически применяет ядовитое облако.
• Теперь "Житель болот" тоже может использовать "Рев призыва" и "Подлый удар".
• Длительность отображения шумов на мини карте увеличена на 1 сек.
• Теперь разбойники могут отдать/продать коня или питомца.
Управление и Интерфейс
• Набор доп. артефактов выпадающих из героев увеличен.
• Теперь приказ "рубить дерево" зацикливается пока дерево не упадет.
• Теперь приказ "рубить дерево" заставит героя двигаться к объекту если он вне досягаемости.
• Обновлено и дополнено обучение.
• Теперь в обучающем режиме игрок будет периодически получать подсказки.
• Обновлен Справочник охотника.
• Изменен цвет и описание некоторых способностей.
Окружение
• Оптимизирован спавн декораций.
• Исправлен баг из за которого не спавнился высокий кустарник.
• Добавлены траншеи.

Исправления
• Исправлен баг из-за которого приказ разрушения всегда спавнил эффект на любой дистанции.
• Исправлен баг из-за которого союзные разбойники сбрасывали героя с коня.
• Герой больше не прячется автоматически при входе в шахты.

• Версия 1.02 Ru
• Версия 1.01 Ru
• Версия 1.00 Ru
• Версия 0.99 Ru
• Версия 0.98 Ru
26

» XGM — Премия года / Hunter or Victim - обзор в рамках премии 2023 года

Darkmen500:
Нада подумать. Добыча дерева и разрушение построек это одна и та же кнопка, по этому нонтаргет, неудобен. (и кажется там еще какой то тайный смысл был в этом, щас уже не помню) Но вот автоматизировать рубку после первого удара думаю можно.
26

» XGM — Премия года / Hunter or Victim - обзор в рамках премии 2023 года

Darkmen500:
Нуу в теории можно, а так они по порядку идут, так что запутаться сложно если у юзера кастом хоткеи не стоят.
26

» Hunter or Victim / Hunter or Victim

Alan_Gu, в идеале нада перезагружать варик перед запуском. Он не чистит память до конца, при выходе из карт. Ещё у меня иногда крашит во время записи видео.
Ну да, я большой фанат Лавкрафта)
26

» Hunter or Victim / Hunter or Victim

Вышла новая версия! Прокрутить к ресурсу

Обновление 1.02

Версия 1.02

Баланс
• Теперь в хижине герой получает бонусы сна.
• Снижен шанс выпадения одинаковых предметов.
Исправления
• Исправлен баг из-за которого нельзя было взаимодействовать с установленной палаткой.
• Исправлен баг скрещивания предметов при заполненном инвентаре.
• Грибы распространяющие сонные споры больше не могут вырасти в лагере разбойников.
• Обновлен эффект и звук сонных спор для грибов.
• Снижена вероятность начала игры в проклятой зоне.
• Исправлен баг из-за которого цвет неба был четко привязан к игровому дню.
• Версия 1.01 Ru
• Версия 1.00 Ru
• Версия 0.99 Ru
• Версия 0.98 Ru
• Версия 0.97 Ru

26

» Hunter or Victim / Hunter or Victim

Поражаюсь тому, что проект до сих пор поддерживается...
Я тоже. Оно не отпускает)
26

» Hunter or Victim / Hunter or Victim

Darkmen500, после нг планирую запустить небольшой конкурс выживача если за это время много правок не накопится.
26

» XGM — Премия года / Премия 2023 года

Работа для номинации: Лучший Разработчик:
• Проект: Hunter or Victim
• Дата создания: 13.03.2018 | Дата Релиза: 17.02.2023 | Дата Глобавльного обновления: 16.12.2023
• Ссылка на проект: HoV
В соло затащил oO

Работа для номинации: Лучший UGC проект:
• Проект: Hunter or Victim
• Дата создания: 13.03.2018 | Дата Релиза: 17.02.2023 | Дата Глобавльного обновления: 16.12.2023
• Ссылка на проект: HoV
Проект наконец то доведен до релиза, но не пылиться на полке.
26

» Hunter or Victim / Hunter or Victim

Вышла новая версия! Прокрутить к ресурсу

Глобальное Обновление 1.01


• Новые классы, предметы и рецепты.
• Улучшение множества систем.
• Прокачанное окружение и события.
• Боты и монстры стали хитрее и опаснее.
• ИИ имитирует жизнь НПС на максималках.

Версия 1.01

Классы
• Новый класс: Гонец Хаоса, Охотник за головами, Снайпер, Пиромант.
• Класс героя можно выбрать до начала игры.
Баланс
Обновлены способности множества предметов.
• Теперь броня защищает от увечий в зависимости от уровня.
Фляги теперь могут исцелять Увечья.
• Теперь питомцы добавляют дополнительный радиус обзора ночью, когда находятся рядом с героем.
• Для приготовления зелий в котле больше не требуются колбы.
• Теперь для разрушения гнезд монстров требуется 3 уровень алхимии или огонь.
• Теперь все плащи защищают от холода в зависимости от уровня.
• Теперь заложников можно встретить чаще.
• Изменен набор предметов в лавке торговца.
• Теперь можно приручить не только диких животных но и собак разбойников.
• Теперь Cмертельный Cоюз доступен только при наличии Темного Благословения.
• Теперь при падении игроку дается дополнительное время если игрок был отвлечен на торговца или другое меню.
Стрелки больше не добивают героя во время падения.
• Теперь месте ям можно построить Колодцы.
• Теперь Ром дает возможность применить Огненное Дыхание.
• Теперь Удача героя слегка изменяется в зависимости от хороших или плохих поступков игрока.
Список рецептов для зелий приготовляемых на котле увеличен до 22 зелий.
Сонные стрелы теперь взрываются усыпляя врагов попадающих под область спор.
• Добавлен режим неспешной игры, рассчитанный на длительную сессию.
Ядовитая Эссенция теперь может растворять тела врагов.
Аи
Улучшен аи ботов, врагов и нпс.
• Добавлено множество диалогов-реакций на окружение.
Окружение
• Многие псевдо 3д звуки заменены на .
• Обновлены звуки окружения.
• Теперь одежда намокает когда герой пробирается сквозь высокий кустарник.
• Теперь невидимость прерывается дождем. (плащи выше 2 уровня защищают от этого эффекта)
• Теперь письма встречаются чаще.
Пещеры и Шахты теперь можно заколотить потратив некоторое кол-во древесины.
• Увеличено кол-во малых подземелий.
• Теперь Заброшенные дома встречаются чаще.
• Добавлены дополнительные цветовые схемы неба и тумана.
Управление и Интерфейс
• Обновлен интерфейс для крафта зелий.
• Теперь на панели "Информация и навыки" можно посмотреть все рецепты для зелий.
• Добавлены дополнительные звуки интерфейса.
• Улучшен итем ассист, теперь при переполненном инвентаре можно отправить предмет в рюкзак игрока или питомца.
• Теперь Дымовые гранаты включены в набор особых действий игрока.
• Добавлено звуковое оповещение в момент когда вас замечает другой игрок.
Длительность отображения диалога теперь зависит от длинны текста.
Оптимизация
• Оптимизирован подбор предметов.
• Оптимизированы тяжелые системы.
• Оптимизирована генерация карты.
Уменьшен вес карты.
Исправления
Стрелы больше не взрывают бочки пролетая над ними.
Шаровая молния больше не атакует героя на башне.
Снайпер больше не обнаруживает героя в невидимости.
• Больше нельзя выделить забытый навес и бочки с порохом.
• Исправлены баги поворота камеры связанные нажатием на небо.
• Исправлен баг залипания спеллбуков.
• Исправлен баг из-за которого периодически не нажимались некоторые предметы.
• Исправлен баг из-за пропадали предметы из инвентаря.
• Исправлен баг из-за которого иногда не отображался 10 игрок в таблице.
• Исправлен баг из-за которого ИИ некоторых юнитов мог отключаться.
• Исправлен баг локальной сети при использовании усиленного выстрела.
• Исправлен баг из-за которого враги не могли отравить героя.
• Исправлен баг из-за которого предметы экипировки оказывались одновременно в двух отделах рюкзака.

• Версия 1.00 Ru
• Версия 0.99 Ru
• Версия 0.98 Ru
• Версия 0.97 Ru
• Версия 0.96 Ru

26

» WarCraft 3 / Как можно оптимизировать этот код с 2D коллизиями?

host_pi, насколько я помню Варкрафт просто не умеет в период меньше чем 0.01. На счёт коробок, их вобще по идее не нужно обновлять пер Фрейм. У них должно быть состояние активации и деактивации после применения к ним силы или падения.

У меня была похожая система в проекте. Но там еще была загвоздка с тем, что весь террейн был разрушаемый. По этому при разрушении клетки я искал объект на клетке и активировал ему физику на некоторое время пока он опять не оказывался в состоянии покоя.
26

» WarCraft 3 / Как можно оптимизировать этот код с 2D коллизиями?

я уже пробовал менять это значение - ничего не меняется по нагрузке и по фпс
попробуй что то типо того:
globals
 integer playersMax                = 10//кол-во игроков
 integer playersPerFrameProcessed  = 2 //сколько игроков будет обработано за 0.01 сек
 integer playersCurrectFrameOffset = 1 //следующий игрок для обработки коллизий
englobals 

function Frame__PlayersGroup takes nothing returns nothing
	local integer i
		 
		if playersCurrectFrameOffset > PlayersGroupMax {playersCurrectFrameOffset = 0} 
		set i = playersCurrectFrameOffset
		
		loop
	     set playersCurrectFrameOffset = playersCurrectFrameOffset + 1
		 exitwhen i > playersCurrectFrameOffset+playersPerFrameProcessed
	      //тут обрабатываешь игрока

		 set i = i + 1
	    endloop	
        set playersCurrectFrameOffset = i	
endfunction 		


function Frame__PlayersGroupIni takes nothing returns nothing
	local trigger t=CreateTrigger()
	call TriggerRegisterTimerEvent(t,0.01,true)
	TriggerAddAction(t,function Frame__PlayersGroup)
endfunction 

я может гденить накосячил но смысл думаю понятен

это всё хорошо, только war3 не понимает cjass
Вобщето с JNGP понимает), но не суть, на обычном джасс +- тоже самое можно сделать.
26

» WarCraft 3 / Как можно оптимизировать этот код с 2D коллизиями?

Еще кучу ифов в SetUnitMoveAnimation (к которому Frame__Main каждые 0.02 сек по тыще раз обращается), можно через хеш урезать до одной строки.
cjass
define SaveAnimation (tp,aniName,index) = {SaveInteger(hash,AnimationKey,StringHash(I2S(tp)+aniName),index)}
define LoadAnimation (tp,aniName) = {LoadInteger(hash,AnimationKey,StringHash(I2S(tp)+aniName))}
void AnimationIni(){
SaveAnimation ('uobs',"Walk First",0)
SaveAnimation ('uobs',"Walk Second",1)
SaveAnimation ('ufro',"Walk First",6)
SaveAnimation ('uobs',"Walk Second",7)
//..и все остальные
}
define SetUnitMoveAnimation (u,aniName)={SetUnitAnimationByIndex(u,LoadAnimation(GetUnitTypeId(u)))}

goodlyhero, тут не частоту надо понижать (от этого фриз не исчезнет), а именно разбивать обработку юнитов на разное время. Таймер 0.01 с начало обрабатывает 1-ую часть всех юнитов, потом 2-ую, 3 итд, потом снова первую. Таким образом, если мы разделим всех юнитов например на 5 групп, то то все юниты будут обрабатываться с частотой 0.05 сек.

В Frame__Main/BossMoving тоже что то жеское..