Writing the tutorial, it once again hits me how inconsistent Simutrans is in naming parameters. Most of the time, a parameter consisting of two words is just written as one word (eg. backimage) and since Simutrans doesn't care for case sensitivity in them, I usually see those written in CamelCase (eg. BackImage - each word starts with a capital letter). But there are some that use snake_case (eg. electricity_boost or has_snow, with underscores)
It's impossible by now to remove one of those two, as all kinds of dat-files would need to be rewritten. But I'm wondering if it might be beneficial if makeobj could just 'ignore' all underscores in parameters, just like it ignores uppercase letters (by turning them into lowercase), and we change all parameters with underscores to the same words without underscore internally. That is, make "has_snow" equal to "HasSnow" equal to "H_a_S_s_N_o_W", since makeobj would read them all just as "hassnow" anyway.
I know the benefit is minimal, but it just seems right to do it - a bit akin to translating German in the code. I only know how easy it would be to get makeobj to get rid of underscores and don't know how spread out the parameter definitions are in the code though.