Custom/Remix skins

let us use our bought skins and ‘remix’ them.

Let us drag the racing stripe around, choose what angle it goes over the ship, what part of the ship its applied to, etc.

Let us use the colors from one skin, combined with the texture from another skin.

It deosn’t have to be perfect. Just letting us plop textures/features on there, and slide them around would be enough. Doesn’t matter if most of the creations look like trash. People will find ways to make it look cool af.

this would dramatically increase skin sales, since people will be buying skins just to use certain features & colors of that skin with other skins

People who didn’t want the Snowline skins will buy them so they can have a Purple & Black version of the Headhunter skin

They could combine the green Marshlight color with the headhunter skin with the Chainbreaker skin’s potleaves and call it a Pothunter skin

1 Like

I have wanted this for so long

Maybe break up t the ship into sections. Each section can be edited independent from others. Change color or add a portion of a skin. Corporations can have their own skins.

2 Likes

yes why is ccp saying no to this

I use a system similar to what you describe to make all of these Skin concepts (image dump) - #163 by CPPC_T_amber

What you propose is not that simple to implement. The game server would have to send to every instance of game client every custom skin and every custom texture for every ship - that’s a nightmare.
There is another possibility that’s easier to implement - custom colour palette. The design team can create skins that have a small number of colours (e.g. 2-4) - a skin colour palette, as well as a global colour palette with the available colours (e.g. 32).
It would be similar to how you select the skin or eyes colour at your character’s creation.
Corporations could define their own colour palettes as well.

1 Like

edits - I really should have prepared for this post before I first made it :sweat_smile:

What the OP and you are both describing is pretty similar to how ships and skins are constructed ingame - except players can’t do it themselves (yet). Most skins don’t use custom uv’d textures and the patterns you see on some of them use small black and white images that are easily reused. Eve’s space object factory makes skinning a ship pretty easy with a low performance and storage cost (see bottom of post)

Space Object Factory
Defines what a space object looks like (including asteroids but excluding planets).
It has lots of cool stuff, but the 3 relevant to this post are:

  1. Space object components/attachments are paramatised and can be easily configured at an individual (e.g. a single decal) or group (e.g. changing the colours of a set of sprites) level.
  2. Visually distinct space objects can be created using a string of text (called DNA)
  3. Low cost to customisation and textures and components are reusable

We’ll ignore the fact that quite a bit of effort is required to create some of the fancier skins that have child effects and focus on what you’ve mentioned and relates to point 2 above.

Space Object Factory DNA
A string of text which describes a space object (including a ship that has been skinned).
These strings are contructed from information stored in eve’s database.

  • typeID → graphicID
  • skinID → skinMaterialID → graphicMaterialSetID

Hull (Compulsory)
Defines all the physical things (geometry, attachments and children) for a hull and their possible combinations, and default colours and textures. (Lights, Materials, Sprites, Spotlights, Decals, Effects, Hazesets, Banners, Locations for things like turrets, damage, audio and boosters etc)

Faction (Compulsory)
Defines which of the above are used and what colours, textures and pattern overrides they use.

Race (Compulsory)
Defines what boosters, heat, trails, armour and sheild effects look like.

examples:


{hullName}:{factionName}:{raceName}
gb1_t1:gallentebase:gallente = Dominix
adn_fn:amarrnavy:amarr = Revelation Navy Issue


Material layers (Optional)
Overrides the base material colours of a hull.
Each ship has four base materials which display in areas defined in a material texture. These textrues are relatively small as they’re grey scale, with one shade for each material layer (white, light grey, dark grey and black)

Each material has the following properties:

  • Diffuse Color (vec4)
  • Fresnel Color (vec4)
  • Gloss (float)
  • Dust Diffuse Color (vec4)
  • Dust Fresnel Color (vec4)

But instead of having to define these values, CCP has over 500 premade materials that can be used instead.

examples:


{hullName}:{factionName}:{raceName}:material?{material1Name};{material2Name};{material3Name};{material4Name}
gc3_t1:gallentebase:gallentebase:material?black_deadstar_matt;black_obsidian_metallic;white_snow_coated;asteroid_rock_04a = Vexor with custom colours
gc3_t1:gallentebase:gallentebase:material?black_deadstar_matt;black_obsidian_metallic;none;none = Vexor with some custom colours

chrome_RNcJOy8630

Resource Path Inserts (optional)
Selects what material texture should overrides the hull’s default one.
Some factions already override the base material texture so defining them isn’t necessary (like the last aliastra example below)

examples:


{hullName}:{factionName}:{raceName}:respathinsert?{resPathInsert}
gc3_t1:gallentebase:gallente:respathinsert?aliastra = Vexor with aliastra materials and gallente colours
gc3_t1:aliastra:gallente = Aliastra Vexor
gc3_t1:aliastra:gallente:respathinsert?aliastra = Aliastra Vexor (aliastra faction already defines a resource path insert)

chrome_pwcUjL6wVf

Patterns (optional)
Skins can use patterns which ccp have to constructor per hull.
Each pattern can have up to two layers, with one black and white texture and material each.
Pattern layers can be mirrored, rotated, scaled and positioned as you’d expect but this be fiddly and result in undesired stretch effects due to them being projected on to the hulls rather than textured with uv cooridates. (I think this is an acceptable cost)

examples:


{hullName}:{factionName}:{raceName}:pattern?{patternName};{material5};{material6}
gc3_t1:gallentebase:gallentebase:material?black_deadstar_matt;black_obsidian_metallic;white_snow_coated;asteroid_rock_04a:pattern?glacialdrift_gallente;orange_ginger_matt;black_uranium_metallic = Vexor with custom colours and glacial drift pattern with custom colours

chrome_P9sJLQDqLA

Skin examples
Here are the sof dna strings for the hulk.
chrome_OPpSts2nOy

Client Storage
Below are rough estimates in bytes for the components, calculated from existing assets in the client:

  • Hull definitions: ~2000 - ~100,000
  • Faction definitions: < 3,000
  • Race definitions: < 4,000
  • Material definitions: < 300
  • Material textures: 699,212 and 1,398,268 are common
  • Pattern definitions: ave 2,000 excluding projection textures
  • Projection textures: 43,832 , 174,904 and 43,832 are common
  • Effects: depends on the complexity and if it has custom geometry

custom skin examples:

Custom rev: ~2000bytes

Custom chicken: ~2000bytes

Custom nig: ~29,000bytes (the aurora and hologram are existing assets so not included)

Custom stork: ~100,000bytes (louis vuiton decal and pattern)

Custom barghest: ~750,000bytes (most of this is the anime girl)

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.