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
    208
    Thanks given
    119
    Thanks received
    294
    Rep Power
    358
    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:
    Attached image
    Reply With Quote  
     

  2. Thankful users:


  3. #2  
    🖤Runic Developer🖤
    Castiel's Avatar
    Join Date
    Apr 2013
    Posts
    1,752
    Thanks given
    564
    Thanks received
    288
    Rep Power
    609
    good release as always
    Attached image
    Attached image
    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)

    Attached image

    Attached image

    (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
    208
    Thanks given
    119
    Thanks received
    294
    Rep Power
    358
    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  
    Registered Member
    Tyluur's Avatar
    Join Date
    Jun 2010
    Age
    26
    Posts
    5,103
    Thanks given
    1,818
    Thanks received
    1,767
    Rep Power
    2438
    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)

    Attached image
    This is really good information! Rep++
    Quote Originally Posted by blakeman8192 View Post
    Keep trying. Quitting is the only true failure.
    Spoiler for skrrrrr:

    Attached image
    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
  •