Thread: ItemBonuses SQL loader

Page 1 of 2 12 LastLast
Results 1 to 10 of 13
  1. #1 ItemBonuses SQL loader 
    Registered Member
    Join Date
    Feb 2014
    Posts
    118
    Thanks given
    13
    Thanks received
    0
    Rep Power
    18
    I am having some issues hacking an ItemBonusesUnpacker.java to load an SQL database with item bonuses. This solution works about halfway, with some items not being included and throwing errors. This is the class i am using, it is hacked together so don't judge Also is there is an easier way to do this please let me know. If i remove the for loop and set the int itemId manually it will load that objects bonuses fine. If i leave the for loop it it cycles from 0 to 30000 regardless of if the item has bonuses or not. Most items load fine without errors but some throw exceptions in the console. I believe this is partly due to empty item ids from the upper ranges of the 30000 item limit. It does not see some item bonus values stack such as strength, ranged strength, and prayer. It also appears some items are not stored in the database yet still have values. No local loading is occuring serverside. Anyways thanks to whoever looks through this whole paragraph.

    Code:
    package com.foxtrot.utils.tools;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    
    import com.foxtrot.cache.Cache;
    import com.foxtrot.utils.tools.ItemBonuses;
    import com.foxtrot.utils.Logger;
    import com.foxtrot.utils.Utils;
    
    /**
     * @author Frosty Teh Snowman
     * 
     *         Unpacks the Item Bonuses that are packed into the bonuses.ib file.
     */
    public class ItemBonusesUnpacker {
    
    	public static final void main(String[] args) {
    		log("Unpacker Started.");
    		try {
    			Cache.init();
    			log("Cache Initiated.");
    		} catch (IOException e) {
    			log("Exception in initializing cache.");
    		}
    		ItemBonuses.init();
    		log("Item Bonuses Initiated.");
    		for (int itemId = 0; itemId < Utils.getItemDefinitionsSize(); itemId++) {
    			log("Getting Values for item " + itemId);
    			int[] bonuses = ItemBonuses.getItemBonuses(itemId);
    			try 			    
    			{
    			      String myDriver = "org.gjt.mm.mysql.Driver";
    			      Class.forName(myDriver);
    			      Connection conn = DriverManager.getConnection("jdbc:mysql://Localhost:3306/Q718", "root", "");
    
    			      String query = "INSERT INTO item_bonuses (itemId, Astab, Aslash, Acrush, Amagic, Arange, Dstab, Dslash, Dcrush, Dmagic, Drange, Dsummoning, AbsorbMelee, AbsorbMagic, AbsorbRange, Strength, RStrength, PRayer, MagicDamage)" + 
    							"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    
    			      PreparedStatement preparedStmt = conn.prepareStatement(query);
    				preparedStmt.setInt (1, itemId);
    			      preparedStmt.setInt (2, bonuses[0]);
    			      preparedStmt.setInt (3, bonuses[1]);
    			      preparedStmt.setInt (4, bonuses[2]);
    			      preparedStmt.setInt (5, bonuses[3]);
    			      preparedStmt.setInt (6, bonuses[4]);
    			      preparedStmt.setInt (7, bonuses[5]);
    			      preparedStmt.setInt (8, bonuses[6]);
    			      preparedStmt.setInt (9, bonuses[7]);
    			      preparedStmt.setInt (10, bonuses[8]);
    			      preparedStmt.setInt (11, bonuses[9]);
    			      preparedStmt.setInt (12, bonuses[10]);
    			      preparedStmt.setInt (13, bonuses[11]);
    			      preparedStmt.setInt (14, bonuses[12]);
    			      preparedStmt.setInt (15, bonuses[13]);
    			      preparedStmt.setInt (16, bonuses[14]);
    			      preparedStmt.setInt (17, bonuses[15]);
    			      preparedStmt.setInt (18, bonuses[16]);
    			      preparedStmt.setInt (19, bonuses[17]);
    				      
    				      preparedStmt.execute();
    			      
    			      conn.close();
    			    }
    			    catch (Exception e)
    			    {
    			      System.err.println("Got an exception!");
    			      System.err.println(e.getMessage());
    			    }
    			
    			
    			 catch (Throwable e) {
    			Logger.handle(e);
    		}
    		log("Finished Unpacking.");
    	}
    	}
    	private static void log(String s) {
    		System.out.println(s);
    	}
    
    }
    And this is my SQL table setup
    Attached image
    Reply With Quote  
     

  2. #2  
    Respected Member


    Join Date
    Jan 2009
    Posts
    5,743
    Thanks given
    1,162
    Thanks received
    3,603
    Rep Power
    5000
    Quote Originally Posted by EatMYHacks View Post
    I am having some issues hacking an ItemBonusesUnpacker.java to load an SQL database with item bonuses. This solution works about halfway, with some items not being included and throwing errors. This is the class i am using, it is hacked together so don't judge Also is there is an easier way to do this please let me know. If i remove the for loop and set the int itemId manually it will load that objects bonuses fine. If i leave the for loop it it cycles from 0 to 30000 regardless of if the item has bonuses or not. Most items load fine without errors but some throw exceptions in the console. I believe this is partly due to empty item ids from the upper ranges of the 30000 item limit. It does not seem to store AbsorbMelee, Strength, Prayer, or MagicDamage. All those values are 0. It also appears some items are not stored in the database yet still have values. No local loading is occuring serverside. Anyways thanks to whoever looks through this whole paragraph.

    Code:
    package com.foxtrot.utils.tools;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    
    import com.foxtrot.cache.Cache;
    import com.foxtrot.utils.tools.ItemBonuses;
    import com.foxtrot.utils.Logger;
    import com.foxtrot.utils.Utils;
    
    /**
     * @author Frosty Teh Snowman
     * 
     *         Unpacks the Item Bonuses that are packed into the bonuses.ib file.
     */
    public class ItemBonusesUnpacker {
    
    	public static final void main(String[] args) {
    		log("Unpacker Started.");
    		try {
    			Cache.init();
    			log("Cache Initiated.");
    		} catch (IOException e) {
    			log("Exception in initializing cache.");
    		}
    		ItemBonuses.init();
    		log("Item Bonuses Initiated.");
    		for (int itemId = 0; itemId < Utils.getItemDefinitionsSize(); itemId++) {
    			log("Getting Values for item " + itemId);
    			int[] bonuses = ItemBonuses.getItemBonuses(itemId);
    			try 			    
    			{
    			      String myDriver = "org.gjt.mm.mysql.Driver";
    			      Class.forName(myDriver);
    			      Connection conn = DriverManager.getConnection("jdbc:mysql://Localhost:3306/Q718", "root", "");
    
    			      String query = "INSERT INTO item_bonuses (itemId, Astab, Aslash, Acrush, Amagic, Arange, Dstab, Dslash, Dcrush, Dmagic, Drange, Dsummoning, AbsorbMelee, AbsorbMagic, AbsorbRange, Strength, RStrength, PRayer, MagicDamage)" + 
    							"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    
    			      PreparedStatement preparedStmt = conn.prepareStatement(query);
    				preparedStmt.setInt (1, itemId);
    			      preparedStmt.setInt (2, bonuses[0]);
    			      preparedStmt.setInt (3, bonuses[1]);
    			      preparedStmt.setInt (4, bonuses[2]);
    			      preparedStmt.setInt (5, bonuses[3]);
    			      preparedStmt.setInt (6, bonuses[4]);
    			      preparedStmt.setInt (7, bonuses[5]);
    			      preparedStmt.setInt (8, bonuses[6]);
    			      preparedStmt.setInt (9, bonuses[7]);
    			      preparedStmt.setInt (10, bonuses[8]);
    			      preparedStmt.setInt (11, bonuses[9]);
    			      preparedStmt.setInt (12, bonuses[10]);
    			      preparedStmt.setInt (13, bonuses[11]);
    			      preparedStmt.setInt (14, bonuses[12]);
    			      preparedStmt.setInt (15, bonuses[13]);
    			      preparedStmt.setInt (16, bonuses[14]);
    			      preparedStmt.setInt (17, bonuses[15]);
    			      preparedStmt.setInt (18, bonuses[16]);
    			      preparedStmt.setInt (19, bonuses[17]);
    				      
    				      preparedStmt.execute();
    			      
    			      conn.close();
    			    }
    			    catch (Exception e)
    			    {
    			      System.err.println("Got an exception!");
    			      System.err.println(e.getMessage());
    			    }
    			
    			
    			 catch (Throwable e) {
    			Logger.handle(e);
    		}
    		log("Finished Unpacking.");
    	}
    	}
    	private static void log(String s) {
    		System.out.println(s);
    	}
    
    }
    And this is my SQL table setup
    Attached image
    Include the errors
    Reply With Quote  
     

  3. #3  
    Registered Member
    Join Date
    Jul 2016
    Age
    27
    Posts
    392
    Thanks given
    19
    Thanks received
    61
    Rep Power
    68
    Hard to speculate without seeing any errors from your side.
    Thanks,
    Mikk
    Reply With Quote  
     

  4. #4  
    Registered Member
    Join Date
    Feb 2014
    Posts
    118
    Thanks given
    13
    Thanks received
    0
    Rep Power
    18
    I agree however there are no errors other than warnings, partially why I've hit a wall.

    Edit: This is the error I receive upon launching the code, I've picked out one section but its the same for every item. It still is able to load the item into the database however.
    Code:
    Getting Values for item 433
    Got an exception!
    Data source rejected establishment of connection,  message from server: "Too many connections"
    Finished Unpacking.
    Reply With Quote  
     

  5. #5  
    Registered Member
    Join Date
    Jul 2016
    Age
    27
    Posts
    392
    Thanks given
    19
    Thanks received
    61
    Rep Power
    68
    Quote Originally Posted by EatMYHacks View Post
    I agree however there are no errors other than warnings, partially why I've hit a wall.

    Edit: This is the error I receive upon launching the code, I've picked out one section but its the same for every item. It still is able to load the item into the database however.
    Code:
    Getting Values for item 433
    Got an exception!
    Data source rejected establishment of connection,  message from server: "Too many connections"
    Finished Unpacking.
    Do you connect to local sql?
    Edit: You can change the max connections with something like this
    Code:
    set global max_connections = 200;
    Thanks,
    Mikk
    Reply With Quote  
     

  6. #6  
    Registered Member
    Join Date
    Feb 2014
    Posts
    118
    Thanks given
    13
    Thanks received
    0
    Rep Power
    18
    Quote Originally Posted by flosd View Post
    Do you connect to local sql?
    Yes it is a local install to setup the tables before export to a permanent location.

    Quote Originally Posted by flosd View Post
    Do you connect to local sql?
    Edit: You can change the max connections with something like this
    Code:
    set global max_connections = 200;
    Im not terribly concerned about those errors, they are from me not closing out the connection properly, but that isn't an issue as this wont be run more than once as soon as it works properly. These errors are similar, telling me it couldn't establish a socket due to there being a set limit.
    Code:
    Getting Values for item 1291
    Got an exception!
    The driver was unable to create a connection due to an inability to establish the client portion of a socket.
    
    This is usually caused by a limit on the number of sockets imposed by the operating system. This limit is usually configurable. 
    
    For Unix-based platforms, see the manual page for the 'ulimit' command. Kernel or system reconfiguration may also be required.
    
    For Windows-based platforms, see Microsoft Knowledge Base Article 196271 (Q196271).
    Reply With Quote  
     

  7. #7  
    Registered Member
    Join Date
    Jul 2016
    Age
    27
    Posts
    392
    Thanks given
    19
    Thanks received
    61
    Rep Power
    68
    Quote Originally Posted by EatMYHacks View Post
    Yes it is a local install to setup the tables before export to a permanent location.


    Im not terribly concerned about those errors, they are from me not closing out the connection properly, but that isn't an issue as this wont be run more than once as soon as it works properly. These errors are similar, telling me it couldn't establish a socket due to there being a set limit.
    Code:
    Getting Values for item 1291
    Got an exception!
    The driver was unable to create a connection due to an inability to establish the client portion of a socket.
    
    This is usually caused by a limit on the number of sockets imposed by the operating system. This limit is usually configurable. 
    
    For Unix-based platforms, see the manual page for the 'ulimit' command. Kernel or system reconfiguration may also be required.
    
    For Windows-based platforms, see Microsoft Knowledge Base Article 196271 (Q196271).
    That's why I said to make your limit higher. I can help you out, add me on discord: efukela#7925
    Thanks,
    Mikk
    Reply With Quote  
     

  8. #8  
    Respected Member


    Join Date
    Jan 2009
    Posts
    5,743
    Thanks given
    1,162
    Thanks received
    3,603
    Rep Power
    5000
    you should be using one database connection not 100's of them, also use addbatch() and then executeBatch(), ?useServerPrepStmts=false&rewriteBatchedStatements =true will also speed it up massively
    Reply With Quote  
     

  9. #9  
    Registered Member
    Join Date
    Feb 2014
    Posts
    118
    Thanks given
    13
    Thanks received
    0
    Rep Power
    18
    Quote Originally Posted by Spooky View Post
    you should be using one database connection not 100's of them, also use addbatch() and then executeBatch(), ?useServerPrepStmts=false&rewriteBatchedStatements =true will also speed it up massively
    Not sure how much faster its gotten but this is what ive got so far.
    Code:
    package com.foxtrot.utils.tools;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    
    import com.foxtrot.cache.Cache;
    import com.foxtrot.utils.tools.ItemBonuses;
    import com.foxtrot.utils.Logger;
    import com.foxtrot.utils.Utils;
    
    /**
     * @author Frosty Teh Snowman
     * 
     *         Unpacks the Item Bonuses that are packed into the bonuses.ib file.
     */
    public class ItemBonusesUnpacker {
    
    	public static final void main(String[] args) {
    		log("Unpacker Started.");
    		try {
    			Cache.init();
    			log("Cache Initiated.");
    		} catch (IOException e) {
    			log("Exception in initializing cache.");
    		}
    		ItemBonuses.init();
    		log("Item Bonuses Initiated.");
    	      
    
    		for (int itemId = 0; itemId < Utils.getItemDefinitionsSize(); itemId++) {
    			log("Getting Values for item " + itemId);
    			int[] bonuses = ItemBonuses.getItemBonuses(itemId);
    			try 			    
    			{
    			      String myDriver = "org.gjt.mm.mysql.Driver";
    			      Class.forName(myDriver);
    			      Connection conn = DriverManager.getConnection("jdbc:mysql://Localhost:3306/Q718?useServerPrepStmts=false&rewriteBatchedStatements=true", "root", "");
    			      
    			      String query = "INSERT INTO item_bonuses (itemId, Astab, Aslash, Acrush, Amagic, Arange, Dstab, Dslash, Dcrush, Dmagic, Drange, Dsummoning, AbsorbMelee, AbsorbMagic, AbsorbRange, Strength, RStrength, PRayer, MagicDamage)" + 
    							"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    
    			      PreparedStatement preparedStmt = conn.prepareStatement(query);
    			      preparedStmt.setInt (1, itemId);
    			      preparedStmt.setInt (2, bonuses[0]);
    			      preparedStmt.setInt (3, bonuses[1]);
    			      preparedStmt.setInt (4, bonuses[2]);
    			      preparedStmt.setInt (5, bonuses[3]);
    			      preparedStmt.setInt (6, bonuses[4]);
    			      preparedStmt.setInt (7, bonuses[5]);
    			      preparedStmt.setInt (8, bonuses[6]);
    			      preparedStmt.setInt (9, bonuses[7]);
    			      preparedStmt.setInt (10, bonuses[8]);
    			      preparedStmt.setInt (11, bonuses[9]);
    			      preparedStmt.setInt (12, bonuses[10]);
    			      preparedStmt.setInt (13, bonuses[11]);
    			      preparedStmt.setInt (14, bonuses[12]);
    			      preparedStmt.setInt (15, bonuses[13]);
    			      preparedStmt.setInt (16, bonuses[14]);
    			      preparedStmt.setInt (17, bonuses[15]);
    			      preparedStmt.setInt (18, bonuses[16]);
    			      preparedStmt.setInt (19, bonuses[17]);
    				  preparedStmt.addBatch(); 
    				  
    				  preparedStmt.executeBatch();
    			      
    			      
    			    }
    			
    			    catch (Exception e)
    			    {
    			      System.err.println("Got an exception!");
    			      System.err.println(e.getMessage());
    			    }
    			
    			
    			 catch (Throwable e) {
    			Logger.handle(e);
    		}
    		log("Finished Unpacking.");
    		}
    	}
    	private static void log(String s) {
    		System.out.println(s);
    	}
    Reply With Quote  
     

  10. #10  
    Respected Member


    Join Date
    Jan 2009
    Posts
    5,743
    Thanks given
    1,162
    Thanks received
    3,603
    Rep Power
    5000
    Quote Originally Posted by EatMYHacks View Post
    Not sure how much faster its gotten but this is what ive got so far.
    Code:
    package com.foxtrot.utils.tools;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    
    import com.foxtrot.cache.Cache;
    import com.foxtrot.utils.tools.ItemBonuses;
    import com.foxtrot.utils.Logger;
    import com.foxtrot.utils.Utils;
    
    /**
     * @author Frosty Teh Snowman
     * 
     *         Unpacks the Item Bonuses that are packed into the bonuses.ib file.
     */
    public class ItemBonusesUnpacker {
    
    	public static final void main(String[] args) {
    		log("Unpacker Started.");
    		try {
    			Cache.init();
    			log("Cache Initiated.");
    		} catch (IOException e) {
    			log("Exception in initializing cache.");
    		}
    		ItemBonuses.init();
    		log("Item Bonuses Initiated.");
    	      
    
    		for (int itemId = 0; itemId < Utils.getItemDefinitionsSize(); itemId++) {
    			log("Getting Values for item " + itemId);
    			int[] bonuses = ItemBonuses.getItemBonuses(itemId);
    			try 			    
    			{
    			      String myDriver = "org.gjt.mm.mysql.Driver";
    			      Class.forName(myDriver);
    			      Connection conn = DriverManager.getConnection("jdbc:mysql://Localhost:3306/Q718?useServerPrepStmts=false&rewriteBatchedStatements=true", "root", "");
    			      
    			      String query = "INSERT INTO item_bonuses (itemId, Astab, Aslash, Acrush, Amagic, Arange, Dstab, Dslash, Dcrush, Dmagic, Drange, Dsummoning, AbsorbMelee, AbsorbMagic, AbsorbRange, Strength, RStrength, PRayer, MagicDamage)" + 
    							"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
    
    			      PreparedStatement preparedStmt = conn.prepareStatement(query);
    			      preparedStmt.setInt (1, itemId);
    			      preparedStmt.setInt (2, bonuses[0]);
    			      preparedStmt.setInt (3, bonuses[1]);
    			      preparedStmt.setInt (4, bonuses[2]);
    			      preparedStmt.setInt (5, bonuses[3]);
    			      preparedStmt.setInt (6, bonuses[4]);
    			      preparedStmt.setInt (7, bonuses[5]);
    			      preparedStmt.setInt (8, bonuses[6]);
    			      preparedStmt.setInt (9, bonuses[7]);
    			      preparedStmt.setInt (10, bonuses[8]);
    			      preparedStmt.setInt (11, bonuses[9]);
    			      preparedStmt.setInt (12, bonuses[10]);
    			      preparedStmt.setInt (13, bonuses[11]);
    			      preparedStmt.setInt (14, bonuses[12]);
    			      preparedStmt.setInt (15, bonuses[13]);
    			      preparedStmt.setInt (16, bonuses[14]);
    			      preparedStmt.setInt (17, bonuses[15]);
    			      preparedStmt.setInt (18, bonuses[16]);
    			      preparedStmt.setInt (19, bonuses[17]);
    				  preparedStmt.addBatch(); 
    				  
    				  preparedStmt.executeBatch();
    			      
    			      
    			    }
    			
    			    catch (Exception e)
    			    {
    			      System.err.println("Got an exception!");
    			      System.err.println(e.getMessage());
    			    }
    			
    			
    			 catch (Throwable e) {
    			Logger.handle(e);
    		}
    		log("Finished Unpacking.");
    		}
    	}
    	private static void log(String s) {
    		System.out.println(s);
    	}

    Code:
        public static final void main(String[] args) {
            System.out.println("Unpacker Started.");
            try {
                Cache.init();
                System.out.println("Cache Initiated.");
            } catch (IOException e) {
                System.out.println("Exception in initializing cache.");
            }
            ItemBonuses.init();
            System.out.println("Item Bonuses Initiated.");
    
            try {
                // shouldn't even need this
                Class.forName( "org.gjt.mm.mysql.Driver");
                try (Connection conn = DriverManager.getConnection("jdbc:mysql://Localhost:3306/Q718?useServerPrepStmts=false&rewriteBatchedStatements=true", "root", "")) {
                    try (PreparedStatement preparedStmt = conn.prepareStatement("INSERT INTO item_bonuses (itemId, Astab, Aslash, Acrush, Amagic, Arange, Dstab, Dslash, Dcrush, Dmagic, Drange, Dsummoning, AbsorbMelee, AbsorbMagic, AbsorbRange, Strength, RStrength, PRayer, MagicDamage)" +
                        "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")) {
    
                        for (int itemId = 0; itemId < Utils.getItemDefinitionsSize(); itemId++) {
                            System.out.println("Getting Values for item " + itemId);
                            int[] bonuses = ItemBonuses.getItemBonuses(itemId);
                            preparedStmt.setInt(1, itemId);
                            preparedStmt.setInt(2, bonuses[0]);
                            preparedStmt.setInt(3, bonuses[1]);
                            preparedStmt.setInt(4, bonuses[2]);
                            preparedStmt.setInt(5, bonuses[3]);
                            preparedStmt.setInt(6, bonuses[4]);
                            preparedStmt.setInt(7, bonuses[5]);
                            preparedStmt.setInt(8, bonuses[6]);
                            preparedStmt.setInt(9, bonuses[7]);
                            preparedStmt.setInt(10, bonuses[8]);
                            preparedStmt.setInt(11, bonuses[9]);
                            preparedStmt.setInt(12, bonuses[10]);
                            preparedStmt.setInt(13, bonuses[11]);
                            preparedStmt.setInt(14, bonuses[12]);
                            preparedStmt.setInt(15, bonuses[13]);
                            preparedStmt.setInt(16, bonuses[14]);
                            preparedStmt.setInt(17, bonuses[15]);
                            preparedStmt.setInt(18, bonuses[16]);
                            preparedStmt.setInt(19, bonuses[17]);
                            preparedStmt.addBatch();
                        }
    
                        System.out.println("executing query");
                        preparedStmt.executeBatch();
                        System.out.println("finished unpacking");
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    Reply With Quote  
     

  11. Thankful user:


Page 1 of 2 12 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Sql Scape!
    By meiscooldude in forum Downloads
    Replies: 33
    Last Post: 09-16-2008, 03:24 AM
  2. Dumped worldmap XML and SQL Files.
    By Zachera in forum Downloads
    Replies: 16
    Last Post: 05-25-2008, 07:50 AM
  3. [SQL]Adding World Objects[/SQL]
    By Harvey in forum Tutorials
    Replies: 7
    Last Post: 02-16-2008, 04:55 PM
  4. [FIX] A fix for my members loader..
    By Santa Clause in forum Tutorials
    Replies: 3
    Last Post: 10-30-2007, 06:21 PM
  5. p16 V6 converted to SQL
    By PrimEviL in forum Downloads
    Replies: 8
    Last Post: 10-07-2007, 06:43 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •