Работаю над базовым калькулятором ЛА2, не нашел информации на форуме по этой теме, может у кого есть уже такие наработки?

BladeRunner

Знающий
Только чтение
Сообщения
1 219
Розыгрыши
0
Репутация
-265
Реакции
464
Баллы
475
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
любая
Сабж. Пытаюсь реверсить базовый калькулятор рассчета статов и таблиц значений для ядра сервера: статы классов и мобов, таблицы хп и прочих параметров и тд. То есть высчитываю базовый калькулятор распределения баланса и постройки прогрессии развития персонажа и его скорости. В инете мало информации по этой теме, приходится все почти с 0 реверсить. Может кто поделить какой инфой по данной теме? или кто уже интересовался, и есть ссылки или наработки по данному вопросу?

Актуальные вопросы в данный момент:

1. Есть идеи, как рассчитывается стоимость ресурсов? я понимаю, как вывести стоимость пушки от ее характеристик, но вопрос в том, как ее подробить на ресурсы и какие? и как заложить алгоритм распределения ресов по мобам от их востребованности для крафта...

2. Ребят, может кто увлекается ковкой или смежными темами? какие материалы и химия используется при ковке?
а) для увеличения температуры горна
б) для изменения характеристик расплава ( присадки которые добавляют сейчас знаю), может какие редкие старинные методы и добавки
в) что раньше использовали для создания форм для отливки, шаблонов и тд?
г) какие материалы могли сочетать со сталью в изделиях в процессе выплавки или выкования?
д) какие вспомогательные материалы использовались? типа разделителей, смазок, отвердителей для форм и тд?

3. Апдейт: Благодаря Аристо и секретному гению БДО-серверов, есть декомпилы с пдбшек ПТСки ХФ. Разыскиваются, можно не бесплатно, файлы декомпилов других хроник, отвечающие за расчет статов персонажей и мобов, дамага, экономики, состава дропа мобов, баланса и силы/скорости скилов. Можно только эти куски, если вы не можете поделиться остальной частью декомпила
 
Последнее редактирование:
Может кому попадались статьи по исследованию геймплеяв зависимости от скорости убийства мобов? Так как скорость развития можно регулировать через измененние скорости убийства мобов, а можно через изменение награды за убийство при той же скорости (классическая рейтовка по экспе на фришках)). Вот интересно, как меняется и балансируются игровые впечатления в таком случай.

И принимаются идеи, к какому общему параметру лучше свести юниты игры для их балансировки и просчета геймплея.
 

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

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

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

Можно дальше пойти и добавить параметры HP например, но это будет уже вопрос вторичных параметров так как все зависит от где и что игрок может сделать.
Замечательная теория, вас не затруднит на практике это реализовать ?
Сейчас много товарищей выдалось которые реализовывают всякую гадость за 1 часов +-, с нейросетями и прочим..., вот вперед.
А то кроме слов(написанных) , никакой визуальной конкретики.
 
Замечательная теория, вас не затруднит на практике это реализовать ?
Сейчас много товарищей выдалось которые реализовывают всякую гадость за 1 часов +-, с нейросетями и прочим..., вот вперед.
А то кроме слов(написанных) , никакой визуальной конкретики.
ты цитатой не ошибся?)) там предположения отдельные, а не идея или теория)
 
Например, есть локации где мобы стоят далеко друг от друга, тогда надо будет долго бегать и кач будет долгий.
Есть социальные мобы с очень неприятными дебафами и делать соло игроку или группе 2-4 человека там нечего. Есть сервера, где есть автолут, и где есть поляны с мобами, которые удачно расположены и с них падают хербы. То есть можно встать в одну точку и магом по кд убивать мобов, за счет автолута будут собираться хербы на мп, получаем бесконечную мп перса. Кач там будет быстрый и нон стоп. А если собрать проф. кп, проходить нужные квесты, убивать по кд нужных рб, и этим кп выносить все живое по 12 часов в сутки в нужный прайм тайм, кач вообще будет легендарный, можно будет сделать за неделю то, что соло игрок будет крабить год
 
Such an undertaking requires homework. I would've done it in the following order:

1. Implement/create basic Automatic Play/farm system.
2. Implement/create basic FakePlayers/Phantoms/Bots system with predetermined items and unlimited consumables, which would basically be like empty Player instances, controlled by Autofarm and Simulations Manager (see point 6).
3. Create a custom instance with several rooms/locations.
4. Create copies of the custom instance or make it take templates from XML or whatever, which will control mob density, mob type, HP/def/attack multipliers etc.
5. Create a logger that would keep track of room clear speed, drops, deaths (if any, which would require you to put a respawn point and make it so that players respawn automatically inside the instance at location X after Y amount of seconds, which will simulate average speed it take a player to get back to spot), consumables spent by the player, XP, total damage, time of completion.
6. Create a "Simulation Manager", which will spawn X number of concurrent phantoms, based on how many runs you want to make, assign them to these instances, do autofarm, log everything, etc based on your dynamic or pre-determined parameters, including how many times to run the test per class.
7. Write a script that will compare the logs, calculate the median per class and per instance type/template, and export the results to some Excell sheet.
8. Do the runs manually by yourself, while also loggin the results through the Simulation Manager or whatever, and using them as baseline for the Excell sheet mentioned in point number 7. This could include percentage point calculation at the end, where your results will be 100% so that you can easily determine which class did best and what the differences were based on the different instance templates.
9. (optional) - Give my custom instance, along with the Simulation Manager, to all my friends who have servers and collect data from their players' runs and use a median of that as basis instead of my results.

Once I have the data, only then would I start theory-crafting and wasting my time in figuring out how to improve the testing method or how to improve/balance character progression.
 
Например, есть локации где мобы стоят далеко друг от друга, тогда надо будет долго бегать и кач будет долгий.
Есть социальные мобы с очень неприятными дебафами и делать соло игроку или группе 2-4 человека там нечего. Есть сервера, где есть автолут, и где есть поляны с мобами, которые удачно расположены и с них падают хербы. То есть можно встать в одну точку и магом по кд убивать мобов, за счет автолута будут собираться хербы на мп, получаем бесконечную мп перса. Кач там будет быстрый и нон стоп. А если собрать проф. кп, проходить нужные квесты, убивать по кд нужных рб, и этим кп выносить все живое по 12 часов в сутки в нужный прайм тайм, кач вообще будет легендарный, можно будет сделать за неделю то, что соло игрок будет крабить год

я немного о другом. респ/частоту мобов то можно менять, как и настройки хербов, мана/хп регена и тд, это вторично и лишь инструмент.

я о том, что при равной скорости получения опыта можно варьировать скорость боя и количество убиенных мобов. можно сделать высокий атак спид(образно, понятно что много параметров влияет на скорость дпс) и мало жирных мобов. можно сделать высокий атакспид и много худых мобов, чтобы был расстрел с тычки. можно сделать низкий атакспид и жирный моб, но много эксп. можно сделать низкий атакспид, и больше средних по толщине и экспе мобов. то есть при одинаковом получении суммы опыта за час, ты можешь сделать совершенно разный характер кача. Мне вот интересно какой из них дает больше эндорфинов и менее однообразен, или если одноообразен в плане количества и времени фарма, то динамичен и не дает скучать в самом процессе. Так как тут сталкиваются 4 противоположенных психологических эффекта: 1) чем сложнее убить моба и дольше - тем больше радость от его одоления. 2) чем дольше убиваются мобы - тем скучнее и медленее геймплей- причет унылому гринду, сообенно без сосок, тоска, депресия, ноулайф. 3) быстрое легкое убийство доставляет меньше удовольствия 4) когда персонаж сильно превосходит мобов и имеет много скилов - он получает удовольствие от новых более эффективных сочетаний скилов, вождения париков, совершенствования скила игры и новых игровых ситуаций и красивых решений в них.

По поводу гринд- пачек и прочих задротов. в ЛА есть почти все известные гемйпленые методы, и много интересных решений. но большинство из них сделанны через очко. такие как автофарм или виталити. надо просто сделать или хорошо, или наоборот от того, что делает нцсофт. вполне существуют методы борьбы с разницей в скорости кача между разными игроками, кто много и мало играет.
Such an undertaking requires homework. I would've done it in the following order:

1. Implement/create basic Automatic Play/farm system.
2. Implement/create basic FakePlayers/Phantoms/Bots system with predetermined items and unlimited consumables, which would basically be like empty Player instances, controlled by Autofarm and Simulations Manager (see point 6).
3. Create a custom instance with several rooms/locations.
4. Create copies of the custom instance or make it take templates from XML or whatever, which will control mob density, mob type, HP/def/attack multipliers etc.
5. Create a logger that would keep track of room clear speed, drops, deaths (if any, which would require you to put a respawn point and make it so that players respawn automatically inside the instance at location X after Y amount of seconds, which will simulate average speed it take a player to get back to spot), consumables spent by the player, XP, total damage, time of completion.
6. Create a "Simulation Manager", which will spawn X number of concurrent phantoms, based on how many runs you want to make, assign them to these instances, do autofarm, log everything, etc based on your dynamic or pre-determined parameters, including how many times to run the test per class.
7. Write a script that will compare the logs, calculate the median per class and per instance type/template, and export the results to some Excell sheet.
8. Do the runs manually by yourself, while also loggin the results through the Simulation Manager or whatever, and using them as baseline for the Excell sheet mentioned in point number 7. This could include percentage point calculation at the end, where your results will be 100% so that you can easily determine which class did best and what the differences were based on the different instance templates.
9. (optional) - Give my custom instance, along with the Simulation Manager, to all my friends who have servers and collect data from their players' runs and use a median of that as basis instead of my results.

Once I have the data, only then would I start theory-crafting and wasting my time in figuring out how to improve the testing method or how to improve/balance character progression.
good plan, but you replaced the beginning and end))

First, a theoretical model is made, and only then everything is checked by the play tests that you are talking about. and much simpler tests than you described will be sufficient
 
Мне вот интересно какой из них дает больше эндорфинов и менее однообразен, или если одноообразен в плане количества и времени фарма, то динамичен и не дает скучать в самом процессе. Так как тут сталкиваются 4 противоположенных психологических эффекта: 1) чем сложнее убить моба и дольше - тем больше радость от его одоления. 2) чем дольше убиваются мобы - тем скучнее и медленее геймплей- причет унылому гринду, сообенно без сосок, тоска, депресия, ноулайф. 3) быстрое легкое убийство доставляет меньше удовольствия 4) когда персонаж сильно превосходит мобов и имеет много скилов - он получает удовольствие от новых более эффективных сочетаний скилов, вождения париков, совершенствования скила игры и новых игровых ситуаций и красивых решений в них.

Speaking from experience playing on Multiskills servers, where everything is challenging at first and gets easy, repetitive and boring in the end, I would conclude that you need the right (and diverse) mix of challenges and rewards.

- If you make a challenge hard, the reward must be equally impactful.
- Reaching the easy, repetitive, and boring stage should be delayed as much as possible by prolonging it with "distractions", such as PVP/CO-OP events of some sort. Here, I'm not talking PvP Hasher, Capture the Flag, etc, but more like some Grand, server-wide, one-time event, thematically linked to the game.
An example that first came to mind was some sort of "BIG VILAIN" approach, where certain zones are affected by some internal dispute and as a result, some mobs have become rogue and they might appear from nowhere and attack the player while he is farming on the zone.
That's the simple thing, but introducing some mechanics, such as splitting the zone and joining a side, similarly to how Ketra vs Varka was in HF would make a lot of sense too, if implemented a bit differently. More like a Hellbound type of approach, where the entire server would work towards a common goal, or they would have to chose a side and the more they farm, on the zone, the higher the counter goes, and there would be thresholds that each faction/side can get to which grant something to everyone who chose this faction. It could be some benefit like buff or whatever. Sky is the limit.
 
Последнее редактирование:
Speaking from experience playing on Multiskills servers, where everything is challenging at first and gets easy, repetitive and boring in the end, I would conclude that you need the right (and diverse) mix of challenges and rewards.

- If you make a challenge hard, the reward must be equally impactful.
- Reaching the easy, repetitive, and boring stage should be delayed as much as possible by prolonging it with "distractions", such as PVP/CO-OP events of some sort. Here, I'm not talking PvP Hasher, Capture the Flag, etc, but more like some Grand, server-wide, one-time event, thematically linked to the game.
An example that first came to mind was some sort of "BIG VILAIN" approach, where certain zones are affected by some internal dispute and as a result, some mobs have become rogue and they might appear from nowhere and attack the player while he is farming on the zone.
That's the simple thing, but introducing some mechanics, such as splitting the zone and joining a side, similarly to how Ketra vs Varka was in HF would make a lot of sense too, if implemented a bit differently. More like a Hellbound type of approach, where the entire server would work towards a common goal, or they would have to chose a side and the more they farm, on the zone, the higher the counter goes, and there would be thresholds that each faction/side can get to which grant something to everyone who chose this faction. It could be some benefit like buff or whatever. Sky is the limit.
you write about interesting, but private solutions. I wanted to find information on the psychology of player behavior in response to certain changes in the speed/intensity/difficulty/variety of gameplay. in any case, thanks for your thoughts, they are well spent

Вопрос: зачем при рассчете дпс магии использовали переменную не линейную, а подкоренную? Так баланс считать сложнее. Так как на линейный график роста дпс физ классов накладывается нелинейный график роста магдпс. А поскольку параметром скорости развития является производная от переменной увеличения дпс с лвл, то для физ классов это выходит стабильная константа, а для магов- отрицательный график скорости прироста дпс с лвл. То на хай левелах маги отстают от физов по приросту дпс с лвл. Более того, нссофт похоже облажались и перепутали очередной раз. Так как заточка дает пропорциональный прирост дпс физам, а магам через корень от м атак, то шанс заточки должен быть выше для магических пушек. А по факту шанс точки маг пух 0,4-0,5 (отличается вроде от хроник), а физ- 0,7. То есть пропорция то примернр верная, но перепутана наоборот.

Суть вопроса- нцсофт опять херь слепили, или есть логика, почему именно так сделанно? И с подкоренным рассчетом матаки, и с шансами заточки маг/физ пух.

Пример: если на Ы-грейде 1 заточка 3+ дает примерно 3% дамага к большинству физ пух, то чтобы аналогичный прирост получить к маг-пухам, то надо заточить не один раз, а дважды, так как прирост маг дпс посчитается через корень. То есть маги получаются урезаны и шансом заточки, и приростом дпс от заточки. И это не компенсируется тем, что фиксированная прибавка пунктов от заточки идет к чуть меньшему значению, а значит составляет чуть больший процент от него (м атака численно меньше физ атаки в статах оружия)
 
Парни, есть идеи, почему базовые ХП мистиков больше, чем у воинов? И у темных эльфов больше, чем у орков?
И какова логика изменения базовых хп и других статов при получении профессии?
 
Парни, есть идеи, почему базовые ХП мистиков больше, чем у воинов? И у темных эльфов больше, чем у орков?
И какова логика изменения базовых хп и других статов при получении профессии?
На птсе их база указывается в статик значениях в файле settings под каждый класс. Но на сколько я помню у мистиков всегда было меньше хп кроме орков вроде. Ну т.е у окров магов вроде хп больше чем у воинов темных эльфов.
 
Парни, есть идеи, почему базовые ХП мистиков больше, чем у воинов? И у темных эльфов больше, чем у орков?
И какова логика изменения базовых хп и других статов при получении профессии?
там разный прирост бонусов к базовым параметрам
допустим +1 CON войну даст больше хп чем магу
помню из примеров своей игры при установки татуировок.
А возможно я ошибаюсь и это из за умножения уже имеющихся скиллов, не изучал досконально вопрос - догадки.
 
  • Мне нравится
Реакции: raz
там разный прирост бонусов к базовым параметрам
допустим +1 CON войну даст больше хп чем магу
помню из примеров своей игры при установки татуировок.
А возможно я ошибаюсь и это из за умножения уже имеющихся скиллов, не изучал досконально вопрос - догадки.

Это понятно. Статы это вообще абстрактная чепуха, они потом по таблице переводятся в коэффициенты умножения 0,4- 2,5 или около того. Я пытаюсь понять изначалтную логику присвоения исходных хп. И как они меняются от профы, например с хуман файтера на рога, кнайта или вариора- все разные базовые таблицы и значения в них
 
Это понятно. Статы это вообще абстрактная чепуха, они потом по таблице переводятся в коэффициенты умножения 0,4- 2,5 или около того. Я пытаюсь понять изначалтную логику присвоения исходных хп. И как они меняются от профы, например с хуман файтера на рога, кнайта или вариора- все разные базовые таблицы и значения в них
Врядли ты поймешь закономерность, я тоже упарывался в этом и судя по тому что я видил пришел к выводу что там либо какаята формула у них наркоманская при генерации базовых значений или там тупо рандом накидывают значения.
 
Врядли ты поймешь закономерность, я тоже упарывался в этом и судя по тому что я видил пришел к выводу что там либо какаята формула у них наркоманская при генерации базовых значений или там тупо рандом накидывают значения.

Если они четко по формуле делали - то я выведу через систему уравнений. но если они после формулы еще кривыми костылями правили, чтобы понерфить или забустить какие-то классы - то да, печаль. только примерные прикидки.
И да, баланс делали какие- то наркоманы. причем еще в ЛА1, так как почти под чистую содрали оттуда. У магов можно достаточно безболезнено урезать Меn, а аналог этого параметра у воинов - это Кон, который резать весьма болезнено. При этом воины не могут менять Меn, а маги спокойно режут СТР в Кон.
Далее у магов и так меньше ХП после модификатора Кон, так им еще и робу дали с тощей броней. А сумарные усиливающие бафы имхо дают гораздо больше прироста ДПс воинам, чем магам. При этом соски дают магам и прирост и по касту и по силе, то есть ДСП в 4 раза, а воинам - только в 2. То есть имеем дикий дизбаланс или в начале развития, или в конце, и с сосками/бафом играть, или соло. Чем больше думаю над этой кривотой, тем больше хочется с нуля переписать статы и баланс.
 
Последнее редактирование:
У кого есть идеи, по какой логике рассчитывалось наполнение дропом в монстров, и вообще, стоимость вещей, их крафта , ресурсов для них? А так же сколько с моба будет эксп?
 
У кого есть идеи, по какой логике рассчитывалось наполнение дропом в монстров, и вообще, стоимость вещей, их крафта , ресурсов для них? А так же сколько с моба будет эксп?
Нужно посмотреть на каждый регион карты где и что мoнстрики дропают. Ну а потом посмотреть похожиe по уровню регионы (есть регионы карты где уровень мобов одинаков, но будут различия в видах мобов, ну паример Leto тип, который включает различные под-типы, но смысл в том что главный тип обычно стоит в определенном регионе) и собирать какие у них дропы. По идее мобы одинаковых уровней, но в различных регионах, не должны совпадать по дропам. Но конечно будут и совпадения в некоторых придметах. Так вот, из такой информации можно узнать или подтвердить факторы/критерии по которым разработчики решили присвоить различные дропы или же особенный споил.

Кстати очень полезная идея. Я ее приделаю на свой сервер, чисто для того что-бы узнать каких мобов нужно бить в регионе. Ну и также полезно для отладки некоторых механик сервера.
 
Нужно посмотреть на каждый регион карты где и что мoнстрики дропают. Ну а потом посмотреть похожиe по уровню регионы (есть регионы карты где уровень мобов одинаков, но будут различия в видах мобов, ну паример Leto тип, который включает различные под-типы, но смысл в том что главный тип обычно стоит в определенном регионе) и собирать какие у них дропы. По идее мобы одинаковых уровней, но в различных регионах, не должны совпадать по дропам. Но конечно будут и совпадения в некоторых придметах. Так вот, из такой информации можно узнать или подтвердить факторы/критерии по которым разработчики решили присвоить различные дропы или же особенный споил.

Кстати очень полезная идея. Я ее приделаю на свой сервер, чисто для того что-бы узнать каких мобов нужно бить в регионе. Ну и также полезно для отладки некоторых механик сервера.
а не о том. я про базовую логику рассчета дропа. почему пушка патак 21 стоит допустим 120к адены, а демонсплинтеры - 48лямов. и почему вообще такие патак у оружия под и под какие лвл/грейды. А распределние по мобам скорее всего было условно рандомное, от какой-то внутренней расчетной цифры ценности моба, и далее на эту цифру ему насыпали начинки дропом по рандому, с учетом лвл моба и предполагаемых к падению с него грейдов ресурсов и оружия. никто ручками не прописывал эти тысячи мобов. максимум фиксили отдельные совсем кривые дропы. и то, шансы выбить допустим ДЦ перчи, шлем и тапки - никак не соотвествуют между ценой и реальным шансом их выбить в игре. Народ конечно будет орать, что так задуманно, но имхо это баг, который сделали фичей

Вот например график апроксимации функции стоимости оружия от Патак по кастетам
Рисунок1.png
 
Последнее редактирование:
Извиняюсь перед аудиторией, я нуб от всего этого, ещё и под %, очень много информации, много понял, много нет ))) со своей стороны "играйющим в л2" всегда бесил рандом, не важно рейты хроники, но такое впечатление, что может л2 задумали рандомной? со своей спецификой? может и была логика, но когда л2 вышла на свой уровень, просто команда начала ее пилить и не сильно задумывалась, что и как будет.. начала конкурировать с Варом, или он с ней, и сама суть уже потерялась, разные хроны фармили боссов, кач аое, под пику, кдл.. и свести всех к 1му по достижению не выйдет, выходит, надо создать формулу привязанную к каждому игроку, что бы "выхлоп" был +-=0... тогда суть корейского рандома потеряется, увы как казино=азарт... Если мы будем знать свой исход. ПыСы если что то не то написал, не обессудьте. Л2 азарт по своему- для меня, если это убрать, то это другая игра...
 
Назад
Сверху Снизу