Archived Design Notes

Breaking News

Posted by Artix on
ColorCustomization33.jpg

Next AdventureQuest 3D Alpha Test scheduled for Thursday

Calling all Alpha testers! We will be conducting our next test this Thursday, April 11th, 2013, at noon (EST). We know many players will be working or at school, so we will try to keep the alpha server online for 24 hours or more. The objective of the test will be to complete our first monster slaying quest which will earn you 250 Alpha Points. Also, secretly you will be testing our new armor/item loader and texturing system. Graphicially things will be very simliar, except the starting warrior armor is now color customizable. Of course, the color is chosen completely at random for the time being. Want the nitty gritty behind the scenes details of what we have been doing? *points at the Read More button.... "Punch it, Chewie!"

Game Designer Time: Color Customizable 3D armor

Back in our 2D games like AdventureQuest, DragonFable, and AQWorlds, making a complex armor that was also color customizable was a little bit tricky. Once an artists finished drawing and coloring an armor, we would delicately go into every piece of the armor (hands, arms, shoulders, chest, upper leg, lower leg, etc) and break each individual color into it's own layer. That layer would then be turned into a movie clip. Inside Flash, everything is treated like little movieclips. Anyway, we would add code to each of the movieclips which was smart enough to figure out what color it was supposed to be. When the armor is loaded into the game, the code on each piece tints itself the correct color.  You might be thinking, "there MUST be an easier way!" To which the answer is, sure... there are lots of not-so-great short cuts. But this is the only way to do it right in Flash. I really thought doing this in 3D would be easier.... *insert abrupt and semi-maniacally crazed laughter here*

Building a web based 3D game creates two problems. #1 is File Size. If the files are too big, the loads will be too slow, and the game will be too frustrating to play. #2 is the File Complexity. Normally the way you get around filesize is by ultra compressing the content. Or loading lots of smaller files. But in a real time massively multiplayer MMO, uncompressing and doing real time texture painting with a bunch of logic can also lead to lag, which would hurt the gameplay experience. So... in regards to Color Customizable Armor... Zhoom and Minimal have been walking a dangerous tight rope while designing the solution to the two problems. I am very proud to say, their solution, which is a new texture loader and painting system, is now complete. 

The short answer is, color customizable armors load an additional graphic file. This file is used like a stencil to spray paint the color onto your character. It gets better. They can color the main part of your armor, or the trim, or other parts seperately. This is because their stencil is smart. Only certain colors apply to certain regions.See in the picture above how the trim and base armor colors differ.

Originally, we were going to do everything with a single file. But we ran into a problem where the edges of the stencil would be really blockly looking. By loading it as a seperate file, we were able to use all the additional color information to blend the armor seamlessly. It looks really good.

The next problem we had, was painting caused a minor blip of lag. We noticed this only happened when multiple things were being painted at once. So Minimal and Zhoom added some sort of smart paint queing system. Everyone's armor waits in a line to get painted. Of course, the time waiting in the line is so short it is virtually undetectable by humans.... especially since it does not cause a moment of lag.

Next Steps in Character Customization
While you will be seeing the new color customizable armors in the next Alpha Tests, we are more excited about the character customization features we are working on next. Naturally you will be able to customize your hair and face. Also, Korin made a number of different "attitude based" idle poses. You will be able to select and change your default stance from cocky to heroic to midly crazy.

Comment Question
I want to write a post each day on the things we are working on. Major topics for this week include the world story, quest storage system (major improvements over the one we created for AQWorlds), new interface design, new monsters, and the weapon fusion system. Which would you like for tomorrow?