О том какая должна быть сфера или стратегическая игра?
А собственно кому мы все это пишем? конечно же интересно. заодно, если бы разработчикм предложили хотя бы общую канву для размышлений, появилось бы больше конструктива - отсеклись бы сразу "лишние" фантазии.
Пока мне мой вариант - ограничения веса армий и "сверху" и "снизу" кажется весьма интересным. Плюс - в данной схеме можно ввести продажу ресурсов за реал, для нежелающих целенаправленно развиваться, и данная продажа не вызовет ни дисбаланса, ни возмущения. Балбес все равно проиграет все возможные бои, заинтересовавшийся же человек просто станет еще одним интересным противником. А в нынешнем варианте "бесконечного накопления" лично мне сфера уже неинтересна...
Я имел ввиду вполне конкретную вещь: серверное ядро DS, написанное не на Бэйсике.
На этапе компилляции в машинный код константа подготавливается к непосредсвенной загрузке в регистры процессора, а переменная - только после загрузки своего адреса, то есть, тратится время на выполнение инструкций по обработке её адреса.
И разницу в скоростях обработки можно ощутить на том же Бэйсике: создать одинаковые циклы для операции с константой и переменной, запустить их и сравнить время их выполнения.
Поэтому: переменные, вычисляемые на каждом раунде - зло.
Ну юзеров ты напугать этим можешь... но не программистов. Ибо ерунда. Потому что (если ты только не писал ядро на ассемблере) данные обычно хранятся отдельно от кода, и все равно в регистр грузятся по адресу... А так как таблица коэффициентов - константа отнюдь не кода, то различие между ней и переменными еще более условно. Кроме того, ядро сервера написано явно на ПХП... И о разнице между константой и переменной в интерпретированном языке рассуждать... немодно
ЗЫ: разница в циклах между immediate и pointer исчезла где-то на уровне 486х процессоров... все обрабатывается параллельно... ибо pipeline...
Цитата:
Цитата:
Цитата:
В моем варианте боя по модели линий можно ввести понятие дальнего и ближнего боя. Если например юнит находится на дальней линии - одни типы атак, а при его сдвиге ближе - другие. Реализация не сложнее текущей можели.
Да, это вариант. Никто не мешает ввести таблицы К для каждого раунда.
+10
Опять же, подобный бой - до первого умника: найдёт оптимальный состав армий и правильную последовательность отправки их в бой, а потом всем расскажет. И будут все мучаться единообразием, как сейчас прослоем.
Оптимальный состав возможен лишь при наличии одного экстремума в функции эффективности боев, или при относительной стабильности данной функции... Если же диапазон значений достаточно велик, и есть несколько оптимальных конфигураций и анти-конфигураций... расчет не поможет, а усредненную армию разобьет первый же умный игрок - в чем, собственно, и цель...
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
... Если же диапазон значений достаточно велик, и есть несколько оптимальных конфигураций и анти-конфигураций... расчет не поможет, а усредненную армию разобьет первый же умный игрок - в чем, собственно, и цель...
Как я понимаю, речь не о прослойных схемах?
Хотелось бы услышать о способах убивания средних армий... можно в другой теме...
Мне казалось, что речь идет именно о беспрослойном варианте боя, с большой вариацией уронов и уязвимостей, и вдобавок многораунде с вариацией эффективности... А в многораунде прослой не сильно поможет... Вместо него можно ввести "оттяжку огня" разными видами юнитов, но это сложнее чем просто оставить "прикрышку" из чемоданов
[upd]поздно потер... йа не заметил
переслал в ПМ
там же тема, в которой обсуждение данного вопроса
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
эээ... коллеги? по несчастью?
в общем все опять скатывается к обсуждению вариантов боя, что интересно, но при сохранении нынешней системы накоплений - мало что меняет. Мне бы хотелось услышать обсуждение идеи "ограничения по весу армий, участвующих в бою".
эээ... коллеги? по несчастью?
в общем все опять скатывается к обсуждению вариантов боя, что интересно, но при сохранении нынешней системы накоплений - мало что меняет.
Все, мы уже здесь завязали. Дальнейшие обсуждения в другой теме
Цитата:
Мне бы хотелось услышать обсуждение идеи "ограничения по весу армий, участвующих в бою".
а зачем? Ограничения есть и сейчас, чем они плохи?
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
Я имел ввиду вполне конкретную вещь: серверное ядро DS, написанное не на Бэйсике.
На этапе компилляции в машинный код константа подготавливается к непосредсвенной загрузке в регистры процессора, а переменная - только после загрузки своего адреса, то есть, тратится время на выполнение инструкций по обработке её адреса.
И разницу в скоростях обработки можно ощутить на том же Бэйсике: создать одинаковые циклы для операции с константой и переменной, запустить их и сравнить время их выполнения.
Поэтому: переменные, вычисляемые на каждом раунде - зло.
Ну юзеров ты напугать этим можешь... но не программистов. Ибо ерунда. Потому что (если ты только не писал ядро на ассемблере) данные обычно хранятся отдельно от кода, и все равно в регистр грузятся по адресу... А так как таблица коэффициентов - константа отнюдь не кода, то различие между ней и переменными еще более условно. Кроме того, ядро сервера написано явно на ПХП... И о разнице между константой и переменной в интерпретированном языке рассуждать... немодно
ЗЫ: разница в циклах между immediate и pointer исчезла где-то на уровне 486х процессоров... все обрабатывается параллельно... ибо pipeline....
Лично я когда-то на трёх видах Ассеблера немного писал (для разных типов микропроцессоров).
И очень подозреваю, что таблица "К юнит против юнита" загружена ещё в исходнике и непосредственно откомпиллирована в код в виде полноценных констант. Я бы так сделал.
Поэтому для сомневающихся повторно советую провести эксперимент с циклами. Даже на ПХП.
2 karnoza
Ты классный топик создал - очень хорошее и широкое название.
_________________ Волк: Вождь партии Мира и Труда.
Олин, я бы тоже многое сделал по-другому
Но как-то Райла обмолвился, что таблица юнитов у них в БД, и таблица К в БД... Так что - если я я конечно ничего не путаю - ты в корне неправ... При чем в предпосылках...
зы: но даже в нормальных языках среднего/низкого уровня таблицы зашивают в сегмент данных, и в принципе ничем от переменных они не отличаются.. Зашивание чисел прямо в код сильно усложняет проектирование и сопровождение. + сильно раздувает код.
Сам подумай: для того чтобы расчитать, сколько юнит 3 наносит урона, нужно:
а) залезть по индексу юнита в таблицу, вытащить оттуда константы и на основании их получить урон
б) диагностировать тип юнита, после в отдельной ветке использовать константы для вычисления...
Что проще,быстрее, надежнее?
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
Последний раз редактировалось 7serg7 Вт фев 06, 2007 18:22, всего редактировалось 1 раз.
...2. Бои ведутся на сотах армиями, ограниченными по размеру. Существует нижний предел – если армия меньше, на соту напасть просто невозможно, верхнего предела для армий не существует, но при прилете армии более чем в 2 раза превышающей армию защитника, в бою участвует пропорционально (относительно первоначально сформированной) уменьшенное количество юнитов. ...
Первое впечатление: армию будут дробить на кучу мелких частей и посылать многочисленными волнами. Победа, как и сейчас, - за экономически мощным игроком.
Цитата:
Олин, я бы тоже многое сделал по-другому
Но как-то Райла обмолвился, что таблица юнитов у них в БД, и таблица К в БД... Так что - если я я конечно ничего не путаю - ты в корне неправ... При чем в предпосылках...
Рассудить нас может только Enzo.
Raila не программист. Его инфа правильна. А я добавлю: а потом эту БД используют на этапе компилляции для получения исполняемого кода.
Обращаться к БД в виде SQL-запросов в реальном масштабе времени... застрелиться можно!
Цитата:
]Зашивание чисел прямо в код сильно усложняет проектирование и сопровождение. + сильно раздувает код.
А если это единственно возможный путь для возможности одновременной обработки тысяч боёв?
Ради этого стоит и долго запрягать и код раздуть. Зато быстро поедет.
_________________ Волк: Вождь партии Мира и Труда.
А если это единственно возможный путь для возможности одновременной обработки тысяч боёв?
Ради этого стоит и долго запрягать и код раздуть. Зато быстро поедет.
Олин, не смеши народ.
Напиши программу так и так и просчитай эффективность.
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
А если это единственно возможный путь для возможности одновременной обработки тысяч боёв?
Ради этого стоит и долго запрягать и код раздуть. Зато быстро поедет.
Олин, не смеши народ.
Напиши программу так и так и просчитай эффективность.
Ты про SQL-запросы?
_________________ Волк: Вождь партии Мира и Труда.
Можешь просто с таблицей констант и вшитыми в код константами.
Предположим, что SQL они действительно не используют
_________________ [color=red]Даешь Кузницу Артов![/color]
[size=75]"Я подведу людей к самому краю страшной пропасти, когда они будут держать в руках килограмм золота, стоящий пять центов"[/size]
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 28 гостей
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения