Jump to content

Endymion

Active Member
  • Posts

    237
  • Joined

  • Last visited

  • Days Won

    5
  • Feedback

    0%

Endymion last won the day on September 25 2017

Endymion had the most liked content!

3 Followers

About Endymion

  • Birthday 06/16/1997

Informations

  • Gender
    Male

Recent Profile Visitors

8219 profile views

Endymion's Achievements

Proficient

Proficient (10/16)

  • Reacting Well
  • Dedicated
  • Very Popular Rare
  • First Post
  • Collaborator Rare

Recent Badges

399

Reputation

  1. I understand how it works and have experienced this error myself. Keeping PvP in mind, you have to count sometimes bigger breaks for beating a boss than the constant “3 hits per sec” by X players. You have to add in running with the boss by the top aggr player in order to disturb others. In my case, after 5 hours of fighting for the boss core just went down. If I remember correctly, the source of the crash was the CHARACTER::DistributeExp(). I understand very well that you need to complete several requirements for this bug to occur, but in a natural environment it is not as unrealistic as it seems (or I should just take part in some lottery).
  2. All that is really needed for overflow to occur is enabled regen in the monster and some time. On servers where people fight over bosses even for several hours at a time, achieving INT_MAX damage is not that unrealistic at all. Just changing “int total_dam -> int64_t total_dam” is not enough in such a case, since one player can reach INT_MAX damage for several hours. It would also be good to take a look at char.h:TBattleInfo.
  3. Based on what you’ve written, it’s unlikely to make much of a difference. The ::Send(...) function simply writes data into a buffer to be sent on the next tick, so from the server’s perspective, it doesn’t change much. It really depends on what you're trying to achieve. For example, take a look at how opening a shop via a bundle works. In that case, the server needs complete information about all items, so sending each item in a separate packet wouldn’t make much sense.
  4. SET_BIT(m_pointsInstant.instant_flag, INSTANT_FLAG_NO_REWARD); Dead();
  5. According to your worldbosses example, if a large number of players fight it out there is a chance that no player will reach the required 10% with total_dam and the items will also be ownerless.
  6. But this still doesn't change anything, shared_ptr in this case will only release the memory anyway when the process closes, just as it will do without any changes.
  7. There is a difference between what you are modifying in the topic and your example screenshots. The function you are editing is only called once at the start of the process and never again, so how would it have any effect and make any real difference? We only allocate memory once at process startup, we don't have any loop that does this several times without clearing it.
  8. Can you seriously explain to me, without memes, what this changes?
  9. Can you explain this memory leak to me?
  10. But this is not a problem in this case. Is CHARACTER removed from the unique map when killed?
  11. item->SetCount(MAX(0, item->GetCount() - loopCount)); if (item) item->Lock(false); You should no longer use the "item" pointer after using the SetCount function, which may delete this object.
  12. finally ?
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / 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.