Long post -- if short on time, see the bottom of the post for a summaryNow, I have a feeling this thread is partly due to some of my recent changes...
It's a good point that unused features are dangerous. Normally, I strongly desire to remove unused code. However, one major issue that hasn't been pointed out so far is that these features require mods to use them, and it's difficult to say whether a mod will use a feature or not. In other words, if we implement some feature, will a modder use it? This is hard to say. I don't think we should limit ourselves to features that modders request. After all, people certainly have used features that were unsolicited. It's very easy to not realize that you could incorporate some feature until it already exists.
Back when I was actively making mods, I got a lot of ideas by just looking through GAE's feature list. I realized a number of places where I could use features in interesting ways. I'm pretty sure some of those ideas wouldn't have come up if the feature was not already in the engine. Long story short: possibilities breed creation.
Regarding the issue of content, I'd like to point out that I think the MegaPack is rather disappointing in terms of using features. I think the MegaPack has no overarching goal and nobody has any intention of actively developing it. We did have a topic some time back about revamping a new MegaPack, and it met a great deal of discussion. Ultimately, though, it fell short because (1) not enough modder interest (I've lost interest in modeling and texturing, and prefer to code) and (2) no guarantee of working out (it was very ambitious and there never was any guarantee it would even replace the MegaPack).
So, really, why don't we utilize features in the MegaPack (the kinds that don't require art, anyway)? Are we too scared of breaking the existing balance? For example, I'd like to again propose that we utilize the start-ep change to allow all units to start with full EP (rather than have to regenerate their EP). I propose we use more attack boosts (mostly on the late game units). Last time I checked, only the Roman General has an attack boost. Why not make some unit shoot its projectiles in groups of three (multiple projectiles)? Create an upgrade that boosts attack speed (I created a pull request for this, but not sure if this one is merged, yet)? Allow looting of resources from buildings (helps subsidize the extreme costs of attacking a base)?
In other words, why don't we actually use some of our features?With that said, I do worry that being very restrictive about accepting features
will hurt freelance contributions. When I started creating small features, I purposely cherry picked changes that I believed were very doable. After all, a new system (especially one so terrible documented as MG is) is a huge barrier. You can't do complicated changes right off the bat. Small, simple changes are a necessity for someone unfamiliar with the system (and this applies no matter how good of a programmer they are).
I spent quite a bit of time going through the feature requests board (and wish we could use a better medium for tracking feature requests and bugs). I did not see a whole lot of choices for features that could be doable by someone still learning the engine. I suspect this may be in part due to MG's small size. There's just not a whole lot of tiny little changes needed (programs like Firefox tend to have thousands of little issues which aren't severe enough for anyone to have bothered dealing with, but are very simple to fix).
Another note is that our documentation sucks. It's very difficult to use features when there's no single, organized place to find details about the features. The wiki is the place for this. Unfortunately, it's very outdated. Admittedly, this is partly my fault -- I keep telling myself to update the site, but never have the time or bother. Also, errors on the wiki can go unnoticed for a long time. Just last week, I fixed a big mistake on the attack-boost page that went unnoticed for a year and a half! And attack-boosts are one of MG's biggest features.
Finally, I'd like to point out that our modding is at what may be an all time low. There seems to be very few active modders at the moment. I suspect that this will hinder adoption of new features.
Quick summary of this post:
- Modders may use features simply because they already exist
- The MegaPack isn't using new MG features despite so many possibilities!
- Developers unfamiliar with the engine need simple features to implement while they learn the engine
- Our documentation blows
- Active mod development is very quiet right now -- few people to utilize features