Game
Asyre - A Fantasy Story
4 years ago

Levelup!


Currently writing the beginning of the leveling system. I'm not sure about all the formulas exactly yet, but it will be an exponential system. Most of the experience you will gain will be in the form of quests, with individual actions only providing a marginal amount of experience points. This allows me to ignore writing individual experience systems for each skill I want to add in, and instead add in a ton of skills, but have them all collectively pool into one "EXP" total.

This line of thought essentially makes classes over the long term irrelevant, seeing as you can just upgrade skills whenever you have an advancement available, instead of needing to use the specific skill to advance the specific skill. There are pros and cons to this. Classes are still important early on, as they can determine your initial stats and probable playstyle, but it also allows people the freedom to build their character as they see fit, instead of worrying about getting classlocked later in the game.

For anyone curious, this is what it looks like to level up 1 attribute, behind the scenes. The "level" class is held within a widget elsewhere, so ignore the fact that it looks like I'm trying to replace a non-existent class.

		
			Experience: <span class="exp"><<print $EXP>></span> / <span class="expleft"><<print $EXPUNTILADVANCE>></span>
<<if $EXP gte $EXPUNTILADVANCE>>\
<<replace ".level">>\
<<link "Advancement available!">>
<<dialog "Advancement">>\
<div class="textCenter">
Attribute Points: <span id="attributepoints">''<<print $cAttributePoints>>''</span>

Strength: <span id="stats-str">''<<print $cAttributeStrength>>''</span>
<<button "[+]">>\
<<if $cAttributePoints gt 0>>\
<<set $cAttributePoints -= 1>>\
<<set $cAttributeStrength += 1>>\
<<replace "#stats-str">>''<<print $cAttributeStrength>>''<</replace>>\
<<replace "#attributepoints">>''<<print $cAttributePoints>>''<</replace>>\
<</if>>\
<<if $cAttributeStrength gt _cAttributeStrength + 5>>\
<<set $cAttributeStrength to $cAttributeStrength - 1>>\
<<set $cAttributePoints += 1>>\
<<notify 5s>>$advancementError<</notify>>\
<<if settings.allowUIEffects>><<audio "success" volume 0.2 play>><</if>>\
<<replace "#stats-str">>''<<print $cAttributeStrength>>''<</replace>>\
<<replace "#attributepoints">>''<<print $cAttributePoints>>''<</replace>>\\
<</if>>
<<if $cAttributeStrength gt _cAttributeStrength>>\
<<replace "#minusbtnstr">>\
| <<button "[-]">>\
<<if $cAttributeStrength gt 1>>\
<<set $cAttributePoints += 1>>\
<<set $cAttributeStrength -= 1>>\
<<replace "#stats-str">>''<<print $cAttributeStrength>>''<</replace>>\
<<replace "#attributepoints">>''<<print $cAttributePoints>>''<</replace>>\
<</if>>\
<<if $cAttributeStrength lte _cAttributeStrength>>\
<<replace "#minusbtnstr">><</replace>>\
<</if>>\
<</button>>\
<</replace>>\
<</if>>\
<</button>> \
<span id="minusbtnstr"></span>\
</div>
<<onopen>>
<<set $cAttributePoints to 10>>
<<set $advancementError to "You can only spend 5 points on each attribute.">>
<<set _cAttributeStrength to $cAttributeStrength>>
		
	

It's pretty much a giant shit show of just making sure each value scales properly. Then all that's left is to copy and paste that 5 more times for each attribute, and adjust the proper variable names. Oh, and I need to do that for each skill, as long as the math work for those as well.



0 comments

Loading...

Next up

Just as Pecaminosa's musicians #improvise this rendition of #LittleSunflower 🌻, so do we improvise with this post you're reading. 😂

What's coming out of your own improvs? 🤔

#Pecaminosa | #IndieDev | #OST | #Jazz

So

i may or may not make an full art of some person or i may just leave this like that-

Finished a project I've been working on over the last few days!

Modeled and textured in Blender.

#3dart #lowpoly #npbr #fantasy #hut

I have added rewards for quests so that villagers can give you something in return for your hard work helping them. 🥳

I want to know - what's your favourite quest reward?

So here's the first of the zodiac signs i will make for the next weeks.

One of the most critical update for Sunblaze demo. Now you are able to pet a cat! Finally!

A Shiny Mega Gengar 🌟 For @ManutkArt 's #ThreeColorsChallenge!

Hi everyone! I started to create some environment props for my new video game, here is a cozy house in the forest. I'm planning to switch from Unity to Unreal... Let's see what new challenges I have to face. Made in Blender and Substance Painter.

Shuiro Haname. #Commission

Commission for @ShuHaname

Szayel Aporro Granz - Bleach