Rootware
-
Posts
1,370 -
Credits
0 -
Joined
-
Last visited
-
Days Won
14 -
Feedback
100%
Content Type
Articles
Profiles
Forums
Store
Posts posted by Rootware
-
-
Mate, ask directly what you wanna get from aCis pack and we answer you it's real for 382 - 398 revisions or not. Otherwise, this is another attempt at populism.
-
-
27 minutes ago, Irrelevant said:
u have a link for that?(for windows 8+) i think i tested once but was error in system/client files
https://www.4shared.com/rar/73hiS1Aaba/CatsGuard.html
Inside client files and diff patch for L2J Frozen. All what you need is adapt HWID for your wishes.
- 1
-
There is no port's problem. Bind port and bind address the different cases. Don't use external IPs for configure login server and check before configure the local network addresses. for usage correct machine address.
-
CatGuard it's free for L2J Frozen and use HWID as you want.
-
I was unable to download the package. But I see 343 lucky people who could do it.
I'm voting for L2J Frozen 1.5.
-
4 hours ago, KabLe21 said:
this icons cant be inside icon.utx... must check line for icons and later find .utx file ;)
@L2who post here u line id 5799 and 6721
1. - files name
2. icon name inside this file
I said IDs. Open weapongrp.dat and find icons in icon.uts or another custom UTX pack. It's easy if you have the patch where this exists.
- 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.
-
There not need to decompile interface.u. For changing static INT values enough any Hex Editor and L2TPT.
-
Client version?
-
For usage buff shop as item shop need access into source code. Otherwise you can implement it as HTML based version.
-
High rates and available full buff kill any balance in races and classes. Just make of third class buffs and summon's buffs less accessible. That's will enoug for restore retail balance between "damage dealer" classes.
Any other tweaks will kill the retail gameplay. Remember that.
-
9 hours ago, L2who said:
just take Icon.utx from this project and use him for self. Or open weapongrp.dat and find icon names for next IDs: Nephilim Lord - 5799, 5800, Monster Only(Shield of Imperial Warlord Zombie) - 6721
- 1
-
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.
-
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.
-
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.
-
The all buttons on the top of community board window locates inside interface.xdat as Tabs in TabControl element of BoardWnd scheme.
You need XDAT Editor for making changes. How to use this tool a lot a videos and manuals.
- 1
-
CharInfo and UserInfo packets sending the title info. Change inside this packets code to your conditions.
-
You want to spawn Raid Boss after death the champion?
-
The better than this Classic pack you never find. Even if you hire the developers team they not fixes all bugs. Use as is, better only L2OFF.
-
- 1
-
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.
-
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.
-
7 minutes ago, Nightw0lf said:
be more observing, its eola pack
And where i need to find the crap label if i have only one 'print screen' of errors?
how to change color on player.sendMessage?
in Request Server Development Help [L2J]
Posted
This message uses the string from systemmsg-e.dat. If you want to change the color the you need make custom message ID for this or change the color of current. In last case all messages where uses "player.sendMessage()" will uses this color.