Появилась идея сделать карту. Начал делать карту - тут же упёрся в триггеры В общем не буду размусоливать.
Старт -
Мне нужно как-то реализовать старт... думаю десяти игроков. После этого нужно каждого из них рандомно поделить на две фракции, но поровну (хотя это важно только сейчас для выравнивания баланса). После этого каждому из них нужно выдать рандомного стартового героя их фракции. У каждой фракции свои герои.
При старте карты выдаётся рандомный интерфейс расы. Как мне это победить? В зависимости от него, генерировать нужного юнита что ли?... а как тогда по фракциям делить
Это ещё не всё.
Дипломатия -
Игроки фракции "Империи" "находятся под пактом о ненападении" и имеют в своём клане компьютера нейтрала управляющего самой империей. Другая фракция "Демонов" враждуют между собой и с другой фракцией, и с компьютером, но могут стать нейтральными к другим "Демонам"
Старт -
Мне нужно как-то реализовать старт... думаю десяти игроков. После этого нужно каждого из них рандомно поделить на две фракции, но поровну (хотя это важно только сейчас для выравнивания баланса). После этого каждому из них нужно выдать рандомного стартового героя их фракции. У каждой фракции свои герои.
При старте карты выдаётся рандомный интерфейс расы. Как мне это победить? В зависимости от него, генерировать нужного юнита что ли?... а как тогда по фракциям делить
Это ещё не всё.
Дипломатия -
Игроки фракции "Империи" "находятся под пактом о ненападении" и имеют в своём клане компьютера нейтрала управляющего самой империей. Другая фракция "Демонов" враждуют между собой и с другой фракцией, и с компьютером, но могут стать нейтральными к другим "Демонам"
Принятый ответ
Даааа весело тебе будет с триггерами сидеть и разбираться. Но в целом все это реализуемо. Сложнее будет сбалансировать все это. Ты хочешь сделать одинаковое количество игроков во фракциях? А что будет, если из 10 игроков в игре будет 7? 3 в одну сторону и 4 в другую? При этом рандомно? Или 4 всегда должно быть на стороне где ффа а 3 на другой стороне?
Так-же раз ты выбираешь им расу в игре, то стандартный спавн, думаю, не подойдет, а значит тебе самому придется спавнить ратушу и работников вручную (может это и можно полуавтоматизировать. но тогда надо поразбираться в эту сторону, не делал мили такое).
У тебя получается очень много микро-задач и вопросов "а что если", и все это надо продумать.
Самое основное, что тебе нужно будет - это группа игроков. Через группы будешь выбирать и собирать игроков в разные фракции. Или даже массивы игроков, если тебе будет удобнее работать с ними (например чтобы выбрать каждого игрока в группе и выставить союз с каждым другим игроков в группе, или наоборот вражду).
Тебе нужно будет так-же использовать переменные, чтобы выбирать и работать с группами игроков.
Так-же раз ты выбираешь им расу в игре, то стандартный спавн, думаю, не подойдет, а значит тебе самому придется спавнить ратушу и работников вручную (может это и можно полуавтоматизировать. но тогда надо поразбираться в эту сторону, не делал мили такое).
У тебя получается очень много микро-задач и вопросов "а что если", и все это надо продумать.
Самое основное, что тебе нужно будет - это группа игроков. Через группы будешь выбирать и собирать игроков в разные фракции. Или даже массивы игроков, если тебе будет удобнее работать с ними (например чтобы выбрать каждого игрока в группе и выставить союз с каждым другим игроков в группе, или наоборот вражду).
Тебе нужно будет так-же использовать переменные, чтобы выбирать и работать с группами игроков.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Ред. Detektrius
Ред. konvan5
Это как помогает тебе решить задачу и зачем?
Ред. konvan5
Это действие нужно чтобы не дать запуститься триггеру снова при событиях, которые запускают триггер много раз в течении всей игры, к примеру юнит получил урон, или событие каждые 2 секунды и тд.
Поэтому это действие тут бессмысленно и оно не остановит все последующие действия текущего триггера.
Ред. Detektrius
Я там ошибся, заменил на "ничего не делать"
Ред. Detektrius
А я умею? УВЫ я слишком туп для массивов
Хотя выглядит так что похоже мне это и нужно
Ред. konvan5
Ред. konvan5
У тебя может быть хоть 1000 переменных в одном массиве с индексами от 0 до 999, но храниться будет все в одной переменной, что удобнее чем создавать 1000 переменных с разными названиями.
Цикл от 1 до 10 по целой А
Если Массив [Целая А] = 0
Делать что-то.
Как бы так. Схематично объяснил.
Таким образом у нас во всём массиве триггер найдёт все переменные равные 0 и сделает при этом что-то.
Ред. konvan5
Переменная - это ящик. Ты можешь туда положить 3 апельсина и это будет одна переменная, хранящая 3 апельсина. Но чьи это апельсины?
Массив - это шкаф с пронумерованными полками от 0 до N. Ты можешь положить в 0 полку 3 апельсина, в 1 полку 2 апельсина, а в 5 полку 10 апельсинов. И все апельсины хранятся в одной переменной. мы можем сопоставить каждую полку чтобы она принадлежала своему хозяину: Паше, Маше, Даше, и тд. (куча данных в 1 переменной!)
Вот как проще представлять массивы :)
Собственно всё)