View Single Post
  #1  
Old 10-29-2012, 08:02 PM
nilbog
Hill Giant
 
Join Date: Nov 2007
Posts: 197
Default Fix for transparency/black splotches

NOTE: It is reported this is not compatible with texture upgrade (discussed here). If you use these updated textures, experiment at your own risk.

NOTE: I have only tried this on EQ Titanium, so I am unsure how/if it will work on other clients.

I haven't time to work on this in months, so instead of it stagnating, I'm releasing the executable and relevant .bat for the community as a whole. Hopefully something good will come of it!

--------------------------------------------------------------------------

Ever notice half elf visors are sealed shut? Eye of Zomm is black?

These issues and many more can be fixed.

Original credit goes to Ropethunder for creating the transpfx.exe file.



Examples of fixed textures:




Other notable fixes:
  • Plate chest pieces having black spots - half elves, dark elves, etc.
  • Certain player models having black spots in hair or faces - high elf female, dark elf male.
  • Many, many models having black feet.
  • Black spots on sand giants, snow orcs, dragon wings, qeynos hills buildings.
  • Transparency issues for pegasus wings, trakanon wings, felguard visors.
  • many more


To use:
  • Download http://www.project1999.com/files/tra...ncypatcher.zip
    • If you're worried something might break, back up your files, or work on a different eq install.
  • Extract patch_s3d_textures.bat and transpfx.exe into your \Everquest folder
  • Run patch_s3d_textures.bat file
  • Wait for it to finish
  • Restart your Everquest client
  • Enjoy

Known problem:

The female human plate helm shares the same texture as the male human plate helm but does not use transparency. As a result of enabling transparency for the male plate visor a small porthole has appeared in the back of the female plate helm.



Part 2:

For modifying the .bat file, creating your own fixes, or knowing wth is going on:

Identifying the offending texture:

Launch S3DSpy. In the left pane, there's a list of all of the texture packs in the directory. Player race textures are generally in global_chr.s3d. There's a common nomenclature for player race texture naming:

2 char. race abbrev. + 1 char. gender abbrev. + 2 char. body part abbrev. + 2 digit armor type + 2 digit texture index

An example: I want to find the texture for an ogre male chain chest piece.
Race = Ogre (og)
Gender = Male (m)
Body Part = Chest (ch)
Armor Type = Chain (02)

So all textures named ogmch02##.bmp are going to make up the chain chest appearance on an ogre male. You can highlight them in the right pane and click the view button to see if you're looking at the right texture.

Code:
Abbreviations that I know so far:

(ba) - Barbarian 
(clk) - Robes
(da) - Dark Elf
(dw) - Dwarf
(el) - Wood Elf
(ele) - Elemental
(er) - Erudite
(gn) - Gnome
(ha) - Half Elf
(hi) - High Elf
(ho) - Halfling
(hu) - Human
(og) - Ogre
(ske) - Skeleton
(wer) - Werewolf
(woe) - Wolf
(tr) - Troll
(ik) - Iksar (global4_chr.s3d)

(ch) - Chest
(fa) - Forearm
(ft) - Foot
(he) - Head
(hn) - Hand
(lg) - Leg
(ua) - Upper arm

(00) - Naked armor type
(01) - Leather armor type
(02) - Chain armor type
(03) - Plate armor type
For non-player textures, they're going to be found scattered in individual zones' texture packs. zonename.s3d contains world geometry textures. zonename_chr.s3d contains animated model textures. zonename_obj.s3d contains static object textures. The naming in these files don't really follow a sensible guideline most of the time, so put yourself in the mind of an artist (*shiver*), and hop around viewing textures until you find the right one.


Fixing the texture:

Now that you have the texture name and texture pack name, it's time to actually fix the problem. The most common issue is that there is a certain RGB value in the color palette (almost always the RGB value at the very top-left of the texture) that is getting mapped to straight black. In the case of some textures that utilize a single-color palette (most often on the feet), the entire texture will end up black. Most of the time though, there will just be random black spots on the model where they shouldn't be.




In all of these cases, it's a non-transparent palette entry that is now black. So what we want to do is use the -rt option of transpfx.exe to completely remove the transparency for that texture. More on setting up the script below.

The other known case is where black splotches appear in the place of pixels that are actually supposed to be transparent (represented by magic pink in the texture). This was the case with Trakanon:


To fix these cases, we want to use the -mp option of transpfx.exe to enable transparency for magic pink pixels.

Appending to the batch script:

Open the .bat up in a text editor.

If you're fixing a texture in a pack/option combo that already exists, then you can just add the texture name to the end of the texture list that's being modified in that pack. For example, let's say I want to remove transparency from "elmhe0062.bmp" in global_chr.s3d. The texture list "rt_global_chr" is already being processed through transpfx.exe with the -rt option on the global_chr.s3d pack. So all I need to do is append my texture name to the list like so:

Code:
set rt_global_chr=%rt_global_chr%,elmhe0062.bmp
If the texture you're fixing is in a pack file that isn't already being processed by the script, or isn't using the executable option you need, then you need to create a new texture list, and then set up the code block to actually process that list. Let's say I want to remove transparency from funch0001.bmp in sebilis_chr.s3d:

Code:
set rt_sebilis_chr=funch0001.bmp
Now that my texture list is set up, I need to process it. I'd add this to the part of the script where similar calls exist (remember, you don't need to do this step if the texture list already existed):

Code:
echo.
call :PatchS3D "sebilis_chr.s3d" "-rt %rt_sebilis_chr%"
if %ErrorLevel%==1 exit /b
Now you can run the script from your Titanium install directory. Restart EQ, and check to see if you got the result you wanted.

Instructions courtesy of kanras.

Enjoy!
__________________
https://www.project1999.com

Last edited by demonstar55; 03-17-2016 at 02:25 PM.. Reason: Update download link
Reply With Quote