Jump to content

Recommended Posts

Posted (edited)

As I promised. Decompiled and built L2LogD.exe: https://drive.google.com/open?id=0B6ic1ViGkLctcXZwbm0wbDlGQ00. Feel free to test it, report issues and get sources.

 

Contains minor but obvious fixes for original L2LogD from C1. Will prepare some video with code tomorrow. All, who contributed and helped me somehow, feel free to PM for source code. For those, who still wanna contribute and get the code - there is simple reverse task, which I left: http://www.maxcheaters.com/topic/214458-l2off-l2-c1-source-code/page-2?do=findComment&comment=2641410

Edited by MasterToma
Posted (edited)

With smeli help, IL support has been completed. Tested with SINA IL Server Extender and IL client (737 with killed GG). For now there is a separate branch for it (https://bitbucket.org/master_toma/lineage2-c1-harbingers-of-war/src/312e63ca9d7f940fb11e6be1bbaf86f62eefab9b/?at=c6_ext), but I'm going to merge all changes for c1, c4 and c6 into single branch.

Edited by MasterToma
  • 3 months later...
Posted

Hi,

I repeat answer to those, who PMed me as well: I didnt abandoned decompilation, just was on summer holiday, and going to publish new code on butbucket in a few weeks.

Posted (edited)
On 4/30/2017 at 2:51 AM, MasterToma said:

Well, L2J is actually a great project, and many devs were inspired by it. The problem it's not in java, but rather in implementation details - if they would use L2OFF logic, we wouldn't have to write extenders.

 

No, it is not.  It has collectively lowered the bar for Lineage II -- to the point any moron can open a server.  Having been around since the start (l2off) and breaking in 2012 to return now.. the sorry state of Lineage II as whole... one only need look as far as the million java servers existing today.  Whatever L2J inspires?  Perhaps great things like idiot server owners paying big clans to play on the server.  Talk about inverted logic.

L2J will never be, or replace L2off or extenders... just as the level of skill required to create an extender... C/C++ and solid Intel asm knowledge vs a language that every "comp sci" wanna be is taught.

Mm, and oh - congrats on your reverse engineering.  I did the same years ago  of malware rootkit driver Rustock B & C.  IDA -> C source, 100% working.  I will commend you for that.

Edited by Fyyre
Posted
1 hour ago, Fyyre said:

L2J will never be, or replace L2off or extenders... just as the level of skill required to create an extender... C/C++ and solid Intel asm knowledge vs a language that every "comp sci" wanna be is taught.

It could have if l2j was actually started properly, and it still could be but I guess people won't spend that kind of time anymore. Even today, numerous l2off dev switched to l2j and try to make the shit right.

Posted

the issue is the players don't care so why should the server owners  / pack devs... like fyyre said the bar has been lowered and the bugs and just dumbassery of l2j is universally accepted by players as just what private servers are like cuz 90% have those issues, between shit geo engines which put u in the ceiling or show "cannot see target" all the time and universally incorrect algorithms and formulas for skills and the #1 thing which drives me fucking nuts is static point spawns for npcs - all of this shit is just accepted by players because that's just how private servers are right?

my work in l2j has shown 1 thing predominantly, it's a constantly losing battle between devs who actually know what they're doing and know what it should be, and the devs who are out there to make 5$ on a system they copypasted together which does 60s sleeps for an event queue in the main thread pool and uses CopyOnWriteArrayList for a write-heavy container like for every decent dev there's probably 20 shit ones fucking things up and i don't see that as likely to change

Posted (edited)
16 hours ago, Sdw said:

It could have if l2j was actually started properly, and it still could be but I guess people won't spend that kind of time anymore. Even today, numerous l2off dev switched to l2j and try to make the shit right.

What l2off devs mate?  I can count maybe 10, and all but 2 or 3 have retired...  Although I will says props to eressea for her open source extender.  L2 needs more people like her.

I know you did great things with L2JUnity, even if I still think Nos is a little bitch *grin*

Edited by Fyyre
Posted

He retired as well but we still spend mucho time RE. Starting from L2J allows to have simulation of working feature till we replace it. It feels endless but less broken in the end and one day we will call it L2 :D

Posted
On 10/14/2017 at 8:49 AM, Sdw said:

He retired as well but we still spend mucho time RE. Starting from L2J allows to have simulation of working feature till we replace it. It feels endless but less broken in the end and one day we will call it L2 :D

Makes sense.  I do remember him starting RCE.  He is a smart guy, he will go far.

  • 2 weeks later...
Posted (edited)

Hi all. As I promised, I've returned. A lot of L2CacheD infrastructure code has been revealed and published. Main thing left - model-specific code, which contains logic, and L2CacheD <-> L2Server packet handling.

As some of you might now, there are about 220 packets in L2CacheD : Server protocol. But the good thing is, that 59 of them (almost 1/3) doesn't need any complex logic to decompile.  For exaplme, packet with Id=128:

// ADDRESS (0x004365F0)
bool __cdecl packet128_RequestDeleteCropData(CIOSocket *pSocket, const uint8_t *packet)
{
  guard(L"static bool RequestDeleteCropData(CSocket* pSocket, const unsigned char* packet)", L"static bool RequestDeleteCropData(CSocket* pSocket, const unsigned char* packet) (exit)", L"Socket.cpp", 8042);
  
  PacketUtils::Disassemble(packet, "dd", &v4, &v6);
  
  DBConn sql;
  sql.Execute(off_4F0B58, v4, v6);
  
  unguard();
  
  return false;
}

As you can see, it's very simple - read 2 ints from packet, and execute some SQL query. All is needed to commit file - manual clean up (it's done in the snippet above), variable renames (might be taken from SQL query itself), etc. For sure not a rocket since.

So, I'm looking for people, who want to help and contribute to this project (all sources are available, link in the first post), by decompiling very easy packets (while I'm doing more dirty job). You can check all packets here.

Right now there are only stubs, no real logic inside. Contact me, I'll send you details. 

Edited by MasterToma
  • 1 month later...
Posted

Almost all model is decompiled, fighting only with warehouse logic.

Still looking for skilled devs, who wanna to contribute. L2Server/Admin handlers are waiting for you! :D 

Guest
This topic is now closed to further replies.



  • Posts

    • L2jMobius has data oriented pathfinder since May. Already have "less memory" used for geodata since 3 weeks ago. Avoiding 1 GB less memory in geodata on latest clients. Not to mention rolling with an actual geodata generator since 3 weeks ago again. We also did actual benchmarks, tests with actual players, and decided to not use AI slop navmesh. I guess working only on a 10 year old client gives you a lot of free time and need to kill your boredom somehow... Need to show some progress somehow... Kinda get it... And unlike aCis we do release our full work every 4 months. So expect to actually see our work on this Christmas release.
    • 🎉 L2-SCRIPTS TURNS 20 🎉 This year marks our studio's 20th anniversary!   ▬▬▬▬▬▬▬▬▬▬   Two decades in the Lineage 2 private server market is a long run — we've seen chronicles, engines and trends come and go. We keep doing what we do best: builds, technical support, turnkey projects, website and engine development, personal account systems, anti-cheat and anti-bot protection, auto-donation systems, unique events, geodata — basically anything your project might need.   🎨 To mark the occasion, we figured it was the perfect time for a fresh look. Honestly, the haters deserve some credit too — they never sleep, and they gave us that extra push to finally update the visuals 😉 We kept the familiar structure and sections intact so nobody gets lost — just made everything more modern and easier on the eyes.   ▬▬▬▬▬▬▬▬▬▬   ⚠️ Spot any bugs or rough edges on the updated site? Let us know and we'll fix it right away. Thanks for being with us for 20 years. It only gets better from here 🚀   🌐 https://l2-scripts.ru   |   https://l2-scripts.com ✈️ https://t.me/L2scripts
    • A full MMORPG that runs in your browser. No download, no launcher, no account with anyone else — click the link and you are in the world. ▶ Play free: https://l2d.one Aden Chronicles is an isometric fantasy MMORPG built in the spirit of the old Lineage 2 servers: classes that branch as you grow, castles that change hands, and world bosses that the whole server has to deal with together. Not a single-player game with a leaderboard attached — one shared world, where the same monsters die once and the same castle has one lord. WHAT IS IN IT 7 regions and 245 hunting grounds, scaling from level 1 to 80 6 classes that branch into 24 professions, then Awakening at 60 201 skills, enchantable past their normal ceiling 174 monster types, raid bosses, and grand bosses shared by the entire server Castle sieges, clans with reputation and wars, the Grand Olympiad 23 armour sets across 6 grades, enchanting, augmentation with life stones Caves and mines you walk down into — tunnels, ore veins, a guardian at the bottom 14 islands reached by ship, 10 pets, from a wolf to a dragon hatchling THE TWO THAT EVERYONE FIGHTS Valakas the World-Flame — level 78, 900,000 HP Aetheron, Sky Sovereign — level 82, 1,400,000 HP They do not respawn for you. They respawn for everybody.   Video -->  
    • I personally like it a lot. I see this not as a replacement but as a supplementary client that can fill different type of gameplay. 
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and 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..