Jump to content

Veneno

Inactive Member
  • Posts

    102
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Veneno

  1. 9 hours ago, AlexxD said:

    You just need a little bit of concentration. I'm a newbie in C++/Python/Lua, I mean, all Metin2 features, and I made it very quickly.(Just private shop price was getting me angry because I didn't find the solution till 3 days ago)
    Find all gold/price/amount/points values/functions/variables, and change DWORD/int in long long and don't change any of static_cast<int64_t> to long long, just replace with static_cast<long long> .

    If you have python 2.7.3/2.7.6 use K value in binary, and don't forget to change GetStatus/SetStatus functions also from binary.(not long for these functions, because if you have long long for yang and just long for status, your max yang will be 4kkk)

    I will try ty :D

    • Love 1
  2. 1 hour ago, AlexxD said:

    If you change the prefix from dw(DWORD prefix) to ll(long long prefix) you just change variable name/prefix. If you truly want to rename all variables where you have modified values and files, you also need to change the variables functions, but there's no fix for your bug with changing the name or prefix of variable.
    Also, the tut from metin2tech.de it's just an upgrade with some unused functions like (long long)cost which doesn't help you at changing max value of yang, just at refine window(if you do it corectly). I hope you'll understand what I'm saying here.

    I'm getting you :P I'm just trying to find something that will work cause everything I've tried have either failed or succeeded only in a visual effect I want to actually make it work :S

  3. NOOOOOOPE! Not that tut! That is what I did and my client was not running. For anyone that needs a good tut here is one http://metin2tech.de/topic/19-cyang-limit-erh%C3%B6hen/.

    Of course some parts from the hungarian tut are better (ex. you should do llPrice not dwPrice) and of course in the hungarian there are some more details on what you should change but for everyone who is about to go through this procedure I recommend the german one as a "core-tut" let's say it that way and as a secondary tut for completing incomplete parts to use the hungarian. And don't forget to change the python parts! I did the german and now I have problem with my Inventory only (does not go higher than 2.124.000.000) but if I find any fix for that I will mark it with a "Like this" so you can go to my activity and see how did I fixe it. I hope I was helpfull :)

    EDIT: Problem solved (only visual, still needs some stuff to work properly) - See comment of @.T4Ump

  4. Hey guys I found this tut http://metin2hungary.net/index.php?topic=189507.0 and I did it. When I finally made it my client was not starting. So I went back to my bin and added these 2 lines to PythonUtils.cpp:

    Spoiler
    #define PyLong_AsLong PyLong_AsLongLong
     
    #define PyLong_AsUnsignedLong PyLong_AsUnsignedLongLong

    and changed my uiCommon's function like this:

    Spoiler
     def __OnValueUpdate(self):
      ui.EditLine.OnIMEUpdate(self.inputValue)
     
      text = self.inputValue.GetText()
     
      money = 0
      if text and text.isdigit():
       try:
        money = long(text)
       except ValueError:
        money = 1000000000000000
     
      self.moneyText.SetText(self.moneyHeaderText + localeInfo.NumberToMoneyString(money))

    So now client starts but when I login it crashes with this syserr:

    Spoiler
    1224 16:47:11373 ::
    networkModule.py(line:201) SetSelectCharacterPhase
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    introSelect.py(line:30) <module>
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    interfaceModule.py(line:10) <module>
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    uiTaskBar.py(line:5) <module>
    system.py(line:137) __pack_import
    L:\work\Python-2.7.3\lib\locale.py(line:15) <module>
    system.py(line:137) __pack_import
    C:\Users\YMIR\Downloads\Python-2.7.3\Python-2.7.3\lib\encodings\__init__.py(line:32) <module>
     
    networkModule.SetSelectCharacterPhase - <type 'exceptions.ImportError'>:cannot import name aliases
     
    1224 16:47:11373 :: ============================================================================================================
    1224 16:47:11373 :: Abort!!!!
     
     

    So what can I do now?

  5. Well I fixed it somehow differently but now I get this syserr :P

    Spoiler
    1224 16:34:14653 ::
    networkModule.py(line:201) SetSelectCharacterPhase
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    introSelect.py(line:30) <module>
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    interfaceModule.py(line:10) <module>
    system.py(line:130) __pack_import
    system.py(line:110) _process_result
    uiTaskBar.py(line:5) <module>
    system.py(line:137) __pack_import
    L:\work\Python-2.7.3\lib\locale.py(line:15) <module>
    system.py(line:137) __pack_import
    C:\Users\YMIR\Downloads\Python-2.7.3\Python-2.7.3\lib\encodings\__init__.py(line:32) <module>
     
    networkModule.SetSelectCharacterPhase - <type 'exceptions.ImportError'>:cannot import name aliases
     
    1224 16:34:14653 :: ============================================================================================================
    1224 16:34:14653 :: Abort!!!!
     
     

     

  6. On ‎26‎/‎11‎/‎2015 at 5:21 PM, AlexxD said:

    def __OnValueUpdate(self):
            ui.EditLine.OnIMEUpdate(self.inputValue)

            text = self.inputValue.GetText()

            money = 0
            if text and text.isdigit():
                try:
                    money = long(text)
                except ValueError:
                    money = 1000000000000

            self.moneyText.SetText(self.moneyHeaderText + localeInfo.NumberToMoneyString(money))

    replace with this, and if doesn't works, then I don't know, maybe you forgot something in source/binary.

    I did that I do not have the same problem my problem is that I compiled everything but the game won't start... Here is my syserr:

    Spoiler
    1224 06:40:00647 :: ui
    1224 06:40:00647 :: :3016:
    1224 06:40:00647 :: RuntimeWarning
    1224 06:40:00647 :: :
    1224 06:40:00647 :: tp_compare didn't return -1 or -2 for exception
    1224 06:40:00647 ::
     
    1224 06:40:00650 ::
    introLogin.py(line:509) __LoadScript
    ui.py(line:3009) LoadScriptFile
    ui.py(line:3209) LoadChildren
    ui.py(line:3209) LoadChildren
    ui.py(line:3016) LoadChildren
     
    LoginWindow.__LoadScript.LoadObject - <type 'exceptions.OverflowError'>:Python int too large to convert to C long
     
    1224 06:40:00650 :: ============================================================================================================
    1224 06:40:00650 :: Abort!!!!
     
     

    and my function in uiCommon.py:

    Spoiler
     def __OnValueUpdate(self):
      ui.EditLine.OnIMEUpdate(self.inputValue)
     
      text = self.inputValue.GetText()
     
      money = 0
      if text and text.isdigit():
       try:
        money = longlong(text)
       except ValueError:
        money = 1000000000000000
     
      self.moneyText.SetText(self.moneyHeaderText + localeInfo.NumberToMoneyString(money))

     

  7. On ‎13‎/‎07‎/‎2015 at 8:37 AM, ReFresh said:

    You must change it in Binary & Sever Source. Here is a tutorial: http://metin2hungary.net/index.php?topic=189507.0

    Kind Regards ReFresh

    Hey guys I did this but when I started my client I got this syserr:

    Spoiler
    1224 06:09:00626 :: ui
    1224 06:09:00626 :: :3016:
    1224 06:09:00626 :: RuntimeWarning
    1224 06:09:00626 :: :
    1224 06:09:00626 :: tp_compare didn't return -1 or -2 for exception
    1224 06:09:00626 ::
     
    1224 06:09:00627 ::
    introLogin.py(line:509) __LoadScript
    ui.py(line:3009) LoadScriptFile
    ui.py(line:3209) LoadChildren
    ui.py(line:3209) LoadChildren
    ui.py(line:3016) LoadChildren
     
    LoginWindow.__LoadScript.LoadObject - <type 'exceptions.OverflowError'>:Python int too large to convert to C long
     
    1224 06:09:00627 :: ============================================================================================================
    1224 06:09:00627 :: Abort!!!!
     
     

     

  8. Hello :) wow I'm seeing very good comments about your work. Unfortunately your images are down can you re-up so I can have a personal opinion? Also do you just sell designs or PHP code behind them?

  9. On ‎05‎/‎11‎/‎2015 at 3:54 PM, Achilleee said:

    Does anyone kwon how can fix this problem?

    https://metin2.download/picture/Xg1sE35a2y5A0yynShjX1K8WmusQ02Nf/.png

     

    Dude I just fixed this problem you need to create a proto_dump.exe that supports new types and subtypes @xP3NG3Rx gives a good one in his tut. Also guys I tried the p3ng3r method and now my CHANGE_ATTR works but my RESET_ATTR is not doing anything. I just drag it on my costume and nothing happens. Anyone knows where should I look for typos?

  10. This is the quest:

    Spoiler

    quest troqueuse begin
        state start begin
            when 30093.use."Σύστημα Τράπεζας " begin
                say_title("Σύστημα Τράπεζας: ")
                say("")
                say("Καλωσόρισες στην δική σου ατομική τράπεζα! Εδώ ")
                say("μπορείς να καταθέσεις το Gold σου, όταν αυτό φτάσει ")
                say("το όριο του καταλόγου σου. Το μέγιστο Gold που ")
                say("μπορείς να αποθηκεύσεις είναι: ")
                say("9.223.372.036.854.775.807. ")
                say("")
                local player_id = pc.get_player_id(pc.getname())
                local verification = pc.get_true_banque(player_id)
                if verification == 0 then
                    say_title("Σύστημα Τράπεζας: ")
                    say("")
                    say("Δεν έχεις ανοιχτό λογαριασμό στην Τράπεζα ")
                    say("ακόμη. Θέλεις να ανοίξεις έναν; ")
                    say("")
                    local a = select("Ενεργοποίηση ","Άκυρο ")
                    if a == 2 then
                        return
                    elseif a == 1 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                        say("Δημιούργησε τον κωδικό πρόσβασής σου. Για ")
                        say("ακύρωση, απλά άσε κενό και πάτα ΟΚ. ")
                        say("")
                        local mdp_choice = input()
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                        say("Έχεις επιλέξει τον ακόλουθο κωδικό πρόσβασης: ")
                        say("")
                        say(mdp_choice)
                        local zero = 0
                        local un = 1
                        local b = select("Επιβεβαίωση ","Ακύρωση ")
                        if b == 2 then
                            return
                        elseif b == 1 then
                            mysql_query("INSERT INTO player.banque VALUES owner_id = '"..player_id.."', yang = '"..zero.."', mdp = '"..mdp_choice.."' ")
                            mysql_query("UPDATE account.account SET banque = '"..un.."' where owner_id = '".. player_id .."'")
                        end
                    end
                elseif verification == 1 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                    say("Κεντρικό μενού Τράπεζας: ")
                        say("")
                    local c = select("Ανάληψη ","Κατάθεση ","Κλείσιμο ")
                    if c == 3 then
                        return
                    elseif c == 1 then
                        local yang_banque = pc.get_yang(player_id)
                        if yang_banque == 0 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                            say("Δεν έχεις καταθέσει ακόμη μετρητά στο Σύστημα ")
                            say("Τράπεζάς σου. ")
                        say("")
                        else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                            say("Πληκτρολόγησε τον κωδικό πρόσβασής σου: ")
                        say("")
                            local mdp = input()
                            local mdp_banque = pc.get_pass(player_id)
                            if mdp == mdp_banque then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                say("Επέλεξε ποσό ανάληψης: ")
                        say("")
                                local yang_destock = input()
                                if yang_destock > 0 and yang_destock < 9999999999 then
                                    if yang_destock > yang_banque then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                        say("Δεν έχεις τόσο Gold αποθηκευμένο στην Τράπεζά σου. ")
                        say("")
                                    else
                                        local yang_limite = yang_destock + yang_banque
                                        if yang_limite > 2125000000 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                            say("Ο κατάλογός σου δεν χωράει τόσο πολύ Gold. ")
                        say("")
                                        else
                                            local yang_limite_banque = yang_banque - yang_destock
                                            if yang_limite_banque < 0 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                                say("Δεν σου έχει μείνει καθόλου Gold. ")
                        say("")
                                            else
                                                pc.update_yang(player_id, yang_limite_banque)
                                                pc.give_gold(yang_destock)
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                                say("Η ανάληψή σου ήταν επιτυχής! ")
                        say("")
                                            end
                                        end
                                    end
                                else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                    say("Δεν μπορείς να κάνεις ανάληψη Gold γιατί το ποσό ")
                                    say("που πληκτρολόγησες δεν είναι έγκυρο. ")
                        say("")
                                end
                            else
                                say_reward("Λάθος κωδικός πρόσβασης. ")
                            end
                        end
                    elseif c == 2 then
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                        say("Πόσο Gold θα ήθελες να καταθέσεις; ")
                        say("")
                        local yang_stock = input()
                        if yang_stock > 0 and yang_stock < 9999999999 then
                            if pc.get_gold > yang_stock then
                                local yang_banque = pc.get_yang(player_id)
                                local banque_limite = yang_stock + yang_banque
                                if banque_limite < 9200000000000000000 then
                                    pc.update_yang(player_id, banque_limite)
                                    pc.give_gold(-yan_stock)
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                    say("Η κατάθεσή σου ολοκληρώθηκε με επιτυχία! ")
                        say("")
                                else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                    say("Δεν έχεις τόσο πολύ Gold. ")
                        say("")
                                end
                            else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                                say("Δεν μπορείς να αποθηκεύσεις περισσότερο Gold στην Τράπεζά σου. ")
                        say("")
                            end
                        else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                            say("Δεν μπορείς να καταθέσεις Gold γιατί το ποσό που έχεις ")
                            say("πληκτρολογήσει δεν είναι έγκυρο. ")
                        say("")
                        end
                    end
                else
                        say_title("Σύστημα Τράπεζας: ")
                        say("")
                    say("Τραπεζικό σφάλμα! ")
                        say("")
                end
            end
            when 30093.use."test compte gm" with pc.is_gm() begin
                local player_id = pc.get_player_id(pc.getname())
                local un = 1
                local mdp_choice = "123456"
                -- mysql_query("INSERT INTO player.banque VALUES owner_id = '"..player_id.."', yang = '"..un.."', mdp = '"..mdp_choice.."' ")
                pc.insert_banque(player_id,un,mdp_choice)
                pc.update_account_banque(player_id)
                say(player_id)
            end
        end
    end

    I have added all the nessecary things to questfunctions.lua and I made the item ITEM_QUEST and everything else correctly.

×
×
  • 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.