Jump to content
Maintenance : Final step ×

Owsap

Honorable Member
  • Posts

    271
  • Joined

  • Last visited

  • Days Won

    29
  • Feedback

    91%

Owsap last won the day on August 17 2023

Owsap had the most liked content!

About Owsap

  • Birthday 09/02/1997

Informations

  • Gender
    Male
  • Country
    South Korea
  • Nationality
    Portuguese

Social Networks

Recent Profile Visitors

17849 profile views

Owsap's Achievements

Veteran

Veteran (13/16)

  • Well Followed Rare
  • Problem Solver Rare
  • Reacting Well
  • Dedicated
  • Very Popular Rare

Recent Badges

9.1k

Reputation

  1. Left Seat (AFK) System Preview Available for Sale For more information, visit my website, https://owsap.dev/shop/left-seat-afk-system/
  2. "adding too much complexity" isn’t really accurate. The NULL check and FindByVID check are both simple and lightweight. `FindByVID` function only performs a map lookup (which is efficient). They don’t add complexity or performance issues. Instead, they provide essential safeguards that prevent crashes and keep invalid data out of the database. Without them, you risk saving garbage items or dealing with crashes, which is far worse than the minimal overhead they introduce. The SaveSingleItem function either deletes an item with no owner or saves it to the database if it has an owner. If the VID of an item doesn’t exist, there’s nothing to save or delete. This is why invalid items are erased from m_set_pkItemForDelayedSave.
  3. First of all, good job and thanks for sharing the fix with everyone in the community. It's worth mentioning that this bug only occurs when you switch to another core. When I realized this before I actually ended up changing the item update function which saves all items with delayed save, it eventually fixed the issue. Sanity checks for ITEM_MANAGER::Update This is also how I changed my DSManager::DoRefineStrength
  4. I honestly don't know, I haven't gotten around testing this on the official server, but if it's not supposed to work in dungeons you can simply add the dungeon check before the process of finding a new position. Example // ¸ðµç private ¸ÊÀ¸·Ð ¿öÇÁ ºÒ°¡´É if (ch->GetDungeon() || ch->GetMapIndex() > 10000) return; But it's worth remembering that there is still a possibility of getting stuck in dungeons too.
  5. GF Protos 24.2.10.0 Alternative download links → MEGA I did not include the item proto mask types and sub types. Changes item_proto Added names to unused items marked as "NoNAme". Corrected some name translations. Adjusted various anti-flags, more items are now tradable. Removed Golden Land (Primordis-Expedition Event) items. Added back "Soul Items" (Soul System), possibly they reworked the entire system. Added new costumes and pets. Added new items for the "Atlas Renewal System". mob_proto Removed Golden Land (Primordis-Expedition) monsters. Removed Doomsday 12ZI (Zodiac Apocalypse) monsters. Added new pets.
  6. Updated to Version 3.0 Updated Proto V24.0.4.0 Fixed issue while showing the item names as comments on the group. Fixed issue with item icons not showing properly when importing a group. Fixed minor disorder issue on the data table. Added option to keep the original gold and experience Korean strings. Added option to enable ANSI Encoding. Added a drag and drop feature to make group organization and editing easier. Added option to save the imported group name, this will prevent the group name from being overridden when importing a group. Unfortunately, I'm not going to add this feature any time soon.
  7. I recently came across this issue when updating some things on the party (group) system and I realized that this problem was present on all the branches of the source. Although I've seen certain topics with some solutions, they don't provide much information and, in my opinion, a good solution. So, I'll share mine with you and you can use it if you're happy with the results. The Bug When you set a role to a member as a leader, it will give the member a certain bonus according to the role, this bonus is given if the leadership skill is high. Now, if you decide to remove the members role, in theory the bonus should be removed. However, when this happens, it will only compute the battle points of the player which will make some bonuses of certain roles the same until the character computes all his points again. For example, if you set a member with the tanker role, which grants a bonus of additional health points and then remove the role from the member, the bonus will not be removed until the character computes his points again. It doesn't remove the bonus because the function by default only computes the battle points, this relates to roles like, attacker and defender. Realization So far, we realized a possible solution, which is replacing the ComputeBattlePoints with ComputePoints, well sure, and I've seen this solution on this forum in some help request topics but this comes to a major cost in performance since the role computation function CParty::ComputeRolePoint is frequently called. The Solution What we really want to do is check if the member has any bonus assigned to a role, remove the bonus and finally compute the character's points appropriately, avoiding constant updates to the ComputePoints function. If the member doesn't have any bonus given from a role, there will be no need to calculate the points.
  8. GF Protos 24.0.4.0 Alternative download links → MEGA I did not include the item proto mask types and sub types.
  9. Achievement System Preview Available for Sale Currently only accepting offers! For more information, visit my website, https://owsap.dev/shop/achievement-system/
  10. Repository Updated Changed QuestionDialog to QuestionDialog2. This change is due to the multi-line token which is not supported by all clients. To improve compatibility, the dialog message has been split into two tokens. The issue with the player's distance while the dialogue is open has also been fixed. Thanks for testing and reporting back. I recommend taking a look at all the code in the repository as I amended some issues on the first commit.
  11. I just updated the repository, there was one thing missing for the button to work, everything should be fine now.
  12. Download GitHub Repository Synchronizes the character's position with the server and can be used to free them if they get stuck. If there is no available position within the available distance, the character will be warped to the village. .
  13. Like everything you learn, you study and practice. A lot of trial and error is involved.
×
×
  • 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.