Request for script: BOD Indexer

Discussion about the technical aspects of scripting. Ask about all issues involving your freelance projects here.
Locked
Riclya
Passer by
Posts: 4
Joined: Mon May 23, 2011 2:10 am

Request for script: BOD Indexer

Post by Riclya »

Hi
Is there any bod indexer scripts that works with this shard and can index all sorts of bods incl the ones with our resources like polar leather and so on ?

All sorts of bods i mean carpentry, bowcraft, tailor, blacksmith and tame bods, and put them out to a file so it can be imported ex in excel.

It might be possible to modify an already script or something but that is beoynd my knowledge there is a few that is working with standard osi bod type that is good but that is all i know.

List of some i know is working:
http://www.easyuo.com/forum/viewtopic.p ... 874#167874 Snickers Bod exporter
http://www.easyuo.com/forum/viewtopic.php?p=27621#27621 TW bod indexer
Nunja
Grandmaster Scribe
Posts: 79
Joined: Mon Feb 21, 2011 9:27 pm

Re: Request for script: BOD Indexer

Post by Nunja »

Had a red hot shot at getting this going by using Kal In Ex's text parser.
(used in snickers bod exporter)

Had everything working except it fails on the Material column. Because the custom ores use a different font!
(New ores have slight black boarder around them but old ones to not... open a smith/tailor book at see for yourself!)

This causes Kal In Ex's text parser to fail to read the Material correctly...which is sort of the whole point...

giving up for now... will have to think about this some more

edit:
Looked through runuo code for the custom ores.
this seems to be the culprit

in Bod Book gump: BulkOrders/Books/BOBGump.cs

public Object GetMaterialName
...
case BulkMaterialType.Verite: return 1018338;
case BulkMaterialType.Valorite: return 1018339;
case BulkMaterialType.Blaze: return "Blaze";
case BulkMaterialType.Ice: return "Ice";


In the code that displays each BOD in the book...
name is the result of GetMaterialName

if ( name is int )
AddHtmlLocalized( 316, y, 100, 20, (int)name, LabelColor, false, false );
else if ( name is string )
AddLabel( 316, y, 1152, (string)name );
Locked