Андрей Смирнов http://www.a-smirnov.ru/forum/ |
|
Движок заклинаний, калькулятор и все такое http://www.a-smirnov.ru/forum/viewtopic.php?f=29&t=360 |
Страница 1 из 3 |
Автор: | allexdav [ 06 июн 2011, 02:36 ] |
Заголовок сообщения: | Движок заклинаний, калькулятор и все такое |
Тема посвящена движку заклинаний на питоне, чтобы все было в 1 месте. Я определился с архитектурой, в итоге сплошная кодогенерация, что к сожалению довольно медленно. Пусть пока так, потом будем разгонять. Делаю ОД 100 версию. Сейчас работают: Варкасты ( сделано одно заклинание, но механизм фактически универсален, потом напишу конвертер) Ходы(переход хода и регенерации). Шмотки и навыки ( осталось их сконвертировать в правильный формат) пока голышом и без навыков Бафы/Дебафы частично, не все эффекты описаны. Доты работают частично, буду переделывать архитектуру. Как переделывать уже понятно, но я надеялся этого избежать. По моим оценкам еще где-то пара месяцев в таком же темпе и что-то выйдет. |
Автор: | allexdav [ 06 июн 2011, 02:36 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
резерв. |
Автор: | allexdav [ 06 июн 2011, 02:37 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): Drake писал(а): Динамическое программирование? Тяжёлая артилерия, если мы об одном и том же allexdav, а насколько сложно человеку, ни разу не сталкивавшемуся с питоном (преимущественно c/c++ и matlab), будет понять код, на питоне написанный? Как причешу, откомментирую и доведу архитектуру до ума покажу. Думаю что достаточно просто, если осилить абстракции. Комментарии по русски? Я привык все на английском, поэтому спрашиваю |
Автор: | Lex [ 06 июн 2011, 04:03 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): Комментарии по русски? Я привык все на английском, поэтому спрашиваю Лично мне все равно - я конечно английский знаю среднепаршиво, но разберусь. |
Автор: | Drake [ 06 июн 2011, 23:44 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Тоже не принципиально, английским владею |
Автор: | allexdav [ 09 июн 2011, 01:02 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Морган, я тут внезапно понял что у тебя в описаниях всех заклинаний неправильная формула урона (те считаем ее на самом деле по другому) Огненное копье. Наносит цели эфирный урон = 200% урон оружия + 5%*МС + 3%Тс +25%*Х. Значение Х = дистанция до цели минус 2 (т.е. наибольшее значение Х может быть 5, если персонаж и цель стоят на максимальном расстоянии). Нельзя применить на цель, стояющую на соседней клетке. Считается как (200% +5%*МС + 3%Тс +25%*Х )*урон оружия, а не как 200% урон оружия + 5%*МС + 3%Тс +25%*Х. В 1 случае урон намного больше В общем править описания пока не нужно, я сам поправлю когда буду вводить, просто столкнулся с этим. |
Автор: | Морган [ 09 июн 2011, 23:18 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): Морган, я тут внезапно понял что у тебя в описаниях всех заклинаний неправильная формула урона (те считаем ее на самом деле по другому) Угу. |
Автор: | allexdav [ 11 июн 2011, 17:35 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Вопросы по баффам/дебаффам/дотам: Если наложить дот Ожог 2 раза. но в промежутке защита цели от эфирного урона вырастет, то как будет считатся урон после второго наложения. Иными словами Пусть защита была 100%. Наложив дот ожог в течении 3 ходов будет урон допустим 10. защита выросла до 200% Потом еще раз наложили дот ожог. 1)Урон будет 10 * 1.25 = 12 2) Или нужно пересчитывать урон заново (случайное число на 0.25 плюс остальное на изменившуюся защиту)? Для варкастов считаю урон так (огненное копье) t.hp = -(c.random(c.min_damage,c.max_damage)*(2+0.05*c.ms+0.05*c.ts+0.25*abs(c.positionX-t.positionX)+0.25*abs(c.positionY-t.positionY)+c.ether_attack-t.ether_defence)) Жизни = -( Урон оружия * (200%+5%*MC+5%*TC + 25%*расстояние + Эфирная атака кастера - эфирная защита цели)) Я так понимаю что атака кастера в дотах не используются. Так ли это? Нужно ли пересчитывать урон от дотов каждый ход ( в плане случайного значения) или стоит 1 раз зафиксировать? |
Автор: | Морган [ 11 июн 2011, 18:32 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): Вопросы по баффам/дебаффам/дотам: Если наложить дот Ожог 2 раза. но в промежутке защита цели от эфирного урона вырастет, то как будет считатся урон после второго наложения. Иными словами Пусть защита была 100%. Наложив дот ожог в течении 3 ходов будет урон допустим 10. защита выросла до 200% Потом еще раз наложили дот ожог. 1)Урон будет 10 * 1.25 = 12 2) Или нужно пересчитывать урон заново (случайное число на 0.25 плюс остальное на изменившуюся защиту)? Урон от дота пересчитывается каждый ход, вне зависимости от того, менялась ли защита и усиливался ли дот. Допустим, первый ход: возможный базовый урон 9-12. Выпадает 10. Модификаторы защиты: 100%. Модификаторы атаки: 225%. Подсчет модификаторов: 225% - 100% = 125% 125% от базового урона 10 = 12,5 ед. урона получает персонаж (округляется в меньшую сторону до 12) Второй ход: Модификаторы защиты повысились до 200% (допустим, в результате того, что персонаж на себя заклинание наложил, повышающее соотвестствующий тип защиты на 100%). Модификаторы атаки дота повысились на 25% за счет его обновления и стали = 250%. При переходе хода опять тикает дот. Возможный базовый урон 9-12. Выпадает 11. Подсчет модификаторов: 250% - 200% = 50% 50% от базового урона в 11 = 5 ед. урона. Цитата: Для варкастов считаю урон так (огненное копье) t.hp = -(c.random(c.min_damage,c.max_damage)*(2+0.05*c.ms+0.05*c.ts+0.25*abs(c.positionX-t.positionX)+0.25*abs(c.positionY-t.positionY)+c.ether_attack-t.ether_defence)) Жизни = -( Урон оружия * (200%+5%*MC+5%*TC + 25%*расстояние + Эфирная атака кастера - эфирная защита цели)) Я так понимаю что атака кастера в дотах не используются. Так ли это? Не совсем понял, о какой "эфирной атаке кастера" идет речь. Что ты под этим подразумеваешь? |
Автор: | allexdav [ 11 июн 2011, 18:40 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Про доты понял. Про атаку кастера - это Приращение Огня. Урон от заклинаний Огня, создаваемых персонажем, будет увеличен на 50%+3*ур.персонажа, а длительность дальнейших бафов и дебафов, создаваемых персонажем с помощью этой стихии, возрастет на 3 хода. То есть персонаж под этим бафом будет бить сильнее. Этот факт и отражает "атака кастера" |
Автор: | allexdav [ 11 июн 2011, 18:45 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
На самом деле в дальнейшем там будет масса других модификаторов урона, пока я местами упрощаю |
Автор: | Морган [ 11 июн 2011, 18:55 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): Про атаку кастера - это Приращение Огня. Урон от заклинаний Огня, создаваемых персонажем, будет увеличен на 50%+3*ур.персонажа, а длительность дальнейших бафов и дебафов, создаваемых персонажем с помощью этой стихии, возрастет на 3 хода. То есть персонаж под этим бафом будет бить сильнее. Этот факт и отражает "атака кастера" А, понятно. Ты о модификаторах, влияющих на урон. Ну в большинстве случаев в описании конкретного модификатора указывается, какие типы заклинаний он усиливает. Конкретно "Приращение огня" усиливает урон всех огненных заклинаний (воззваний, варкастов, дотов). Дот усиливается 1 раз. Т.е. допустим, игрок 20 ур. накладывает огненный дот с общей суммой стартовых модификаторов атаки = 200%. Затем он бафается "Приращением огня" и обновляет этот дот. Модификаторы атаки для дота будут уже = 200% (основные) + 25% (за обновление дота) + 110% (за "приращение огня") Для данного дота в дальнейшем уже не имеет значения, висит ли "приращение огня" на персонаже или нет. "Приращение" дало бонус и этот бонус "сохранится" в доте пока дот существует. И второй раз "Приращение" бонуса уже не даст этому заклинанию. Т.е. положим, на следующем ходу "Приращение" с персонажа сняли, а он еще раз обновляет дот: Модификаторы атаки: 225% (=200% основных + 25% за первое обновление) + 25% (новое обновление) + 110% ("приращение огня"). |
Автор: | allexdav [ 11 июн 2011, 19:12 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Морган писал(а): allexdav писал(а): Про атаку кастера - это Приращение Огня. Урон от заклинаний Огня, создаваемых персонажем, будет увеличен на 50%+3*ур.персонажа, а длительность дальнейших бафов и дебафов, создаваемых персонажем с помощью этой стихии, возрастет на 3 хода. То есть персонаж под этим бафом будет бить сильнее. Этот факт и отражает "атака кастера" А, понятно. Ты о модификаторах, влияющих на урон. Ну в большинстве случаев в описании конкретного модификатора указывается, какие типы заклинаний он усиливает. Конкретно "Приращение огня" усиливает урон всех огненных заклинаний (воззваний, варкастов, дотов). Дот усиливается 1 раз. Т.е. допустим, игрок 20 ур. накладывает огненный дот с общей суммой стартовых модификаторов атаки = 200%. Затем он бафается "Приращением огня" и обновляет этот дот. Модификаторы атаки для дота будут уже = 200% (основные) + 25% (за обновление дота) + 110% (за "приращение огня") Для данного дота в дальнейшем уже не имеет значения, висит ли "приращение огня" на персонаже или нет. "Приращение" дало бонус и этот бонус "сохранится" в доте пока дот существует. И второй раз "Приращение" бонуса уже не даст этому заклинанию. Т.е. положим, на следующем ходу "Приращение" с персонажа сняли, а он еще раз обновляет дот: Модификаторы атаки: 225% (=200% основных + 25% за первое обновление) + 25% (новое обновление) + 110% ("приращение огня"). То есть дот это как бы некая структура которая висит на цели и получает часть модификаторов урона кастера, которые были в прошлом на момент каста/обновления, причем не снимаемые и неограниченной длительности. Это все немного усложняет, но ладно. |
Автор: | allexdav [ 11 июн 2011, 19:55 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Еще вопрос Приращение Огня. Урон от заклинаний Огня, создаваемых персонажем, будет увеличен на 50%+3*ур.персонажа, а длительность дальнейших бафов и дебафов, создаваемых персонажем с помощью этой стихии, возрастет на 3 хода. длительность дотов и связующих не возрастает? |
Автор: | Морган [ 11 июн 2011, 19:56 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): То есть дот это как бы некая структура которая висит на цели и получает часть модификаторов урона кастера, которые были в прошлом на момент каста/обновления, причем не снимаемые и неограниченной длительности. В общем, да. Длительность этих всех бонусов, которые игроку удалось "напихать" в свой дот, совпадает с длительностью самого дота. Цитата: Приращение Огня. Урон от заклинаний Огня, создаваемых персонажем, будет увеличен на 50%+3*ур.персонажа, а длительность дальнейших бафов и дебафов, создаваемых персонажем с помощью этой стихии, возрастет на 3 хода. длительность дотов не возрастает? Не возрастает. И длительность контролей не возрастает. |
Автор: | Эйн Ди [ 11 июн 2011, 22:01 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
allexdav писал(а): (т.е. наибольшее значение Х может быть 5, если персонаж и цель стоят на максимальном расстоянии). Если расстояние максимально, то оно равно 6. Соответственно, тогда x=4. |
Автор: | allexdav [ 11 июн 2011, 22:38 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
I_m писал(а): allexdav писал(а): (т.е. наибольшее значение Х может быть 5, если персонаж и цель стоят на максимальном расстоянии). Если расстояние максимально, то оно равно 6. Соответственно, тогда x=4. Это частный вопрос как этот эффект должен считаться. Не приоритетно. Но по идее правильное замечание |
Автор: | allexdav [ 16 июн 2011, 13:27 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
В общем после выяснения того что дот это некий объект а не функция, что не влезло в модель пришлось переделать ряд вещей. В ближайшее время продолжу. |
Автор: | Морган [ 17 июн 2011, 22:07 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Lex и allexdav, пишите хотя б раз в неделю, на какой стадии находитесь. Нам же всем интересно. Если вам не влом, конечно. |
Автор: | Lex [ 17 июн 2011, 22:16 ] |
Заголовок сообщения: | Re: Движок заклинаний, калькулятор и все такое |
Морган писал(а): Lex и allexdav, пишите хотя б раз в неделю, на какой стадии находитесь. Нам же всем интересно. Если вам не влом, конечно. Аааа! Отчеты!!!!111 Да не влом конечно, наоборот иначе меня не организовать. Я сейчас делаю регистрацию отдельных персов - выбор стихий, форм и пр. Кстати регистрироваться в качестве юзеров уже можно. ЗЫ. Забыл добавть - имеется в виду лайт версия |
Страница 1 из 3 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |