Forums WoW Modding Support Archives Azerothcore Discord Archives [DiscordArchive] Now?

[DiscordArchive] Now?

[DiscordArchive] Now?

Pages (3): 1 2 3 Next
rektbyfaith
Administrator
0
08-05-2025, 11:04 AM
#1
Archived author: Xepic90 • Posted: 2025-08-05T11:04:54.371000+00:00
Original source

Now?
Reforeger_Fix.lua.txt
rektbyfaith
08-05-2025, 11:04 AM #1

Archived author: Xepic90 • Posted: 2025-08-05T11:04:54.371000+00:00
Original source

Now?
Reforeger_Fix.lua.txt

rektbyfaith
Administrator
0
08-05-2025, 11:08 AM
#2
Archived author: Corey • Posted: 2025-08-05T11:08:32.610000+00:00
Original source

No errors but the suffix is still reforging sadly.
rektbyfaith
08-05-2025, 11:08 AM #2

Archived author: Corey • Posted: 2025-08-05T11:08:32.610000+00:00
Original source

No errors but the suffix is still reforging sadly.

rektbyfaith
Administrator
0
08-05-2025, 11:30 AM
#3
Archived author: Xepic90 • Posted: 2025-08-05T11:30:06.079000+00:00
Original source

what exactly do you want?
rektbyfaith
08-05-2025, 11:30 AM #3

Archived author: Xepic90 • Posted: 2025-08-05T11:30:06.079000+00:00
Original source

what exactly do you want?

rektbyfaith
Administrator
0
08-05-2025, 11:32 AM
#4
Archived author: metallinos • Posted: 2025-08-05T11:32:05.695000+00:00
Original source

I know I'm a few days late but quest accept can already be handled natively through a player-specific packet:
```

local function OnPlayerAcceptQuest(event, packet, player)
local guid = packet:ReadGUID()
local questId = packet:ReadULong()
local unk1 = packet:ReadULong()

if questId == MY_QUEST_ID then
-- do something here
end
end

RegisterPacketEvent(0x189, 5, OnPlayerAcceptQuest)
```
rektbyfaith
08-05-2025, 11:32 AM #4

Archived author: metallinos • Posted: 2025-08-05T11:32:05.695000+00:00
Original source

I know I'm a few days late but quest accept can already be handled natively through a player-specific packet:
```

local function OnPlayerAcceptQuest(event, packet, player)
local guid = packet:ReadGUID()
local questId = packet:ReadULong()
local unk1 = packet:ReadULong()

if questId == MY_QUEST_ID then
-- do something here
end
end

RegisterPacketEvent(0x189, 5, OnPlayerAcceptQuest)
```

rektbyfaith
Administrator
0
08-05-2025, 11:37 AM
#5
Archived author: metallinos • Posted: 2025-08-05T11:37:24.029000+00:00
Original source

In fact, you could probably wrap it into a .ext like so

```
local playerEventHandlers = {}

local function OnPlayerAcceptQuestWrapper(event, packet, player)
local guid = packet:ReadGUID()
local questId = packet:ReadULong()
local unk1 = packet:ReadULong()

if playerEventHandlers[60] then
for _, handler in ipairs(playerEventHandlers[60]) do
handler(60, player, questId)
end
end
end

local originalRegisterPlayerEvent = RegisterPlayerEvent

function RegisterPlayerEvent(eventType, handlerFunc, shots)
if eventType == 60 then
if not playerEventHandlers[60] then
playerEventHandlers[60] = {}
RegisterPacketEvent(0x189, 5, OnPlayerAcceptQuestWrapper)
end
table.insert(playerEventHandlers[60], handlerFunc)

return function()
for i, handler in ipairs(playerEventHandlers[60]) do
if handler == handlerFunc then
table.remove(playerEventHandlers[60], i)
break
end
end
end
else
return originalRegisterPlayerEvent(eventType, handlerFunc, shots)
end
end
```

so that you can run

```
local function OnQuestAccept(event, player, questId)
if questId == MY_QUEST_ID then
-- do something here
end
end

RegisterPlayerEvent(60, OnQuestAccept)
```
in your scripts without recompiling or editing the mod-Eluna source in any way

Edit:

The above QuestAccept extension works fine with for example A Short Fuse's accept and the missing explosion in the core:

```
local function AShortFuseExplosion(event, player, questId)
if questId == 13263 or questId == 13389 then
player:CastSpell(player, 76010, true)
player:NearTeleport(5754, 2055, 504, 5.68)
end
end

RegisterPlayerEvent(60, AShortFuseExplosion)
```
rektbyfaith
08-05-2025, 11:37 AM #5

Archived author: metallinos • Posted: 2025-08-05T11:37:24.029000+00:00
Original source

In fact, you could probably wrap it into a .ext like so

```
local playerEventHandlers = {}

local function OnPlayerAcceptQuestWrapper(event, packet, player)
local guid = packet:ReadGUID()
local questId = packet:ReadULong()
local unk1 = packet:ReadULong()

if playerEventHandlers[60] then
for _, handler in ipairs(playerEventHandlers[60]) do
handler(60, player, questId)
end
end
end

local originalRegisterPlayerEvent = RegisterPlayerEvent

function RegisterPlayerEvent(eventType, handlerFunc, shots)
if eventType == 60 then
if not playerEventHandlers[60] then
playerEventHandlers[60] = {}
RegisterPacketEvent(0x189, 5, OnPlayerAcceptQuestWrapper)
end
table.insert(playerEventHandlers[60], handlerFunc)

return function()
for i, handler in ipairs(playerEventHandlers[60]) do
if handler == handlerFunc then
table.remove(playerEventHandlers[60], i)
break
end
end
end
else
return originalRegisterPlayerEvent(eventType, handlerFunc, shots)
end
end
```

so that you can run

```
local function OnQuestAccept(event, player, questId)
if questId == MY_QUEST_ID then
-- do something here
end
end

RegisterPlayerEvent(60, OnQuestAccept)
```
in your scripts without recompiling or editing the mod-Eluna source in any way

Edit:

The above QuestAccept extension works fine with for example A Short Fuse's accept and the missing explosion in the core:

```
local function AShortFuseExplosion(event, player, questId)
if questId == 13263 or questId == 13389 then
player:CastSpell(player, 76010, true)
player:NearTeleport(5754, 2055, 504, 5.68)
end
end

RegisterPlayerEvent(60, AShortFuseExplosion)
```

rektbyfaith
Administrator
0
08-05-2025, 11:39 AM
#6
Archived author: Xepic90 • Posted: 2025-08-05T11:39:00.518000+00:00
Original source

Now?
Reforeger_Fix.lua.txt
rektbyfaith
08-05-2025, 11:39 AM #6

Archived author: Xepic90 • Posted: 2025-08-05T11:39:00.518000+00:00
Original source

Now?
Reforeger_Fix.lua.txt

rektbyfaith
Administrator
0
08-05-2025, 11:54 AM
#7
Archived author: Corey • Posted: 2025-08-05T11:54:35.584000+00:00
Original source

That worked thank you!
rektbyfaith
08-05-2025, 11:54 AM #7

Archived author: Corey • Posted: 2025-08-05T11:54:35.584000+00:00
Original source

That worked thank you!

rektbyfaith
Administrator
0
08-05-2025, 11:54 AM
#8
Archived author: Xepic90 • Posted: 2025-08-05T11:54:50.177000+00:00
Original source

Really
rektbyfaith
08-05-2025, 11:54 AM #8

Archived author: Xepic90 • Posted: 2025-08-05T11:54:50.177000+00:00
Original source

Really

rektbyfaith
Administrator
0
08-05-2025, 11:57 AM
#9
Archived author: Corey • Posted: 2025-08-05T11:57:12.842000+00:00
Original source

I gotta fix some of the display messages but yeah your method worked. Did you use Claude or some other Ai to fix it? I ask because the debug had some emojis. If there's something better than chatgpt I'm onboard with it.
[Image: image.png?ex=690be458&is=690a92d8&hm=afb...5f597b449&]
rektbyfaith
08-05-2025, 11:57 AM #9

Archived author: Corey • Posted: 2025-08-05T11:57:12.842000+00:00
Original source

I gotta fix some of the display messages but yeah your method worked. Did you use Claude or some other Ai to fix it? I ask because the debug had some emojis. If there's something better than chatgpt I'm onboard with it.
[Image: image.png?ex=690be458&is=690a92d8&hm=afb...5f597b449&]

rektbyfaith
Administrator
0
08-05-2025, 11:59 AM
#10
Archived author: metallinos • Posted: 2025-08-05T11:59:37.518000+00:00
Original source

In my experience, Claude is the most competent AI when it comes to Eluna, to an extent AIs are competent at Eluna
rektbyfaith
08-05-2025, 11:59 AM #10

Archived author: metallinos • Posted: 2025-08-05T11:59:37.518000+00:00
Original source

In my experience, Claude is the most competent AI when it comes to Eluna, to an extent AIs are competent at Eluna

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