[Tutorial] Adding an item to an NPC sell list

This forum is for main questions (format files, STB / STL and so on).

Moderators: osRose dev team, ospRose dev team, osiRose dev team, Moderators

Forum rules
Client Editing is a delicate subject. osRose and osiRose will not support or use any Client Editing tool or results as a standard. So you are free to experiment, test, and develop there on Client Editing, but at your own risk :)

[Tutorial] Adding an item to an NPC sell list

Postby PurpleYouko on Sat Mar 08, 2008 5:38 pm

I have been asked about how to do this by several people so rather than reply individually i decided to put together a tutorial to take you through the process step by step.

In this tutorial we will create a brand new piece of jewelry, set its stats up then add it to the sell list of the Jeweler in Zant. (Jewelry is easy to create as it requires no changes to any ZSC file)

What you will need
An STB editor
An STL editor
I recommend my updated Excel utility that does both of these thing and more
STB Editor V3.1
A good VFS editor such as VFSNextGen (which you can find in the tools section of these forums)

Now that we are ready to go, the first thing to do is to extract the files that you need from your client.
Place VFSNextgen into your rose installation folder (or a backup) and run it.
Navigate to 3DData/STB folder then find and extract the following STB and STL files
LIST_JEWEL.STB
LIST_JEWEL_S.STL
LIST_NPC.STB
(LIST_NPC_S.STL) optional
LIST_SELL.STB
LIST_SELL_S.STL

EXCEL Section (Optional but strongly recommended)
The next thing we need to do is to run my STB/STL utility. When you open Excel, make sure that your security is set to medium, not high. The macros cannot be used in high security. Security settings can be set in tools/macro/security from the excel main tool bar.

Alternatively run your other STB editor and STL editor (your choice as to which one you use)

Before we even make our new jewelry item, we should probably find the NPC that is going to sell it for us so first we will load up LIST_NPC.STB ( and LIST_NPC_S.STL in the STL_Reader tab if you are using the excel STL editor )

This section is for Excel utility only]
Do you have a load of gibberish in column two of your STB? With newer versions of NARose, probably not but even so, the entries tend to be a bit weird. If you want to see the names on the NPCs exactly as they appear in the game, click the button marked "Import names from STL" note: you must have the STB and STL of the same name loaded into the utility before doing this.
This function will place all the names from the STL into the STB where they are originally written in Korean. It is perfectly safe to save your STB in this way. It will save you the trouble of importing names every time you want to read it.

Let's see, who shall we allow to sell our new ring?
How about "[Gypsy Jewel Seller] Mina"
You will find him chilling out on row 1007. he already sells jewelry so he is an obvious choice.
Take a look at columns 23 through 27 (W,X,Y and Z) in your STB editor and you will find the value 225 in column 23 (W). This corresponds to an entry in LIST_SELL.STB so remember this number. We might need it, depending on some of the choices we are about to make.
The other three columns are empty for Mina. This means that he will only have one tab in his sell window since columns 23,24,25,26 (W,X,Y,Z) correspond to the four possible tabs. (go in game and check it if you like)

Decisions time... Do we add a new tab? or put our item into the existing one?
What the heck, let's put a whole new tab in.
To do that we need to find an empty row in LIST_SELL.STB and add our stuff there. You can go and check if you like or you can take my word for it that row 226 is unused and empty.
OK then, we are going to use id 226 to represent our new tab so in LIST_NPC.STB row 1007 (Mina's row) column 24 (X), right next to the 225 value in column 23(W) add the number 226
It should now look like this.
Image
Save LIST_NPC.STB. we are done with this file for now.

Open LIST_SELL.STB and LIST_SELL_S.STL (preferably in my excel utility)
Import the names (excel only) this makes it so much easier to see what is going on.

Scroll down to line 255 where the entry should now read "Accessories" instead of the garbled mess that used to be there. See all those numbers starting with 7? 7002, 7004 and so on.
Those are the items that are sold by any NPC using this LIST_SELL id number
We need to make a new entry in row 226 so go ahead and add some stuff in there. just make it exactly like in this picture.
Image
LSEL226?????
What is the deal with that?
There is no such entry in the STL. That's right. We need to make one.
Switch to the STL reader tab (or to your STL editor if you aren't using my utility) and scroll to the bottom of the list then add this.
Image

Now save LIST_SELL.STB and LIST_SELL_S.STL

Now we actually make the item. This is actually pretty simple.
Open LIST_JEWEL.STB and LIST_JEWEL_S.STL
In LIST_JEWEL.STB, scroll down to a nice empty space. I already reserved us row 350 in our LIST_SELL.STB above so we will just place our new item into row 350

First we will go into the STL and add a new entry for our lovely new ring
Image
A Ring with Ridiculously High Stats eh?
A lot to live up to. :D

Now for the STB
Go to line 350 and add some stuff. We don't need too much, just a valid entry of some sort.
just add it like this for now. We can fine tune it later
Really all you need is "LJEW350" in the STL Reference column (AJ), 171 in the type column (F) and some value in pricerate (H), weight(I) and quality(J) columns.
The rest of the stuff can be set in the editor.
If you have already saved your STL then just open the control panel and click the button to import names. If you did it right then the new name from the STL will appear in the name column of your STB.

OK Now we have our new ring. but it doesn't have any of those lovely stats that it is supposed to have yet. We can sort that out easily enough.
On the STB tab, click the button marked "Edit Items" and a nice editor window will pop up. Of course if you are not using my editor you will have to do all this crap by hand. :P
Anyway here is a picture of what you should see when you open the editor and select "Ring of Too Much Stuff" from the pull down list
Image
Now we have to select a couple of cool stats to put on it. Just grab some conditions (stuff needed to equip the ring) and stats (stuff it gives you when equipped) You can have up to two of each if you like.
I'm going to make my ring require a level of 100 and a STR value of 150 then give it Attack Power 50 and CRIT 50. Just use the pull downs to select what you like. When you are done hit the green button marked "Save Changes" and close the editor panel.
You could try adding DEF and MDEF to your ring as well but i cannot guarantee whether this will work or not as I haven't tested it yet
Iit will look like this
Image

Note: many of the options in the lists are not coded into any known server so be careful what you choose.
Also note that if you place the editor file in a place with access to a folder named "images" in which you have placed all of the extracted images from your ICON.dds files, the little box at the right of the icon number will display the chosen icon.
to make it work properly use this structure or equivalent
C:\..\Utilities\stb editor v2.0
C:\..\utilities\images\1.jpg through 3000.jpg

Once you are satisfied, save your LIST_JEWEL.STB and LIST_JEWEL_S.STL

Now you need to put the modified files back into your VFS
First open VFSNextGen and navigate to your STB folder as described above.
Find these files
LIST_SELL.STB
LIST_SELL_S.STL
LIST_NPC.STB
LIST_JEWEL.STB
LIST_JEWEL_S.STL
(not LIST_NPC_S.STL as we didn't change that one)
and delete them.
Yes DELETE them. get rid of them, trash them. Make them go away etc.
Now make sure that you have the STB folder selected (and not some other file inside the STB folder) then click "Actions\add item to folder" from the menu.
Navigate to your extracted/modified STBs and STLs then "Add them" one by one until all can be seen at the bottom of the STB folder.

Congrats. Your client is now finished.

Now all you have to do is make the same changes in the Server files, databases or CSVs and restart you server.
That part should be pretty easy.
You can even use the Osirose utility to convert your new STBs into CSv files
DO NOT forget this step or you will get a TRose error when you try to buy the new ring.

Enjoy your new, completely overpowered, 1,000,000 zuly ring :D


Edit by lmame:
For osRose dev rev, you don't need the .csv anymore, just the STB's (list_sell.stb).
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4733
Joined: Fri Aug 10, 2007 2:05 pm

Re: [Tutorial] Adding an item to an NPC sell list

Postby Cellcote on Sat Mar 08, 2008 6:14 pm

wow nice guide, certainly a nice guide ;)
Image
Cellcote
Rackie
Rackie
 
Posts: 188
Joined: Thu Aug 09, 2007 11:07 am

Re: [Tutorial] Adding an item to an NPC sell list

Postby lmame on Sat Mar 08, 2008 6:44 pm

Very nice, thanks a lot :D
The world is full of love and peace ^_^
Image
User avatar
lmame
Admin
Admin
 
Posts: 8997
Joined: Mon Aug 06, 2007 4:42 pm
Location: July City

Re: [Tutorial] Adding an item to an NPC sell list

Postby rl2171 on Sat Mar 08, 2008 6:51 pm

Great guide, thank you for making it!
Image
rl2171
Admin
Admin
 
Posts: 1706
Joined: Mon Aug 06, 2007 5:17 pm
Location: Sacramento, CA USA - GMT-8

Re: [Tutorial] Adding an item to an NPC sell list

Postby xXDarkXx on Mon Mar 10, 2008 7:41 am

You're the best.
Image
User avatar
xXDarkXx
Rackie
Rackie
 
Posts: 245
Joined: Thu Jan 31, 2008 12:50 pm
Location: Hell

Re: [Tutorial] Adding an item to an NPC sell list

Postby miltown on Sun Mar 16, 2008 11:14 am

nice guide but when i click load stb on your program it says "could not load a object because it is not available on this machine" then goes to the visual basic editing for the program.. could you help me please?
Last edited by miltown on Sun Mar 16, 2008 2:23 pm, edited 1 time in total.
miltown
Rackie
Rackie
 
Posts: 268
Joined: Sun Mar 16, 2008 10:46 am

Re: [Tutorial] Adding an item to an NPC sell list

Postby ICON on Sun Mar 16, 2008 1:17 pm

I guess it would help if you had stb's and stls...
Move along move along like i know you Should.

New games in the making....
ICON
Clown
Clown
 
Posts: 532
Joined: Mon Feb 04, 2008 7:34 am

Re: [Tutorial] Adding an item to an NPC sell list

Postby miltown on Sun Mar 16, 2008 2:24 pm

i do have em :?
miltown
Rackie
Rackie
 
Posts: 268
Joined: Sun Mar 16, 2008 10:46 am

Re: [Tutorial] Adding an item to an NPC sell list

Postby PurpleYouko on Sun Mar 16, 2008 5:12 pm

miltown wrote:nice guide but when i click load stb on your program it says "could not load a object because it is not available on this machine" then goes to the visual basic editing for the program.. could you help me please?


You have a missing activeX (.ocx) file that is preventing the common dialog box from opening.

go here http://windowsxp.mvps.org/comdlg32.htm and follow the instructions to install and register the activeX control.
Then it should work.
Need to lookup information on NARose items, skills, quests?
Now featuring a newly completed skill tree for all classes
Formatting fixed for different resolutions
Image

"A Gazelle is nothing but a giraffe plotted logarithmicaly"
User avatar
PurpleYouko
Rose Guru
Rose Guru
 
Posts: 4733
Joined: Fri Aug 10, 2007 2:05 pm

Re: [Tutorial] Adding an item to an NPC sell list

Postby miltown on Sun Mar 16, 2008 7:05 pm

it works now thanks alot ;) but i have another question...when right click on the file in the vfs editor i cant delete the file do you know why?
miltown
Rackie
Rackie
 
Posts: 268
Joined: Sun Mar 16, 2008 10:46 am

Next

Return to Client Editing Question Zone

Who is online

Users browsing this forum: No registered users and 23 guests

cron