Jump to content

HiddenDweller

Members
  • Posts

    17
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

HiddenDweller's Achievements

Member

Member (2/3)

0

Reputation

  1. Sorry to say, but I got really confused already about how everything works on retail. Thus, I decided to stop working on that patch, as I have too much questions, but I can't check anything cause I don't have retail account . If anyone wants to continue from where I stopped, fell free. (Though, I have a feeling that to complete all that half of group.cpp has to be rewriten )
  2. Above threshold items send the message "That item is still being rolled for", and the message makes sense. I wasn't able to reproduce "That would be stealing!", are you sure it exists? BTW, could you sniff the packets while playing? That may help me a bit
  3. I just wrote it according to the other loot method functions , which basically start rolls on above threshold and mark below threshold items. In round Robin, from my point of view, all items are below threshold - there are no rolls and all items handled exactly as below threshold items in GL/NbG, so I just used the current block and didn't create another one - that's unneccesary. Now, about GetLooterGuid() - that's a per group variable. And a group doesn't kill -> loot -> kill -> loot, does it? So using it for per monster looter setting is impossible. For that, I added a variable with looter GUID to monster. Group LooterGUID should be used only for ML. The code you corrected after that - sorry, my stupid mistake Didn't know, shouldn't be hard to do. I didn't touch it yet, because I want everything else working before it. I'll look into it. I can already guess what's causing it. A simple question - mobs that were killed in FFA should be still be looted as FFA, right? Cause if after the switch the mobs already killed have to be looted in the new method - It'll be impossible to implement without keeping track of all killed monsters - a good memory hog. Well, then I'll be moving loot generation to on kill to implement this. But this sounds strange - If creature 100% doesn't have any loot it already doesn't sparkle, and I added the next looter decider function at the same place, so this shouldn't happen. When it is random if it gets loot or not, people already shown that it does sparkle, and if it does sparkle than it should be assigned. Works with Round Robin turns, just need to copy the code to rolls then. Another question : Only the group sees the tag, or all players? (this may help me to get the "Looter : name" get working)
  4. To not be able to attempt to loot a cropse not tagged for you unless there are quest items, the loot has to be generated before the actual looting process. Meaning, as I suggested looting generation has to be moved from "on click" to at least "on kill". If there are no objectins to doing this, I'll happily do it (However previous comments didn't really like the idea, did they?). BTW, anyone has any idea on what is the right update flag to be used to display "Looter: Player", cause I won't find time to check all of them any soon.
  5. Another question: what is the message you receive when you try to loot not yours loot? Is it "You do not meet the requirements to loot that item" and the item is colored red? EDIT: Almost Finished. What does the patch currently do? * implement round robin looting method as a separate method and as a method for under threshold items in Group Loot/ Need Before Greed * seperate Master Looter GUID and last tagged looter GUID * Send Master Looter GUID only if loot method is Master Looter. Known Issues * Instead of "Looter: Player" Currently display "Player's Minion/Pet". This is because I couldn't find how to do the "Looter: Player" PATCH (for revision 8296)
  6. so, you can see money, regular quest items and above threshold items and loot/start roll on them. You can see below threshold items and free for all quest items (meaning there is only one quest item and not one for every player), however you can't loot them. BTW, after the person tagged for loot looted, are the below threshold items he didn't loot now free for everyone to loot?
  7. Well, then I'll leave loot generation where it is now, and will try to finish round robin soon
  8. Are you really sure you can get a sparkly empty corpse at official as well? From what I heard, it isn't supposed to happen. Currently I am missing a few sniffed packets that will show me how to messege the players that it's X player's turn to loot that corpse.
  9. Well, I'll wait with that matter. Another stupid question, the round robin looter is decided at mob kill, and only he can see the loot? If that's the case I'm almost finished with round robin.
  10. Thanks! these were a few insighful links, but the most important (this is a blue post (blizzard employee) quote): (http://forums.worldofwarcraft.com/thread.html?topicId=4311143050 is a good discussion to read) But thinking about it, that would be a really memomry consuming to do this. Any feedback?
  11. As you all know looting is implemented, in how to say it, awful way. Loot is first requested when player clicks and tries to loot a dead mob with Player::SendLoot . That function fills up the loot from DB using LootMgr which does it's work alright. The problem comes when the player is in a group. The player which clicked the mob, the loot and the mob get passed to the function corresponing the looting mechanism chosen by the group. However, there are only functions for group loot, need for greed and master looter. These just take items at threshold or above, take them out of the loot and roll on them (and then return them if all passed). This way, all items below threshold are "free for all". (and that's how free for all gets implemented). There is no implementation for round robin, and all other functions are not blizzlike at all. First thing would practically be loading the loot at creature kill rather than click. After that looting systems need to be implemented the right way. I'm currently working on moving the loot load (I see that a good place for it will be Unit::setDeathState calling a seperate FillLoot function), but to implement the looting systems I need some feedback from retail players.. First and most important: Do the rolls for Group Loot/ Need Before Greed start at creature kill, or when someone clicks it?
  12. whoops, meant 8262. I must've drunk something. edited the mistake. It would be funny if I could actually find 2562 and this patch worked
  13. patch works, tried adding a "if (curValue)" to check if player is dead before regenerating health. On the way moved Unit::SetLastManaUse from Unit.h (which isn't a place for functions) to Unit.cpp . patch is for 8262 link needs some testing to see if it fixed the dead caster bug
  14. Thanks for applying, though you applied it with basepoints0 = int32(GetCreateMana() * triggerAmount / 100); which obliously does not work. So, this commit has to be reverted and either mine second fix or nos4r2zod's fix applied
  15. Oh, that exaplins it. Well, then I think we should leave it in SpellEffects.cpp to not hardcode it being 20%, as there is no way to do it in Unit.cpp. that leaves us with: diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 7a6ed0c..ab2d1c8 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2888,6 +2888,12 @@ void Spell::EffectEnergize(uint32 i) if(unitTarget->GetMaxPower(power) == 0) return; + //Improved Stormstrike + if (m_spellInfo->Id == 63375) + { + damage = unitTarget->GetCreateMana()*damage/100; + } + m_caster->EnergizeBySpell(unitTarget, m_spellInfo->Id, damage, power); // Mad Alchemist's Potion -- On a side note: If there is any way to make that spell (63375) to be handled by Spell::EffectEnergisePct rather then by Spell::EffectEnergise, it would be a more correct solution, I just can't seem to find a way to do that.
×
×
  • 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