Thread: Object Spawn Data

Results 1 to 5 of 5
  1. #1 Object Spawn Data 
    Registered Member
    Stugger's Avatar
    Join Date
    Apr 2016
    Posts
    188
    Thanks given
    116
    Thanks received
    262
    Rep Power
    299
    I have dumped a list of the amount of times every object (0-62353) is spawned in the game. I did this particularly to find objects that are unused and can be safely over-written.
    Note that a lot of the 0 spawned objects are objects that are intended to be spawned server side (for gfx / animation reasons). I also included the types associated with each object.

    I don't have a clean 667 cache so this may not be 100% accurate as it's based off the cleanest version of my cache that I have before I started messing with maps.

    DOWNLOAD

    I've also included a txt file that lists only objects with no spawns

    What the file looks like:
    Reply With Quote  
     

  2. Thankful users:


  3. #2  
    Donator

    Castiel's Avatar
    Join Date
    Apr 2013
    Posts
    1,635
    Thanks given
    527
    Thanks received
    250
    Discord
    View profile
    Rep Power
    451
    good release as always
    Reply With Quote  
     

  4. Thankful user:


  5. #3  
    Registered Member

    Join Date
    May 2008
    Posts
    446
    Thanks given
    136
    Thanks received
    52
    Rep Power
    355
    Did you do this so you don't have to add support for archive ids > 65535?
    (Since js5 in 667 didn't support it yet.)

    If yes, here's what I did when packing objects:
    Code:
            if(packId >= 65536) {
                int shortId = packId - 65536;
                if(shortId > 65535) //668 cache had about 63k objs. There's no way in the world we add more than 65k.
                    throw new RuntimeException("TOO MANY OBJECT IDS!");
                archiveId = 256 + (shortId >>> 8);
                fileId = shortId & 0xff;
            } else {
                archiveId = packId >>> 8;
                fileId = packId & 0xff;
            }
    You will need to change how object defs are read in the client, but this is a cheap fix for not having support for archives > 65535.

    Proof of concept: (OSRS region packed where we start new object ids off at 65536)




    (Click on the logo above to view our server!)
    Reply With Quote  
     

  6. Thankful users:


  7. #4  
    Registered Member
    Stugger's Avatar
    Join Date
    Apr 2016
    Posts
    188
    Thanks given
    116
    Thanks received
    262
    Rep Power
    299
    Quote Originally Posted by Extea View Post
    Did you do this so you don't have to add support for archive ids > 65535?
    (Since js5 in 667 didn't support it yet.)

    If yes, here's what I did when packing objects:
    Code:
            if(packId >= 65536) {
                int shortId = packId - 65536;
                if(shortId > 65535) //668 cache had about 63k objs. There's no way in the world we add more than 65k.
                    throw new RuntimeException("TOO MANY OBJECT IDS!");
                archiveId = 256 + (shortId >>> 8);
                fileId = shortId & 0xff;
            } else {
                archiveId = packId >>> 8;
                fileId = packId & 0xff;
            }
    You will need to change how object defs are read in the client, but this is a cheap fix for not having support for archives > 65535.

    Proof of concept: (OSRS region packed where we start new object ids off at 65536)
    I have customers who use their own models on a map and aren’t too knowledgeable on adding new objects so I use this to find suitable objects for them to overwrite models it’s also a nice way to find objects intended for server-sided spawn.

    That’s a nice bit of information though, thank you for that!
    Reply With Quote  
     

  8. Thankful user:


  9. #5  
    Banned

    Join Date
    Jun 2010
    Age
    24
    Posts
    4,887
    Thanks given
    1,698
    Thanks received
    1,597
    Discord
    View profile
    Rep Power
    0
    Quote Originally Posted by Extea View Post
    Did you do this so you don't have to add support for archive ids > 65535?
    (Since js5 in 667 didn't support it yet.)

    If yes, here's what I did when packing objects:
    Code:
            if(packId >= 65536) {
                int shortId = packId - 65536;
                if(shortId > 65535) //668 cache had about 63k objs. There's no way in the world we add more than 65k.
                    throw new RuntimeException("TOO MANY OBJECT IDS!");
                archiveId = 256 + (shortId >>> 8);
                fileId = shortId & 0xff;
            } else {
                archiveId = packId >>> 8;
                fileId = packId & 0xff;
            }
    You will need to change how object defs are read in the client, but this is a cheap fix for not having support for archives > 65535.

    Proof of concept: (OSRS region packed where we start new object ids off at 65536)

    This is really good information! Rep++
    Reply With Quote  
     


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. All Lists - item, object and NPC
    By purepkownage in forum Configuration
    Replies: 8
    Last Post: 12-03-2007, 12:34 AM
  2. [TuT] Train Mage on an Object!! [TuT]
    By Numbers in forum Tutorials
    Replies: 6
    Last Post: 05-17-2007, 01:20 AM
  3. Making Objects Cases
    By sarah101 in forum Tutorials
    Replies: 6
    Last Post: 05-15-2007, 09:34 AM
  4. All Lists - item, object and NPC
    By purepkownage in forum Tools
    Replies: 2
    Last Post: 05-11-2007, 09:46 AM
  5. Making Object Doing Sumtin.
    By Santa Noobie in forum Tutorials
    Replies: 0
    Last Post: 05-06-2007, 06:33 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
  •