Recent Posts

Pages: [1] 2 3 ... 10
1
Incidentally, the hue-degree-loop is a great start, but several interesting things about color become immediately apparent. Specifically, that the "density" of color resolution varies dramatically across the hue range. 5 is massively different from 25, which is massively different from 45. But 105 is almost indistinguishable from 125; similar with 225 and 245, and 305 and 325.

So it took a lot of fine-tuning, taking a few colors down in value, and then adding a grayscale series and a few darker colors.

Btw, black and white wouldn't normally be used by the player (black is a zombie color, white is a natural-resources color) but some folks in AIWC really liked using them :)
2
Here are the colors I wound up with:

Red
Orange
Gold
Yellow
Green
Cyan
Turquoise
Electric Blue
Blue
Purple
Pink
Black
Gunmetal
Gray
White
Scarlet
Brown
Hunter Green
Mauve

Some of them look pretty on-the-nose (that blue) but they're much less stark in-game due to what the colors are being put on.

More could be added in the lower-value colors and maybe a few in the low-sat colors, and possibly the main hue-line could be packed denser if I took some of them lower in value and some lower in saturation. But I think this is a decent set for now.
3
Looks good to me!
I'd probably stay away from white and black on general principle (black would be hard to see, white might not look good)
4
Cool.  And yep, we have an HSV to RGB converter directly in our ColorMath library that we set up, too.  I've done it twice as well, once in HLSL and once in C#.  Never in Javascript, tho. :)

I think the one in ColorMath is using tinyint style 0-255 definitions, Keith.  So simply having it loop through like this and do an export would work:

for ( int h = 0; h <= 255; h += 10 )
{
  normal = GetRGBFromHSV( h, 255, 255 );
  pale = GetRGBFromHSV( h, 180, 255 );
  dark = GetRGBFromHSV( h, 255, 180 );
}

And then I guess tacking on a few grays/whites:

white = GetRGBFromHSV( 0, 0, 255 );
gray = GetRGBFromHSV( 0, 0, 180 );
dark gray = GetRGBFromHSV( 0, 0, 90 );
black = GetRGBFromHSV( 0, 0, 0 );

And then we're done.  We'd need to export that to our xml file and then come up with friendly names for them (or not show names, either way), but that's about it.  Any modders want to take a crack at that pseudocode and save Keith the trouble? ;)
5
What about saturation and value, though?  I'm also not really sure what a degree of hue is, since it's usually represented as 0-1 from my experience.  How would you translate the rule of 15 degrees into hex?

15 dregrees of hue is about 0.05 on the 0-1 scale (specifically, 1/24).
Saturation and value you'd want to pick values from GIMP as a "these look good" and apply them to the list of hues. Generally I'd have 3 sets of numbers: (H,1,1), (H,y,1-y), and (H,1-y,y) where y is approximately 0.75. That would give you pure colors, a dark version, and a pale version.

Converting from hsv to rgb is easy enough, there is already code out there,  I've done it twice (once in Java, once in c#).
6
What about saturation and value, though?  I'm also not really sure what a degree of hue is, since it's usually represented as 0-1 from my experience.  How would you translate the rule of 15 degrees into hex?
7
I knew somebody here knew a lot more about color than I did.

I also suspected that person was a raptor.

I answered a question about this on stack overflow just the other day. :)
15 degrees is about as close as two colors can get and still be sufficiently distinct (when placed next to each other--in isolation it depends a little more: red and red-orange would be tricky, but red-orange and orange are fine). You can then do things with saturation and value for added variability.
8
Yea, we need to put together a comprehensive (or at least long) list of sufficiently-distinct colors, as the current set has a lot of overlap.

Hue variance of 15 degrees.
I knew somebody here knew a lot more about color than I did.

I also suspected that person was a raptor.
9
Yea, we need to put together a comprehensive (or at least long) list of sufficiently-distinct colors, as the current set has a lot of overlap.

Hue variance of 15 degrees.
10
AI War Classic / My experience so far
« Last post by Ovalcircle1 on Today at 12:27:06 AM »
I bough this game along with all the dlc back on March 24th. I have played about 11 hours. Not a single one of them has been actually playing the game. I've been having too much fun using cheats and messing around with the different factions. One of my favorite things to do this:
Map type: Crosshatch
# of planets: 80
Ai 1: 1/Cowardly
AI 2: 6/Cowardly
Lazy AI
AIP: Default 1 every 30 min
DLC: all enabled
Minor factions:
Human Resistance Fighters: 10/10
Human Marauders: 10/10
Dyson sphere: 10/10
Dark Spire: 10/10
Zenith Devourer
Alt-Champ Nemesis
Nomad planets: No (Yes during next play-through)
Core Shield Generators: No (Yes for next play-through so the AI home-worlds don't get wiped by my cheats)
No fast drones (Might be yes for next play-through)
GAme options: All visibility, enable cheats as well as Show unexplored planets

Step 1: Get my home command center killed so I lose.
Step 2: Look on map for Dark Spire generators, then spawn Resistance and Marauders on all the planets with them. Dark Spire ends nap time.
Step 3: Find Dyson sphere, spawn ships to destroy the AI command station as well as any buildings that can hurt the Dyson Gatlings.
Step 4: Spawn another Dyson sphere on an adjacent planet because I can.
Step 5: Watch as the end happens before my eyes. If the Dark Spire start running out of ships for some reason, spawn Marauders to kill everything (I lost so AIP is meaningless).
Step 6: Eventually, everything will be cleared out of ships. Dyson Spheres have a set path in between the home-worlds, where they vigorously chase down any enemies they find. Unstoppable. AI still sends waves to random planets for some reason usually near the Dyson Sphere, so I speed up time until they spawn. Watch the Dyson Gatlings hunt down the spawned ships. Due to Cowardly AI type, they run away when they are outnumbered, so it's a game of who's faster. Special forces occasionally spawn, get rekt as per routine. Keep it like this until I get bored and spawn waves upon waves of Marauders to destroy a Home-world command station. For the second and final home-world, use the cheat to spawn the Fallen Spire military ships. AI writes its final will and testament. Win while having already lost. Time paradox, universe collapses. Reforms into rebooted AI War 2 universe. Do the same thing there, but with the Nanocaust instead of Dark Spire. MFW I created AI War 2 by mistake. 10/10 would troll AI again.

Pages: [1] 2 3 ... 10