Wednesday, June 3, 2009

All About StuffSwapper

StuffSwapper is a tool for Unreal Tournament. It enables you to take weapons or items from different mods and use them all at once. Depending on how you use it, StuffSwapper can be your best friend or a huge annoyance. I don't know about everyone else, but StuffSwapper is seriously buggy with me. If I don't import the right .u files and nothing else, opening the mod menu will crash UT. Anyway, here are a few tips to keep StuffSwapper from driving you to suicide.

-Whenever you sucessfully import weapons/items from a mod, save a copy of "StuffSwapperItems.ini" somewhere. If something goes wrong, just overwrite the existing file so you won't lose all your work.

-If you ever manually add item strings, open StuffImporter and click "tools>sort items list".

Friday, May 29, 2009

How to Create Skins

Creating skins in UT99 can seem like a daunting task, but once you know what needs to be done, it's pretty easy. There are one or two tutorials out there on skin creating, but they always leave something out. So I'm going to break it down step-by-step, leaving nothing unexplained. I will be happy to answer any questions.

First things first, you need a template. Hey, blind painting may have an artistic appeal, but it won't work wonders in a game. You have two choices for templates. If you're feeling brave, you could start from with a simple wireframe. You can get them at my Flickr.
But those are vague and not everyone can create realistic skin, faces and clothing from scratch. That's where UT's built-in skins come in handy. Open UnrealEd (by default it's in C:\UnrealTournament\System) and look for the "texture browser" icon (located just to the left of the eye). That will open a new window, where you should click "file" then "open". Find the texture file (.utx) you want to use and open it. You should see a bunch of images appear. Select one, then click "file" and "export". Save it to a place you'll remember. Repeat this process for all of the images. Step one complete.

Now, open your image editing program, open a template and start painting, running through all four (or three) parts of your skin template. Let your imagination run wild. When you're satisfied with the images, save them as pcx. files. Naming them is very important, so pay attention. Give them a four-letter name (let's use "test" for the moment being) followed by the template's existing number. This part is confusing, I know, but here's an example: If you created a skin for the Male Soldier model, you would have opened and painted on "SoldierWire1.bmp", "SoldierWire2.bmp", on through SoldierWires 3 and 4. You would save SoldierWire1 as "test1.pcx".
Ok, on to the second part of the edit/save process. This one involves team colors. They're a prerequisite of using skins online and they're a lifesaver for matchtypes like CTF and domination. Luckily, I found an easy way to apply them on existing skins. This requires Photoshop. I'm sorry if my version (CS2) differs too much from yours. First, you need to switch the image mode to RGB by clicking image, mode then RGB color. Then click layer, new and layer. Use the paintbucket tool and fill the entire layer with white. Go over to the layers panel, right-click the new layer and blending options. Under blending options/general blending, click the blending mode dropdown menu and select Color. You can adjust the hue to add color, or saturation and lightness to add clarity. When you're satisfied, change the image mode back to Indexed Color. Time to save these. You'll name them just like the regular skins, only this time with team information. So test1t_0.pcx would be red, test1t_1.pcx would be blue, test1t_2.pcx would be green and test1t_3.pcx would be yellow.

Open UnrealEd again. Open the texture browser (it's just to the left of the eye icon) and click file>import. Select the first of your skin images. The program asks for a name, which you have to start with the model's prefix and end with a four-letter code. For example, I'd name my Commando skin "CommandoSkins_Ravn". Leave the Group line blank and keep the bottom line as it is. Now import the rest of your images. Click File>Save and UnrealEd will save your skin to a .utx file. Now all that's left is the .int...

The final part is the easiest. Create a new notepad document. This will be the .int file that the game needs to identify your skin. Your .int file will look something like this. Scroll down and I'll try to explain it.

[Public]
Object=(Name=CommandoSkins_Ravn.ravn1,Class=Texture,Description="Ravenwood")
Object=(Name=CommandoSkins_Ravn.ravn2,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn3,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn3t_1,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn3t_2,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn3t_3,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn3t_0,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn4,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn4t_1,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn4t_2,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn4t_3,Class=Texture)
Object=(Name=CommandoSkins_Ravn.ravn4t_0,Class=Texture)

[Public]
Don't know what it is. It's just supposed to be there.

Object=(Name=CommandoSkins_Ravn.ravn1,Class=Texture,Description="Ravenwood")
"CommandoSkins_Ravn" is the name of the package I made in UnrealEd.
".ravn1" is the .pcx file associated with the skin.
The name of my skin is "Ravenwood". This is what will appear in player/bot select.

Object=(Name=CommandoSkins_Ravn.ravn2,Class=Texture)
.ravn2 is another part of the skin.

Object=(Name=CommandoSkins_Ravn.ravn3,Class=Texture)
ditto.

Object=(Name=CommandoSkins_Ravn.ravn3t_1,Class=Texture)
.ravn3t_1 is the Blue Team version of my Commando skin's legs

Object=(Name=CommandoSkins_Ravn.ravn3t_2,Class=Texture)
.ravn3t_1 is the Green Team version of my Commando skin's legs

Object=(Name=CommandoSkins_Ravn.ravn3t_3,Class=Texture)
.ravn3t_1 is the Yellow Team version of my Commando skin's legs

Object=(Name=CommandoSkins_Ravn.ravn3t_0,Class=Texture)
.ravn3t_1 is the Red Team version of my Commando skin's legs

Object=(Name=CommandoSkins_Ravn.ravn4,Class=Texture)
.ravn4 is my Commando skin's torso

Object=(Name=CommandoSkins_Ravn.ravn4t_1,Class=Texture)
.ravn4 is the Blue Team version of my Commando skin's torso

Object=(Name=CommandoSkins_Ravn.ravn4t_2,Class=Texture)
.ravn4 is the Green Team version of my Commando skin's torso

Object=(Name=CommandoSkins_Ravn.ravn4t_3,Class=Texture)
.ravn4 is the Yellow Team version of my Commando skin's torso

Object=(Name=CommandoSkins_Ravn.ravn4t_0,Class=Texture)
.ravn4 is the Red Team version of my Commando skin's torso

Once you're finished in Notepad, click "Save as..." and I would save it as "CommandoSkins_Ravn.int" (including the quotes). And that's it.