Forums WoW Modding Support Archives WoWModding Threads [DiscordArchive] Hi, what files did you edit to make it work?

[DiscordArchive] Hi, what files did you edit to make it work?

[DiscordArchive] Hi, what files did you edit to make it work?

Pages (3): Previous 1 2 3 Next
rektbyfaith
Administrator
0
06-17-2025, 07:24 AM
#11
Archived author: Lis_Wef • Posted: 2025-06-17T07:24:16.701000+00:00
Original source

There is no real explanation on this topic at all, I went through everything, there was an article on an already deleted forum and that's it)
rektbyfaith
06-17-2025, 07:24 AM #11

Archived author: Lis_Wef • Posted: 2025-06-17T07:24:16.701000+00:00
Original source

There is no real explanation on this topic at all, I went through everything, there was an article on an already deleted forum and that's it)

rektbyfaith
Administrator
0
06-17-2025, 07:30 AM
#12
Archived author: Pantheon • Posted: 2025-06-17T07:30:48.503000+00:00
Original source

SpawnMask is easy to handle
rektbyfaith
06-17-2025, 07:30 AM #12

Archived author: Pantheon • Posted: 2025-06-17T07:30:48.503000+00:00
Original source

SpawnMask is easy to handle

rektbyfaith
Administrator
0
06-17-2025, 07:30 AM
#13
Archived author: Pantheon • Posted: 2025-06-17T07:30:52.480000+00:00
Original source

```enum Difficulty
{
REGULAR_DIFFICULTY = 0,

DUNGEON_DIFFICULTY_NORMAL = 0,
DUNGEON_DIFFICULTY_HEROIC = 1,
DUNGEON_DIFFICULTY_EPIC = 2,
DUNGEON_DIFFICULTY_EPIC_PLUS = 3,

RAID_DIFFICULTY_10_25MAN_NORMAL = 0,
RAID_DIFFICULTY_10_25MAN_HEROIC = 1,
RAID_DIFFICULTY_10_25MAN_MYTHIC = 2,
RAID_DIFFICULTY_25MAN_HEROIC = 3,
};

#define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that

#define MAX_DUNGEON_DIFFICULTY 3
#define MAX_RAID_DIFFICULTY 4
#define MAX_DIFFICULTY 4

enum SpawnMask
{
SPAWNMASK_CONTINENT = (1 << REGULAR_DIFFICULTY), // any any maps without spawn modes

SPAWNMASK_DUNGEON_NORMAL = (1 << DUNGEON_DIFFICULTY_NORMAL),
SPAWNMASK_DUNGEON_HEROIC = (1 << DUNGEON_DIFFICULTY_HEROIC),
SPAWNMASK_DUNGEON_EPIC = (1 << DUNGEON_DIFFICULTY_EPIC),

SPAWNMASK_DUNGEON_ALL = (SPAWNMASK_DUNGEON_NORMAL | SPAWNMASK_DUNGEON_HEROIC | SPAWNMASK_DUNGEON_EPIC),

SPAWNMASK_RAID_10MAN_NORMAL = (1 << RAID_DIFFICULTY_10_25MAN_NORMAL),
SPAWNMASK_RAID_25MAN_NORMAL = (1 << RAID_DIFFICULTY_10_25MAN_HEROIC),
SPAWNMASK_RAID_NORMAL_ALL = (SPAWNMASK_RAID_10MAN_NORMAL | SPAWNMASK_RAID_25MAN_NORMAL),

SPAWNMASK_RAID_10MAN_HEROIC = (1 << RAID_DIFFICULTY_10_25MAN_MYTHIC),
SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC),
SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC),

SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL),
};```
rektbyfaith
06-17-2025, 07:30 AM #13

Archived author: Pantheon • Posted: 2025-06-17T07:30:52.480000+00:00
Original source

```enum Difficulty
{
REGULAR_DIFFICULTY = 0,

DUNGEON_DIFFICULTY_NORMAL = 0,
DUNGEON_DIFFICULTY_HEROIC = 1,
DUNGEON_DIFFICULTY_EPIC = 2,
DUNGEON_DIFFICULTY_EPIC_PLUS = 3,

RAID_DIFFICULTY_10_25MAN_NORMAL = 0,
RAID_DIFFICULTY_10_25MAN_HEROIC = 1,
RAID_DIFFICULTY_10_25MAN_MYTHIC = 2,
RAID_DIFFICULTY_25MAN_HEROIC = 3,
};

#define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that

#define MAX_DUNGEON_DIFFICULTY 3
#define MAX_RAID_DIFFICULTY 4
#define MAX_DIFFICULTY 4

enum SpawnMask
{
SPAWNMASK_CONTINENT = (1 << REGULAR_DIFFICULTY), // any any maps without spawn modes

SPAWNMASK_DUNGEON_NORMAL = (1 << DUNGEON_DIFFICULTY_NORMAL),
SPAWNMASK_DUNGEON_HEROIC = (1 << DUNGEON_DIFFICULTY_HEROIC),
SPAWNMASK_DUNGEON_EPIC = (1 << DUNGEON_DIFFICULTY_EPIC),

SPAWNMASK_DUNGEON_ALL = (SPAWNMASK_DUNGEON_NORMAL | SPAWNMASK_DUNGEON_HEROIC | SPAWNMASK_DUNGEON_EPIC),

SPAWNMASK_RAID_10MAN_NORMAL = (1 << RAID_DIFFICULTY_10_25MAN_NORMAL),
SPAWNMASK_RAID_25MAN_NORMAL = (1 << RAID_DIFFICULTY_10_25MAN_HEROIC),
SPAWNMASK_RAID_NORMAL_ALL = (SPAWNMASK_RAID_10MAN_NORMAL | SPAWNMASK_RAID_25MAN_NORMAL),

SPAWNMASK_RAID_10MAN_HEROIC = (1 << RAID_DIFFICULTY_10_25MAN_MYTHIC),
SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC),
SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC),

SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL),
};```

rektbyfaith
Administrator
0
06-17-2025, 07:30 AM
#14
Archived author: Pantheon • Posted: 2025-06-17T07:30:58.062000+00:00
Original source

It's a mask
rektbyfaith
06-17-2025, 07:30 AM #14

Archived author: Pantheon • Posted: 2025-06-17T07:30:58.062000+00:00
Original source

It's a mask

rektbyfaith
Administrator
0
06-17-2025, 07:31 AM
#15
Archived author: Pantheon • Posted: 2025-06-17T07:31:24.896000+00:00
Original source

Keep in mind the client already have an epic version of the dungeon so no need to modify the client
rektbyfaith
06-17-2025, 07:31 AM #15

Archived author: Pantheon • Posted: 2025-06-17T07:31:24.896000+00:00
Original source

Keep in mind the client already have an epic version of the dungeon so no need to modify the client

rektbyfaith
Administrator
0
06-17-2025, 07:31 AM
#16
Archived author: Pantheon • Posted: 2025-06-17T07:31:42.361000+00:00
Original source

I don't know how the client will react if you had more
rektbyfaith
06-17-2025, 07:31 AM #16

Archived author: Pantheon • Posted: 2025-06-17T07:31:42.361000+00:00
Original source

I don't know how the client will react if you had more

rektbyfaith
Administrator
0
06-17-2025, 07:49 AM
#17
Archived author: Lis_Wef • Posted: 2025-06-17T07:49:29.393000+00:00
Original source

so that she can switch, you just need to make a spawn mask and change the dbc to the value "2" and enter the data into the database and configure the spawn mask?

should the change message be sent via the aio?
enum Difficulty : uint8
{
REGULAR_DIFFICULTY = 0,

DUNGEON_DIFFICULTY_NORMAL = 0,
DUNGEON_DIFFICULTY_HEROIC = 1,
DUNGEON_DIFFICULTY_EPIC = 2,

RAID_DIFFICULTY_10MAN_NORMAL = 0,
RAID_DIFFICULTY_25MAN_NORMAL = 1,
RAID_DIFFICULTY_10MAN_HEROIC = 2,
RAID_DIFFICULTY_25MAN_HEROIC = 3,
};

#define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that

#define MAX_DUNGEON_DIFFICULTY 3
#define MAX_RAID_DIFFICULTY 4
#define MAX_DIFFICULTY 4

enum SpawnMask
{
SPAWNMASK_CONTINENT = (1 << REGULAR_DIFFICULTY), // any any maps without spawn modes

SPAWNMASK_DUNGEON_NORMAL = (1 << DUNGEON_DIFFICULTY_NORMAL),
SPAWNMASK_DUNGEON_HEROIC = (1 << DUNGEON_DIFFICULTY_HEROIC),
SPAWNMASK_DUNGEON_EPIC = (1 << DUNGEON_DIFFICULTY_EPIC),
SPAWNMASK_DUNGEON_ALL = (SPAWNMASK_DUNGEON_NORMAL | SPAWNMASK_DUNGEON_HEROIC | DUNGEON_DIFFICULTY_EPIC),

SPAWNMASK_RAID_10MAN_NORMAL = (1 << RAID_DIFFICULTY_10MAN_NORMAL),
SPAWNMASK_RAID_25MAN_NORMAL = (1 << RAID_DIFFICULTY_25MAN_NORMAL),
SPAWNMASK_RAID_NORMAL_ALL = (SPAWNMASK_RAID_10MAN_NORMAL | SPAWNMASK_RAID_25MAN_NORMAL),

SPAWNMASK_RAID_10MAN_HEROIC = (1 << RAID_DIFFICULTY_10MAN_HEROIC),
SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC),
SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC),

SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL),
};
rektbyfaith
06-17-2025, 07:49 AM #17

Archived author: Lis_Wef • Posted: 2025-06-17T07:49:29.393000+00:00
Original source

so that she can switch, you just need to make a spawn mask and change the dbc to the value "2" and enter the data into the database and configure the spawn mask?

should the change message be sent via the aio?
enum Difficulty : uint8
{
REGULAR_DIFFICULTY = 0,

DUNGEON_DIFFICULTY_NORMAL = 0,
DUNGEON_DIFFICULTY_HEROIC = 1,
DUNGEON_DIFFICULTY_EPIC = 2,

RAID_DIFFICULTY_10MAN_NORMAL = 0,
RAID_DIFFICULTY_25MAN_NORMAL = 1,
RAID_DIFFICULTY_10MAN_HEROIC = 2,
RAID_DIFFICULTY_25MAN_HEROIC = 3,
};

#define RAID_DIFFICULTY_MASK_25MAN 1 // since 25man difficulties are 1 and 3, we can check them like that

#define MAX_DUNGEON_DIFFICULTY 3
#define MAX_RAID_DIFFICULTY 4
#define MAX_DIFFICULTY 4

enum SpawnMask
{
SPAWNMASK_CONTINENT = (1 << REGULAR_DIFFICULTY), // any any maps without spawn modes

SPAWNMASK_DUNGEON_NORMAL = (1 << DUNGEON_DIFFICULTY_NORMAL),
SPAWNMASK_DUNGEON_HEROIC = (1 << DUNGEON_DIFFICULTY_HEROIC),
SPAWNMASK_DUNGEON_EPIC = (1 << DUNGEON_DIFFICULTY_EPIC),
SPAWNMASK_DUNGEON_ALL = (SPAWNMASK_DUNGEON_NORMAL | SPAWNMASK_DUNGEON_HEROIC | DUNGEON_DIFFICULTY_EPIC),

SPAWNMASK_RAID_10MAN_NORMAL = (1 << RAID_DIFFICULTY_10MAN_NORMAL),
SPAWNMASK_RAID_25MAN_NORMAL = (1 << RAID_DIFFICULTY_25MAN_NORMAL),
SPAWNMASK_RAID_NORMAL_ALL = (SPAWNMASK_RAID_10MAN_NORMAL | SPAWNMASK_RAID_25MAN_NORMAL),

SPAWNMASK_RAID_10MAN_HEROIC = (1 << RAID_DIFFICULTY_10MAN_HEROIC),
SPAWNMASK_RAID_25MAN_HEROIC = (1 << RAID_DIFFICULTY_25MAN_HEROIC),
SPAWNMASK_RAID_HEROIC_ALL = (SPAWNMASK_RAID_10MAN_HEROIC | SPAWNMASK_RAID_25MAN_HEROIC),

SPAWNMASK_RAID_ALL = (SPAWNMASK_RAID_NORMAL_ALL | SPAWNMASK_RAID_HEROIC_ALL),
};

rektbyfaith
Administrator
0
06-17-2025, 08:20 AM
#18
Archived author: Pantheon • Posted: 2025-06-17T08:20:01.704000+00:00
Original source

```void MythicManager::HandleChangeDungeonDifficulty(Player* _player, uint8 mode)
{
Group* group = _player->GetGroup();
if (group)
{
if (group->IsLeader(_player->GetGUID()))
{
for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
{
Player* groupGuy = itr->GetSource();
if (!groupGuy)
continue;

if (!groupGuy->IsInWorld())
{
_player->SendDungeonDifficulty(group != nullptr);
return;
}

if (groupGuy->GetGUID() == _player->GetGUID() ? groupGuy->GetMap()->IsDungeon() : groupGuy->GetMap()->IsNonRaidDungeon())
{
_player->SendDungeonDifficulty(group != nullptr);
return;
}
}

group->ResetInstances(INSTANCE_RESET_CHANGE_DIFFICULTY, false, _player);
group->SetDungeonDifficulty(Difficulty(DUNGEON_DIFFICULTY_EPIC));
}
}
else {
_player->SetDungeonDifficulty(Difficulty(DUNGEON_DIFFICULTY_EPIC));
_player->SendDungeonDifficulty(false, DUNGEON_DIFFICULTY_EPIC);
Player::ResetInstances(_player->GetGUID(), INSTANCE_RESET_CHANGE_DIFFICULTY, false);
}
}````
rektbyfaith
06-17-2025, 08:20 AM #18

Archived author: Pantheon • Posted: 2025-06-17T08:20:01.704000+00:00
Original source

```void MythicManager::HandleChangeDungeonDifficulty(Player* _player, uint8 mode)
{
Group* group = _player->GetGroup();
if (group)
{
if (group->IsLeader(_player->GetGUID()))
{
for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
{
Player* groupGuy = itr->GetSource();
if (!groupGuy)
continue;

if (!groupGuy->IsInWorld())
{
_player->SendDungeonDifficulty(group != nullptr);
return;
}

if (groupGuy->GetGUID() == _player->GetGUID() ? groupGuy->GetMap()->IsDungeon() : groupGuy->GetMap()->IsNonRaidDungeon())
{
_player->SendDungeonDifficulty(group != nullptr);
return;
}
}

group->ResetInstances(INSTANCE_RESET_CHANGE_DIFFICULTY, false, _player);
group->SetDungeonDifficulty(Difficulty(DUNGEON_DIFFICULTY_EPIC));
}
}
else {
_player->SetDungeonDifficulty(Difficulty(DUNGEON_DIFFICULTY_EPIC));
_player->SendDungeonDifficulty(false, DUNGEON_DIFFICULTY_EPIC);
Player::ResetInstances(_player->GetGUID(), INSTANCE_RESET_CHANGE_DIFFICULTY, false);
}
}````

rektbyfaith
Administrator
0
06-17-2025, 08:28 AM
#19
Archived author: Lis_Wef • Posted: 2025-06-17T08:28:03.446000+00:00
Original source

Sorry for the dumb question, where is this going?
rektbyfaith
06-17-2025, 08:28 AM #19

Archived author: Lis_Wef • Posted: 2025-06-17T08:28:03.446000+00:00
Original source

Sorry for the dumb question, where is this going?

rektbyfaith
Administrator
0
06-17-2025, 08:28 AM
#20
Archived author: Pantheon • Posted: 2025-06-17T08:28:47.332000+00:00
Original source

This is a custom class Manager to handle the MythicDifficulty
rektbyfaith
06-17-2025, 08:28 AM #20

Archived author: Pantheon • Posted: 2025-06-17T08:28:47.332000+00:00
Original source

This is a custom class Manager to handle the MythicDifficulty

Pages (3): Previous 1 2 3 Next
Recently Browsing
 1 Guest(s)
Recently Browsing
 1 Guest(s)