Forums WoW Modding Support Archives TrinityCore Discord Archives [DiscordArchive] is that some custom database table or does it use the builtin boss state system?

[DiscordArchive] is that some custom database table or does it use the builtin boss state system?

[DiscordArchive] is that some custom database table or does it use the builtin boss state system?

Pages (4): 1 2 3 4 Next
rektbyfaith
Administrator
0
06-03-2023, 06:09 PM
#1
Archived author: <o> • Posted: 2023-06-03T18:09:37.652000+00:00
Original source

is that some custom database table or does it use the builtin boss state system?
rektbyfaith
06-03-2023, 06:09 PM #1

Archived author: <o> • Posted: 2023-06-03T18:09:37.652000+00:00
Original source

is that some custom database table or does it use the builtin boss state system?

rektbyfaith
Administrator
0
06-03-2023, 06:12 PM
#2
Archived author: Krutok • Posted: 2023-06-03T18:12:01.606000+00:00
Original source

I use the TC database table, nothing is custom, everything is original. #include "InstanceScript.h"
#include "hort_des_meisters.h"

class instance_hort_des_meisters : public InstanceMapScript
{
public:
instance_hort_des_meisters() : InstanceMapScript(HortdesMeistersScriptName, 730) { }

struct instance_hort_des_meisters_InstanceScript : public InstanceScript
{
instance_hort_des_meisters_InstanceScript(InstanceMap* map) : InstanceScript(map)
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
}
};

InstanceScript* GetInstanceScript(InstanceMap* map) const override
{
return new instance_hort_des_meisters_InstanceScript(map);
}
};

void AddSC_instance_hort_des_meisters()
{
new instance_hort_des_meisters();
}
its a blanco script only save the boss state in the database
rektbyfaith
06-03-2023, 06:12 PM #2

Archived author: Krutok • Posted: 2023-06-03T18:12:01.606000+00:00
Original source

I use the TC database table, nothing is custom, everything is original. #include "InstanceScript.h"
#include "hort_des_meisters.h"

class instance_hort_des_meisters : public InstanceMapScript
{
public:
instance_hort_des_meisters() : InstanceMapScript(HortdesMeistersScriptName, 730) { }

struct instance_hort_des_meisters_InstanceScript : public InstanceScript
{
instance_hort_des_meisters_InstanceScript(InstanceMap* map) : InstanceScript(map)
{
SetHeaders(DataHeader);
SetBossNumber(EncounterCount);
}
};

InstanceScript* GetInstanceScript(InstanceMap* map) const override
{
return new instance_hort_des_meisters_InstanceScript(map);
}
};

void AddSC_instance_hort_des_meisters()
{
new instance_hort_des_meisters();
}
its a blanco script only save the boss state in the database

rektbyfaith
Administrator
0
06-03-2023, 06:13 PM
#3
Archived author: Tea • Posted: 2023-06-03T18:13:11.558000+00:00
Original source

yeah thats all you need to use the 3 tables i mentioned
rektbyfaith
06-03-2023, 06:13 PM #3

Archived author: Tea • Posted: 2023-06-03T18:13:11.558000+00:00
Original source

yeah thats all you need to use the 3 tables i mentioned

rektbyfaith
Administrator
0
06-03-2023, 06:14 PM
#4
Archived author: <o> • Posted: 2023-06-03T18:14:52.078000+00:00
Original source

for those tables it's pretty much just what i wrote.

1. add an entry in `gameobject` table for your gameobject (`creature` table for creatures) and make sure it spawns in the difficulty phase you want it to. test that this causes your gobj to always spawn in the instance before moving to the next steps

2. add an entry to `spawn_group_template` with a new group id and set its flags to 4.

3. add an entry to `instance_spawn_groups` that connects your map/boss id to the spawngroup id you created earlier. iirc `bossStates` is a flag for EncounterState so you'd use 8(?) for it, then flags just 1.

4. add an entry to `spawn_group` with your group id, spawnType 1 for gameobject and then your gobj guid in spawnId
rektbyfaith
06-03-2023, 06:14 PM #4

Archived author: <o> • Posted: 2023-06-03T18:14:52.078000+00:00
Original source

for those tables it's pretty much just what i wrote.

1. add an entry in `gameobject` table for your gameobject (`creature` table for creatures) and make sure it spawns in the difficulty phase you want it to. test that this causes your gobj to always spawn in the instance before moving to the next steps

2. add an entry to `spawn_group_template` with a new group id and set its flags to 4.

3. add an entry to `instance_spawn_groups` that connects your map/boss id to the spawngroup id you created earlier. iirc `bossStates` is a flag for EncounterState so you'd use 8(?) for it, then flags just 1.

4. add an entry to `spawn_group` with your group id, spawnType 1 for gameobject and then your gobj guid in spawnId

rektbyfaith
Administrator
0
06-03-2023, 06:17 PM
#5
Archived author: Krutok • Posted: 2023-06-03T18:17:50.255000+00:00
Original source

I might be able to do that with the database, but I don't know how to write the script accordingly.
rektbyfaith
06-03-2023, 06:17 PM #5

Archived author: Krutok • Posted: 2023-06-03T18:17:50.255000+00:00
Original source

I might be able to do that with the database, but I don't know how to write the script accordingly.

rektbyfaith
Administrator
0
06-03-2023, 06:18 PM
#6
Archived author: <o> • Posted: 2023-06-03T18:18:04.787000+00:00
Original source

you just remove the spawn statements from the script
rektbyfaith
06-03-2023, 06:18 PM #6

Archived author: <o> • Posted: 2023-06-03T18:18:04.787000+00:00
Original source

you just remove the spawn statements from the script

rektbyfaith
Administrator
0
06-03-2023, 06:18 PM
#7
Archived author: <o> • Posted: 2023-06-03T18:18:16.008000+00:00
Original source

this way the core itself does the spawning for you
rektbyfaith
06-03-2023, 06:18 PM #7

Archived author: <o> • Posted: 2023-06-03T18:18:16.008000+00:00
Original source

this way the core itself does the spawning for you

rektbyfaith
Administrator
0
06-03-2023, 06:19 PM
#8
Archived author: <o> • Posted: 2023-06-03T18:19:27.452000+00:00
Original source

the `instance_spawn_groups` table is mostly used to stop spawing stuff when you kill a boss, but it can also be used for the opposite purpose like this
rektbyfaith
06-03-2023, 06:19 PM #8

Archived author: <o> • Posted: 2023-06-03T18:19:27.452000+00:00
Original source

the `instance_spawn_groups` table is mostly used to stop spawing stuff when you kill a boss, but it can also be used for the opposite purpose like this

rektbyfaith
Administrator
0
06-03-2023, 06:24 PM
#9
Archived author: <o> • Posted: 2023-06-03T18:24:31.671000+00:00
Original source

looking at some other values, bossStates is definitely a mask over `EncounterState`, so 8 is the value you want to cause a spawn after the encounter is done
rektbyfaith
06-03-2023, 06:24 PM #9

Archived author: <o> • Posted: 2023-06-03T18:24:31.671000+00:00
Original source

looking at some other values, bossStates is definitely a mask over `EncounterState`, so 8 is the value you want to cause a spawn after the encounter is done

rektbyfaith
Administrator
0
06-03-2023, 06:27 PM
#10
Archived author: Krutok • Posted: 2023-06-03T18:27:06.566000+00:00
Original source

Ok, spawning may work, but if I put a chest down that can only be opened after the boss has died, it has to check the instance script. That doesn't work via the database, because that would be the second thing I want to add there. the best example is the chest in ICC with Saurfang the 3rd boss the chest is there or with the airship it can be looted when the boss is dead and that is regulated by the instance script.
rektbyfaith
06-03-2023, 06:27 PM #10

Archived author: Krutok • Posted: 2023-06-03T18:27:06.566000+00:00
Original source

Ok, spawning may work, but if I put a chest down that can only be opened after the boss has died, it has to check the instance script. That doesn't work via the database, because that would be the second thing I want to add there. the best example is the chest in ICC with Saurfang the 3rd boss the chest is there or with the airship it can be looted when the boss is dead and that is regulated by the instance script.

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