Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Полный ревамп системы прокачки скиллов
Narayan
сообщение 23.1.2024, 12:46
Сообщение #1


**********

Гарант UoKit
Сообщений: 2.848
Регистрация: 28.3.2007
Группа: Супермодераторы
Наличность: 15548
Пользователь №: 9.591



Всем привет, неожиданное для меня появление в этом разделе (IMG:style_emoticons/default/smile.gif)

Зародилось виденье переработки прокачки, которое включает в себя классическую систему(относительно)+левел система.

Идея в чем:
- За каждое успешное использование любого навыка, дается какое-то кол-во опыта, которое зависит от коэффициента качества этого самого действия. Простой пример: чем больше урона наносим, тем больше опыта; чем лучше металл из которого крафтится предмет и больше требуется ресурсов, тем больше опыта и т.д. Так, для каждого скилла, где это качество действия можно как-то оценить.
- Есть группа навыков, допустим Combat. В эту группу входят все боевые навыки. У группы навыков есть уровень, который прокачивается успешными применениями навыков и получением за них опыта. Когда повышается уровень группы навыков, начисляется n-ое кол-во поинтов, которые можно свободно распределить между всеми навыками внутри группы навыков. Если получили уровень в группе Combat, то очки можно распределить только на те навыки, которые входят в эту группу. Всего 6 групп навыков
- Если какой-то из навыков достиг своего максимума(100.0 или 120.0), то этот навык больше не дает опыта
- Чтобы добавить поинты навыков, нужно заплатить золото за каждое повышение. Чтобы прокачать с 0.0 до 0.1 нужно 1 гп, с 0.1 до 0.2 нужно 2 гп и т.д., постоянная прогрессия стоимости
- При получении уровня группы навыков, требуемое кол-во опыта считается по формуле - (предыдущий опыт для уровня*1.2)
- Слева экрана вместо "Your skill in Swordmsnship increased by 0.1% and now 30.1%" -> "Your Combat experience has increased by 5 and now 5\3000"

Вопрос, собственно (IMG:style_emoticons/default/smile.gif) - Может быть у кого-то есть пример реализации хотя бы чего-то из перечисленного? Понимаю, что тут работы вагон, но всякое бывает

Сообщение отредактировал Narayan - 23.1.2024, 14:10


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 23.1.2024, 16:07
Сообщение #2


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15527
Пользователь №: 14.566
Возраст: 30



Да откуда тут вагон работы то?
Ну я делал что-то примерно такое.... правда до реализации не дошло.

(IMG:https://i.postimg.cc/brLLvwxD/e-Gfq-21w1u-I.jpg)


Код

On=@SkillSuccess
if <<argn>> < <skillclass.<argn>>
call f_return_skillgroup
tag.skillgain_<dlocal.group> += 1
doswitch <local.group> - 1
  sysmessage @88,3,0
enddo
endif

On=@SkillGain
  return 1

[FUNCTION f_return_skillgroup]
doswitch <argn>
    local.group= 1 //Alchemy //0
    local.group= 5 //Anatomy //1


Ну а дальше диалог какой-нибудь как на скрине.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
kklej
сообщение 23.1.2024, 17:02
Сообщение #3


******

Группа: Пользователи
Наличность: 14945
Пользователь №: 13.346



прив написал в аську
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Narayan
сообщение 23.1.2024, 17:26
Сообщение #4


**********

Гарант UoKit
Сообщений: 2.848
Регистрация: 28.3.2007
Группа: Супермодераторы
Наличность: 15548
Пользователь №: 9.591



Цитата(Sirocco @ 23.1.2024, 16:07) *

Да откуда тут вагон работы то?
Ну я делал что-то примерно такое.... правда до реализации не дошло.

(IMG:https://i.postimg.cc/brLLvwxD/e-Gfq-21w1u-I.jpg)
Код

On=@SkillSuccess
if <<argn>> < <skillclass.<argn>>
call f_return_skillgroup
tag.skillgain_<dlocal.group> += 1
doswitch <local.group> - 1
  sysmessage @88,3,0
enddo
endif

On=@SkillGain
  return 1

[FUNCTION f_return_skillgroup]
doswitch <argn>
    local.group= 1 //Alchemy //0
    local.group= 5 //Anatomy //1


Ну а дальше диалог какой-нибудь как на скрине.


Это чтобы группа навыков качалась, верно?

Сообщение отредактировал Narayan - 23.1.2024, 17:26


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 23.1.2024, 19:23
Сообщение #5


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15527
Пользователь №: 14.566
Возраст: 30



Да... там по группам начисляются очки... кол-во я никак не отрегулировал... просто +1.

а сам диалог надо отдельно делать.

Лично в моем диалоге группы по цветам различаются. и можно очки группы в скиллы переливать.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Narayan
сообщение 23.1.2024, 19:33
Сообщение #6


**********

Гарант UoKit
Сообщений: 2.848
Регистрация: 28.3.2007
Группа: Супермодераторы
Наличность: 15548
Пользователь №: 9.591



Цитата(Sirocco @ 23.1.2024, 19:23) *

Да... там по группам начисляются очки... кол-во я никак не отрегулировал... просто +1.

а сам диалог надо отдельно делать.

Лично в моем диалоге группы по цветам различаются. и можно очки группы в скиллы переливать.

Ага, но основная сложность - все скиллы перебрать, чтобы они давали опыт в соответствии с описанной логикой


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 23.1.2024, 19:43
Сообщение #7


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15527
Пользователь №: 14.566
Возраст: 30



Ну как бы для крафта есть свой триггер... и если там есть что посчитать... то всегда можно это посчитать.
Для других навыков аналогично надо писать ТЗ как что считать....
Доступ кстати прямо из этой функции - можно ввести какой-то коэффициент для разных навыков, возможно связать его как-то с уровнем навыка.

Так что это не сложность... просто время написать ТЗ.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 27.4.2024, 22:34
Designed by Nickostyle