Мои соображения по поводу данного сценария основываясь на возможностях движка игры. Стартовая позиция может быть не только в море долеко от берега но и на самом острове. Вариант зависит от случайности. Таким образом начало связывать с доплыванием до берега не получится.
Я думаю не важно где игрок начинает свой путь. Дополнительные нпс могут появляться только на берегу.
Да и еще одна проблема. Остров большой. все нпс появляются в разных местах. Поэтому начало может быть таким:
1. Появляетесь не важно где. Ваша задача найти ведущего нпс на острове. Бегаете по острову среди львов и ищите ведущего НПС.
2. После того как нашли ведущего НПС подходим к нему и выбираем одну из семи профессий.
Профессии
2.1 Охотник - должин приносить мясо от львов и рапторов.
2.2 Собиратель - должен приносить каждый день ягоды, фрукты.
2.3 Рыбак - Должен приносить каждый день рыбу.
2.4 Лесоруб, каменщик - Должен приносить каждый день бревна, камни. (он же сажает деревья для того чтобы получить бревна).
2.5 Повар - должен готовить определенное количество еды.
2.6 Хлебопроизводитель - должен приносить каждый день зерно и сено.
2.7 Строитель - должен строить заказанные ведущим НПС здания.
Каждый день объемы приносимого должны увеличиваются.
Естественно некоторые профессии являются первородными так например охотник, рыболов. а вот повар без них не сможет. и если не достает сырой пищи то чтобы выполнить задание придется идти и рыбачить или охотиться.
Также строителю нужны материалы. если их нет то пойдет сам добывать.
Возможно лимит времени на работу стоит увеличить до 4 дней так как за один день мало что у кого получится.
Все НПС появляются рядом с ведущим только вам нужно его найти. Однако вам предоставляется выбор профессии остальным он назначается. Да им и не важно...
Вот теперь надо подумать как организовать искуственный интелект других НПС. Ведь некоторые должны не справляться со своими обязанностями. Причем все должно строиться на случайном образе. Т.е. Заранее в скрипте генерируется переменная кто не будет справляться со своими обязанностями. Наприсер у каждого НПС будет своя переменная назавем ее GH и вот ей будет присваиватьтся число от 0 до 100. Если число меньше 30 то НПС будет делать меньше работы которая от него требуется. Главный игрок т.е. вы саму переенную не будете видеть. Вы только будете видеть прибавляется ли в складе тот или иной продукт, тем самым оценивая его работу.
В конце недели естественно голосование. Голосование не за НПС а за его проессию.
Если вы выгнали кого либо то эти обязанности перекладываются только на вас не в прямом виде. Т.е. если вы выгнали рыбака то вам безразлично есть ли рыба в складе или нет. однако если вы выгнали лесоруба а вы строитель, то вам придется самому заготавливать бревна и камни, т.к. больше некому.
НПС также будут голосовать кого выгнать только вот как не знаю. Если на уровне скриптов оценивать их переменную GH тоесть находить самый минимум то тогда нужно ваши дейсвия также оценить по 100 бальной системе чтобы и вас они могли сравнивать. Данный вопрос пока не решен.
Кроме того как сделать чтобы другие нпс ходили туда куда им нужно увы я е знаю.
ТАкже проблема с тем как сделать чтобы они выполняли свои функции.
Ну с рыбаком ладно еще можно договориться. Скрипт простой. идти к воде выбрав направелние посидеть там минут 10 вернуться назад и положчить рядом с ведущим рыбу. Опятьже! какое направелине? как определить где вода ближе! а то попрется через весь остров.
С лесорубом! нужно подойти к дереву. Как определить где дерево стоит? Просто задать случайное движение и если наткнется на дерево то срубить его и нести к ведущему? долго будет искать.
Со строителем проще. Будет строить случайным образом где попало то что ему скажут. Но опятьже где попало.
Повар. - если в хранилище есть еда то будет ее жарить.
Сперва на острове должны быть следующие постройки. - Хранилище, дерево хранилище и костер. Это для того чтобы каждый из НПС сразу мог приступить к своим обязанностям.
Также нужно продумать кому сколько приносить чтобы работа была слаженная.
Ахренеть сколько написал Незнаю будет ли кто читать...