ae5140 2 Posted November 14, 2019 Share Posted November 14, 2019 Hi, link is broken Link to comment Share on other sites More sharing options...
nefdulin 69 Posted March 21, 2020 Share Posted March 21, 2020 You can find the code here: This is the hidden content, please Sign In or Sign Up 41 1 2 1 1 1 10 1 15 Link to comment Share on other sites More sharing options...
Egorka 0 Posted March 30, 2020 Share Posted March 30, 2020 I have a problem, the sound of the blacksmith is off. how to activate it again? which code and where to insert? Link to comment Share on other sites More sharing options...
Leafxc 1 Posted April 19, 2020 Share Posted April 19, 2020 On 3/30/2020 at 7:20 PM, Egorka said: I have a problem, the sound of the blacksmith is off. how to activate it again? which code and where to insert? Open your game.py with Notepad++ CTRL-F => def RefineSuceededMessage(self): def RefineSuceededMessage(self): snd.PlaySound("sound/ui/make_soket.wav") <== ADD THIS AGAIN self.PopupMessage(localeInfo.REFINE_SUCCESS) if app.ENABLE_REFINE_RENEWAL: self.interface.CheckRefineDialog(False) def RefineFailedMessage(self): snd.PlaySound("sound/ui/jaeryun_fail.wav") <== ADD THIS AGAIN self.PopupMessage(localeInfo.REFINE_FAILURE) if app.ENABLE_REFINE_RENEWAL: self.interface.CheckRefineDialog(True) Anyways i need help aswell. I can't seem to solve following issue: Quote 0420 00:40:22370 :: Traceback (most recent call last): 0420 00:40:22370 :: File "game.py", line 2050, in BINARY_ServerCommand_Run 0420 00:40:22370 :: File "stringCommander.py", line 63, in Run 0420 00:40:22370 :: File "stringCommander.py", line 31, in __call__ 0420 00:40:22370 :: File "stringCommander.py", line 11, in __call__ 0420 00:40:22370 :: File "game.py", line 2087, in RefineSuceededMessage 0420 00:40:22370 :: AttributeError 0420 00:40:22370 :: : 0420 00:40:22370 :: 'Interface' object has no attribute 'CheckRefineDialog' 0420 00:40:22370 :: Does someone know a fix for it? Link to comment Share on other sites More sharing options...
nefdulin 69 Posted April 19, 2020 Share Posted April 19, 2020 You need to have a function called 'CheckRefineDialog' inside your interfacemodule.py file. Make sure you have it. 1 Link to comment Share on other sites More sharing options...
Leafxc 1 Posted April 19, 2020 Share Posted April 19, 2020 4 minutes ago, nefdulin said: You need to have a function called 'CheckRefineDialog' inside your interfacemodule.py file. Make sure you have it. I do have it right there: if app.ENABLE_REFINE_RENEWAL: def CheckRefineDialog(self, isFail): self.dlgRefineNew.CheckRefine(isFail) Link to comment Share on other sites More sharing options...
Kafa 153 Posted April 19, 2020 Share Posted April 19, 2020 Looks pretty ugly with the checkbox Link to comment Share on other sites More sharing options...
shotyourself 0 Posted May 14, 2020 Share Posted May 14, 2020 (edited) On 4/19/2020 at 11:55 PM, Leafxc said: I do have it right there: if app.ENABLE_REFINE_RENEWAL: def CheckRefineDialog(self, isFail): self.dlgRefineNew.CheckRefine(isFail) if app.ENABLE_REFINE_RENEWAL: def CheckRefineDialog(self, isFail): self.dlgRefineNew.CheckRefine(isFail) def CheckRefineDialog shouldn't be attached to the "def AppendMaterialToRefineDialog". @Leafxc or any other person who's having issues with this error, support below concerns errors within the file interfacemodule.py at Definitions "AppendMaterialToRefineDialog" & "CheckRefineDialog"Wrong Scenario (the one you probably have): def AppendMaterialToRefineDialog(self, vnum, count): self.dlgRefineNew.AppendMaterial(vnum, count) if app.ENABLE_REFINE_RENEWAL: def CheckRefineDialog(self, isFail): self.dlgRefineNew.CheckRefine(isFail) Correct Scenario below: def AppendMaterialToRefineDialog(self, vnum, count): self.dlgRefineNew.AppendMaterial(vnum, count) if app.ENABLE_REFINE_RENEWAL: def CheckRefineDialog(self, isFail): self.dlgRefineNew.CheckRefine(isFail) Also please, double check the tab identation. Python has strict rules and you need to follow them. Edited May 14, 2020 by shotyourself Link to comment Share on other sites More sharing options...
Poeta 5 Posted June 30, 2020 Share Posted June 30, 2020 Thank you Link to comment Share on other sites More sharing options...
Cunoo 210 Posted June 30, 2020 Share Posted June 30, 2020 Where is old metin if anyone need this system.. So lazy one more click for more fun.. Link to comment Share on other sites More sharing options...
adriielito 2 Posted February 7, 2021 Share Posted February 7, 2021 I got no problem when adding the system, no sysrr, nothing else. My problem is that the system is working really different than should. First, it is upgrading two levels in a row, i mean. I have an item +0 then i refine then just one time and it is +2. The another problem is the accept box is not appearing after that any solution? Link to comment Share on other sites More sharing options...
NeXuS0248 3 Posted May 1, 2021 Share Posted May 1, 2021 (edited) 0501 02:44:20301 :: File "networkModule.py", line 237, in SetGamePhase 0501 02:44:20301 :: File "system.py", line 177, in __hybrid_import 0501 02:44:20301 :: File " 0501 02:44:20301 :: game.py 0501 02:44:20301 :: ", line 0501 02:44:20301 :: 1293 0501 02:44:20301 :: 0501 02:44:20301 :: 0501 02:44:20301 :: else: 0501 02:44:20301 :: 0501 02:44:20301 :: 0501 02:44:20301 :: 0501 02:44:20301 :: 0501 02:44:20301 :: ^ 0501 02:44:20301 :: SyntaxError 0501 02:44:20301 :: : 0501 02:44:20301 :: invalid syntax 0501 02:44:20301 :: It will be the late hour ... but I can't understand what happens. Syntax error where? Game.py https://pastebin.com/1D4DFa1z Edited May 1, 2021 by NeXuS0248 1 Link to comment Share on other sites More sharing options...
HAZAR 0 Posted September 26, 2021 Share Posted September 26, 2021 help Link to comment Share on other sites More sharing options...
Pseudabo 32 Posted November 3, 2021 Share Posted November 3, 2021 Can someone tell me something about RefineDialog and RefineDialogNew? For what is here old and for what new? So I added this system and works fine.. But I'm not 100% sure with uirefine.py because tutorial is really bad writed. There is some part with 2x same function in 1 file.. Link to comment Share on other sites More sharing options...
Artix96it 2 Posted November 9, 2021 Share Posted November 9, 2021 1109 17:33:24882 :: Traceback (most recent call last): 1109 17:33:24883 :: File "game.py", line 712, in OpenRefineDialog 1109 17:33:24883 :: File "interfaceModule.py", line 835, in OpenRefineDialog 1109 17:33:24883 :: File "uiRefine.py", line 344, in Open 1109 17:33:24883 :: File "uiRefine.py", line 287, in __LoadScript 1109 17:33:24883 :: AttributeError 1109 17:33:24883 :: : 1109 17:33:24883 :: 'RefineDialogNew' object has no attribute 'AutoRefine' 1109 17:33:24883 :: ..... Link to comment Share on other sites More sharing options...
Pseudabo 32 Posted November 12, 2021 Share Posted November 12, 2021 (edited) On 11/9/2021 at 5:40 PM, Artix96it said: 1109 17:33:24882 :: Traceback (most recent call last): 1109 17:33:24883 :: File "game.py", line 712, in OpenRefineDialog 1109 17:33:24883 :: File "interfaceModule.py", line 835, in OpenRefineDialog 1109 17:33:24883 :: File "uiRefine.py", line 344, in Open 1109 17:33:24883 :: File "uiRefine.py", line 287, in __LoadScript 1109 17:33:24883 :: AttributeError 1109 17:33:24883 :: : 1109 17:33:24883 :: 'RefineDialogNew' object has no attribute 'AutoRefine' 1109 17:33:24883 :: ..... Check my function difference.. Spoiler import app import net import player import item import ui import uiToolTip import mouseModule import localeInfo import uiCommon import constInfo class RefineDialog(ui.ScriptWindow): makeSocketSuccessPercentage = (100, 33, 20, 15, 10, 5, 0) upgradeStoneSuccessPercentage = (30, 29, 28, 27, 26, 25, 24, 23, 22) upgradeArmorSuccessPercentage = (99, 66, 33, 33, 33, 33, 33, 33, 33) upgradeAccessorySuccessPercentage = (99, 88, 77, 66, 33, 33, 33, 33, 33) upgradeSuccessPercentage = (99, 66, 33, 33, 33, 33, 33, 33, 33) def __init__(self): ui.ScriptWindow.__init__(self) self.__LoadScript() self.scrollItemPos = 0 self.targetItemPos = 0 def __LoadScript(self): self.__LoadQuestionDialog() try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self, "uiscript/refinedialog.py") except: import exception exception.Abort("RefineDialog.__LoadScript.LoadObject") try: self.board = self.GetChild("Board") self.titleBar = self.GetChild("TitleBar") self.successPercentage = self.GetChild("SuccessPercentage") self.GetChild("AcceptButton").SetEvent(self.OpenQuestionDialog) self.GetChild("CancelButton").SetEvent(self.Close) except: import exception exception.Abort("RefineDialog.__LoadScript.BindObject") if constInfo.SUCCESS_PERCENTAGE_INFO: self.successPercentage.Show() else: self.successPercentage.Hide() toolTip = uiToolTip.ItemToolTip() toolTip.SetParent(self) toolTip.SetPosition(15, 38) toolTip.SetFollow(False) toolTip.Show() self.toolTip = toolTip self.titleBar.SetCloseEvent(ui.__mem_func__(self.Close)) def __del__(self): ui.ScriptWindow.__del__(self) def __LoadQuestionDialog(self): self.dlgQuestion = ui.ScriptWindow() try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self.dlgQuestion, "uiscript/questiondialog2.py") except: import exception exception.Abort("RefineDialog.__LoadQuestionDialog.LoadScript") try: GetObject=self.dlgQuestion.GetChild GetObject("message1").SetText(localeInfo.REFINE_DESTROY_WARNING) GetObject("message2").SetText(localeInfo.REFINE_WARNING2) GetObject("accept").SetEvent(ui.__mem_func__(self.Accept)) GetObject("cancel").SetEvent(ui.__mem_func__(self.dlgQuestion.Hide)) except: import exception exception.Abort("SelectCharacterWindow.__LoadQuestionDialog.BindObject") def Destroy(self): self.ClearDictionary() self.board = 0 self.successPercentage = 0 self.titleBar = 0 self.toolTip = 0 self.dlgQuestion = 0 def __InitializeOpen(self): self.children = [] self.vnum = 0 self.targetItemPos = 0 self.dialogHeight = 0 self.cost = 0 self.percentage = 0 self.type = 0 self.xRefineStart = 0 self.yRefineStart = 0 def GetRefineSuccessPercentage(self, scrollSlotIndex, itemSlotIndex): if -1 != scrollSlotIndex: if player.IsRefineGradeScroll(scrollSlotIndex): curGrade = player.GetItemGrade(itemSlotIndex) itemIndex = player.GetItemIndex(itemSlotIndex) item.SelectItem(itemIndex) itemType = item.GetItemType() itemSubType = item.GetItemSubType() if item.ITEM_TYPE_METIN == itemType: if curGrade >= len(self.upgradeStoneSuccessPercentage): return 0 return self.upgradeStoneSuccessPercentage[curGrade] elif item.ITEM_TYPE_ARMOR == itemType: if item.ARMOR_BODY == itemSubType: if curGrade >= len(self.upgradeArmorSuccessPercentage): return 0 return self.upgradeArmorSuccessPercentage[curGrade] else: if curGrade >= len(self.upgradeAccessorySuccessPercentage): return 0 return self.upgradeAccessorySuccessPercentage[curGrade] else: if curGrade >= len(self.upgradeSuccessPercentage): return 0 return self.upgradeSuccessPercentage[curGrade] for i in xrange(player.METIN_SOCKET_MAX_NUM+1): if 0 == player.GetItemMetinSocket(itemSlotIndex, i): break return self.makeSocketSuccessPercentage[i] def Open(self, scrollItemPos, targetItemPos): self.scrollItemPos = scrollItemPos self.targetItemPos = targetItemPos percentage = self.GetRefineSuccessPercentage(scrollItemPos, targetItemPos) if 0 == percentage: return self.successPercentage.SetText(localeInfo.REFINE_SUCCESS_PROBALITY % (percentage)) itemIndex = player.GetItemIndex(targetItemPos) self.toolTip.ClearToolTip() metinSlot = [] for i in xrange(player.METIN_SOCKET_MAX_NUM): metinSlot.append(player.GetItemMetinSocket(targetItemPos, i)) self.toolTip.AddItemData(itemIndex, metinSlot) self.UpdateDialog() self.SetTop() self.Show() def UpdateDialog(self): newWidth = self.toolTip.GetWidth() + 30 newHeight = self.toolTip.GetHeight() + 98 self.board.SetSize(newWidth, newHeight) self.titleBar.SetWidth(newWidth-15) self.SetSize(newWidth, newHeight) (x, y) = self.GetLocalPosition() self.SetPosition(x, y) def OpenQuestionDialog(self): percentage = self.GetRefineSuccessPercentage(-1, self.targetItemPos) if 100 == percentage: self.Accept() return self.dlgQuestion.SetTop() self.dlgQuestion.Show() def Accept(self): net.SendRefinePacket(self.targetItemPos, self.type) def AutoRefine(self, checkType, autoFlag): constInfo.IS_AUTO_REFINE = autoFlag def CheckRefine(self, isFail): if constInfo.IS_AUTO_REFINE == True: if constInfo.AUTO_REFINE_TYPE == 1: if constInfo.AUTO_REFINE_DATA["ITEM"][0] != -1 and constInfo.AUTO_REFINE_DATA["ITEM"][1] != -1: scrollIndex = player.GetItemIndex(constInfo.AUTO_REFINE_DATA["ITEM"][0]) itemIndex = player.GetItemIndex(constInfo.AUTO_REFINE_DATA["ITEM"][1]) if scrollIndex == 0 or (itemIndex % 10 == 8 and not isFail): self.Close() else: net.SendItemUseToItemPacket(constInfo.AUTO_REFINE_DATA["ITEM"][0], constInfo.AUTO_REFINE_DATA["ITEM"][1]) elif constInfo.AUTO_REFINE_TYPE == 2: npcData = constInfo.AUTO_REFINE_DATA["NPC"] if npcData[0] != 0 and npcData[1] != -1 and npcData[2] != -1 and npcData[3] != 0: itemIndex = player.GetItemIndex(npcData[1], npcData[2]) if (itemIndex % 10 == 8 and not isFail) or isFail: self.Close() else: net.SendGiveItemPacket(npcData[0], npcData[1], npcData[2], npcData[3]) else: self.Close() else: self.Close() def Close(self): self.dlgQuestion.Hide() self.Hide() def OnPressEscapeKey(self): self.Close() return True class RefineDialogNew(ui.ScriptWindow): def __init__(self): ui.ScriptWindow.__init__(self) self.__Initialize() self.isLoaded = False def __Initialize(self): self.dlgQuestion = None self.children = [] self.vnum = 0 self.targetItemPos = 0 self.dialogHeight = 0 self.cost = 0 self.percentage = 0 self.type = 0 def __LoadScript(self): try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self, "uiscript/refinedialog.py") except: import exception exception.Abort("RefineDialog.__LoadScript.LoadObject") try: self.board = self.GetChild("Board") self.titleBar = self.GetChild("TitleBar") self.probText = self.GetChild("SuccessPercentage") self.costText = self.GetChild("Cost") self.successPercentage = self.GetChild("SuccessPercentage") self.GetChild("AcceptButton").SetEvent(self.OpenQuestionDialog) self.GetChild("CancelButton").SetEvent(self.CancelRefine) except: import exception exception.Abort("RefineDialog.__LoadScript.BindObject") if constInfo.SUCCESS_PERCENTAGE_INFO: self.successPercentage.Show() else: self.successPercentage.Hide() toolTip = uiToolTip.ItemToolTip() toolTip.SetParent(self) toolTip.SetFollow(False) toolTip.SetPosition(15, 38) toolTip.Show() self.toolTip = toolTip self.slotList = [] for i in xrange(3): slot = self.__MakeSlot() slot.SetParent(toolTip) slot.SetWindowVerticalAlignCenter() self.slotList.append(slot) itemImage = self.__MakeItemImage() itemImage.SetParent(toolTip) itemImage.SetWindowVerticalAlignCenter() itemImage.SetPosition(-35, 0) self.itemImage = itemImage self.titleBar.SetCloseEvent(ui.__mem_func__(self.CancelRefine)) self.checkBox = ui.CheckBox() self.checkBox.SetParent(self) self.checkBox.SetPosition(0, 85) self.checkBox.SetWindowHorizontalAlignCenter() self.checkBox.SetWindowVerticalAlignBottom() self.checkBox.SetEvent(ui.__mem_func__(self.AutoRefine), "ON_CHECK", True) self.checkBox.SetEvent(ui.__mem_func__(self.AutoRefine), "ON_UNCKECK", False) self.checkBox.SetCheckStatus(constInfo.IS_AUTO_REFINE) self.checkBox.SetTextInfo(localeInfo.REFINE_AUTO_RETURN) self.checkBox.Show() self.isLoaded = True def __del__(self): ui.ScriptWindow.__del__(self) def __MakeSlot(self): slot = ui.ImageBox() slot.LoadImage("D:/ymir work/ui/public/slot_base.sub") slot.Show() self.children.append(slot) return slot def __MakeItemImage(self): itemImage = ui.ImageBox() itemImage.Show() self.children.append(itemImage) return itemImage def __MakeThinBoard(self): thinBoard = ui.ThinBoard() thinBoard.SetParent(self) thinBoard.Show() self.children.append(thinBoard) return thinBoard def Destroy(self): self.ClearDictionary() self.dlgQuestion = None self.board = 0 self.probText = 0 self.costText = 0 self.titleBar = 0 self.toolTip = 0 self.successPercentage = None self.slotList = [] self.children = [] def __InitializeOpen(self): self.children = [] self.vnum = 0 self.targetItemPos = 0 self.dialogHeight = 0 self.cost = 0 self.percentage = 0 self.type = 0 self.xRefineStart = 0 self.yRefineStart = 0 def Open(self, targetItemPos, nextGradeItemVnum, cost, prob, type): if False == self.isLoaded: self.__LoadScript() self.__InitializeOpen() self.targetItemPos = targetItemPos self.vnum = nextGradeItemVnum self.cost = cost self.percentage = prob self.type = type if self.percentage >= 100: self.probText.SetText(localeInfo.REFINE_SUCCESS_PROBALITY % (100)) else: self.probText.SetText(localeInfo.REFINE_SUCCESS_PROBALITY % (self.percentage)) self.costText.SetText(localeInfo.REFINE_COST % (self.cost)) self.toolTip.ClearToolTip() metinSlot = [] for i in xrange(player.METIN_SOCKET_MAX_NUM): metinSlot.append(player.GetItemMetinSocket(targetItemPos, i)) attrSlot = [] for i in xrange(player.ATTRIBUTE_SLOT_MAX_NUM): attrSlot.append(player.GetItemAttribute(targetItemPos, i)) self.toolTip.AddRefineItemData(nextGradeItemVnum, metinSlot, attrSlot) item.SelectItem(nextGradeItemVnum) self.itemImage.LoadImage(item.GetIconImageFileName()) xSlotCount, ySlotCount = item.GetItemSize() for slot in self.slotList: slot.Hide() for i in xrange(min(3, ySlotCount)): self.slotList[i].SetPosition(-35, i*32 - (ySlotCount-1)*16) self.slotList[i].Show() self.dialogHeight = self.toolTip.GetHeight() + 46 self.UpdateDialog() self.SetTop() self.Show() def Close(self): self.dlgQuestion = None self.Hide() def AppendMaterial(self, vnum, count): slot = self.__MakeSlot() slot.SetParent(self) slot.SetPosition(15, self.dialogHeight) itemImage = self.__MakeItemImage() itemImage.SetParent(slot) item.SelectItem(vnum) itemImage.LoadImage(item.GetIconImageFileName()) thinBoard = self.__MakeThinBoard() thinBoard.SetPosition(50, self.dialogHeight) thinBoard.SetSize(191, 20) textLine = ui.TextLine() textLine.SetParent(thinBoard) textLine.SetFontName(localeInfo.UI_DEF_FONT) textLine.SetPackedFontColor(0xffdddddd) textLine.SetText("%s x %02d" % (item.GetItemName(), count)) textLine.SetOutline() textLine.SetFeather(False) textLine.SetWindowVerticalAlignCenter() textLine.SetVerticalAlignCenter() if localeInfo.IsARABIC(): (x,y) = textLine.GetTextSize() textLine.SetPosition(x, 0) else: textLine.SetPosition(15, 0) textLine.Show() self.children.append(textLine) self.dialogHeight += 34 self.UpdateDialog() def UpdateDialog(self): newWidth = self.toolTip.GetWidth() + 60 newHeight = self.dialogHeight + 99 newHeight -= 8 if localeInfo.IsARABIC(): self.board.SetPosition(newWidth, 0) (x, y) = self.titleBar.GetLocalPosition() self.titleBar.SetPosition(newWidth - 15, y) self.board.SetSize(newWidth, newHeight) self.toolTip.SetPosition(15 + 35, 38) self.titleBar.SetWidth(newWidth-15) self.SetSize(newWidth, newHeight) (x, y) = self.GetLocalPosition() self.SetPosition(x, y) def OpenQuestionDialog(self): if 100 == self.percentage: self.Accept() return if 5 == self.type: self.Accept() return dlgQuestion = uiCommon.QuestionDialog2() dlgQuestion.SetText2(localeInfo.REFINE_WARNING2) dlgQuestion.SetAcceptEvent(ui.__mem_func__(self.Accept)) dlgQuestion.SetCancelEvent(ui.__mem_func__(dlgQuestion.Close)) if 3 == self.type: dlgQuestion.SetText1(localeInfo.REFINE_DESTROY_WARNING_WITH_BONUS_PERCENT_1) dlgQuestion.SetText2(localeInfo.REFINE_DESTROY_WARNING_WITH_BONUS_PERCENT_2) elif 2 == self.type: dlgQuestion.SetText1(localeInfo.REFINE_DOWN_GRADE_WARNING) else: dlgQuestion.SetText1(localeInfo.REFINE_DESTROY_WARNING) dlgQuestion.Open() self.dlgQuestion = dlgQuestion def Accept(self): net.SendRefinePacket(self.targetItemPos, self.type) def AutoRefine(self, checkType, autoFlag): constInfo.IS_AUTO_REFINE = autoFlag def CheckRefine(self, isFail): if constInfo.IS_AUTO_REFINE == True: if constInfo.AUTO_REFINE_TYPE == 1: if constInfo.AUTO_REFINE_DATA["ITEM"][0] != -1 and constInfo.AUTO_REFINE_DATA["ITEM"][1] != -1: scrollIndex = player.GetItemIndex(constInfo.AUTO_REFINE_DATA["ITEM"][0]) itemIndex = player.GetItemIndex(constInfo.AUTO_REFINE_DATA["ITEM"][1]) if scrollIndex == 0 or (itemIndex % 10 == 8 and not isFail): self.Close() else: net.SendItemUseToItemPacket(constInfo.AUTO_REFINE_DATA["ITEM"][0], constInfo.AUTO_REFINE_DATA["ITEM"][1]) elif constInfo.AUTO_REFINE_TYPE == 2: npcData = constInfo.AUTO_REFINE_DATA["NPC"] if npcData[0] != 0 and npcData[1] != -1 and npcData[2] != -1 and npcData[3] != 0: itemIndex = player.GetItemIndex(npcData[1], npcData[2]) if (itemIndex % 10 == 8 and not isFail) or isFail: self.Close() else: net.SendGiveItemPacket(npcData[0], npcData[1], npcData[2], npcData[3]) else: self.Close() else: self.Close() def CancelRefine(self): net.SendRefinePacket(255, 255) self.Close() constInfo.AUTO_REFINE_TYPE = 0 constInfo.AUTO_REFINE_DATA = {"ITEM" : [-1, -1], "NPC" : [0, -1, -1, 0]} def OnPressEscapeKey(self): self.CancelRefine() return True Edited November 12, 2021 by Pseudabo Link to comment Share on other sites More sharing options...
scazy21 0 Posted January 14, 2022 Share Posted January 14, 2022 thansk ali Link to comment Share on other sites More sharing options...
bajnokujrait 1 Posted January 30, 2023 Share Posted January 30, 2023 0130 14:56:30570 :: Traceback (most recent call last): 0130 14:56:30570 :: File "game.py", line 1957, in BINARY_ServerCommand_Run 0130 14:56:30570 :: File "stringCommander.py", line 63, in Run 0130 14:56:30570 :: File "stringCommander.py", line 31, in __call__ 0130 14:56:30570 :: File "stringCommander.py", line 11, in __call__ 0130 14:56:30570 :: File "game.py", line 1998, in RefineFailedMessage 0130 14:56:30570 :: File "interfaceModule.py", line 813, in CheckRefineDialog 0130 14:56:30570 :: File "uiRefine.py", line 457, in CheckRefine 0130 14:56:30570 :: NameError 0130 14:56:30570 :: : 0130 14:56:30570 :: global name 'chat' is not defined 0130 14:56:30570 :: 0130 14:56:30570 :: Unknown Server Command RefineFailed | RefineFailed help Link to comment Share on other sites More sharing options...
Filachilla 29 Posted January 22 Share Posted January 22 On 9/2/2018 at 12:41 AM, terrorr said: This is buggy because if you use this tick then you can't move any item or use in inventory Someone has solution? Link to comment Share on other sites More sharing options...
Recommended Posts