Jump to content

[DEV] Dungeon Finder


Recommended Posts

  • Replies 288
  • Created
  • Last Reply

Top Posters In This Topic

People don't read... cyberium is rewriting from scratch the Dungeon Finder, so don't expect more patches or updates in the dungeonfinder branch of his git repository until he's done with the new code.

You have this options:

a) Wait until cyberium ends coding the new Dungeon Finder

b) Wait until someone else fix the merge problems

c) Learn C++

Link to comment
Share on other sites

  • 2 weeks later...

Hi,

Two more question :

Assume one group with 3 guy for ex.

Leader add the group to LFG Queue.

- If leader quit group/or get disconected what happen to 1) his queue status, 2) his two member queue status?

- If candidat found (to complete group) and proposal is refused (or timed out) by one of already grouped guy, is all the group leave the queue or only the guy refused?

Thanks for any answear.

Link to comment
Share on other sites

Hi,

Two more question :

Assume one group with 3 guy for ex.

Leader add the group to LFG Queue.

- If leader quit group/or get disconected what happen to 1) his queue status, 2) his two member queue status?

- If candidat found (to complete group) and proposal is refused (or timed out) by one of already grouped guy, is all the group leave the queue or only the guy refused?

Thanks for any answear.

- If someone leaves group while queued, other still get queued with same roles they already selected, but queue time is reset (leave + autojoin).

- if someone leaves group and it gets disbanded all are removed from queue

- if someone goes offline group is removed from queue

- If someone from your group refuses the proposal all group is removed from queue.

Link to comment
Share on other sites

Hi,

Two more question :

Assume one group with 3 guy for ex.

Leader add the group to LFG Queue.

- If leader quit group/or get disconected what happen to 1) his queue status, 2) his two member queue status?

- If candidat found (to complete group) and proposal is refused (or timed out) by one of already grouped guy, is all the group leave the queue or only the guy refused?

Thanks for any answear.

- If someone leaves group while queued, other still get queued with same roles they already selected, but queue time is reset (leave + autojoin).

- if someone leaves group and it gets disbanded all are removed from queue

- if someone goes offline group is removed from queue

- If someone from your group refuses the proposal all group is removed from queue.

I can confirm this from experience on retail servers.

Link to comment
Share on other sites

Hi,

Some issue i have.

- Unknown group member name after teleport... If i deleay each teleport and send and "grp->SendUpdate()" the issue can be greatly dimunued but not resolved. I tried many workaround without succes, if anyone can help me here at least for pointing some place where i can take a look...

- When player is teleported out the dungeon it appear offline or died for other member. All my try to identify problem are failed until now.

These two issue are not blocking but annoying... So if do not hesit to contact me if you know anything about these issues.

I will soon post some little patch for group.cpp followed some time after by the big LFG patch still in developement mode.

Greetings

Link to comment
Share on other sites

I think those issues are clean core problems now. On my server if you relog in raid, for example, sometimes after conecting you see all members as "unknow", also show player as disconnected or death when he is on other map happens on clean core I think. So, not related with dungeon finder.

Link to comment
Share on other sites

EDIT: in current mangos core this is dangerous since GetZoneId() function call in HandleRequestPartyMemberStatsOpcode() will call GetMap() function for player which is not in world -> ASSERT will fail. Not applicable.

Comfirmed just tried it (before you post)

Iam trying to not call GetZoneId if not in world.

Ok sending zero for zone id and position when player is not in world work.

So is it possible to retrieve these data without crash system ?

Because now the status of player is correctly shown when member change map.

Edit:

Work great!

This not nesolve Unknown issue unfortunaly.

Link to comment
Share on other sites

This not nesolve Unknown issue unfortunaly.

cyberium, you should check Group::SendUpdate() code then - it contains ObjectAccessor::FindPlayer() calls which produced issues in HandleRequestPartyMemberStatsOpcode().

EDIT: replacing ObjectAccessor::FindPlayer() by HashMapHolder<Player>::Find() function calls in Group::SendUpdate() should solve your issue.

Link to comment
Share on other sites

EDIT: replacing ObjectAccessor::FindPlayer() by HashMapHolder<Player>::Find() function calls in Group::SendUpdate() should solve your issue.

Triyed, it's the same result...

Changed 2 getplayer by holder system but get same result.

Set spy log to see if name is sended and check hex value of packet and all is ok.

Link to comment
Share on other sites

Hi, i'm leaving a message to thanks you all for the work you are putting in the dungeon finder, as it is a very waited feature.

Can we have some news on how cyberium is going on with the project ? can we get anything to betatest on our servers ? i don't know much but i would be more than happy to help by testing the fonction, even if it isn't the final version :)

Truly yours, Kyro333

PS: i have read all the subject, but i didn't understand all of it, so sorry if my intervention is useless ^^'.

Link to comment
Share on other sites

It's not useless i know i have lack of news :)

DungeonFinder has take lot of more time than i was imagined. Olso i had to reverse some implementation due to bad design so lotof time wasted.

There is so much possibility that can crash server or make it instable so the code must be tested in evrey improbable situation.

Iam olso let it in DEV mode when i will release it because after all this time i still don't haved time to look on reward. Big part of DungeonFinder.

Fortunatly i have support from SPP (first developer of DF on trinityCore) to continue my implementation. Many thanks to him.

Where i am?

- join queue solo

- join queue group

- all leave situation

- rolecheck

- proposal

- find group (with possibility to complete queued group by another queued group)

- create group

- teleportation (and exit instance handled)

- statisitc (windows information)

- KickVote

- buff and debuff.

- reward

This list only for information because i often get back to already done code due to new forgetted situation.

I think i will finish kickvoting today so the other feature can be implemented after the first release.

I faced performence issue SPP point me to cache all my computed data but not implemented for now. This point will be in the todo.

Good point is i still have motivation to continue and improve it :)

I prefer to not give you a delay but be sure iam doing my best to make a releasable code soon.

Link to comment
Share on other sites

Hi

Do this stuff work on retail?

When i initiate kick voting i didn't get any box to enter the reason.

When LfgGroup is formed all member still have theres join button active on the LFG windows. is it normal?

When i apply 15 min cooldown i have join windows have mixed info.

If anyone can help me especialy about opcode sniffing.

Here is video for better comprehension about actual bug in my implementation

Olso, for kick system, limit of kick is two, but is this mean :

- when group have 3 player kick is desactived

- or limit is two haven if other member completed the group, kick is definitly unaviable for this Lfg group.

Link to comment
Share on other sites

Simply one session with lfg data/opcode on it.

From join to leave,

If you can olso set any kick on it this will be a bonnus for me.

Here is some of them

SMSG_LFG_PLAYER_INFO

SMSG_LFG_PARTY_INFO

SMSG_LFG_UPDATE_PLAYER

SMSG_LFG_UPDATE_PARTY

SMSG_LFG_BOOT_PLAYER

But probably need other some other.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use