Adding a new item has a lot of implications - redoing some GUI, some networking code ; plus art and core code.
It would also need a weight-list rebalancing, but changes there are incoming anyway once we'll have agreed how to tackle this (for reference my list of issues made at the request of Auria : http://pastebin.com/D1GhC2Xc).
So let's start : why does STK need a new item ?
Currently, only two positive items exists : the bubble-gum acting as a shield, and the zipper giving strong short speed boost.
There is one "neutral" item, the switch. The plunger is weak but is a bit positive and a bit negative so hard to classify.
All the other items involve attacking opponents : the cake, the bowling ball, the basket ball, the parachute, the swatter. There is a good diversity there.
So ; some more variation in positive effects would be appreciated. But that's not all.
Currently, the items do not fullfill properly their goal of helping a bit these in bad positions to catch up. It's a core goal - @auriamg agreed on this. A weight-list rebalancing might help a bit, but not much.
Except the parachute, all attacking items affect kart near you, so this doesn't help to truly catch up. The bubble gum is more defensive. So we get only the zipper for this. It's an item which isn't that strong and can only be used where it isn't too curvy ; so while fine, it isn't enough. A cake make you lose 3 time more time than a zipper will ever make you gain.
Now we established we need a new positive item (mainly given to those in bad positions), let's talk about its effect.
It needs to give more speed. We discussed and thinked about this, and all other ways are impractical.
In the discussions on the IRC, we got two main ideas : an item which makes the kart bigger, a bit faster and more resistant (like the mega-mushroom in MK) ; and a nitro-gum.
While I'm not against the first - I suggested it after all - if only one can be done I'd choose the latter.
And now I'll explain why.
First, how would it work exactly ?
It would be a blue bubble gum. It would work as the bubble-gum for the shield, but would have two added effect : increased max_speed (could be common with nitro (nitro-gum after all) or separate) and increased engine_power (I tested +30% which was a bit weak ; and +80% which was wonderful). The added effects disappear as soon as the shield disappear, letting a bubble-gum on the road behind.
Second, the art and the code specific to the item wouldn't be very hard to do. It took me 5 minutes to add these effects to the regular bubble gum ; separating things with a new one wouldn't be hard. No need to invent complicated things to make it work. The art could be probably mostly copied - changing the shield and icon colors.
Third, it feels great while playing. The effect is strong enough for you to really catch up, but since it's not as strong as the zipper you don't fear getting off-track too easily. The engine power boost also allow to reaccelerate very quickly after hitting a kart or a wall (which usually makes you lose 2-3 seconds), which is great.
The shield is very useful : between the bananas and all the thing other karts throw at you, it very often protects you from something which would have make you lose 2-3 seconds. But it's not excessively strong (like some kind of invulnerability would be) - and karts who attack you get to make your speed boost end, so it doesn't make those attack useless either.
All in all, it would be a great addition for STK. The recquired work is certainly worth it.
To transform the regular bubble-gum into a "nitro-gum" to get a feeling, simply add this to updateEnginePowerAndBrakes in kart.cpp :
- {l Code}: {l Select All Code}
if(m_attachment->getType()==Attachment::ATTACH_BUBBLEGUM_SHIELD)
{
engine_power*=1.8f;
m_max_speed->increaseMaxSpeed(MaxSpeed::MS_INCREASE_NITRO,
m_kart_properties->getNitroMaxSpeedIncrease(),
m_kart_properties->getNitroEngineForce(),
m_kart_properties->getNitroDuration(),
m_kart_properties->getNitroFadeOutTime());
}
And increase bubble-gum occurences in powerup.xml to get enough of them.