Jump to content

Micha aka xCPx

Inactive Member
  • Posts

    62
  • Joined

  • Last visited

  • Days Won

    4
  • Feedback

    0%

Posts posted by Micha aka xCPx

  1. All maps you are showing are on ch99.

    So basically it checks clientside if it is on ch99. 

     

    If you don't add ch99 to the index in the mapping it doesn't find it and the function isn't run. 

     

    So basically it allready checks it.

     

    Also if an port isn't added to the mapping then teleport won't work if you are on this ch

  2. You know that the system as released here works perfectly or? 

     

    But you need correct entries in the serverinfo and also the right ports

     

    Also the map checks is serverside 

    If Ch99 isn't set to the map then you function allways returns if player is in ch99

    The clientside part I just took from wom2 because was too lazy go create own guy 

     

  3. Hey.

     

    At the moment we ( me and a few friends ) wanted to create a new kind of metin2.

    The problem is: we need some sponsors for Maps / 3D / Design and so on.

    Depending on what you sponsor you get what you sponsored + 30% or maybe percentual of the Servers income after the start of the server.

     

    Skype: mav2904

    • Love 1
  4. M2 Download Center

    This is the hidden content, please
    ( Internal )

    Hey,

     

    after somone sells it under his name and earns money with my work i release it now.
    looks like a normal warp

    Is ne 10min Arbeit aber naja was solls.

    Spoiler

     

    actual working with this ports.

    Spoiler

    ch1:
    13002 - 13008
    ch2:
    13102 - 13108
    ch3:
    13202 - 13208
    ch4:
    13302 - 13308

     

    
    cmd.cp:
        after:
            ACMD(do_warp);
        add:
            ACMD(do_channel_switch);
    
        after:
            { "mall_close",    do_mall_close,        0,            POS_DEAD,    GM_PLAYER    },
        add:
            { "channel",        do_channel_switch,        0,            POS_DEAD,    GM_PLAYER    },
        
    
    cmd_general.cpp:
        
        after:
            ACMD(do_set_run_mode)
            {
                ch->SetNowWalking(false);
                ch->SetWalking(false);
            }
        add:
            ACMD(do_channel_switch)
            {
        
                char arg1[256];
                one_argument(argument, arg1, sizeof(arg1));
                if (!*arg1)
                        return;
                
                int new_ch;
                str_to_number(new_ch, arg1);
                if( new_ch <1 || new_ch >4)   // REPLACE 2 WITH YOUR MAX_CHANNEL 
                    return;
                if (!ch->IsPC())
                    return;
                ch->ChannelSwitch(new_ch);
                
            }
    
    char.h:
        
        after:
            void                StartWarpNPCEvent();
        add:
            void                            ChannelSwitch(int new_ch);
     
    
    char.cpp:
        after:
            EVENTFUNC(warp_npc_event)
            {
                char_event_info* info = dynamic_cast<char_event_info*>( event->info );
                if ( info == NULL )
                {
                    sys_err( "warp_npc_event> <Factor> Null pointer" );
                    return 0;
                }
                LPCHARACTER    ch = info->ch;
                if (ch == NULL) { // <Factor>
                    return 0;
                }    
                if (!ch->GetSectree())
                {
                    ch->m_pkWarpNPCEvent = NULL;
                    return 0;
                }
                FuncCheckWarp f(ch);
                if (f.Valid())
                    ch->GetSectree()->ForEachAround(f);
                return passes_per_sec / 2;
            }
    
        add:
            void CHARACTER::ChannelSwitch(int new_ch){
                long lAddr;
                long lMapIndex;
                WORD wPort;
                long x = this->GetX();
                long y = this->GetY();
                if (!CMapLocation::instance().Get(x, y, lMapIndex, lAddr, wPort))
                {
                        sys_err("cannot find map location index %d x %d y %d name %s", lMapIndex, x, y, GetName());
                        return;
                }
                if(lMapIndex >= 10000){
                    return;
                }
                
                std::map<WORD, int>micha;
                
                for(int i = 0; i < 4; i++){ //replace with maximum channels -1   actual 1300x - 1330x
                    for(int i2 = 2; i2 < 9; i2++){ //replace with your core values actual  13x02 - 13x08
                        micha[13*1000 + i*100 + i2] = i+1;
                    }        
                }
                //micha[13002] = 1;
                int chan;
                if(micha.find(wPort) != micha.end()){
                    chan = micha[wPort];
                }else{return;}
                Stop();
                Save();
                
                if(GetSectree()){
                    GetSectree()->RemoveEntity(this);
                    ViewCleanup();
                    EncodeRemovePacket(this);
                }
                TPacketGCWarp p;
                p.bHeader    = HEADER_GC_WARP;
                p.lX    = x;
                p.lY    = y;
                p.lAddr    = lAddr;
                p.wPort    = (wPort - 100*(chan-1) + 100*(new_ch-1));
                
                GetDesc()->Packet(&p, sizeof(TPacketGCWarp));
            }

    Py script + howto in description

     

     

    have fun with it

    • Metin2 Dev 58
    • kekw 1
    • Eyes 2
    • Sad 1
    • Cry 1
    • Confused 1
    • Scream 1
    • Lmao 3
    • Good 29
    • Love 5
    • Love 66
  5. Guildsafebox related error.

    0616 12:12:43691 :: SYSERR:   File "networkModule.py", line 247, in SetGamePhase
     
    0616 12:12:43692 :: SYSERR:   File "game.py", line 104, in __init__
     
    0616 12:12:43692 :: SYSERR:   File "interfaceModule.py", line 291, in MakeInterface
     
    0616 12:12:43693 :: SYSERR:   File "interfaceModule.py", line 183, in __MakeWindows
     
    0616 12:12:43694 :: SYSERR:   File "uiSafebox.py", line 513, in __init__
     
    0616 12:12:43694 :: SYSERR:   File "uiSafebox.py", line 580, in __LoadWindow
     
    0616 12:12:43695 :: SYSERR:   File "uiSafebox.py", line 681, in RefreshGuildSafeboxMoney
     
    0616 12:12:43696 :: SYSERR: AttributeError
    0616 12:12:43696 :: SYSERR: :
    0616 12:12:43696 :: SYSERR: 'module' object has no attribute 'GetGuildMoney'
    0616 12:12:43697 :: SYSERR:
     
    0616 12:12:45766 :: SYSERR: Traceback (most recent call last):
     
    0616 12:12:45767 :: SYSERR:   File "game.py", line 808, in RefreshInventory
     
    0616 12:12:45767 :: SYSERR:   File "interfaceModule.py", line 580, in RefreshInventory
     
    0616 12:12:45768 :: SYSERR: AttributeError
    0616 12:12:45769 :: SYSERR: :
    0616 12:12:45769 :: SYSERR: 'NoneType' object has no attribute 'RefreshQuickSlot'
    0616 12:12:45770 :: SYSERR:

     

  6. Hey,

    After Jonas said hello, i think i should do that, too.

    So my name is Micha, i am 20 Years old and i started developing in 2008 where i had my first chinese metin2 server.(At this time called "Korea Server")

    After the release of Tims archiver i started working on client and so on and on.

    Until now i can do nearly everything that is possible in mt2 ( except scaling that fcking rights meshes :D )

    and yeah ^^

     

    If you need something simply ask me (:

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