Jump to content

L2 Development, Introduction - Questions


Recommended Posts

Hello there guys,

 

Just started messing around with L2Off servers, and there are many questions I'd like to see answered. It would be very nice if you guys could help me achieve that.

 

First of all, some things about me, so that you can better understand what i want to do.

I'm 20 yo, studying software engineering in a university here at my country. I love Lineage2 and i was curious to learn how it was made and how were these private servers i used to play was created.

So i started with the later. The first thing i did was searching on google using the following sentence: "Lineage2 server development". Back then the first result was a L2j server emulator, providing some nightly builds and some easy to follow tutorials. After a while, i managed to get my first server running, but something seemed wrong (tons of bugs, skills not working ,missing geodata e.t.c), I've searched for many other l2j packs ,repeated the process of building the server only to see the same results.

I ended up on some forums (RageZone) which was then the most active community regarding this stuff, and after talking to some guys there, i was excited to see that besides L2j server packs there were others called OFF packs (I've seen this section before on forums but never visited them :/). To keep things sort, since then I've read a lot about L2Off development, i built a server (using the PPC release which i can't find now) which was supposed to be working but i couldn't test because i didn't have the right tools (I had a Pentium D computer back then with 512mb ram). I lost my interest, but now 5-6 years later, i got the right stuff and decided to start over again.

 

1. To begin with, I'm interested in building an interlude server, using any pack and extender that works .

Seeing that many things are similar to back then, besides extenders (i don't recall using any of them) i think i wont have any problems getting through this step.

I just want to get through the process again, see how Geodata works, how easy is to modify server properties e.t.c.

 

2. I want to try developing something on my own, I've already found this nice article about extenders, but i was wondering if there is any source code available out there.

What is also bugging me, is how big extenders like DepMax64, dvamp and Vangant/Kation were made.

Did they use the above method to implement all these features, and to fix all these bugs?

Where did these executables (L2Server,L2Npc,L2Cached,L2Authd etc) came from?

 

3. Regarding the article mentioned above, i believe it is best to make a post there, but i want to keep things in one place, in order to find them easier.

How can i find which function to alter in order to add, change a feature or fix a bug. Is there a list with known methods and functions?

 

4. How to check if an extender has backdoors in it?

 

5. How are these servers treated by NCSOFT, if they care at all.

 

This post may be updated.

Please refrain from flaming if i asked something stupid, since I'm a noob regarding this stuff.

Sorry for my grammar and mistakes of any kind, I'll try to improve it.

 

Thanks in advance.

Friendly, Dimitris.

 

Link to comment
Share on other sites

1. Buy them (AdvExt or Vangath ) or use leaked packs with certain bugs. 

 

2.  Go learn RCE\Reverse Code Engineering and Assembly x86\64 and basic cracking tutorials. that's how stuff is made.

Researching where something specific is in memory, and changing it on "run time" or stopping it from executing based on variables.

 

Process is simple, takes an asburd long time to master tho.

 

3. There's lists yes - but i suggest if your serious, you ignore them in the start and research yourself.

That will teach you from the start, how to begin understanding the process beyond using Anarchy's guide as a framework.

(Which it isn't - it's 1 hook changing some bytes).

 

 

4. See 2 and 3.

 

5. Used to care - don't give a ratsass anymore, everyone is hopelessly behind retail. And there's some people with private leaks of newer retail that rent them out as "SaaS" where you don't actually have access to the physical files. That way it stops files from leaking and gives revenue to them over time instead of a 1 off fee.

Edited by mcbigmac
Link to comment
Share on other sites

Thank you very much for your reply,

 

After reading your post, i decided that I'm gonna start from scratch messing with the executables on my own.

I have a very basic assembly knowledge, i was planning on expanding this knowledge regardless of my current need for it.So it's a good thing.

 

And there are two last things i want to ask:

  1. If you have a set of  tutorials about reverse engineering and cracking you followed that you suggest as "good", please link them for me. I would appreciate it. If not it's completely fine.
  2. How can i do more than just a hooking? E.x. expanding the executable with some c++ code. i believe that the extenders ppl buy were made this way,
Edited by Gahvilia
Link to comment
Share on other sites

 

Thank you very much for your reply,

 

After reading your post, i decided that I'm gonna start from scratch messing with the executables on my own.

I have a very basic assembly knowledge, i was planning on expanding this knowledge regardless of my current need for it.So it's a good thing.

 

And there are two last things i want to ask:

  1. If you have a set of  tutorials about reverse engineering and cracking you followed that you suggest as "good", please link them for me. I would appreciate it. If not it's completely fine.
  2. How can i do more than just a hooking? E.x. expanding the executable with some c++ code. i believe that the extenders ppl buy were made this way,

 

 

1. You have TONS of tutorials and information regarding RCE at woodman or tuts4you. http://tuts4you.com/ o http://www.woodmann.com

2. You don't just hook an address for nothing, the extender modifies the memory on "run time" as mac said, also ASM isn't just needed to comprehend the structure of the whole framework, sometimes you will find yourself with no alternative but to actually  use ASM to patch some stuff here and there, i remember the duelist charges were fixed that way.

If you want to understand part of the framework, i suggest checking COEP which is an opensource and outdated hellbound extender based on C4 executables, you can find it on sourceforge.

Link to comment
Share on other sites

Nice, thanks a lot.

 

Just fyi, my future and biggest objective is to start something opensource, pref. an interlude extender, since interlude is my favorite chronicle, along with c4.

Edited by Gahvilia
Link to comment
Share on other sites

Nice, thanks a lot.

 

Just fyi, my future and biggest objective is to start something opensource, pref. an interlude extender, since interlude is my favorite chronicle, along with c4.

Well, starting from scratch is a long way, maybe we see your results in some years. Cause it will take a lot :P

Vanganth/Kation or the AdvExt team didn't started yesterday.

Link to comment
Share on other sites

If you have to ask how to add more code beyond hooking - you've failed to grasp the entire RCE\Injecting code process.

Id suggest you read that first and do some crackme's and injectme's - and then use that knowledge in retrospect.

 

Then all of the rest will become apparently clear - and how much you need to research to do certain things.

Some will seem impossible - but visualizing the assembly instructions and understanding how registers behave will become easier over time.

 

 

I started nearly... well 6½ years ago - as a warning if you don't devote hours of this every single day you probably won't get very far.

The entry barrier is absurdly high, which is why i suggest you go more RCE\Crackz0r based as that will give you more general knowledge applicable for other games.

Edited by mcbigmac
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...