Skill Leveling System Improved Mod

Show off your mod creations or just a work in progress.
User avatar
Magicono43
Posts: 1139
Joined: Tue Nov 06, 2018 7:06 am

Skill Leveling System Improved Mod

Post by Magicono43 »

Since I finished working on my previous "Limited Gold Shops" mod for the time being until it can be officially released. I have been working on my next mod that is intended to be somewhat of an overhaul, but is really just an improved version of the vanilla skill system, at least the leveling side of it.

The first thing that I wanted to get most of all was to reduce the unnecessary tedium for many of the skills that are generally trained in uninteresting and grindy ways. The main examples being Mercantile and the schools of Magic, also ones that take no active effort or thought to level and are nearly impossible to train due to this, such as Medical past a point.

Skill Advancement Changes
So with this mod, you no longer have to individually sell each item in a separate transaction to maximize your mercantile skill gains, instead it counts the "xp" you get for this skill based on the amount of items in the "basket" when you finalize a transaction, or by how much the transaction was valued at in total, whichever one is higher in the final transaction. You also gain mercantile skill when paying for training services.

For the Medical skill, now the amount of "xp" you get is not just a flat 1 per hour of rest, but is increased the less your total health % is currently at. So the more hurt you are while resting, the more xp you will get per hour of rest. So at say 10% health, you will get 5-6 points of xp per hour, until you hit the next threshold of 15% increments. So you learn more from treating your wounds in essence.

Now this is one of the bigger changes I felt was necessary, and that's in how the magic schools are trained. Now your will get "xp" depending on the cost of the individual spell you cast, instead of being rewarded for casting dozens of super low cost can-trip spells, you will now get points proportional to this. So if a spell of 5 mana cost would give 1 xp, a spell of 10 mana will give 2 and it all goes up in increments of 5, so neither training style is "punished", but tedium is no longer required for effective training. If a spell goes over the 300 mana cost threshold for one cast, these increments will go by 3s instead, so you would be rewarded for casting crazy expensive spells slightly, but that requires some preparation. So cast those big mana cost spells while dungeon crawling without worry of being training inefficient, just play and enjoy instead of be forced to grind in an inn.

I also decided to improve how some of the other skills advance as well to make more sense and not just require grindy methods. Lock-picking now gets more "xp" from successfully picking a lock, and the amount is increased based on the difficulty level of the lock. Pick-pocketing also had successful attempts give more "xp", as well as move "xp" from shop-lifting multiple items, similar to the basket idea from the Mercantile changes. When an enemy that is pacified with their respective language skill, there is also an increased "xp" amount from a successful attempt. Those were all the currently "interesting" changes to the skill leveling, many of the other skills were also increased slightly to reduce grindiness at higher skill levels, only slightly though.

"Governing Attribute" Implementation
viewtopic.php?f=4&t=3812
So I realized while making this mod, that something I had thought had an effect on gameplay actually did nothing like I had expected. That being the "Governing Attributes" that all skills have attached to them. I was under the fall assumption that these attributes made leveling easier or harder depending on the attributes of the player, but they actually did nothing in practice. So I decided to change this.

Now the governing attribute does what I had initially thought they did, for example. The Restoration magic school has willpower as a GA, so now if your permanent willpower score (unbuffed) is below 50, it will take longer for the restoration skill to level, and vise-versa when it is above 50. Luck also has an effect in the same way, but it effects ALL skills, not just ones with it as their GA (which there are none). So if you dump a stat at character creation, expect skills with that GA to level by a fair amount, and obviously vise-versa as well.

Trainers Reworked
I had always thought the trainers in the game were a little bit gimped for no reason and not extremely logical in how the costs for training worked. So I essentially reworked the trainer system as much as I felt was necessary without making it completely different by all regards.

First off, the price of training is now NO LONGER based on the level of the player, but instead on a simple formula that increases the cost of training based on the current level of the skill being trained, the quality score of the guildhall the trainer is located in, and even gets haggled down based on the players mercantile skill, just like a normal trade transaction, also 4x more or less based on if you are a member or not of said faction, like usual. So now instead of being level 20 and paying 2000 gold to train your orcish skill to level 5, it will now maybe cost 120 gold to train that skill to that level no matter what your character level is, all depending on those previously mentioned variables.

With the theme of guildhall quality having some effect on price and such, I also made it so training at different quality halls will also increase or decrease the effectiveness of each session. So a high quality trainer will give more effective training sessions than a low quality one. Also, luck has both a positive or negative effect on the amount trained as well, with the base-line luck of 50 having 0 effect on this.

Another big aspect that was changed was the horribly low hard-limit that the player was allowed to use a trainer for a specific skill, this in vanilla being only 50 maximum. Now this has been reworked to instead be based on the quality of the guildhall in question. The lowest quality guildhalls only giving up to level 35 training (less skilled trainers and such), and the highest quality guildhalls giving up to a "hard-cap" of 85 (masters are not really only bookworms after all.)

The final change being that the skill you train now actually effects your condition after the lesson. In vanilla your fatigue is just reduced by the equivalent to 3 hours of standing still. I decided to make this have a bit more variety and logic, in my opinion. Now whatever gets reduced is based on the skill trained. Purely academic skills will only reduce fatigue, but not by a large amount, magical skill will reduce fatigue slightly more and also drain some of your current magic pool (how else you going to practice?) Taxing physical skills such as running, jumping, swimming, and such will drain your fatigue significantly, and combat related skills that you would likely be doing some sort of potentially dangerous sparring will drain both fatigue AND health (but don't worry, your teacher will never kill you, on purpose.)

Also one other minor change, decided to take the "training cooldown" down from 9 hours to instead 6, which I think is fair enough.

Skill Current XP Tracking
So I got this request from somebody on the Discord channel and decided to throw it in here as well, since it made sense. I think it's fairly self explanatory with pictures, but it just adds a "Current XP / Required XP" ticker onto the character sheet screen:
Capture.JPG
Capture.JPG (42.64 KiB) Viewed 7977 times
Capture1.JPG
Capture1.JPG (96.68 KiB) Viewed 7977 times

WIP Live Skill Advancement
This was more of an experimental thing to see what it would be like if skills leveled like they did in later Elder Scrolls games, where as soon as you go over the threshold for a particular skill it would increase, no rest required. Well I did this, and found it is massively OP, lol. So until I make some big number changes to this, I currently have it commented out, but it is there and I might make it a potential option in the final release.

With this in mind I decided to reduce the required time between rest to check for skill advancements, so now instead of having to rest at least 6 hours to have your skills checked, it will only take 4.

Other Info
So while all of these features are currently functional in a "none modded" environment, I still need to actually do all of the "Back-end" work to get this into a properly .dfmod state that can work with the live-build and be shared as a normal mod. For now I currently don't know how to do this for most of the sections of code that I need, so i'm leaving this on the back-burner for when I do figure it out, or somebody with more experience on the back-end modding part knows how I could do this, or some other form of mod support is released in a live build that would facilitate for these alterations to work as a mod.

So until that time, i'm going to start working on my next mod, but I will make the Github repo avaliable for those that want to play with this in a Unity environment, make alterations themselves, or just look at the code, it's not very complex in its current form.

Here are the repos:
https://github.com/magicono43/DFU-Mod_S ... g-Improved
https://github.com/magicono43/DFU-Unity ... xperiments

Obviously I hope to eventually release this as a full mod, but don't currently have the knowledge base to do it properly, but that time will come eventually! Thanks for reading.

User avatar
billyloist
Posts: 48
Joined: Thu Jul 30, 2020 2:07 am

Re: Skill Leveling System Improved Mod

Post by billyloist »

Wow, this is exactly what this game needs in my opinion. Some skills are incredibly tedious to level up, for example stealth, medical or dodge. And all those language skills? I think most of them should already have enough exp to level up just from one successful usage at low levels because they work so rarely (without the Tongues spell).
I'm eagerly waiting for the release, hopefully soon!
By the way, why do you think "live" skill level up would be too OP?

User avatar
Magicono43
Posts: 1139
Joined: Tue Nov 06, 2018 7:06 am

Re: Skill Leveling System Improved Mod

Post by Magicono43 »

billyloist wrote: Thu Jul 30, 2020 2:15 am Wow, this is exactly what this game needs in my opinion. Some skills are incredibly tedious to level up, for example stealth, medical or dodge. And all those language skills? I think most of them should already have enough exp to level up just from one successful usage at low levels because they work so rarely (without the Tongues spell).
I'm eagerly waiting for the release, hopefully soon!
By the way, why do you think "live" skill level up would be too OP?
Well I think the "live" skill leveling seemed a bit OP from my short test just because of how insanely quickly the skills leveled up when you did not require to rest to actually level said skill. However, I did think that this could still be viable and not crazy OP with some tweaking, likely just multiplying some of the frequently tallied skills such as running and combat related ones by a fairly large amount when "live" skill leveling would be active.

Yes, I would love to release this as a full mod, but i'm not sure when it will become a thing as I would need to make a decent few changes to a few base-code scripts to be able to do what I have shown in this WIP as a live and usable mod. So it will be a thing eventually, I can assure you that, but i'm just not 100% exactly when that will be, hopefully sooner rather than later though!

User avatar
billyloist
Posts: 48
Joined: Thu Jul 30, 2020 2:07 am

Re: Skill Leveling System Improved Mod

Post by billyloist »

Yeah, that makes sense. Perhaps using Morrowind's formulas as how quickly they level up for some of those would be a wise idea then.

User avatar
Ralzar
Posts: 2211
Joined: Mon Oct 07, 2019 4:11 pm
Location: Norway

Re: Skill Leveling System Improved Mod

Post by Ralzar »

This will be a great addition to the mods designed to fix Daggerfall. So, name?

Non-Tedious Training?

User avatar
polarstar
Posts: 34
Joined: Tue Dec 03, 2019 4:51 pm

Re: Skill Leveling System Improved Mod

Post by polarstar »

Ralzar wrote: Thu Jul 30, 2020 8:54 am This will be a great addition to the mods designed to fix Daggerfall. So, name?

Non-Tedious Training?
*Magicono's Non-Tedious Training

User avatar
Magicono43
Posts: 1139
Joined: Tue Nov 06, 2018 7:06 am

Re: Skill Leveling System Improved Mod

Post by Magicono43 »

I'll probably just go with my normal bland but practical naming convention, "Skill Advancement Improved" or something like that.

User avatar
billyloist
Posts: 48
Joined: Thu Jul 30, 2020 2:07 am

Re: Skill Leveling System Improved Mod

Post by billyloist »

So I was grinding my skills today a whole bunch in Daggerfall and couldn't stop thinking about the ability to just SEE your skill training progression that would make the entire process so much better.

User avatar
Magicono43
Posts: 1139
Joined: Tue Nov 06, 2018 7:06 am

Re: Skill Leveling System Improved Mod

Post by Magicono43 »

billyloist wrote: Wed Aug 05, 2020 7:00 am So I was grinding my skills today a whole bunch in Daggerfall and couldn't stop thinking about the ability to just SEE your skill training progression that would make the entire process so much better.
Yeah, honestly I think this would be a nice "advanced option" for the default DFU client, but I know IK wants to avoid overly bloating up that options menu with a million different things.

User avatar
billyloist
Posts: 48
Joined: Thu Jul 30, 2020 2:07 am

Re: Skill Leveling System Improved Mod

Post by billyloist »

Recently I was asking whether it's possible to implement a custom value for the skill cap in the Level Up Adjuster topic, and apparently it requires a pretty extensive rewrite of the original code so I can see why this mod is taking so long.
I didn't find a thread for suggestions, so might as well say it here. I was thinking how to mark boosted/buffed skills that were fortified with an effect. Maybe a light tint of green? Marking them with the default color will make it look like they just leveled up.

Post Reply