Çözülemedi Sistem söküp ekledikten sonra verilen log hatası

  • Konuyu açan Konuyu açan sametkemh
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 24
  • Gösterim Gösterim 3K
Ne yazık ki bu konuda sorulara çözüm bulunmuyor. Eğer konuda yorumlar varsa hepsini inceleyebilirsiniz. Belki sizlerin sorununuzu çözmek için için ipuçları bulabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

sametkemh

Üye
Üye
Mesaj
36
Beğeni
7
Puan
46
Ticaret Puanı
0
Merhaba saatlerdir uğraşıp eklemeye çalıştığım ekteki hızlı statü sistemini
Linkleri görebilmek için giriş yap veya kayıt ol.
rohan filesinin client srcsinin içinde ENABLE_DETAILS_UI olarak aratıp çıkan kodları kendi srcme ekleyip sonra rohan packından aynı kodu aratıp çıkan tüm sonuçlardaki (root dosyasında çıktı tüm sonuçlar) .py dosyalarına girip kod satırlarını kendi packımdaki ilgili satırlara kopyaladım. Sonra oyuna girdim fakat ekteki log hatasını aldım daha sonra clienti build mi etmem gerekiyor acaba diyip build edip yeni exe ile oyuna girdim biraz daha farklı bir log hatası aldım. Şu dosya şu satır git düzelt demeyip nasıl düzelteceğim konusunda yardım edecekler varsa çok memnun olurum sistem söküp ekleme mantığını biliyorum fakat kodların hangi kısmı alınması lazım tam kestiremiyorum python bilgim olmadığı için :( Bu arada buildde hata falan almadım sadece syser hatası var.
 

Dosya Eklentileri

  • hizli_statu.png
    hizli_statu.png
    645,9 KB · Gösterim: 446
  • buildden önce.png
    buildden önce.png
    8,3 KB · Gösterim: 383
  • buildden sonra.png
    buildden sonra.png
    9,2 KB · Gösterim: 410
sadece
if app.ENABLE_DETAILS_UI:
import uiCharacterDetails

olması imkansız birsürü kod mevcut ve kendi system.py dosyanı ekle
Hocam istersen komple rohanda ENABLE_DETAILS_UI aratınca çıkan dosyaları atayım rohanın orijinalinde olanları ve benimkileri de yanına koyayım sıkıştırıp upload edip atayım linki sen de karşılaştır?
 
bunun ile degistirip denermisin ? kendi dosyanın yedegini almayı unutma

Python:
Genişlet Daralt Kopyala
import sys
import app
import dbg

sys.path.append("lib")

class TraceFile:
    def write(self, msg):
        dbg.Trace(msg)

class TraceErrorFile:
    def write(self, msg):
        dbg.TraceError(msg)
        dbg.RegisterExceptionString(msg)

class LogBoxFile:
    def __init__(self):
        self.stderrSave = sys.stderr
        self.msg = ""

    def __del__(self):
        self.restore()

    def restore(self):
        sys.stderr = self.stderrSave

    def write(self, msg):
        self.msg = self.msg + msg

    def show(self):
        dbg.LogBox(self.msg,"Error")

sys.stdout = TraceFile()
sys.stderr = TraceErrorFile()

#
# pack file support (must move to system.py, systemrelease.pyc)
#

import marshal
import imp
import pack

class pack_file_iterator(object):
    def __init__(self, packfile):
        self.pack_file = packfile
       
    def next(self):
        tmp = self.pack_file.readline()
        if tmp:
            return tmp
        raise StopIteration

_chr = __builtins__.chr

class pack_file(object):

    def __init__(self, filename, mode = 'rb'):
        assert mode in ('r', 'rb')
        if not pack.Exist(filename):
            raise IOError, 'No file or directory'
        self.data = pack.Get(filename)
        if mode == 'r':
            self.data=_chr(10).join(self.data.split(_chr(13)+_chr(10)))

    def __iter__(self):
        return pack_file_iterator(self)

    def read(self, len = None):
        if not self.data:
            return ''
        if len:
            tmp = self.data[:len]
            self.data = self.data[len:]
            return tmp
        else:
            tmp = self.data
            self.data = ''
            return tmp

    def readline(self):
        return self.read(self.data.find(_chr(10))+1)

    def readlines(self):
        return [x for x in self]

__builtins__.pack_open = pack_open = pack_file

_ModuleType = type(sys)

old_import = __import__
def _process_result(code, fqname):
    # did get_code() return an actual module? (rather than a code object)
    is_module = isinstance(code, _ModuleType)

    # use the returned module, or create a new one to exec code into
    if is_module:
        module = code
    else:
        module = imp.new_module(fqname)

    # insert additional values into the module (before executing the code)
    #module.__dict__.update(values)

    # the module is almost ready... make it visible
    sys.modules[fqname] = module

    # execute the code within the module's namespace
    if not is_module:
        exec code in module.__dict__

    # fetch from sys.modules instead of returning module directly.
    # also make module's __name__ agree with fqname, in case
    # the "exec code in module.__dict__" played games on us.
    module = sys.modules[fqname]
    module.__name__ = fqname
    return module

module_do = lambda x:None

def __pack_import(name,globals=None,locals=None,fromlist=None, level=-1):
    if name in sys.modules:
        return sys.modules[name]

    filename = name + '.py'

    if pack.Exist(filename):
        dbg.Trace('importing from pack %s\\n' % name)

        newmodule = _process_result(compile(pack_file(filename,'r').read(),filename,'exec'),name)       

        module_do(newmodule)
        return newmodule
        #return imp.load_module(name, pack_file(filename,'r'),filename,('.py','r',imp.PY_SOURCE))
    else:
        dbg.Trace('importing from lib %s\\n' % name)
        return old_import(name,globals,locals,fromlist)

def splitext(p):
    root, ext = '', ''
    for c in p:
        if c in ['/']:
            root, ext = root + ext + c, ''
        elif c == '.':
            if ext:
                root, ext = root + ext, c
            else:
                ext = c
        elif ext:
            ext = ext + c
        else:
            root = root + c
    return root, ext

class PythonExecutioner:

    def Run(kPESelf, sFileName, kDict):
        if kPESelf.__IsCompiledFile__(sFileName):
            kCode=kPESelf.__LoadCompiledFile__(sFileName)
        else:
            kCode=kPESelf.__LoadTextFile__(sFileName)

        exec(kCode, kDict)

    def __IsCompiledFile__(kPESelf, sFileName):

        sBase, sExt = splitext(sFileName)
        sExt=sExt.lower()

        if sExt==".pyc" or sExt==".pyo":
            return 1
        else:
            return 0

    def __LoadTextFile__(kPESelf, sFileName):
        sText=pack_open(sFileName,'r').read()
        return compile(sText, sFileName, "exec")

    def __LoadCompiledFile__(kPESelf, sFileName):
        kFile=pack_open(sFileName)

        if kFile.read(4)!=imp.get_magic():
            raise

        kFile.read(4)

        kData=kFile.read()
        return marshal.loads(kData)

def execfile(fileName, dict):
    kPE=PythonExecutioner()
    kPE.Run(fileName, dict)

def exec_add_module_do(mod):
    global execfile
    mod.__dict__['execfile'] = execfile

import __builtin__
__builtin__.__import__ = __pack_import
module_do = exec_add_module_do

"""
#
# PSYCO installation (must move to system.py, systemrelease.pyc)
#
try:
    import psyco
    #from psyco.classes import *

    def bind_me(bindable_list):
        try:
            for x in bindable_list:
                try:
                    psyco.bind(x)
                except:
                    pass
        except:
            pass       

    _prev_psyco_old_module_do = module_do
    def module_bind(module):
        _prev_psyco_old_module_do(module)
        #print 'start binding' + str(module)
        try:
            psyco.bind(module)
        except:
            pass
        for x in module.__dict__.itervalues():
            try:
                psyco.bind(x)
            except:
                pass       
        #print 'end binding'

    dbg.Trace("PSYCO installed\\n")

except Exception, msg:
    bind_me = lambda x:None
    dbg.Trace("No PSYCO support : %s\\n" % msg)
"""

def GetExceptionString(excTitle):
    (excType, excMsg, excTraceBack)=sys.exc_info()
    excText=""
    excText+=_chr(10)

    import traceback
    traceLineList=traceback.extract_tb(excTraceBack)

    for traceLine in traceLineList:
        if traceLine[3]:
            excText+="%s(line:%d) %s - %s" % (traceLine[0], traceLine[1], traceLine[2], traceLine[3])
        else:
            excText+="%s(line:%d) %s"  % (traceLine[0], traceLine[1], traceLine[2])

        excText+=_chr(10)
   
    excText+=_chr(10)
    excText+="%s - %s:%s" % (excTitle, excType, excMsg)       
    excText+=_chr(10)

    return excText

def ShowException(excTitle):
    excText=GetExceptionString(excTitle)
    dbg.TraceError(excText)
    app.Abort()

    return 0

def RunMainScript(name):
    try:       
        execfile(name, __main__.__dict__)
    except RuntimeError, msg:
        msg = str(msg)

        import locale
        if locale.error:
            msg = locale.error.get(msg, msg)

        dbg.LogBox(msg)
        app.Abort()

    except:   
        msg = GetExceptionString("Run")
        dbg.LogBox(msg)
        app.Abort()
   
import debugInfo
debugInfo.SetDebugMode(__DEBUG__)

loginMark = "-cs"

app.__COMMAND_LINE__ = __COMMAND_LINE__
RunMainScript("prototype.py")
 
Hocam istersen komple rohanda ENABLE_DETAILS_UI aratınca çıkan dosyaları atayım rohanın orijinalinde olanları ve benimkileri de yanına koyayım sıkıştırıp upload edip atayım linki sen de karşılaştır?
O kadar zaman ayıramam fakat eksik ekledigine eminim benim uicharacter.py dosyamda aratınca çıkanların bi kısmı bunlar

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.chDetailsWnd = None
            self.isOpenedDetailsWnd = False

Python:
Genişlet Daralt Kopyala
    if app.ENABLE_DETAILS_UI:
        def OnTop(self):
            if self.chDetailsWnd:
                self.chDetailsWnd.SetTop()

    if app.ENABLE_DETAILS_UI:
        def Hide(self):
            if self.chDetailsWnd:
                self.isOpenedDetailsWnd = self.chDetailsWnd.IsShow()
                self.chDetailsWnd.Close()
            wndMgr.Hide(self.hWnd)

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.__InitCharacterDetailsUIButton()
            if self.chDetailsWnd and self.isOpenedDetailsWnd:
                self.chDetailsWnd.Show()

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.MainBoard = self.GetChild("board")
            self.ExpandBtn = ui.MakeButton(self.MainBoard, 240, 120, "", "d:/ymir work/ui/game/belt_inventory/", "btn_minimize_normal.tga", "btn_minimize_over.tga", "btn_minimize_down.tga")
            self.ExpandBtn.SetEvent(ui.__mem_func__(self.__ClickExpandButton))
            self.MinimizeBtn = ui.MakeButton(self.MainBoard, 240, 120, "", "d:/ymir work/ui/game/belt_inventory/", "btn_expand_normal.tga", "btn_expand_over.tga", "btn_expand_down.tga")
            self.MinimizeBtn.SetEvent(ui.__mem_func__(self.__ClickMinimizeButton))

    if app.ENABLE_DETAILS_UI:
        def __InitCharacterDetailsUIButton(self):
            self.ExpandBtn.Show()
            self.MinimizeBtn.Hide()

Python:
Genişlet Daralt Kopyala
        for titleBarValue in self.titleBarDict.itervalues():
            if app.ENABLE_DETAILS_UI:
                titleBarValue.SetCloseEvent(ui.__mem_func__(self.Close))
            else:
                titleBarValue.SetCloseEvent(ui.__mem_func__(self.Hide))
 
bunun ile degistirip denermisin ? kendi dosyanın yedegini almayı unutma

Python:
Genişlet Daralt Kopyala
import sys
import app
import dbg

sys.path.append("lib")

class TraceFile:
    def write(self, msg):
        dbg.Trace(msg)

class TraceErrorFile:
    def write(self, msg):
        dbg.TraceError(msg)
        dbg.RegisterExceptionString(msg)

class LogBoxFile:
    def __init__(self):
        self.stderrSave = sys.stderr
        self.msg = ""

    def __del__(self):
        self.restore()

    def restore(self):
        sys.stderr = self.stderrSave

    def write(self, msg):
        self.msg = self.msg + msg

    def show(self):
        dbg.LogBox(self.msg,"Error")

sys.stdout = TraceFile()
sys.stderr = TraceErrorFile()

#
# pack file support (must move to system.py, systemrelease.pyc)
#

import marshal
import imp
import pack

class pack_file_iterator(object):
    def __init__(self, packfile):
        self.pack_file = packfile
      
    def next(self):
        tmp = self.pack_file.readline()
        if tmp:
            return tmp
        raise StopIteration

_chr = __builtins__.chr

class pack_file(object):

    def __init__(self, filename, mode = 'rb'):
        assert mode in ('r', 'rb')
        if not pack.Exist(filename):
            raise IOError, 'No file or directory'
        self.data = pack.Get(filename)
        if mode == 'r':
            self.data=_chr(10).join(self.data.split(_chr(13)+_chr(10)))

    def __iter__(self):
        return pack_file_iterator(self)

    def read(self, len = None):
        if not self.data:
            return ''
        if len:
            tmp = self.data[:len]
            self.data = self.data[len:]
            return tmp
        else:
            tmp = self.data
            self.data = ''
            return tmp

    def readline(self):
        return self.read(self.data.find(_chr(10))+1)

    def readlines(self):
        return [x for x in self]

__builtins__.pack_open = pack_open = pack_file

_ModuleType = type(sys)

old_import = __import__
def _process_result(code, fqname):
    # did get_code() return an actual module? (rather than a code object)
    is_module = isinstance(code, _ModuleType)

    # use the returned module, or create a new one to exec code into
    if is_module:
        module = code
    else:
        module = imp.new_module(fqname)

    # insert additional values into the module (before executing the code)
    #module.__dict__.update(values)

    # the module is almost ready... make it visible
    sys.modules[fqname] = module

    # execute the code within the module's namespace
    if not is_module:
        exec code in module.__dict__

    # fetch from sys.modules instead of returning module directly.
    # also make module's __name__ agree with fqname, in case
    # the "exec code in module.__dict__" played games on us.
    module = sys.modules[fqname]
    module.__name__ = fqname
    return module

module_do = lambda x:None

def __pack_import(name,globals=None,locals=None,fromlist=None, level=-1):
    if name in sys.modules:
        return sys.modules[name]

    filename = name + '.py'

    if pack.Exist(filename):
        dbg.Trace('importing from pack %s\\n' % name)

        newmodule = _process_result(compile(pack_file(filename,'r').read(),filename,'exec'),name)      

        module_do(newmodule)
        return newmodule
        #return imp.load_module(name, pack_file(filename,'r'),filename,('.py','r',imp.PY_SOURCE))
    else:
        dbg.Trace('importing from lib %s\\n' % name)
        return old_import(name,globals,locals,fromlist)

def splitext(p):
    root, ext = '', ''
    for c in p:
        if c in ['/']:
            root, ext = root + ext + c, ''
        elif c == '.':
            if ext:
                root, ext = root + ext, c
            else:
                ext = c
        elif ext:
            ext = ext + c
        else:
            root = root + c
    return root, ext

class PythonExecutioner:

    def Run(kPESelf, sFileName, kDict):
        if kPESelf.__IsCompiledFile__(sFileName):
            kCode=kPESelf.__LoadCompiledFile__(sFileName)
        else:
            kCode=kPESelf.__LoadTextFile__(sFileName)

        exec(kCode, kDict)

    def __IsCompiledFile__(kPESelf, sFileName):

        sBase, sExt = splitext(sFileName)
        sExt=sExt.lower()

        if sExt==".pyc" or sExt==".pyo":
            return 1
        else:
            return 0

    def __LoadTextFile__(kPESelf, sFileName):
        sText=pack_open(sFileName,'r').read()
        return compile(sText, sFileName, "exec")

    def __LoadCompiledFile__(kPESelf, sFileName):
        kFile=pack_open(sFileName)

        if kFile.read(4)!=imp.get_magic():
            raise

        kFile.read(4)

        kData=kFile.read()
        return marshal.loads(kData)

def execfile(fileName, dict):
    kPE=PythonExecutioner()
    kPE.Run(fileName, dict)

def exec_add_module_do(mod):
    global execfile
    mod.__dict__['execfile'] = execfile

import __builtin__
__builtin__.__import__ = __pack_import
module_do = exec_add_module_do

"""
#
# PSYCO installation (must move to system.py, systemrelease.pyc)
#
try:
    import psyco
    #from psyco.classes import *

    def bind_me(bindable_list):
        try:
            for x in bindable_list:
                try:
                    psyco.bind(x)
                except:
                    pass
        except:
            pass      

    _prev_psyco_old_module_do = module_do
    def module_bind(module):
        _prev_psyco_old_module_do(module)
        #print 'start binding' + str(module)
        try:
            psyco.bind(module)
        except:
            pass
        for x in module.__dict__.itervalues():
            try:
                psyco.bind(x)
            except:
                pass      
        #print 'end binding'

    dbg.Trace("PSYCO installed\\n")

except Exception, msg:
    bind_me = lambda x:None
    dbg.Trace("No PSYCO support : %s\\n" % msg)
"""

def GetExceptionString(excTitle):
    (excType, excMsg, excTraceBack)=sys.exc_info()
    excText=""
    excText+=_chr(10)

    import traceback
    traceLineList=traceback.extract_tb(excTraceBack)

    for traceLine in traceLineList:
        if traceLine[3]:
            excText+="%s(line:%d) %s - %s" % (traceLine[0], traceLine[1], traceLine[2], traceLine[3])
        else:
            excText+="%s(line:%d) %s"  % (traceLine[0], traceLine[1], traceLine[2])

        excText+=_chr(10)
  
    excText+=_chr(10)
    excText+="%s - %s:%s" % (excTitle, excType, excMsg)      
    excText+=_chr(10)

    return excText

def ShowException(excTitle):
    excText=GetExceptionString(excTitle)
    dbg.TraceError(excText)
    app.Abort()

    return 0

def RunMainScript(name):
    try:      
        execfile(name, __main__.__dict__)
    except RuntimeError, msg:
        msg = str(msg)

        import locale
        if locale.error:
            msg = locale.error.get(msg, msg)

        dbg.LogBox(msg)
        app.Abort()

    except:  
        msg = GetExceptionString("Run")
        dbg.LogBox(msg)
        app.Abort()
  
import debugInfo
debugInfo.SetDebugMode(__DEBUG__)

loginMark = "-cs"

app.__COMMAND_LINE__ = __COMMAND_LINE__
RunMainScript("prototype.py")
Sonuç ekte hocam
Syserr:
Kod:
Genişlet Daralt Kopyala
0720 14:21:00830 :: ============================================================================================================
0720 14:21:00831 :: Abort!!!!


0720 14:21:00862 :: ============================================================================================================
0720 14:21:00863 :: Abort!!!!


0720 14:21:00867 :: granny_shared_vbs:
0720 14:21:00867 ::     0: 0
0720 14:21:00868 ::     1: 0
0720 14:21:00868 ::     2: 0
0720 14:21:00869 ::     3: 0
0720 14:21:00869 ::     4: 0
0720 14:21:00870 ::     5: 0
0720 14:21:00872 ::     6: 0
0720 14:21:00872 ::     7: 0
0720 14:21:00873 ::     8: 0

Log:
Kod:
Genişlet Daralt Kopyala
0720 14:21:15633 :: Note: PackFirst mode not disabled. [file]
0720 14:21:15634 :: The eterpack doesn't exist [pack/bgm]
0720 14:21:00002 ::
0720 14:21:00002 :: ## Network - OffLine Phase ##
0720 14:21:00003 ::
0720 14:21:00041 :: importing from pack debugInfo
0720 14:21:00043 :: importing from pack localeInfo
0720 14:21:00048 :: importing from pack constInfo
0720 14:21:00830 :: LoadLocaleError(locale/tr/locale_game.txt)
0720 14:21:00831 :: SYSERR: ============================================================================================================
0720 14:21:00831 :: SYSERR: Abort!!!!


0720 14:21:00858 ::
system.py(line:273) RunMainScript
system.py(line:192) execfile
system.py(line:163) Run
prototype.py(line:3) <module>
system.py(line:130) __pack_import
system.py(line:110) _process_result
localeInfo.py(line:201) <module>
localeInfo.py(line:162) LoadLocaleFile

Run - <type 'exceptions.UnboundLocalError'>:local variable 'lines' referenced before assignment

0720 14:21:00863 :: SYSERR: ============================================================================================================
0720 14:21:00863 :: SYSERR: Abort!!!!


0720 14:21:00867 :: SYSERR: granny_shared_vbs:
0720 14:21:00868 :: SYSERR:     0: 0
0720 14:21:00868 :: SYSERR:     1: 0
0720 14:21:00869 :: SYSERR:     2: 0
0720 14:21:00869 :: SYSERR:     3: 0
0720 14:21:00870 :: SYSERR:     4: 0
0720 14:21:00872 :: SYSERR:     5: 0
0720 14:21:00872 :: SYSERR:     6: 0
0720 14:21:00873 :: SYSERR:     7: 0
0720 14:21:00873 :: SYSERR:     8: 0
0720 14:21:00873 :: CResourceManager::__DestroyDeletingResourceMap 0
0720 14:21:00876 :: CResourceManager::__DestroyResourceMap 0
0720 14:21:00878 :: CResourceManager::__DestroyResourceMap 0
0720 14:21:00878 :: CPythonBackground Clear
0720 14:21:00879 :: PythonIME Clear
0720 14:21:00881 :: PythonNetworkMainStream Clear
0720 14:21:00882 :: Python Graphic Clear
 

Dosya Eklentileri

  • Adsız.png
    Adsız.png
    12,5 KB · Gösterim: 186
O kadar zaman ayıramam fakat eksik ekledigine eminim benim uicharacter.py dosyamda aratınca çıkanların bi kısmı bunlar

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.chDetailsWnd = None
            self.isOpenedDetailsWnd = False

Python:
Genişlet Daralt Kopyala
    if app.ENABLE_DETAILS_UI:
        def OnTop(self):
            if self.chDetailsWnd:
                self.chDetailsWnd.SetTop()

    if app.ENABLE_DETAILS_UI:
        def Hide(self):
            if self.chDetailsWnd:
                self.isOpenedDetailsWnd = self.chDetailsWnd.IsShow()
                self.chDetailsWnd.Close()
            wndMgr.Hide(self.hWnd)

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.__InitCharacterDetailsUIButton()
            if self.chDetailsWnd and self.isOpenedDetailsWnd:
                self.chDetailsWnd.Show()

Python:
Genişlet Daralt Kopyala
        if app.ENABLE_DETAILS_UI:
            self.MainBoard = self.GetChild("board")
            self.ExpandBtn = ui.MakeButton(self.MainBoard, 240, 120, "", "d:/ymir work/ui/game/belt_inventory/", "btn_minimize_normal.tga", "btn_minimize_over.tga", "btn_minimize_down.tga")
            self.ExpandBtn.SetEvent(ui.__mem_func__(self.__ClickExpandButton))
            self.MinimizeBtn = ui.MakeButton(self.MainBoard, 240, 120, "", "d:/ymir work/ui/game/belt_inventory/", "btn_expand_normal.tga", "btn_expand_over.tga", "btn_expand_down.tga")
            self.MinimizeBtn.SetEvent(ui.__mem_func__(self.__ClickMinimizeButton))

    if app.ENABLE_DETAILS_UI:
        def __InitCharacterDetailsUIButton(self):
            self.ExpandBtn.Show()
            self.MinimizeBtn.Hide()

Python:
Genişlet Daralt Kopyala
        for titleBarValue in self.titleBarDict.itervalues():
            if app.ENABLE_DETAILS_UI:
                titleBarValue.SetCloseEvent(ui.__mem_func__(self.Close))
            else:
                titleBarValue.SetCloseEvent(ui.__mem_func__(self.Hide))
Peki hocam kapansın konu çözülecek gibi değil ya sağolun siz de.
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst