Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[TUT] ~ Make SQL items for Holo ~ Noob friendly ~ [TUT]

Status
Not open for further replies.
Joined
Mar 30, 2007
Messages
962
Reaction score
166
Many people don't know how to make SQL furni for holo.
I'm here to teach you the steps to making the furni ;)
It is very easy and fast to do.

This is you average SQL furni looks
Dissi's v26:
Code:
--
   -- Table structure for table `catalogue_items`
   --
   
   CREATE TABLE IF NOT EXISTS `catalogue_items` (
     `tid` int(10) NOT NULL AUTO_INCREMENT,
     `catalogue_name` varchar(100) COLLATE latin1_general_ci NOT NULL DEFAULT '',
     `catalogue_description` varchar(200) COLLATE latin1_general_ci NOT NULL DEFAULT '',
     `catalogue_cost` int(5) NOT NULL DEFAULT '0',
     `typeid` int(1) NOT NULL DEFAULT '0',
     `length` int(2) NOT NULL DEFAULT '0',
     `width` int(2) NOT NULL DEFAULT '0',
     `top` double(4,2) NOT NULL DEFAULT '0.00',
     `name_cct` varchar(110) COLLATE latin1_general_ci NOT NULL DEFAULT '',
     `colour` varchar(100) COLLATE latin1_general_ci NOT NULL DEFAULT '',
     `catalogue_id_page` int(3) NOT NULL DEFAULT '0',
     `door` enum('0','1') COLLATE latin1_general_ci NOT NULL DEFAULT '0',
     `tradeable` enum('0','1') COLLATE latin1_general_ci NOT NULL DEFAULT '0',
     `recycleable` enum('0','1') COLLATE latin1_general_ci NOT NULL DEFAULT '0',
     `picture` varchar(20) COLLATE latin1_general_ci DEFAULT 'placeholder.gif',
     `catalogue_id_index` int(5) NOT NULL DEFAULT '0',
     PRIMARY KEY (`tid`),
     KEY `typeid` (`typeid`),
     KEY `catalogue_id_index` (`catalogue_id_index`)
   ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=14156 ;
Others:
Code:
--
   -- Table structure for table `catalogue_items`
   --
   
   CREATE TABLE IF NOT EXISTS `catalogue_items` (
     `tid` int(10) NOT NULL auto_increment,
     `catalogue_name` varchar(100) collate latin1_general_ci NOT NULL,
     `catalogue_description` varchar(200) collate latin1_general_ci NOT NULL,
     `catalogue_cost` int(5) NOT NULL,
     `typeid` tinyint(1) NOT NULL,
     `length` tinyint(2) NOT NULL,
     `width` tinyint(2) NOT NULL,
     `top` double(4,2) NOT NULL,
     `name_cct` varchar(110) collate latin1_general_ci NOT NULL,
     `colour` varchar(100) collate latin1_general_ci NOT NULL,
     `catalogue_id_page` tinyint(3) NOT NULL,
     `door` int(3) NOT NULL,
     `tradeable` int(1) NOT NULL,
     `recycleable` int(1) NOT NULL,
     `catalogue_id_index` int(5) NOT NULL,
     PRIMARY KEY  (`tid`)
   ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1747 ;
this is what basically makes the catalogue_items

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

Dissi's v26:
Code:
INSERT INTO `catalogue_items` (`tid`, `catalogue_name`, `catalogue_description`, `catalogue_cost`, `typeid`, `length`, `width`, `top`, `name_cct`, `colour`, `catalogue_id_page`, `door`, `tradeable`, `recycleable`, `picture`, `catalogue_id_index`) VALUES
Others:
Code:
INSERT INTO `catalogue_items` (`tid`, `catalogue_name`, `catalogue_description`, `catalogue_cost`, `typeid`, `length`, `width`, `top`, `name_cct`, `colour`, `catalogue_id_page`, `door`, `tradeable`, `recycleable`, `catalogue_id_index`) VALUES
depending on what your SQL is like for making the catalogue_items (check above)
you will need this.
this tells you were the item is being added.

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

Sections:
Code:
`tid` = item id (put whatever you want, but make sure it isn't already being used)
   `catalogue_name` = (the item name)
   `catalogue_description` = (the item description)
   `catalogue_cost` = (the item cost)
   `typeid` = (what is it) (0=wall item, 1=solid, 2=chair, 3=bed, 4=rug)
   `length` = (how long is the item)
   `width` = (how wide is the item)
   `top` = (the stacking height)
   `name_cct` = (furni CCT name)
   `colour` = (the color of the item) (usually '0,0,0' unless it's a recolor)
   `catalogue_id_page` = (what page will the item appear on)
   `door` = (is it a door) (0=no, 1=yes)
   `tradeable` = (is it tradeable) (0=no, 1=yes)
   `recycleable` = (is it recycleable) (0=no, 1=yes)
 [B](Dissi's)[/B]  `picture` = link to picture) (usually placeholder.gif)
   `catalogue_id_index` = (same as tid)
Those are pretty mush the need to know about making the items

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

Making the furni:
This is the easiest thing to do.
I will show you to make the Throne ;)

1st: where to insert it?
Code:
INSERT INTO `catalogue_items` (`tid`, `catalogue_name`, `catalogue_description`, `catalogue_cost`, `typeid`, `length`, `width`, `top`, `name_cct`, `colour`, `catalogue_id_page`, `door`, `tradeable`, `recycleable`, `catalogue_id_index`) VALUES
(add `picture`, between `recycleable`, `catalogue_id_index` if Dissi's v26)

2nd: tid # (also catalogue_id_index)
Code:
(1, '', '', , , , , , '', '', , '', '', '', 1);
the ";" is needed at the last item to show that no more furni is being added after it

3rd: the name and description
Code:
(1, 'NAME', 'DESC', , , , , , '', '', , '', '', '', 1);
they have to be between the '' the show what the server is reading to put in catalogue
replace "NAME" and "DESC" with wahtever you want

4th: item cost
Code:
(1, 'NAME', 'DESC', 25, , , , , '', '', , '', '', '', 1);
meaning it will cost 25 coins

5th: typeid
Code:
(1, 'NAME', 'DESC', 25, 2, , , , '', '', , '', '', '', 1);
stating that it is a chair

6th: item length and width
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, , '', '', , '', '', '', 1);
it is 1, 1 because it only takes up 1 block (1 block long, 1 block wide)

7th: item height
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, '', '', , '', '', '', 1);
always have to add .00 wether it's whole # or not

8th: CCT name
(look in your hof_furni folder or w/e, click rename "hh_furni_xx_throne.cct", and copy name "throne")
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, 'throne', '', , '', '', '', 1);
post between '' to show what item server is getting

9th: color
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, 'throne', '0, 0, 0', , '', '', '', 1);
showing that it is its normal color

10th: page id
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, 'throne', '0, 0, 0', 1, '', '', '', 1);
showing that the page it appears in is 1

11th: Door, Trade, Recycle
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, 'throne', '0, 0, 0', 1, '0', '1', '1', 1);
showing it is not a door, is tradeable, and is recycleable

(optional - Dissi's v26) 12th: picture (add between `recycleable`, `catalogue_id_index`)
Code:
(1, 'NAME', 'DESC', 25, 2, 1, 1, 1.00, 'throne', '0, 0, 0', 1, '0', '1', '1', 'placeholder.gif', 1);
showing the ph box (web catalogue)

If you get an error saying something about duplicate entry for 'tidnumberhere' just change the tid and catalogue_id_index numbers to something not taken ;)

That is basically how to make SQL furni ;)
 
Last edited:
RaGEZONE VETERAN
Loyal Member
Joined
Aug 9, 2007
Messages
410
Reaction score
13
I don't have the picture thing in my hotel, simply because it lags up the SQL server. But it's a nice tutorial, but itsn't it common sense?
 

AWA

Master Summoner
Loyal Member
Joined
Feb 24, 2008
Messages
595
Reaction score
389
Good tut, i aleredy know how to do this but it's good for noobs!
 
d.^.^.b
Loyal Member
Joined
Mar 31, 2008
Messages
1,344
Reaction score
38
THanks ricky nice post :p Never had the time to actually try :p
 
Status
Not open for further replies.
Back
Top