Thanks for the suggestions,
1) a single line replacement won't work, so useful file utils is out completely. You have to compare sections of the file, first search for the key texturename, then backtrack inside that entire node/object to find the alpha setting to adjust it, and write that change back. A full alpha replacement on every instance in the tile will break every other object in the tile as they all need the alpha to be set at 1.0 instead of the 0.8 (BY the by, I use useful file utils for batch processing on lots of things, but it can only handle ALL instances on a given search, and I would have to sit there and approve / disapprove each find. I am talking roughly 500 tiles, possibly more, I don't have a direct count, that each has as many as 20 separate instances of an alpha setting on any objects, as in walls, ground, trees, branches, bushes, etc... the list is very long)
2) I don't think nwnx will help at all as it is primarily an interface for nwscript, and I need to be able to import, modify, then export the changed mdl files. and I would almost bet that it can't handle anything much more complicated than line by line, which has the same issue as useful file utils has, no way to skip stuff it doesn't need, and only change specific objects inside the mdl, not the entire mdl.
I am not a scripter by trade, I can only (slighlty) modify existing stuff. It's been over 20 years since I used my C++ education, and I can't remember how to even open/read a file much less process it to be able to change the data.
Thanks for the bumps guys, I may just have to manually do this.
What I need is the ability to find nodes that have sub-sections that match the criteria.
A typical tile object (node) would be something like this:
node trimesh plane588
parent tctl0_h02_02
ambient 1 1 1
diffuse 1 1 1
specular 0 0 0
shininess 1
rotatetexture 1
bitmap tctl0_grass02
orientation 0 0 0 0
alpha 1
scale 1
selfillumcolor 0 0 0
position 0 0 2.0
verts 25
-5 -2.5000000 0
---continues many more lines down in file ---
endnode
and that is not the entire node, but to explain, I would have to check the node for the bimap reference, then go down 2 lines to change the alpha setting ONLY if that node's bitmap matched the search criteria.
on the second program, basically the same sort of thing, find the node that has a specific bitmap assigned, and delete the entire node and all associated lines below it until the Next node starts.