[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 3 из 3«123
Модератор форума: Jery 
Форум » Knights and Merchants: Remake » Редактирование игры » Возвращаясь к перестроению юнитов (ищем алгоритм)
Возвращаясь к перестроению юнитов
mihail_mskДата: Понедельник, 30.04.2012, 12:08 | Сообщение # 31
Ополченец
Группа: Проверенные
Сообщений: 32
Награды: 0
Репутация: 2
Статус: Offline
В приведенном мной алгоритме они встанут вот так:
123459
678
Может быть и не идеально, но явно лучше чем было.
В общем, нужно погонять хорошенько внутри kam_remake, чтобы понять, насколько мой алгоритм хорошо справляется в разных ситуациях.
 
KromДата: Воскресенье, 06.05.2012, 13:23 | Сообщение # 32
Воитель
Группа: Супер Модераторы
Сообщений: 2514
Награды: 25
Репутация: 153
Статус: Offline
Я бы для такого дела советовал сделать мокап в просто проге и посравнивать и пооттачивать алгоритмы там. Примерно как я сделал для лучников: http://doodles.googlecode.com/svn/trunk/Aiming/Aiming.png

Нашли баг в КаМ Ремейке? Отправьте отчет на contact@kamremake.com с пометками, желательно на английском, в какой версии, что и когда случилось, приложите реплей или сохраненную игру в которой этот баг воспроизводится.
 
mihail_mskДата: Четверг, 10.05.2012, 21:46 | Сообщение # 33
Ополченец
Группа: Проверенные
Сообщений: 32
Награды: 0
Репутация: 2
Статус: Offline
Krom, зачем такие сложности и двойная работа ?
Ведь придется туда выносить многое из того, что в kam_remake уже есть.
Ты мой алгоритм посмотрел, там тебе всё понятно ?
Если да, то проще вставить в kam_remake этот очень простой алгоритм. А потом уже прямо на ремейке и оттачивать, если потребуется.
Если надо будет, я могу потом прямо в ремейке это алгоритм немного пооптимизировать.
 
KromДата: Воскресенье, 13.05.2012, 18:58 | Сообщение # 34
Воитель
Группа: Супер Модераторы
Сообщений: 2514
Награды: 25
Репутация: 153
Статус: Offline
mihail_msk, если алгоритм оформить по правилам, то ничего переделавыть не придется. Смотри сам - описываем входные параметры и выходные, все что внутри функции - черный ящик (то есть реализация может быть любая, хоть твоя, хоть моя, хоть просто никаких изменений не вносить). А в тестовой программе так же использовать этот "черный ящик" и оттачивать.

Что на входе: текущие положения всех воинов в виде списка точек (array of TKMPoint)
внутри можно пользоваться картой - т.е. получать ее границы (чтобы воины за картой не построились) и проходимость клеток (в том числе возможность пройти из А в Б).
Что на выходе - новое положение для воинов - таким же списком с соблюдением очередности

Для функции черными ящиками являются методы получения границ карты и проходимости, т.е. ты их можешь легко сэмулировать, например границы взять 1..64, а проходимость сделать везде доступной кроме 5% клеток (типа камни-деревья)

По этому же принципу я делал прицеливание лучникам - сработало отлично - перенес код с минимальными правками.

Если есть запас энтузиазма - то можешь попробовать сразу на ремейке попробовать - только надо там хорошенько все подготовить, чтобы не пришлось все переделывать когда будем управление войсками менять (так что я бы не советовал). Вобщем пиши в аську или скайп обсудим поподробнее.


Нашли баг в КаМ Ремейке? Отправьте отчет на contact@kamremake.com с пометками, желательно на английском, в какой версии, что и когда случилось, приложите реплей или сохраненную игру в которой этот баг воспроизводится.
 
spearmanДата: Пятница, 22.06.2012, 16:04 | Сообщение # 35
Воин
Группа: Проверенные
Сообщений: 104
Награды: 2
Репутация: 10
Статус: Offline
А несколько будет эффективным такой алгоритм?

1 задана команда перестроения отряда
2 Компьютер просчитывает (скажем) 10-50 вариантов перестроения
3 для каждого варианта перестроения сохраняется значение счётчика перемещений и присваивается индекс перестроения
3 программа выбирает вариант с меньшим кол-вом счётчика перемещений и по индексу производит перестроение
4 выполняется перестроение
5 очищается буфер "для данного отряда"

я профан в программировании, просто логика...
какие сложности:
Сколько времени уйдёт у программы на подобные расчёты? (скажем для просчёта 100 вариантов)
Вписывается ли такой алгоритм в логику программы?


Рубимся!
 
AntonPДата: Суббота, 23.06.2012, 09:47 | Сообщение # 36
Дозорный
Группа: Проверенные
Сообщений: 339
Награды: 1
Репутация: 7
Статус: Offline
Quote (spearman)
Сколько времени уйдёт у программы на подобные расчёты? (скажем для просчёта 100 вариантов)

Ну давайте по судим, предположим в отряде 50-60 юнитов (я часто такие отряды ополчения делаю), особенно если их несколько у каждого игрока, а кроме этих больших отрядов есть еще много отрядов меньшей численности(Лучники, пикейщики, конная гвардия и т.д.), и так у всех игроков. Да и еще как мы любим, нажать правой кнопкой на карту(Отправить отряд), да раз восемь подряд:). Полагаю во время битвы будут небольшие лаги.
Quote (spearman)
Вписывается ли такой алгоритм в логику программы?

Думаю вписывается, но нагрузка лишняя зачем нам:) Скорее всего есть более легкие пути.


Война и мир лучшая!
 
Форум » Knights and Merchants: Remake » Редактирование игры » Возвращаясь к перестроению юнитов (ищем алгоритм)
Страница 3 из 3«123
Поиск: