Wally FAQ


Table of Contents


This FAQ is split up into multiple sections. This is meant as a guide to using Wally, and the many features of it. For more detailed instructions on how to create cool looking textures, check out the Tutorial page.


Key Features


This is a list of some of the basic features Wally offers:

Beyond just simple viewing, there's a world of incredibly useful image tools with which to make highly detailed and great-looking textures:
For more info on how to really use these tools to their fullest potential, check out the Tutorial.

The Toolbars


There are two Main Toolbars and one Color Palette bar that give you access to almost every function within Wally. Learn em and love em, they are your new best friends. The first and usually top-most toolbar is the File Toolbar:



The second toolbar (by default mounted on the left border), is the Image Toolbar. This toolbar gives you access to the myriad choices of painting tools, of which to paint some incredible-looking stuff.



Then there's the color palette, which I won't show here. With it you can select the foreground color (left-mouse button), the background color (right-mouse button), the brush width, brush size, and application amount. Not all of the image tools have these tool settings, and are disabled when that tool is in use.

Shortcut Keys


This is a listing of the various shortcut keys to getting the job done within Wally:

Ctrl+B Browse Textures
Ctrl+C Copy
Ctrl+E Paste Into
Ctrl+F Select Browse Folder
Ctrl+L Flip Texture
Ctrl+M Mirror Texture
Ctrl+N New Texture
Ctrl+O Open Texture
Ctrl+P Load Palette
Ctrl+R Rotate Texture
Ctrl+S Save Texture
Ctrl+T Toggle Tiled View
Ctrl+V Paste As New
Ctrl+X Cut
Del Clear Texture
F1 Help
F11 Remip
F12 Texture Flags
Ctrl+Y Redo
Ctrl+Z Undo


Opening, Saving, and Browsing


There are a few ways to open up your .wal files. The easiest method is simply through the good ol' File|Open (Ctrl+O). This will bring up a standard dialog box, from which you can choose up to eight .wal files to open.

Wally also supports OLE drag-n-drop for opening .wal files. Open up Explorer, change to one of your .wal directories, and simply drag the file(s) right from Explorer to the Wally desktop. It'll open them up one by one. You can drag as many files as you please. Wally also supports dragging to the Wally icon on your desktop. Wally doesn't even have to be open, and it'll let you drag .wal files (and also BMP, PCX, and MIP as you'll find out) onto it's iconized form.


Once you've done your thing with actually editing the texture, and you're ready to save it, it's simply standard Windows routines. Go to File|Save (CTRL+S) to save your texture if it was one already in existence, or go to File|SaveAs to save it under a different name. If the texture was completely new from scratch, File|Save is the same as File|SaveAs.

Texture browsing is a quick and easy way to see all of the textures from one directory, and quickly set their properties, open them up, copy them to the clipboard, all kinds of good things. Go to File|Browse or click on the little button. This will pop up a directory browser window, from which you choose the directory you'd like to browse the textures of. Yeesh, too much browsing for browsing!

Once the browse window displays all of your lovely textures, you'll note they're all 128x128 thumbnails. Wally squeezes or expands the thumbnail of the texture so that it fits as close as possible into a 128x128 region. Don't be alarmed if all of a sudden your 16x16 texture displays as large as that big old 256x256 one you've got!

To further check out the texture, you can either double-click on the thumbnail to open it up, or right-click on the texture to bring up this popup menu:

The options here include Properties, Open, Copy, and Copy Tiled. Properties will bring up the texture flags for that texture. This is a quick and easy way to get at the properties of any .wal file you've got, in case you need to just get in real fast and change the light value, etc. Open and Copy do just as you might think :-) Copy Tiled is discussed in the clipboard section.

Converting and Exporting Images



If you choose to edit your texture in another paint tool (what's wrong with you! :) you have many options for getting that image into and out of Wally.

The first and most obvious is the Image Conversion option. Go to File|Convert or hit the little toolbar button. This will bring you to the oh-so-common dialog box from which to choose your images. Currently Wally supports 24- and 8-bit BMP and PCX files, as well as Quake1 MIP files.

The second method is similar to the drag-n-drop method discussed in the Opening/Saving/Browsing section. You can drag any mix-n-match of BMP, PCX, and Quake1 MIP files from Explorer right onto the Wally desktop or the iconized form of Wally. It will convert all of those formats right into .wal files, just as if you'd gone through File|Convert.

On any import, your image will automatically go through a palette conversion; one of the best palette conversion routines on the planet! If your image is already 8-bit, it will convert the palette via nearest color or maintain indexes (no conversion) depending on how you've set Wally up. As well, you may wish to have the texture go through an automatic Remip for every conversion that you do. For these and other Wally settings, see the Wally Options section for more details.

Now how to export your texture out to an image file, you ask? Go to File|Export, or hit the little button from the toolbar. Obviously this function is only available when you've actually got a texture open. You may choose to export as either BMP or PCX. There are quicker ways to flip images back and forth between Wally and your paint program; the clipboard! That's the next section, so don't change that dial!

Using the Clipboard


A very easy way to get your texture into and out of Wally is via the clipboard. Wally performs all the features of the 'board that you'd expect... cut, copy, and paste. But it also supports a feature called Copy Tiled which lets you take the tiled view of your texture and actually build a new texture from it.

To cut the image, go to Edit|Cut (Ctrl+X) which will first copy the texture to the clipboard, then fill the entire texture with the background color. If you wish to just clear the texture with the background color and not bother with copying it to the clipboard, go to Edit|Clear (Del).

With your image already copied to the clipboard via your paint program, there are a couple ways to get it into Wally. You can paste the image as a completely new texture: Edit|Paste|Paste As New (Ctrl+V) or you can paste the image into an already existing texture: Edit|Paste|Paste Into (Ctrl+E).

If you choose to paste into an already existing texture, Wally will figure out what sub-mip to place it in based on the image size. If it can't find a match, you'll get an error and no pasting will occur. Just an FYI- this is currently the only way to get an image into any sub-mip below the largest, main one. Like image conversion, you may wish to have Wally automatically perform a Remip whenever you paste in from the clipboard. It will only do so if the pasted image is the largest, main sub-mip. This option is discussed in the Wally Options section.

The last portion discussed here is the Copy Tiled feature. Have you ever wanted to take a texture, say a brick texture, lay down some stuff on top of the tiled view of it, and build a new texture from it? Well now you can. With your texture open, go to Edit|Copy Tiled. This will pop up a little dialog box prompting you for the squared count of tiles to use. If you choose the value 3, you will end up with 9 copies of the texture. 4 equates to 16 copies, etc. The range is from 1 to 10 (try 10 out some time!)



What are Texture Flags?


With Quake2, there are many cool tricks that can be done with textures. If you've played the game (duh!) you're treated to some at the very beginning. The translucent glass that shatters in the very first level is done via texture flags. Right around the corner you come across a ladder; that too is a texture flag. Just how many texture flags are there? Bunches! With your texture already open, go to Edit|Texture Properties (F12) to bring up this dialog box:



See what I mean? There's all kinds of stuff you can set. There are actually additional flags beyond what you see here, but they are reserved for the game. Flags such as "monster", "monster_corpse", etc.

I won't go through all of the different flags; some of them are quite intuitive. Checking off the light flag means the texture emits light equal to the value specified in the "Value" field. NoDraw specifies the texture should not be drawn in the game (clip, hint, origin, etc.)

Trans33 and Trans66 are the translucent flags. To make a glass window, for instance, you'd set one of the two Trans flags, and then set the Window contents check box. Trans33 means it's 33% translucent, and thus Trans66 means the texture is 66% translucent.

To create a Water texture, you'd set the Warp flag, the Water content check box, and possibly the Light flag. If you set the Light flag, make sure to place an integer value into the Value (light) edit box.

Animation

Animation is done with the Next Animation Texture field within your texture. This field specifies the next texture to be used for animation; it should specify not only the texture name, but also the directory. For example, say I've got a texture with a filename of screen1.wal, and it's located in the level2 directory. This will be the first texture in my animation sequence. The texture itself is internally named level2/screen1. I have another texture with a filename of screen2.wal, and it too is located in the level2 directory. It's internal name is level2/screen2.

To set animation for the two, I would first edit the properties of screen1.wal. Change its Next Animation Texture to level2/screen2. Then I'd edit the properties of screen2.wal, setting its Next Animation Texture to level2/screen1. Voila, we're done.

What do I do with all these .wals?


So you've made it this far! You've built some .wals using the Tutorial, or you've converted some existing images into .wal files. Now what do you do with them? How do you get them into the game?

First off, while it's possible to change the textures for already finished levels, you'll probably want to build your own maps. For that, obviously, you'll need a level editor... unless you're capable of mapping complex 3D architecture in your head and need only a text editor. If you're one of the latter, you probably build your own textures using a hex editor, so you're not even reading this :-)

Before I get into some editor-specific stuff, let me explain exactly how textures are used in Quake2, as it's different than Quake1 and brought about some confusion early on in the Q2 scene. Back in Quake1, all textures were stored in a WAD file. When you compiled your level, QBSP would take the textures needed out of this WAD file and place them right into the resultant .BSP file. With Quake2, this doesn't happen. The textures are separate entities for every step of the way... our lovely .wal files!

Quake1

Here's how an original Quake1 .map file describes the texture to be used:

( -4 80 36 ) ( 4 80 36 ) ( 4 72 36 ) METAL1_1 0 0 0 1.000000 1.000000

The actual WAD file for Quake1 was specified at the very top of the .map file, in what's known as the header. QBSP took the METAL1_1 from the above brush entry and ripped the matching name right from that specified WAD.


Quake2

With Quake2, it's slightly different. First, an actual line from a Quake2 .map file:

( 2872 2800 -192 ) ( 2888 2800 -192 ) ( 2888 2672 -192 ) level2/cpanel 0 0 0 1.000000 1.000000

You'll note the texture name level2/cpanel includes a parent directory, level2/. What does this mean? By default, QBSP3 assumes a starting directory; that's your game directory. If I've got a directory structure like so:

c:\quake2
c:\quake2\ebb
c:\quake2\ebb\maps
c:\quake2\ebb\textures
c:\quake2\ebb\textures\level2
c:\quake2\ebb\pics


My game directory would be ebb. To play any of my levels I'd have to run "quake2 +set game ebb +map level2". In this example, all of my .map and .bsp files are located in the maps directory. Because of this, QBSP3 will always look for textures in the textures directory, which is parallel to that maps directory.

It's not nice to have hundreds (or thousands) of .wal files all jammed into a single directory, so id allowed for having multiple subdirectories. That's where the level2/ comes in. It just so happens that all of my .wal files are located in that level2/ subdirectory, so my .map file must specify this. Luckily, that's what level editors are for, and you shouldn't ever have to worry about changing or editing your .map file. You just have to be set up properly from the start. Just an FYI- the internal name of the texture doesn't have to be accurate, so far as the subdirectory, but it's a good practice to internally name them properly according to where you've put them. The Wally Options section includes some helpful info on how to let Wally do this for you.

Textures in WorldCraft

I have personal experience with WorldCraft, so that's what I'm going to take you through here (if anyone knows some of the other editors, and would like to detail how to use custom textures in them, please send me a note.)

First off, let's make the following directory structure:

c:\quake2
c:\quake2\mygame
c:\quake2\mygame\maps
c:\quake2\mygame\textures
c:\quake2\mygame\textures\level1
c:\quake2\mygame\pics


I've put the pics directory in there, because you'll need the colormap.pcx file in there for QBSP3 to run (if you do it manually.) Okay! Now you've got the directory layout. Put all of your textures into that \level1 subdirectory that you just created. The map we'll build is going to be called level1 (gee what a shock.)

Start up WorldCraft 1.6. Go to Tools|Options. Click on the "Game Configurations" tab. Choose Quake II from the "Configuration:" combo box. In the "Texture Format:" combo box, choose WAL/PAK (Quake II). In the "Map Type:" combo box, choose Quake II. Enter c:\quake2\mygame into the "Game Directory:" edit box. Enter c:\quake2\mygame\maps into the "RMF Directory:" edit box.

Click on the "Textures" tab. Click on the "Add WAL Group" button. Browse for the c:\quake2\mygame\level1 folder. Click on OK. You'll be asked if you want to "Include all subdirectories as separate texture groups?" We've only got the one directory thus far, so click on No.

Click on OK to close out of the WorldCraft Options property sheet. Start up a new map, and get building! You'll notice in the texture browse view, and the "current texture name" field, that every texture name has that level1/ prepended to it. That's a good thing. Once you're ready to test the level out, follow your normal procedure... export the .map file if you build by hand, or let WorldCraft handle it for you.

Important Notes about the Level Editors

Some people have written to me saying their textures don't appear correctly, if at all. Sometimes they show up as being size 0x0, etc. There are issues with both WorldCraft 1.6 and BSP. WorldCraft doesn't like having capital letters in the actual .wal filename. Just make everything lower-case, and you'll be fine.

Some versions of BSP (possibly even the current one) have the incorrect Quake2 palette. Originally many utilities came out with Q2 support based on the Q2Test game that went out in the Fall of '97. This Q2Test game had an incorrect, or incomplete, palette file. It was missing about 10 colors, which were just whited out (255r 255g 255b). As a result, many of the utilities just messed up on palette conversion, and proper displaying of the palette. BSP being one of them. You'd see white pixels where there might be brown underneath. To correct this problem, grab this quake2.pal file and plop it into the bsp\quake2 directory.

Wally Options


This section details the different Wally options, including setting of Remip values. Go to View|Options to bring up this property sheet:



The Default Zoom value option is what Wally uses to automatically zoom your texture when it first opens it up. Valid range is 1 through 10. The New Textures group is used to set default dimensions for a new texture you create when using File|New. If you'd like to just keep the previously used texture width/height, check off the afore-named check box. Either way, you'll still be prompted to click on OK to the "Create New Wal" dialog box when starting a texture from scratch, so you can always set these manually.

The Texture Directory group allows you to automatically set the texure directory portion of the internal texture name. If you've followed through the entire FAQ thus far (God Bless you), you'll recall that the internal texture name is what is used whenever you use animation. For this, and because of a suggestion from Jeff Lane :-), we've made it easier to automatically set this texture directory. Your first option is none , which of course puts no directory at the beginning of this internal .wal name. If you choose the second option, Preset to this Directory: Wally will always place that value at the beginning of the internal name. The last option, Use the parent directory of the imported image does just as you might think; Wally recognizes the parent directory of the BMP, PCX, or MIP file, and uses that as the internal texture directory name.

The last item on this sheet is the Palette Conversion section. This applies only to importing of 8-bit images, as any and all 24-bit images must go through a palette conversion. For 8-bit images, you have two choices. Either convert the palette using Nearest Color (the default) or Maintain Indexes. Maintain Indexes is really only if you've already got it in the correct format using your paint program, and you'd like to speed up the import. You could also use it to create some wild-looking pixel-omelette textures :-)

Remip Settings


Click on the ReMip tab to bring up this property sheet:



These options allow you to customize and tweak ReMip Deluxe. There may be a case where the generated Sub-Mips have a goofy color to them. This might happen with the bright colors that have no darker match (ie Yellow.) These are some changes you can make to try and improve upon that special case (in order of importance):

  • No Dither
  • No Sharpen
  • No Weighted Average


    You can always revert to the recommended settings by clicking on the Use Recommended Settings button. Alternately, you can click on Use Quake Lookalike Settings to produce Sub-Mips that approximate the style of those generated by id.

    To automatically rebuild your Sub-Mips when doing a Save or SaveAs, check the Rebuild Sub-Mips on File Save check box. To automatically build your Sub-Mips when doing either a File|Convert, Paste Into, or Paste As New Texture, check the Auto-ReMip on Paste/Import check box. This will automatically generate the Sub-Mips any time you perform one of those items. The last item is Auto-ReMip After Editing. Set with a timer, this option will automatically kick off ReMip 2 or 3 seconds after you've stopped editing (ie painting, using the scratch tool, etc.)

    Custom Palettes


    Wally supports user-defined palette files. Included with the release code is a file called q2pal.lmp. This file is a binary 768-byte file that defines the RGB values for all 256 colors. While you can't edit this file with a text editor, it's the same format as what you'd find from the PhotoShop .act files. Just rename your .act file to q2pal.lmp.

    If you'd like to permanently override the palette Wally uses, just copy your custom q2pal.lmp into the same directory that Wally is launched from, and Wally will use it. If you change your mind later, and forgot to save off the original, just delete that file, and Wally will use the hard-coded Q2 palette. Or you could just go grab another download :-)

    If you'd like to load up a palette just temporarily, for whatever reason, either go to File|Load Palette (Ctrl+P) or click on the little button. This will bring up a dialog box, allowing you to open up either a .lmp file, or a JASC (PaintShop Pro) .pal file. The latter is an ASCII text file, so you could edit that to your heart's content. Just don't mess with the header or overall structure, and you'll be fine.


    That's it folks!




    Wally is © Ty Matthews and Neal White III. Quake2, Quake, id, and anything related to the Gods in TX is of course their property. If ya'd like the source to Wally, for fun or for modification, just give me a buzz, and I'll send it your way. It's done totally in Visual C++, using MFC in a Multi-Document/View Architecture.

    The Java buttons you see on the left are © Ty Matthews as well... if ya want the source for those, or info on how to use them, gimme a buzz for that too :)