Make tags case insensitive
Equally named tags are currently treated as entirely different, if the capitalization on any letter between them is different. For example "enemy action 1" is a totally different tag than "enemy Action 1".
This can become confusing when having lots or tags, or when referencing tags outside of the current asset. It's also pretty difficult to troubleshoot when you're experiencing logic problems.
The solution could be to have all tags with the initial capitalized letter (for readability) and then completely ignore, or straight up disallow, capitalization of every other letter. This would make tag naming more straighforward and standardized, avoiding unnecessary problems.
-
If any existing creations rely on case sensitivity, turning it off would break them. So this would need to be an option for the creator to choose whether tags are case sensitive, and for older creations, the default would need to be "case sensitive".
-
I dont think MM need to change anything, as this is standard across most programming languages. If you think of Dreams as an entry level program for wannabe developers it is a good idea to encourage best practice. In most programming languages case sensitivity is an important factor when naming functions and variables as computers recognise letters by number codes and an a and an A are different numbers. It is always good practice to keep things consistent when programming. You can follow different conventions such as:
Snakecase = variable_one , variable_two Everything is lower case - words separated with an underscore
PascalCase = VariableOne, VariableTwo First letter of each word is always capitalised
Camelcase = variableOne, variableTwo First letter of every word is capitalised except the first one
other options are all CAPITALISED , hyphens (variable-one)
Stick with one case type throughout and you will never have issues with case sensitivity. Your variables and naming should be consistent.
Using numbers within variable names is not generally recommended because there could be confusion between names and values. So use variableOne and not variable1 . Better still uses names that will help you identify what it is used for such as variable_eyecolor rather than variable_one -
My observation is more from a non-tech user perspective, especially in cases when, for example, you play both on the console (which capitalizes names by default) and remote play (which doesn') and you might miss this small difference. If you're not careful it can be difficult to track down :)
But yeah, the both of you ultimately are right, it's both best practice AND it would destroy already created dreams, so that's it i guess X)
Please sign in to leave a comment.