Jump to content

Search the Community

Showing results for tags 'bugfix'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Russian Section
    • Новости и объявления
    • Пиратия: Документация
    • Пиратия: Релизы
    • Пиратия: Разработка
    • Пиратия: Web
    • Пиратия: Помощь
    • Совместные проекты / набор команды
    • Доска объявлений
    • Программирование
    • Оффтопик
    • Корзина
  • English Section
    • News & Announcements
    • Guides
    • Releases
    • Development
    • Web
    • Questions & Help
    • Shared Projects / Team search
    • Paid services & Requests
    • Programming
    • Offtopic
    • Recycle bin
  • Portuguese Section
    • Dúvidas & Ajuda
  • Spanish Section
    • Preguntas y Ayuda
  • Servers
    • Russian servers
    • English servers

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 2 results

  1. Program for fixing a bug with Swings The essence of the bug: After installing models of swings in the full-screen mode of the game, models of objects, characters, NPCs and monsters disappear. sceneeffectinfo.txt 4060 01020029.par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4061 01020029(2).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4062 01020029(3).par ????(?) ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4063 01020029(4).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4064 01020031.par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4065 01020031(2).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4066 01020031(3).par ????(?) ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4067 01020031(4).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4068 01020037.par HelloKitty??( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4069 01020037(2).par HelloKitty??( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4070 01020037(3).par HelloKitty??( ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4071 01020037(4).par HelloKitty??( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4072 01020039.par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4073 01020039(2).par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4074 01020039(3).par ?????(?) ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4075 01020039(4).par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4076 01020041.par ???????( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4077 01020041(2).par ???????( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4078 01020041(3).par ???????( ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4079 01020041(4).par ???????( ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4080 01020042.par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4081 01020042(2).par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4082 01020042(3).par ?????(?) ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4083 01020042(4).par ?????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4084 01020043.par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4085 01020043(2).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4086 01020043(3).par ????(?) ?? 1 0 24,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 4087 01020043(4).par ????(?) ?? 1 0 3,-1,-1,-1,-1,-1,-1,-1 -1 0 0.0 0.0 -1.0 As a result, we have the following: Solution method: Delete unused models from the Client\model\effect folder. This program automatically looks for unused models and removes them from the game client, after which the client starts working as expected: How to use: Place the program in the root folder of the game client and start. Attention! The program does not guarantee 100% fix of this bug, it is also possible the appearance of new bugs. Make backup copies. Use at your own risk! Download (230 KB) Update 06/06/2018 The Rebirth Wings models disappear аfter using this program: To fix this you need restore the followings files in Client\model\effect folder: 1chi.lgo 1chig2.lgo 1chim1.lgo 1chim2.lgo 2chi.lgo 2chig2.lgo 2chim1.lgo 2chim2.lgo 3chi.lgo 3chig2.lgo 3chim1.lgo 3chim2.lgo You can download them here. Just copy files from .zip to your Client\model\effect folder. Thanks to @Farido!
  2. Hello everybody. Recently, a very damaging bug came to my attention, it's possible with a bit of manipulation to combine gems without destroying any in the process. I will not exactly explain how to fully reproduce it so if people were to notice this before server-owners did. The bug works this way: while the inventory is locked, no items can be deleted from it. This is usually not a problem because GiveItem does not work either, it will just give you an error. This is an example in said situation: When analyzing items while the inventory is locked, no abuse is possible because while no items are deleted from the player's inventory, no items can be added to it either, thus "operation failed" being added to the system message. However, if we were to look at the combining function : "begin_unite_item" function begin_unite_item (...) local arg = {...} local Check_CanUnite = 0 Check_CanUnite = can_unite_item_main ( arg ) if Check_CanUnite == 0 then return 0 end local role = 0 local ItemBag = {} local ItemCount = {} local ItemBagCount = {} local Get_Count = 4 local ItemReadCount = 0 local ItemReadNow = 1 local ItemReadNext = 0 local ItemBag_Now = 0 local ItemCount_Now = 0 local ItemBagCount_Num = 0 role , ItemBag , ItemCount , ItemBagCount , ItemBag_Now , ItemCount_Now , ItemBagCount_Num = Read_Table ( arg ) local BagItem1 = ItemBag [0] local BagItem2 = ItemBag [1] local BagItem3 = ItemBag [2] local BagItem1 = arg [3] local BagItem2 = arg [6] local BagItem3 = arg [9] local Item1 = GetChaItem ( role , 2 , BagItem1 ) local Item2 = GetChaItem ( role , 2 , BagItem2 ) local Item3 = GetChaItem ( role , 2 , BagItem3 ) local ItemID1 = GetItemID ( Item1 ) local ItemID2 = GetItemID ( Item2 ) local ItemID3 = GetItemID ( Item3 ) local ItemType2 = GetItemType ( Item2 ) local Item2_Lv = Get_StoneLv ( Item2 ) local Item3_Lv = Get_StoneLv ( Item3 ) local i = 0 local j = 0 i = RemoveChaItem ( role , ItemID1 , 1 , 2 , BagItem1 , 2 , 1 , 0) j = RemoveChaItem ( role , ItemID3 , 1 , 2 , BagItem3 , 2 , 1 , 0) if i == 0 or j == 0 then -- important part LG( "Hecheng_BS" , "Delete item failed" ) end Item2_Lv =Item2_Lv + 1 -- important part 2 Set_StoneLv ( Item2 , Item2_Lv ) -- important part 3 local Money_Need = getunite_money_main ( arg ) local Money_Have = GetChaAttr ( role , ATTR_GD ) Money_Have = Money_Have - Money_Need SetCharaAttr ( Money_Have , role , ATTR_GD ) ALLExAttrSet( role ) local Sklv = 1 local StateLv = GetChaStateLv ( role , STATE_HCGLJB ) Sklv = Sklv + StateLv local b = Check_CG_HechengBS ( Item2_Lv , ItemType2 , Sklv ) if b == 0 then -- important part 3 i = RemoveChaItem ( role , ItemID2 , 1 , 2 , BagItem2 , 2 , 1 , 0) if i == 0 then LG( "Hecheng_BS" , "Delete item failed" ) end local cha_name = GetChaDefaultName ( role ) LG( "JingLian_ShiBai" , "Player"..cha_name.."Gem combining failed" ) SystemNotice( role , "Very sorry, combining has failed. Gem has vanished...") return 2 end local cha_name = GetChaDefaultName ( role ) LG( "JingLian_ShiBai" , "Player"..cha_name.."Gem combining successful" ) return 1 end As you can see, this script does not "give" any item, it sets the gem level to 1 higher than it originally was. Therefore, if people were able to lock their inventory. They would prevent the deletion of their gem, and get one of their gems upgraded. Furthermore, this would work even if the combining were to fail given that the deletion of the gem due to failure happens *after* the gem level is increased, and items are not deleted when inventory is locked. The fix is trivially simple, just have the function stop when items are supposed to get deleted, like this : Or whatever suits your code-base, interrupt the function when items that should be deleted aren't. if i == 0 or j == 0 then LG( "Hecheng_BS" , "Delete item failed" ) return 0 end If any site admin wants any further proof I will oblige, however I will not go into detail on the process a player can use to lock their inventory in such a way. I would suggest to also check other functions which have the same behavior when items aren't deleted, I don't think any is susceptible to this same exploitation, but you never know. A screenshot of the bug in action: Before this I had 1 refining gem level 2 and two level 1 in my inventory, after I had two level two and one level one. And now one is level three one is level two and one is level one Neither the level 2 nor the level 1 of previous gem combinings got deleted
×
×
  • Create New...