Jump to content

Rootware

Legendary Member
  • Posts

    1,370
  • Credits

  • Joined

  • Last visited

  • Days Won

    14
  • Feedback

    100%

Posts posted by Rootware

  1. Before make any edits decrypt the file with L2EncDec tool. In next step open in L2TPT and find address offset of your constant and after change. For finding offset you need knows function offset + local (inside function) offset. For second param you need make Analysis in right panel of L2TPT with hex code.

     

    Max-Macro-count.png

  2. 11 minutes ago, xdem said:

    They should be allowed to sell their files based on the free sources, leaks shouldn't be allowed OK - but kinda egoistic approach to block all of them.

     

    I use aCis rev 190 since like 10 years ago and I even upgraded it to a H5 server, looks nothing alike aCis anymore, If I wanted to sell or share it for free once I retire I would certainly not require your permission.

     

    PS1: You are based on L2J H5 do not forget where you started - They did the heavy lifting for us!

     

    PS2: Every report counts. Even the third party ones.

     

    You can sell a diff patch for this aCis revision with you customs and this is does not contradict with aCis ToA.

  3. 16 hours ago, xdem said:

     

    what about ShowBoard packet? afaik it affects most CB bypasses

     

    I know what i said. That packet do nothing w/o client side edit. Look at this before:

    class BoardWnd extends UIScriptEx;
    
    var bool	m_bShow;
    var bool	m_bBtnLock;
    var string 	m_Command[8];
    
    var HtmlHandle	m_hBoardWndHtmlViewer;
    
    var TabHandle	m_hBoardWndTabCtrl;
    
    function OnRegisterEvent()
    {
    	RegisterEvent( EV_ShowBBS );
    	RegisterEvent( EV_ShowBoardPacket );
    }
    
    function OnLoad()
    {
    	if(CREATE_ON_DEMAND==0)
    		OnRegisterEvent();
    
    
    	m_hBoardWndHtmlViewer=GetHtmlHandle("BoardWnd.HtmlViewer");
    	m_hBoardWndTabCtrl=GetTabHandle("BoardWnd.TabCtrl");
    
    	m_bShow = false;
    	m_bBtnLock = false;
    }
    
    function OnShow()
    {
    	m_bShow = true;
    }
    
    function OnHide()
    {
    	m_bShow = false;
    	class'UIAPI_WINDOW'.static.SetFocus("ChatWnd");
    	
    }
    
    function OnEvent(int Event_ID, string param)
    {
    	if (Event_ID == EV_ShowBBS)
    	{
    		HandleShowBBS(param);
    	}
    	else if (Event_ID == EV_ShowBoardPacket)
    	{
    		HandleShowBoardPacket(param);
    	}
    }
    
    function OnClickButton( string strID )
    {	
    	Debug( "-->" @ strID );
    
    
    	switch( strID )
    	{
    	case "btnBookmark":
    		OnClickBookmark();
    		break;
    	}
    	
    	//ЕЗ№цЖ° Е¬ёЇ
    	if (Left(strID, 7) == "TabCtrl")
    	{
    		strID = Mid(strID, 7);
    		if (!class'UIAPI_WINDOW'.static.IsMinimizedWindow( "BoardWnd" ))
    		{
    			ShowBBSTab(int(strID));
    		}
    	}
    }
    
    //ГК±вИ­
    function Clear()
    {
    	
    }
    
    function HandleShowBBS(string param)
    {
    	local int Index;
    	local int Init;
    	
    	ParseInt(param, "Index", Index);
    	ParseInt(param, "Init", Init);
    	
    	//ГК±в»уЕВ·О ї©ґВ°Ў? (SystemMenu·ОєОЕН)
    	if (Init>0)
    	{
    		if (m_bShow)
    		{
    			//АМ№М єёАМ°н АЦАёёй ґЭґВґЩ.
    			PlayConsoleSound(IFST_WINDOW_CLOSE);
    			class'UIAPI_WINDOW'.static.HideWindow("BoardWnd");
    			return;
    		}
    		else
    		{
    			if (!m_hBoardWndHtmlViewer.IsPageLock())
    			{
    				m_hBoardWndHtmlViewer.SetPageLock(true);
    				m_hBoardWndTabCtrl.SetTopOrder(0, false);
    				m_hBoardWndHtmlViewer.Clear();
    				RequestBBSBoard();
    			}
    		}
    		
    		//іЄБЯїЎ HandleShowBoardPacketїЎј­ ShowWindowё¦ ЗСґЩ.
    	}
    	else
    	{
    		m_hBoardWndTabCtrl.SetTopOrder(Index, false);
    		m_hBoardWndHtmlViewer.Clear();
    		ShowBBSTab(Index);
    	}
    }
    
    function HandleShowBoardPacket(string param)
    {
    	local int idx;
    	local int OK;
    	local string Address;
    	
    	ParseInt(param, "OK", OK);
    	if (OK<1)
    	{
    		class'UIAPI_WINDOW'.static.HideWindow("BoardWnd");
    		return;
    	}
    	
    	//Clear
    	for (idx=0; idx<8; idx++)
    		m_Command[idx] = "";
    	
    	ParseString(param, "Command1", m_Command[0]);
    	ParseString(param, "Command2", m_Command[1]);
    	ParseString(param, "Command3", m_Command[2]);
    	ParseString(param, "Command4", m_Command[3]);
    	ParseString(param, "Command5", m_Command[4]);
    	ParseString(param, "Command6", m_Command[5]);
    	ParseString(param, "Command7", m_Command[6]);
    	ParseString(param, "Command8", m_Command[7]);
    	m_bBtnLock = false;
    	
    	ParseString(param, "Address", Address);
    	m_hBoardWndHtmlViewer.SetHtmlBuffData(Address);
    	if (!m_bShow)
    	{
    		PlayConsoleSound(IFST_WINDOW_OPEN);
    		class'UIAPI_WINDOW'.static.ShowWindow("BoardWnd");
    		class'UIAPI_WINDOW'.static.SetFocus("BoardWnd");
    	}
    }
    
    function ShowBBSTab(int Index)
    {
    	local string strBypass;
    	local EControlReturnType Ret;
    	
    	switch( Index )
    	{
    	//ГіАЅАё·О
    	case 0:
    		strBypass = "bypass _bbshome";
    		break; 
    	//Бс°ЬГЈ±в
    	case 1:
    		strBypass = "bypass _bbsgetfav"; 
    		break;
    	//ИЁЖдАМБц ёµЕ©(10.1.11 №®ј±БШ јцБ¤)
    	case 2:
    		strBypass = "bypass _bbslink";
    		break;
    	//БцїЄёµЕ©
    	case 3:
    		strBypass = "bypass _bbsloc";
    		break;
    	//ЗчёНёµЕ©
    	case 4:
    		strBypass = "bypass _bbsclan";
    		break;
    	//ёЮёр
    	case 5:
    		strBypass = "bypass _bbsmemo";
    		break;
    	//ёЮАП
    	case 6:
    		strBypass = "bypass _maillist_0_1_0_"; 
    		break;
    	//ДЈ±ё°ьё®
    	case 7:
    		strBypass = "bypass _friendlist_0_"; 
    		break;
    	}
    	
    	if (Len(strBypass)>0)
    	{
    		Ret = m_hBoardWndHtmlViewer.ControllerExecution(strBypass);
    		if (Ret == CRTT_CONTROL_USE)
    		{
    			m_bBtnLock = true;
    		}
    	}	
    }
    
    function OnClickBookmark()
    {
    	local EControlReturnType Ret;
    	
    	if (Len(m_Command[7])>0 && !m_bBtnLock)
    	{
    		Ret = m_hBoardWndHtmlViewer.ControllerExecution(m_Command[7]);
    		if (Ret == CRTT_CONTROL_USE)
    		{
    			m_bBtnLock = true;
    		}
    	}
    }
    defaultproperties
    {
    }

     

    All bypasses is hardcoded.

  4. For changing bypass commands for Community board need edit Interface scripts into client side and all places from server side scripts and classes.

     

    From my PoV this act of madness and better way is delete the tab system from client side and use usual HTML viewer as uses for NPC dialogues. This will give more deployment for making own Community board command ierarchy.

     

    But you can be disagree with me and continue to write shitcode because it easy and isn't requeres a lot of knowledge.

     

    I'm sure/belive what all client modifications available even for classic clients.

  5. Use this code for detecting all local network addresses:

    	public static boolean isLocalResourceByIp(InetAddress address)
    	{
    		if (address == null || address.isLinkLocalAddress() || address.isLoopbackAddress() || address.isAnyLocalAddress() || address.isSiteLocalAddress())
    			return true;
    		
    		return false;
    	}

     

    Otherwise if you try to connect from other local machine you will have fault.

  6. 1 hour ago, Charm3R said:

    Litteraly cringe. I'am just using these packs to try things, not to go on a live server with such an unstable pack of yours, or maybe not, dear uhm, Tryskell.  😄

     

    Anyways, someone lock this topic, its obvious that these guys cant even help their own people, so they wont help me either .Have a good day, and keep destroying the forum with such a "knowledge" xD

     

    You bought the Toyota car and pump up many customs shit inside. After this modifications you contacted to Toyota support center with issue: "Car don't move". What you want to hear in answer? Of cource Jonny Boy is always goodman. Toyota concern is crap and thier product is the same quality. 

×
×
  • Create New...