Jump to content

Cunoo

Inactive Member
  • Posts

    326
  • Joined

  • Last visited

  • Feedback

    0%

Posts posted by Cunoo

  1. Serverside: desc_client.cpp

    if (!bSentBoot)
                   {
                      bSentBoot = true;
                      TPacketGDBoot p;
                      p.dwItemIDRange[0] = 0;
                      p.dwItemIDRange[1] = 0;
                      memcpy(p.szIP, "Your IP", 16);
                      DBPacket(HEADER_GD_BOOT, 0, &p, sizeof(p));
                   }
                }
    
                TEMP_BUFFER buf;
    
                TPacketGDSetup p;
    
                memset(&p, 0, sizeof(p));
                strlcpy(p.szPublicIP, "Your IP", sizeof(p.szPublicIP));

    Clientside: NetAddress.cpp
     

    void CNetworkAddress::GetIP(char* szIP, int len)
    {
    	BYTE IPs[4];
    	*((DWORD*)IPs)=m_sockAddrIn.sin_addr.s_addr;
    
    	_snprintf(szIP, len, "Your IP", IPs[0], IPs[1], IPs[2], IPs[3]);

     

  2. 6 minutes ago, gweilo321 said:

    I obviously havent showed the ip but its in the file. When i add this code nothing is showing in login window

    Yes you dont have in your intrologin.py 

    ServerStateChecker

    Add it and in my code :

    AddChannel

    I solved this problem in my client long time ago with this.. But I using 40k for 2011 client. If you need help, send me pm.

  3. 16 hours ago, ManiacRobert said:

    os was disabled on windows 10.

    I use win 7.  This is not my problem, but thank you.
     

    15 hours ago, tierrilopes said:

    You can do that easilly on the binary.

    How? Please tell me if you have idea.
     

    15 hours ago, Kori said:

    Other way for windows 

    
    import os
    
    os.system('del /F fileName.txt')

     

    Thank you, but I need delete unexpected files in folders without my "index" if you know what I mean.

  4. Hi guys,

    I want create "new" protection for client check files, but I have one little problem..

    90% of code working good, problem is os.remove() does not delete files in folder..

    Here is my modified code:

     

    def BGMcheckFile():
    	BGM = os.listdir("BGM")
    
    	Index = ["a_rhapsody_of_war.mp3", "back_to_back.mp3", "catacomb_of_devil.mp3", "death_of_landmark.mp3", "desert.mp3", "enter_the_east.mp3", "follow_war_god.mp3", "characterselect.mp3", "last-war2.mp3", "login_window.mp3", "lost_my_name.mp3", "m2bg.mp3", "monkey_temple.mp3", "mountain_of_death.mp3", "Only_my_battle.mp3", "open_the_gate.mp3", "save_me.mp3", "wedding.mp3", "wonderland.mp3", "xmas.mp3", "lastplay.inf"]
    
    	if BGM != Index:
    		for Data in BGM:
    			if not Data in Index:
    				try:
    					os.remove(Data)
    				except:
    						app.Abort()
    
    	if Index != BGM:
    		for Data in Index:
    			if not Data in BGM:
    				app.Abort()
    			else:
    				pass
    BGMcheckFile()

    Someone know, where is problem? I tried use "os.chmod" for permission but same problem.

    Thanks for useful help

  5. 	def __RequestServerStateList(self):
    		regionID = self.__GetRegionID()
    		serverID = self.__GetServerID()
    
    		try:
    			channelDict = serverInfo.REGION_DICT[regionID][serverID]["channel"]
    		except:
    			print " __RequestServerStateList - serverInfo.REGION_DICT(%d, %d)" % (regionID, serverID)
    			return
    
    		for id, channelDataDict in channelDict.items():
    			key=channelDataDict["key"]
    			ip=channelDataDict["ip"]
    			udp_port=channelDataDict["udp_port"]
    ################ You must add this line for online channels ##############
    			ServerStateChecker.AddChannel(key, ip, udp_port)
    ############################### END ######################################
    			ServerStateChecker.Request(key, ip, udp_port)

     

  6. Hi guys,
     

    I want change more packs/folders in client..

    For example: 

    folder "Pack" -> "Folder1"
    Property.eix/epk -> "File1.eix/epk"
    Root.eix/epk -> "File2.eix/epk"

    and  more...

    Where I change in client source binary  root, property, pack, guild, just all what is in binary.. Like old method rewrite binary code, but why this if I have src..

    I see on this forum idk where method for folder pack to data.. Maybe if someone have link..

    Thanks for help.

    Edit:

    Property -> PythonBackground.cpp
    Pack, Root -> UserInterface.cpp

    Solved!

    • Metin2 Dev 1
    • Love 1
  7. Hello i have problem with teleport ring my sysser say: 

    SYSERR: UseItemEx: Item type NONE Prsten Warp

     

    quest for teleport ring... :

     

    quest warpring begin 
        state start begin 
            when 70007.use with pc.get_level() >= 10 begin  
                 
                say_title("Ring:")          
                say("Would you like to travel?") 

                local main_set = select("Yes","No") 
                if main_set == 2 then 
                    return 
                end 
                 
                if pc.get_level() <= 10 then 
                    say_title("Ring:") 
                    say("Hm... are you still with your current level") 
                    say("too weak to travel through time and space.") 
                    say("Come back when you're higher than level 10.") 
                    return 
                end 

                local map = pc.get_map_index() 
                local empire = pc.get_empire() 
                local level = pc.get_level() 

                say_title("Ring:") 
                say("Where do you want to be teleported?") 

                -- ?? ?? ???? ?? ?? (? ?? 1,2 ??) 
                if map == 1 or map == 3 or map == 21 or map == 23 or map == 41 or map == 43 then 

                    local guild_map_names = { 
                        "Guild Zone", 
                        "Guild Zone", 
                        "Guild Zone", 
                    } 

                    guild_map_name = guild_map_names[empire] 
                    local empire_castle={ 
                        "Castle Battle", 
                        "Castle Battle", 
                        "Castle Battle", 
                    } 
                    empire_castle =empire_castle[empire] 
                    local sub_set = 0 
                    if level < 60 then -- 60?? : ?????, ???, ????, ??? 
                        sub_set = select(guild_map_name, "Nula Valley", "Waste Land", "Tangra Mountain", empire_castle,"Other Sectors") 
                        if sub_set == 6 then -- ?? 
                            return 
                        end 

                    else -- 61?? : ????, ???, ????, ???? 
                        sub_set = select(guild_map_name, "Nula Valley", "Waste Land", "Tangra Mountain",  empire_castle,"Other Sectors") 
                        if sub_set == 6 then -- ?? 
                            say_title("Teleporter:") 
                            say("Where do you want to be teleported?") 
                            sub_set = select("Valkus", "Demon Tower", "Spider Dungeon", "Wild Forest", "Red Forest", "Land of the Giants", "Back", "Cancel") + 5 
                            if sub_set == 13 then -- ?? 
                                return 
                            end 
                            if sub_set == 12 then -- ?? 
                                say_title("Teleporter:") 
                                say("Where do you want to be teleported?") 
                                                     ---                                                   l 
                                sub_set = select(guild_map_name, "Nula Valley", "Waste Land", "Tangra Mountain",  empire_castle,"Other Sectors") 
                                if sub_set == 6 then -- ?? 
                                    say_title("Teleporter:") 
                                    say("Where do you want to be teleported?") 
                                    sub_set = select("Valkus", "Demon Tower", "Spider Dungeon", "Wilde Forest", "Red Forest", "Land of the Giants", "Cancel") + 5 
                                    if sub_set == 12 then -- ?? 
                                        return 
                                    end 
                                end 
                            end 
                        end 
                    end 


                    local warp = { 
                        -- guild_map 
                        { 
                            { 128500, 1000 }, 
                            { 179500, 1000 }, 
                            { 271800, 13000 }, 
                        }, 
                        -- 64 map_n_threeway 
                        { 
                            { 402100, 673900 }, 
                            { 270400, 739900 }, 
                            { 321300, 808000 }, 
                        }, 
                        -- 63 metin2_map_n_desert_01 
                        { 
                            { 217800, 627200 }, 
                            { 221900, 502700 }, 
                            { 344000, 502500 }, 
                        }, 
                        -- 61 map_n_snowm_01 
                        { 
                            { 434200, 290600 }, 
                            { 375200, 174900 }, 
                            { 491800, 173600 }, 
                        }, 
                        --empire_castle 
                        { 
                            {975200, 133000}, 
                            {977200, 185000}, 
                            {923900, 183600}, 
                         
                        } , 
                        -- 62 metin2_map_n_flame_01 
                        { 
                            { 599400, 756300 }, 
                            { 597800, 622200 }, 
                            { 730700, 689800 }, 
                        }, 
                        -- devil_tower 
                        { 
                            { 590500, 110500 }, 
                            { 590500, 110500 }, 
                            { 590500, 110500 }, 
                        }, 
                        -- 104 metin2_map_spiderdungeon 
                        { 
                            { 60000, 496000 }, 
                            { 60000, 496000 }, 
                            { 60000, 496000 }, 
                        }, 
                        -- 67 metin2_map_trent 
                        { 
                            { 288700, 5700 }, 
                            { 288700, 5700 }, 
                            { 288700, 5700 }, 
                        }, 
                        -- 68 metin2_map_trent02 
                        { 
                            { 1119900, 70800 }, 
                            { 1119900, 70800 }, 
                            { 1119900, 70800 }, 
                        }, 
                        -- 70 metin2_map_nusluck01 
                        { 
                            { 845100, 745900 }, 
                            { 845100, 745900 }, 
                            { 845100, 745900 }, 
                        }, 
                 

                    } 
                    test_chat(warp[sub_set][empire][1]..warp[sub_set][empire][2]) 
                    say_title("Ring:") 
                    say("Caution, I teleport now. you will") 
                    say("at a dangerous place to land, so watch out") 
                    say("you on. Good luck!") 
                    wait() 
                    pc.warp(warp[sub_set][empire][1], warp[sub_set][empire][2]) 
                 

                else -- ? ?? 1,2 ? ??? ?????? ? ?? 1,2 ? ??? ?? ??     
                    local sub_set2 = 3 

                    --sub_set2 = select(locale.vileage1_name[empire], locale.vileage2_name[empire], locale.cancel) 
                    if empire==1 then     
                        sub_set2 = select("Argos","Maadi" , locale.cancel) 
                    elseif  empire ==2 then   
                        sub_set2 = select("Netha","Aswan" , locale.cancel) 
                    elseif  empire ==3 then  
                        sub_set2 = select("Longdon","Corinth" , locale.cancel) 
                    end     
                    if sub_set2 != 3 then 
                        if sub_set2 == 1 then 
                            say_title("Ring:") 
                            say("I would teleport you for nothing.") 
                            wait() 

                            if empire == 1 then 
                                pc.warp(474300,954800) 
                            elseif empire == 2 then 
                                pc.warp(63800,166400) 
                            elseif empire == 3 then 
                                pc.warp(959900,269200) 
                            end     
                        elseif sub_set2 == 2 then 
                            say_title("Ring:") 
                            say("I would teleport you for nothing.") 

                            wait() 
                            if empire == 1 then 
                                pc.warp(353100,882900) 
                            elseif empire == 2 then 
                                pc.warp(145500,240000) 
                            elseif empire == 3 then 
                                pc.warp(863900,246000) 
                            end     
                        end -- end sub set check2 if 
                    end -- end sub set check1 if 
                end    -- end map check if 
            end -- end when use item 
        end -- end state start 
    end -- end quest warpring3  

     

    whats wrong ? 

     

  8. Hi guys,

    I edited client source, and I see this line..

    UserInterface.cpp

    LocaleService_LoadConfig("locale.cfg");

    My idea is hide locale.cfg from client in binary..

    Someone know how to? Etc, give me code for example? I dont want load file from client.

    Thanks for requests..

    SOLVED!

    If anyone need too this change, here is solution:
     

    Locale.cpp

    char	MULTI_LOCALE_SERVICE[256]		= "YMIR";
    char	MULTI_LOCALE_PATH[256]			= "locale/ymir";
    char	MULTI_LOCALE_NAME[256]			= "ymir";
    int		MULTI_LOCALE_CODE		= 949;
    int		MULTI_LOCALE_REPORT_PORT	= 10000;

    Edit code for example:
     

    char	MULTI_LOCALE_SERVICE[256]		= "CZ";
    char	MULTI_LOCALE_PATH[256]			= "locale/cz";
    char	MULTI_LOCALE_NAME[256]			= "cz";
    int		MULTI_LOCALE_CODE		= 1250;
    int		MULTI_LOCALE_REPORT_PORT	= 10019;

    Now delete file "locale.cfg" in client.

    • Love 3
  9. Hello i have problem with logging in the game i cant loggin when i set character kick me back to the loggin screen

    Ch1 sysser : 

    SYSERR: Aug 29 04:23:22 :: socket_bind: bind: Address already in use
    SYSERR: Aug 29 04:23:22 :: ChildLoop: AsyncSQL: query failed: Out of range value for column 'time' at row 1 (query: INSERT INTO bootlog (time, hostname, channel) VALUES(NOW(), 'game1', 1) errno: 1264)
    SYSERR: Aug 29 04:23:24 :: pid_init:
    Start of pid: 9593

    SYSERR: Aug 29 04:23:24 :: socket_bind: bind: Address already in use
    SYSERR: Aug 29 04:23:24 :: ChildLoop: AsyncSQL::ChildLoop : mysql_query error: Out of range value for column 'time' at row 1:
    query: INSERT INTO bootlog (time, hostname, channel) VALUES(NOW(), 'game1', 1)


    DB sysser : 

    SYSERR: Aug 29 04:26:36 :: QueryLocaleSet: cannot set locale latin2 by 'mysql_set_character_set', errno 2013 Lost connection to MySQL server at 'reading authorization packet', system error: 0
    SYSERR: Aug 29 04:26:38 :: pid_init: 
    Start of pid: 663

    SYSERR: Aug 29 04:26:36 :: QueryLocaleSet: cannot set locale latin2 by 'mysql_set_character_set', errno 2013 Lost connection to MySQL server at 'reading authorization packet', system error: 0
    SYSERR: Aug 29 04:26:38 :: pid_init: 
    Start of pid: 663

  10. Hi guys..

    I added fast equipment in my client, working  fine but... If I use quest or request with npc window is visible..

    How I can  hide window after use quest or npc like inventory and all other windows, buttons, etc..

    Screenshot: 

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


     

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