0XMagic / OpenUpgrades

A revival of Uber Upgrades
GNU General Public License v3.0
0 stars 0 forks source link

Configs... #2

Open ReclusingRecluse opened 3 months ago

ReclusingRecluse commented 3 months ago

This is just from me looking at the general code and configs, the configs are straight up atrocious.

One main thing you want with and UU revival is to ensure any bloke can use it an configure it as they can with base UU. UU's config is very easy to edit and add to, you have to make it in a way where pretty much anyone can do it easily with easy to understand keyvalues in the config files.

You have to assume that the person downloading this is a complete idiot and has never seen a line of code in their life (basically most UU server owners and UU players in general). And anyone downloading this will assume the configing is similar to say 0.9.4 UU, you don't want to deviate from that structure too far to ensure that people will actually download this rather than 0.9.4.

Here's some of my main gripes (configs first):

weapon_filter: Shows a ton of weapon id indexes, you have to assume that the person using this has 0 idea about weapon IDs or classnames hence why this does not exist in the original UU.

weapon_filter_blacklist: I assume this is an indicator whether the blacklist for X upgrade is active and is probably needed for weapon_filter to work. Compared to how uu_list.txt was structured, it would add confusion to someone going in blind.

class_filter: Straight forward enough though someone going in would probably get confused.

disp_percent & disp_value: I assume disp_percent is whether or not the upgrade in the menu itself shows as a percentage or a whole number. disp_value, I couldn't really figure out what that means, maybe it's to show if the upgrade is positive or negative (I saw a plus sign in the code for it so maybe it does idk). Shows how confusing this would be to the average person.

rate: I assume this functions the same as increase_ratio in UU, renaming it could make it a lot easier for the average person to understand.

slot: Straight forward, though when comparing it to uu_lists, just not really needed.

Heal on hit: First 3 upgrades are a complete waste of money, any value below 3 for the attribute just rounds the actual health received to 3. (I've stated this before).

The entire structure: It's just not easy to read at all and takes some time to understand how it works exactly. Once again, you need to assume that the people downloading this are complete morons. It's one thing if it's private, you can make it as hard to read as you want since it's only for your eyes, but for something public, you need to spend the extra time to ensure any idiot (including me) can use it without having it feel like Adobe InDesign.

There's a reason why UU has it's configs in 5 separate text files: uu_attributes (stores all the upgrades), uu_list (stores which upgrades show up in the in-game menu), uu_weapons (stores all weapon classnames and their reference names for uu_list), uu_specialtweaks (self explanitory), and uu_translations (general translation file). It makes configing easy and straightforward. I can't say this enough, this needs to be stupidly easy for anyone (especially TF2 players who aren't known for having the highest IQ) to use.

Once again, this is written just from a glance at the code and config file. I've yet to test it in a server. Oh yea, using TF2utils would probably make your life easier as well.

0XMagic commented 3 months ago

I do 100% agree with how messy the configs look. In fact, it is not intended to be interacted with directly.

Instead the config file is generated by a python script which I plan to add the project at a later time. The python script is easy to read, make modifications, and search through. With the script, I will also include a detailed write-up on all the keys and their function.

As for heal on hit, oops I forgot.