Page 2 of 2 FirstFirst 12
Results 16 to 23 of 23

Thread: NEWS: MySEQ Open v1.22 Released

  1. #16
    Registered User
    Join Date
    Dec 2004
    Posts
    284

    Re: NEWS: MySEQ Open v1.22 Released

    Quote Originally Posted by kublaii_khaii View Post
    The issue with the spawn points, does that effect saving mob data? (It doesn't seem to work; doesn't save respawn times and/or the loc of the mob that has spawned in a particular location - which is useful for tracking named mobs).
    None of that works in v1.22. The only thing that might help you is if you increase the debugging level to like 10. Then I think it prints out every detected spawn and its location in the log file. You will have to wade thru the log file to determine the information for yourself. Also, the information may be in map coordinates or loc coordinates, I forget which. There is a translation between the two, tho. Also, if you aggro a mob that has just popped, and it runs toward you, the 'initial' spot that the tool detects may differ from what is correct, since you made the mob move prematurely. You may also see that the initial spot coordinates are rounded. This is because Sony did a neat thing a long time ago to counter the 'spawn tracking' logic of MySEQ and SEQ. What they do is to simply spawn a mob in an area, not at a point. This area can also include vertical space, which is why sometimes you see a mob 'fall' into position. I have detected 'pops' that were several clicks off the ground. What I do is round down to the nearest 5 or 10 clicks and call that the 'initial position'. That way, if a mob repops at 6,6 or 7,7 or 6,9 or 9,5, I will treat them all as 5,5. This seemed to fix most spawns, but they do another tricky thing that screws everything up.. which is why the feature is not currently working.
    Thanks for all the donuts.

  2. #17
    Registered User
    Join Date
    Nov 2002
    Posts
    36

    Re: NEWS: MySEQ Open v1.22 Released

    Since Seaxouri is now gone, has anyone done any work out of CVS to improve spawn timers in the newest client. I have been using the older 19.x client but am itching to get the spawn timers working in the newer client.

    Does anyone recall what he meant by
    but they do another tricky thing that screws everything up.. which is why the feature is not currently working.
    Is it that they randomly change the interval between spawns? I have noticed that in some zones on the old client. I suppose it will become appaernt when I start digging through the code.

    Anyways, I thought this would be a good way to get some rust out of my coding skills since I get to start with pretty much completed code.

  3. #18
    Registered User
    Join Date
    Dec 2004
    Posts
    284

    Re: NEWS: MySEQ Open v1.22 Released

    The tricky thing they did was that before, each spawn was married to a pointer value in memory. The way the spawnlist code worked was that we created a hash value based on the pointer value and kept track of the spawn as it was created, killed (corpsed) and ultimately destroyed.

    Around 2 years ago they made it so the pointer was not married to the spawn. So the pointer to the structure would change periodically (you would see this as the zone stuttering in game). When that happened, the entire spawnlist in memory got new pointers, and all the old hashes were invalid.. we basically lost track of what was what.

    The old client kept reading every spawn everytime, which is why it was very slow and bogged down older machines... but it would work.

    I forget the details, but I think to workaround this, I periodically wiped the list and regot it. But it messed up keeping track of spawn timers.

    For spawn timers, the early zones would always drop the new characters in the same x,y,z location. They got wise to that and decided to drop mobs in a random sized 'box' around a point in x,y,z space. This is why in a lot of newer zones, the old client won't track spawn timers properly. I wrote a bunch of code that created hashes based on a box around a point and the name of the mob. There were some mobs that were so close together this messed with the formula. In addition they changed the name of the mob, so it was hard to determine if a pop was a nearby mob repopping or the previously killed mob repopping. On top of THAT they changed the time durations for some mobs. In the early game, they were fixed, so you could guess exactly when a mob would pop. With the box-drop, the name change, the proximity and the repop time change, it was very, very hard to predict spawn times.

    I never did get enough interest back to get it working again. Besides, I spent too much time working on getting other stuff working when the new releases came out.
    Thanks for all the donuts.

  4. #19
    Registered User
    Join Date
    Dec 2004
    Posts
    284

    Re: NEWS: MySEQ Open v1.22 Released

    On top of that they had 'blinking' spawns. These were spawns that would appear and disappear every few seconds, although you could not see them in game. These wreaked with the spawn timers too.
    Thanks for all the donuts.

  5. #20
    Registered User
    Join Date
    Sep 2006
    Posts
    97

    Re: NEWS: MySEQ Open v1.22 Released

    I'd be curious if the SpawnID value changes with they do this "refresh."

  6. #21
    Registered User
    Join Date
    Dec 2004
    Posts
    284

    Re: NEWS: MySEQ Open v1.22 Released

    Part of the problem was that I could not locate the spawnid for a long time (still cant), and I used the pointer to the struct as the spawnid.
    Thanks for all the donuts.

  7. #22
    Registered User
    Join Date
    Sep 2006
    Posts
    97

    Re: NEWS: MySEQ Open v1.22 Released

    The current offset for SpawnID is correct. If someone with CVS access can (and wants to), simply change Spawn.cpp->packNetBufferRaw() from:

    Code:
    //tempNetBuffer.id  = extractRawDWord(OT_id);
    tempNetBuffer.id  = _this;
    to:
    Code:
    tempNetBuffer.id  = extractRawDWord(OT_id);
    //tempNetBuffer.id  = _this;

  8. #23
    Developer
    Join Date
    Nov 2007
    Posts
    539

    Re: NEWS: MySEQ Open v1.22 Released

    Quote Originally Posted by Carpathian View Post
    The current offset for SpawnID is correct. If someone with CVS access can (and wants to), simply change Spawn.cpp->packNetBufferRaw() from:

    Code:
    //tempNetBuffer.id  = extractRawDWord(OT_id);
    tempNetBuffer.id  = _this;
    to:
    Code:
    tempNetBuffer.id  = extractRawDWord(OT_id);
    //tempNetBuffer.id  = _this;
    These changes worked for me using the 1.19.2 client with the 1.22 server. I hadn't used myseq in years and was just playing with it some. I needed something to buff up on my programming skills with.

    I went back to using the 1.19.2 client, and it worked fine with the v1.22 server. I found the new client just had too many visual effects. Less flash, more plain skittles for me ... thanks.

    Razzle

Thread Information

Users Browsing this Thread

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

Posting Permissions

You may post new threads
You may post replies
You may post attachments
You may edit your posts
HTML code is On
vB code is On
Smilies are On
[IMG] code is On