• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

I'm making an A17 Progression Overhaul Mod: 'Modlet' or rewrite?

2rn8s2.jpg A little meme I made to represent my feelings on A17 and it's bull♥♥♥♥.

Alright so I'm going to skip introductions and get into the meat of this. I'm about to create a complete overhaul of A17 progression to basically mimic A16.4 progression, since A17's progression (or lack thereof) is a huge issue in playability at the moment. I'm going to make it for A17.0, not A17.1, because 17.1 is just bugged to hell.

But I digress; I'm trying to strike a balance between future mod support and ease on my part, as the writer. Should I continue as I'm going, using xpath to remove, add, and set values as I see fit, potentially writing and debugging thousands of lines of code, or simply edit and rewrite the progression.xml file and debug a couple hundred lines of code? Looking for all opinions/suggestions.

I think my main issue with how I'm doing it now is xpath's way of merging mods together: mods written for the vanilla A17.0 progression could clash and potentially muck up any core features of my mod, and that wouldn't be nice, obviously. Share your thoughts on this!

Anyone who would like to give their two cents is encouraged to do so, such as features you liked from previous version's progression mechanics that should be implemented in this mod, along with anything on how I should go about making it. I'll do all the heavy lifting, just slide some ideas my way and I'll see if I can get them to work.

As a final note, If I can get a rewrite working, and have other mods use xpath to edit my own mod, that would work. That's in the back of my mind for the long-run compatibility. Let me know what you think.

Thanks for stopping by!

Ancient Aliens Guy

 
modlet for many reasons using xpath. ease of making simple changes easier for the end user as well. Vanilla game files left untouched if modlet removed

 
I think a lot of people would really love to have 16.4 back with some of the great new functions and features of 17.x. Especially the ActionSkills auto-leveling by doing. I've completely rewritten the progression.xml already to try and bring back a lot of it but there are many things that don't seem to be possible anymore due to hard coded changes. I am not done yet and still trying to accomplish many things but I currently believe that it is a combination of no longer possible with simple 'xpath'ing and I don't know how to do everything yet.

In regard to your question, my solution was essentially both; to redo the entire thing AND to use xpath. I just <set xpath="/progression">all my stuff here</set> and reworked everything else to coincide with the changes made. It's a major overhaul.

Your concerns about them coming out with a 'new version' and "breaking" the mod, is highly possible and of great concern due to the amount of work it takes to do a major overhaul. However, if you're using xpath, it's far easier to make the changes to your own XML than it is the Vanilla files.

 
It depends on your understanding on xml.

If you are skilled to some extent, modlet helps you a lot. But if not, it'll mess you up.

Modlet is pretty awesome. Easy to maintain between update, powerful expression to edit large amount of xml with a few line. Here is one of them. Following code remove any requirements for player level of any perk/attribute, with just 1 line.

This is complex and difficult case, so you don't need to understand right now. But this will show how modlet is powerful and helpful.

progression.xml

Code:
<set xpath="/*/*/*//*[local-name()='level_requirements' or local-name()='requirement'][@name='PlayerLevel']/@value">1</set>
However, expression for modlet itself has something needed to learn. So, it'll drastically slow you down without some knowledge on xml.

Easy to start is edit xml directly. Easy at the end is modlet.

But in both case, you need to learn how to edit xml by hand at first.

 
Back
Top