Power Customization F.A.Q.


1_800_Spines

 

Posted

You know, you could always get some of the players to do the work...

I know I'd throw in some of my time to changing values if it meant Power Customization.

Just a thought


 

Posted

[ QUOTE ]
[ QUOTE ]
Q: What is power customization?

[/ QUOTE ]

A: Good quesiton, depends on who you ask. Power Customization could mean:
<ul type="square"> [*]Being able to change the hue or color of your power's FX[*]Being able to change the way your FX look[*]Being able to change what your power actually does. Ie, more damage but less accuracy.[*]Being able to modify or add secondary effects to your power. Adding Fire damage to your broadswords[*]Being able to change the appearance of henchmen or pets[*]Being able to change your appearance while form shifted from powers such as Granite Armor.[*]Being able to change the animations related to your power[*]Being able to change the sound related to your power[*]Being able to change the name of your power[*]Any or all of the above.[/list]
When we talk about power customization, we're generally talking about the first couple of items...being able to change your power's FX in some way.

[ QUOTE ]
Q: What's so damn hard about power customization?

[/ QUOTE ]

A: The pipeline from power to effects just wasn't designed to be flexible. The powers designer creates a power def. This def defines all of the things associated with a power. What it's called, how much endurance it costs, whether it's a click, toggle, or auto power, its range, radius, etc. Power defs also contain a series of attributes such as doing this much smashing damage and this much energy damage. Power defs are softcoded, but they can't be changed on the fly or vary between one player and another. Power defs also call continuing FX on specific attributes. Ie, play the FX script for stone cages on the Hold attribute. So if the target is actually held, it plays the effect...otherwise it doesn't play anything. This is also softcoded as part of the power def and can't be change dynamically. Nothing related to power defs are stored on individual characters.

Power defs also point to another file called a PFX. This file contains a series of things that happen on events. The first half deals with animations. Play these animation bits when the power is activated. Play these when the power hits someone. This animation takes X amount of time before the damage should actually happen and takes Y amount of time before another power can be used (ie activation time). The 2nd part deals with the effects in a similar way. Play this FX script when the power activates. Play that FX script on hit. PFX scripts are also softcoded and can't be changed on the fly, yadda yadda yadda. These are also not stored on individual characters.

The FX scripts are a series of events and particle emitters. The color of particles are part of the particle scripts set as RGB values. Particles CAN inherit RGB values from the player, but they have to be attached directly to a costume node to do so. Also can't be changed on the fly, also not stored on characters.

So all of the things that determine what effects plays, when they play, where they play, and what color they are are all softcoded. They're in one location, shared by all players with the same power, and can't be changed dynamically or stored individually on each player.

[ QUOTE ]
Q: So how come weapon customization works...what's the difference between it and power customization?

[/ QUOTE ]

A: Weapon models used to be called through the PFX scripts as an activation effects script. Every single PFX for every power in a weapon set calls the exact same activation effect. It's in fact one of the things the game uses to determine whether or not you already have your weapon out. What we did for weapons was we removed the weapon from the common activation effects in the PFX scripts and stuck it on the player as a costume piece. That gets us an always visible weapon that can be swapped out for other costume pieces (ie weapons), color tinted, etc. Unfortunately, we don't want the weapon always visible, so the next clever bit was we stuck it on the player as an animated entity. Weapons are essentially the same thing as wings, or the crab spider’s backpack, or Black Scorpions tail. They have their own sequencer that says, “Play this move when you get these animation bits”'. Animated entities attached to the player models inherit those animation bits from the player model it's attached to. So when you use a power like Slash, the PFX says 'set these mode bits on the player'. The animated entity custom weapon sword inherits those mode bits and starts playing the move where it's visible. While the player is in weapon combat mode, the sword is also in weapon combat mode and is visible. When the player gets out of weapon combat mode and goes into regular combat mode or back into the ready state...the weapon model goes into its default ready mode (it only has 2 modes...weapon combat, and ready)...where it's flagged to not draw. Perfect. Customizable weapons for everyone.

That concept can't really work for anything else...not completely anyway. For everything else that's not a weapon, ever power points to a different PFX which all use different attack effects, activation effects, hit effects, etc. Each PFX in a non weapon powerset generally doesn't have a lot in common with any of the other power's PFXs. So we can't just take one thing out that's shared by everything and stick it on the player as a costume. There are some exceptions to that. We could do it for some things, like the spines that come out of your hands for Spines or the red(pink) pom-poms of Energy Melee...but that's about it.

Now, that whole concept can be extended to do a bit more. It should theoretically be possible to move all of the attack effects and activation effects from the various PFX in a powerset into the sequencer for a null costume 'weapon' for the other powersets. So for example, fire blast would get an invisible 'weapon' model as a costume piece. That costume piece is an animated entity and it inherits all of the anim bits from the player. So when it gets the bits to play the Flares animation, the sequencer move for the 'weapon' would play the attack/activation FX for Flares. This gets over most of the hurdles for power customization. It's attaching effects to a costume node so the effects can inherit the costume node's color...similar to how auras are color tint-able. And it should capable of playing any effects that happen on or from the player. Glowy energy melee hands, fireballs that you hurl, lasers that come out of your eyes...all that stuff.

What it can't do, is play effects on anyone else. The powers system determines if a power hits or not. There's no way for something on your player model to know that you've actually hit anything...no bits for it to inherit and trigger the right animation (hit anim bits play on the target)...no way to know where to put the FX if it could be triggered. Same thing with continuing effects. The power system keeps track of when the attributes are true or not, whether or not to play the continuing effect, what effects script to play, and what to play it on...you, the enemy, a bunch of enemies, your team...whatever. That information doesn't go to the player. So attack effects and activation effects...we could do similar to custom weapons. But hit effects and continuing effects, we can't.

Weapon customization did open up some avenues of exploration and got us thinking more outside the box, but ultimately we found that specific pathway to be a dead end. There's just no way to intercept hit or continuing effects, so every powerset would have some sort of disjointed half customized, half standard look. That's just not acceptable for us, so the only solution is to pursue some other avenue that can handle full customization of every effect associated with a power.

All of that, is stage one of power customization. Figuring out how to retool the system so it can actually work. That's the part that involves writing the new code and making the necessary changes to all of the player power defs and/or PFX to support it.

Stage 2 is a massive overhaul of every single effects script used by player powers that we're going to customize. Right now, the colors for the various effects are softcoded into the particle emitter scripts. Most of our particle emitters use grayscale textures that are tinted to an RGB value through the particle script. In order for a particle to inherit the tint from an outside source (currently only from a costume node it's attached to), it has to be set to red. So 255,0,0 as an RGB value means that particle is going to inherit 100% of the costume node’s RGB color. The more white a particle's RGB value is the less color it inherits. Most basic example of this would be the effects for Energy Blast powers. Those are all tinted various colors, from blue to white. All of those particle scripts would have to have their RGB values shifted to red instead...So there would be a pretty big chunk of work required to 1) tracking down, collating, and duplicating all of the FX and particles scripts currently used by powers 2) change all of the RGB values used by all of the particle scripts so that they can inherit the color from an outside source.

On top of that, we also have some particle scripts that use pre-colored particle textures. Dark Miasma is a good example of that. We also use geometry in some of our FX scripts, and most of them use some sort of pre-colored texture So things like the bubble for Force Fields, that teal blue-green is the color of the texture that's on that sphere. Those particles and FX geometry would have to have new grayscale textures made for them and then they would need to duped and set up to use color tinting.

Stage 2 isn't difficult work, it's just a ton of it. There are tens of thousands of FX and particle scripts that would need to be tracked down, duplicated, and modified.

Stage 3 is hooking all this up into some sort of system or UI to allow you guys as players to change your fireballs from red-orange to green. Most logical place for that is the costume editor, probably something similar to how you currently deal with auras or custom weapons. Other ideas involve special color enhancements that you can slot into powers, console commands that you could type in, options set in the graphics menu, etc. Those are all implementation ideas...probably the easiest step of the whole process.

Can it be done? Sure. Given enough time almost anything can be done. But is it more important to do than all of the various other things that can also be done in the same amount of time? That's the step where power customization as a feature has repeatedly fallen off the list and pushed back to the next issue. We still continue to discuss it, trying to figure out some way to do it in a way that won't require as much new code, or won't require so much time from an FX artist to make it happen.

[ QUOTE ]
Q: Why not make a version for each power that you can chose, and then assign a pre-colored FX script to those. Red Flares, Blue Flares, Green Flares, etc?

[/ QUOTE ]

A: Duplicating powers and PFX in that way makes it very difficult to maintain those powers. We did this for the prestige sprints and it certainly can work, but if we were to do that for every player power then that's a huge amount of duplicate data just to have the visuals changed. The likelihood of bugs related to powers would increase exponentially. Every time Castle would go in to fix a bug with Flares, he'd have to fix that bug for every 'color' version of Flares.

It’s also a ton more work than being able to just take the current FX/particle scripts, dupe them one time, and set them to a common tint-able ready color. If we had to manually tint variants for every FX script then it’s a ridiculous amount of work.

It's also limiting the options for players. What if the shade of yellow we pick isn't the exact shade of yellow-orange, or yellow-green that you were really hoping for. Even sticking to Red, Orange, Yellow, Blue, Green, Violet, White, and Black would be duplicating the power defs for every player power 8 times. And would you guys really be happy with such a limited set of options?

So, it’s a ton more work for us, exponentially more upkeep problems for Castle, and less options for you guys. Not going to do this …even if it does work.

[ QUOTE ]
Q: Why not make enhancements that add color or change the color of your powers?

[/ QUOTE ]

A: Enhancements won't just magically make color tinting happen. Something like this is more of an implementation suggestion, or how a player might actually go about changing the color of their power effects after power effects can actually be changed.

[ QUOTE ]
Q: We get that it would take a long time to rebuild all of the powersets to be customizeable...but could new powersets be built so that they are customizeable from the start?

[/ QUOTE ]
A: New powersets could be easily be built specifically for color tinting, but we still currently lack the system to take advantage of that.

[ QUOTE ]
Q: What about the hammer from Stone Melee, or the swords for Ice Melee and Fire Melee? Could those be made into custom weapons too?

[/ QUOTE ]

A: Technically, yes...they could. Still, I think we'd prefer to hold off on these particular powers until we can deal with being able to customize the whole powerset. Otherwise we could paint ourselves into a corner by making the elemental weapons customizeable and then not being able to make the rest of the power FX customizeable because of that.

[/ QUOTE ]

Thanks for posting that it all makes perfect sense. It makes all of the obstacles much more clear.

Now, you've got about 18 months to fix it before the new kid on the block starts kicking your face in. Good luck.


 

Posted

Thank you BAB. This will hopefully clarify the reason PC hasn't been done already to more people.

However, I have to wonder about the codebase of CoX's power system based on your description of the problems.

It sounds like the original pre-alpha code (back when there weren't powersets, just powers) wasn't scrapped, but used as the base for the re-design, and thus the powers weren't designed in a true OOP architecture. To wit:

BasePower()
defines damage/buff/debuff/heal/def/res/mez values, and the accessors.

PFXSelf()
defines effect a power has on a player or team

PFXOther()
defines effect on target

BlastPower() : BasePower()
Defines powers that 'shoot' at an enemy, inheriting &amp; overriding where necessary

Levitate() : BlastPower(), PFXSelf(), PFXOther()
Defines specifics to levitate, and assigns the FX to the power.
By inheriting the FX &amp; BlastPower classes, can override where needed.

Now, this is highly simplified....and there are a lot of other ways to separate out the OOP elements.

But somewhere in the FX class there would be data loaded from file/DB about color, texture, geometry, duration, animation, etc.
Now adding customization simply becomes an override function and a player data lookup for those elements customized (any not customized remain at default values).

Now, completely re-writing the architecture for the power system is obviously a major undertaking (it is, after all, the heart of the game.) But that isn't to say it couldn't be done over time, based on a frozen build (say, I12) and worked on sparingly over several issues, and incorporating fixes/changes from each issue when applicable.

I'd have been happy to work on it, but the NCSoft programming test I got when I applied was borderline ridiculous. I've been a software engineer for 8 years.....and I personally know plenty of PhD's in computer science that couldn't have completed it in the time allotted. And I'm betting quite a few of the current devs couldn't either (pohsyb, maybe....but he's a coding mutant.) If all the applicants got that same test I did, NCSoft isn't going to be hiring many people anytime soon.....


CuppaJo: **waves wand - you are mesmerized by the shiney bouncing Positron**

HypnotizerZero, Psyche-Delia, Twilight Samurai, Burning Rubber, Ignitrode & more...on Virtue.

AMD x2 4600+/7950GTKO/2Gb PC6400/Win2kPro

 

Posted

No, bad! You do not quote a 2 page post for a three-line response!


Issue 16 made me feel like this.
Warning: This poster likes to play Devil's Advocate.

 

Posted

Thanks for the detailed explaination BaB.

To me, Power Customization would be a very nice addition to this game and I would like to see it implemented at some point.

It is not a deal breaker for me though - I am just as fine without it.

But with the announced genre competition that will supposedly have Power Customization from the start, I do hope that a long range plan is in place to make this a reality in CoH/V as well (preferrably sooner than the competitions release date).


Mr E-Man ~ Mr E-Villain
XBL GamerTag: il Radd

 

Posted

[ QUOTE ]
Cause once you figure out how to make every power's color tintable so you can have green energy blasts but black energy fists, it will be accepted just like weapon customization was, but then "those" people will show up. What about the people who want to shoot fireballs out of their eyes? Or the guy who wants to have fly look like he's skating around on ice? Or the girl who wants a swordfish katana that uses fencing animations?

Point is, it will never be enough, and it will continue to snowball into more and more work, one step at a time, eating up more time and resources that could have been used on new content you could have cooked up twice the amount of when you were making sure your green laser eyes were green when they hit AND fired.

[/ QUOTE ]

The same could be argued about content, though. All the content in the world would still never be enough for the playerbase. What about the heroes who want to fight Midas? Or the villains that want to somehow invade Steel Canyon? Or what about the people who want personal housing or a new end game raid? There will also always be "those" people who will burn through the new content and start griping for more.

I'm not saying I don't want new content, I love new content. I just think that PC wouldn't be a total waste of time. It wouldn't be going in as "content". It'd be more of a new, defining feature of the game just like the current Costume Creator or ability to Fly around the world and fight in midair is. I think something that would help make the game even more unique and make a player's experience even more customizable would be worth as much as content in the long run. Besides, there's a new superhero MMO coming out later, we're going to need all the cool features we can get


 

Posted

Well, fair enough, BAB. Any sort of power customization like that would require a complete overhaul of City of Heroes' code, which does not sound practical at the moment. To paraphrase this, its like having a massive building that there is something wrong with the foundation that does not allow you to do something. At this point, removing and redoing the foundation of the building you may as well tear the whole thing down and start from scratch. I still remember how much of a head ache adding in rag doll physics was, and how long that took to get sorted out, so I agree that its wise just to drop the thing and move onto other stuff people have been asking for (Hero PPPs, villain APPs, side swapping, gunslinger power pool, etc) that could realistically be done.


But rather then dwell on the stuff we *won't* see done, let's see some stuff we *will* see done, eh BABs?


The truth is the solution from an equation of lies. ~Maileah Kirel

 

Posted

Thank you so much for posting that BABs.

I love how informative, well written, and well thought out your posts are. A big, big thank you for communicating with the players.


 

Posted

Thanks for the amazingly open and thorough post, and your posts in general, BAB!


A game is not supposed to be some kind of... place where people enjoy themselves!

 

Posted

[ QUOTE ]
You know, you could always get some of the players to do the work...

I know I'd throw in some of my time to changing values if it meant Power Customization.

Just a thought

[/ QUOTE ]

I've thought and suggested this a couple of times.

The last time I suggested this, Jack Emmert explained to me that there are some sort of legality hoops that are difficult to navigate...lawsuitable type issues if I remember correctly. Additionally, he explained that there was a game that invited members' talents and skills in some fashion...and it turned into some logistical nightmare...and I think some lawsuit stuff as well.

I'll try to find his email back to me and include it here. Still, I like the idea of having players be given the same program (that allows us to map out and design a base---that way, we can create new mission maps for the game in addition). Additionally, I thought some of the more creative members could write up a mission or two given the formula of how the Devs would like to see it done. Everything produced of course would have to go through a Dev quality test of course, but the sheer volume and diversity of new content created would be truly out of this world.

~ Jonathan

PS---This was the note from Statesman about a 13 months ago. It's pretty succinct but it basically explains what I was trying to say above.

"Hey - my brother served in Korea (10th Mountain). Career military. Coming up on 18 yrs.

Anyway, we can't use volunteers. Remember the nasty lawsuits with EA and Ultima Online? Very problematic.

I'd love to have a proofreader - trying to get a fulltime editor/writer hired, in fact. There's SO much text!

I agree on the interactitivity 100%. Stuff to engage people. "


 

Posted

BaB's its the weekend! Go home or something!

But before you do I have a question

Would it be possible to build the color tinting system or rebuild the powers with PC in mind and have it run in conjunction with the current system; and since you said it would be a lot of work, we can purchase it since its a cosmetic upgrade?

Its been done for costumes pieces before (GvsE pack and Wedding pack). Its been said that not everyone wants PC, so those who do want it, could pay for all the awesome hard work you did?

I would.


 

Posted

Thanks for taking the time to explain everything BaBs. Now go buy yourself some extra 25 cent snacks and call it a day.


@Demobot

Also on Steam

 

Posted

[ QUOTE ]
PS---This was the note from Statesman about a 13 months ago. It's pretty succinct but it basically explains what I was trying to say above.

"Hey - my brother served in Korea (10th Mountain). Career military. Coming up on 18 yrs.

Anyway, we can't use volunteers. Remember the nasty lawsuits with EA and Ultima Online? Very problematic.

I'd love to have a proofreader - trying to get a fulltime editor/writer hired, in fact. There's SO much text!

I agree on the interactitivity 100%. Stuff to engage people. "

[/ QUOTE ]
Yeah, that's why they can't make my power icon fix official.

[ QUOTE ]
BaB's its the weekend! Go home or something!

[/ QUOTE ]
What are you, his mother?


Issue 16 made me feel like this.
Warning: This poster likes to play Devil's Advocate.

 

Posted

All of this seems to be the situation most long term CoH players had pieced together since the earliest days of wanting PC and the Dev comments about it's difficulty.

Hopefully this new influx of NCSoft investment and new hires will allow this to become a high enough priority to be taken on. Something worked on alongside the usual Issue content. Just on a personal note it's probably the single most desired feature in ANY game for me. Especially CoH.

Perhaps this would be the perfect type of project to be handled by one of the new styles of content creation we've been hearing discussed by folks. Either as a special online pay for game upgrade feeature or a full blow game expansion boxx set you could place in stores. It's definately something I'd pay a full expansions worth for in a store.


 

Posted

As far as Stone Melee and Fire/Ice Melee. How about if we got some different weapon shapes that were not color-able so that the set powers still matched each other...no blue flaming sword and red-orange sword blasts.

Firey/Icy: Scimitars, Longswords, Fantasy Sword, Lightsaber-ish, Gladius, Kopesh would all be welcome to the players, perhaps even axe-ish type shape or two.

Stone Melee: More Granite looking hammers/fists, Cooling Lava-ish looking hammers/fists (cracks in the stone with lava showing through, slightly darker stone texture), Different hammer shapes with the current texture such as Mallets, Hercules Clubs (long club with spikes like in mace but bigger), Something kinda mace like (knobby orb on a stone shaft). If I recall the only attacks that have a primary effect on the body are the first three attacks. I don't remember seismic smash/tremor having one and footstomp types don't really need to be changed, nor do the stone particles that explode out when you hit someone.

I'm sure people would enjoy these no matter what.

Energy Melee: I'd be happy with color-able pompoms wouldn't need any splash effect colored to make me happy


Djeannie's Costume Creator Overhaul Wishlist
Carnie Base

"Once the avalanche has started, it is too late for the pebbles to vote" -Kosh

 

Posted

Good FAQ!
Not as technical about the Spreadsheet data as some of us would like, but still an Exemplary Cup of S.T.H.U. for us to serve to these newbs who all think powers can be changed with the wave of a magic wand


 

Posted

[ QUOTE ]
However, they're going to keep trying to figure out a way to do it. If they figure out a way that they can do it without basically writing City of Heroes 2, they'll jump on it.

[/ QUOTE ]

Please note, however, that "City of Heroes 2" is already on its way. Except that it's called "Champions Online," which is supposed to have power customization right out the door.

Yes, yes, yes, I know that there's really no guarentee that CO is going to happen. And some have said that there's no guarentee that it will have customization. But to me, it would be foolish, foolish, FOOLISH for CO to hit the market without it. Power Customization has to be one of the most requested (if not the most requested) QoL feature.

So if CO does come out, and it has customization, before CoH has retrofitted some sort of customization's...


"OK, first of all... Shut Up." - My 13-Year-Old Daughter

29973 "The Running of the Bulls" [SFMA] - WINNER of the Mighty Big Story Arc Contest !
- The Stellar Wind Orbital Space Platform

 

Posted

[ QUOTE ]
So if CO does come out, and it has customization, before CoH has retrofitted some sort of customization's...

[/ QUOTE ]

This is my only MMO, so can someone with more history in the industry confirm that player loyalty is a myth?

On topic, thanks, BAB, for this excellent post. I wish I could get programmers on my team willing to document a process this thoroughly. I'm lucky if I get stored procedures with descriptive names out of them!


@Glass Goblin - Writer, brainstormer, storyteller, hero

Though nothing will drive them away
We can beat them, just for one day
We can be heroes, just for one day

 

Posted

Never mind full power customisation, the one thing I'd like to see is blue rather than pink pom poms for /energy blasters so that it doesn't clash with energy/ .


#2409 - The Mystery of the MAGI vaults. Azuria has contacted you to help her stop the thefts from the MAGI vaults.
#68054 - Out of the gutters. Left for dead, you swore that you were through with being a victim (alt villain beginning story)

 

Posted

Thanks BaB. Its nice to see it all in one place, for sure, and in this format its a lot more cohesive and coherent. Not to mention that if power customization ever does make it in, people will have a pretty good idea of the effort it took to get there.


 

Posted

Put simply. It's never going to happen folks, it's too much of an investment of budget to justify such as small feature to the game.


 

Posted

[ QUOTE ]
On top of that, we also have some particle scripts that use pre-colored particle textures. Dark Miasma is a good example of that. We also use geometry in some of our FX scripts, and most of them use some sort of pre-colored texture So things like the bubble for Force Fields, that teal blue-green is the color of the texture that's on that sphere. Those particles and FX geometry would have to have new grayscale textures made for them and then they would need to duped and set up to use color tinting.

[/ QUOTE ]

I remember around i5 when all the forcefeild colours turned purple......


 

Posted

*I* would actually donate more money towards this project o.o! I fully support the effort to do something like this, however, it seems most people are about new content and shiney new things :&lt; I would be patient enough to wait for it if issues suffered, I'm perfectly content with the massive amount of content we currently have, heck I haven't even yellow stared all my old story arcs yet ^_^

I could wait a year or so with lower issues or buy a new expansion pack that would warrant the funding for this o.o

Or maybe ..COH2, and we could link up with Millennium City o.o!

But over all thanks for the info BAB!

-C.A.


 

Posted

First off: Thanks BaB for that detailed explanation.

Secondly: I think the only way we will get the kind of power customization we all want is for the devs to completely re-write the engine so that it is as flexible as the one CO is supposedly using. I'm not a programmer, but even I can imagine how hard/complicated/costly/time-consuming that would be.


Uber Talgrim - level 50 emp/dark defender
Uber Rod - level 50 dark melee/regen scrapper
Rod Valdr - level 50 invuln/SS tanker
Talgrim - level 50 ninja/dark mastermind

OMG!! Please add these costume designs now!