Jump to content

Recommended Posts

Posted

Hi.

 

I always wanted to learn how to write my own codes, and I am surprised about how many people were able to learn it within a few years. I'm just wondering what methods you have used to learn java. I searched the web for code analyzers to see if I can upload a code that will be explained line-by-line, but to no avail. So, except if there is such a source and I just miss it, then there has to be another way.

 

Applying already made codes doesn't really help to widen coding knowledge. I've applied thousands of patches but I'm not able to write one. So, I've come to the conclusion that there was another trick for all those MaxCheaters gamers out there suddenly mastering java language within a few months / years.

 

So, tell me, what methods did you use and what would you recommend for me?

 

Thank you.

Posted

Mainly you have to understand how programming works. Then try to create things on your own, thats the best practice i believe.

Posted

Define mastery...?

 

I haven't coded in Java, but I am pretty comfortable looking at code and saying what it does. I learned programming on MATLAB.

 

Certain operators/functions do things. You can write your own functions to do things. It's obviously more efficient to use existing functions to keep the code tidy, ease troubleshooting, etc, if possible.

A lot of systems that you'd require to make are typically driven by logic. If your logic comprehension is not great, programming will be very tough for you. But that's not difficult to fix, you will see common patterns the more you look at logic related subjects. 

 

Knowing how to code on a programming language really comes down to having the appropriate documentation for the functions and operators. Then it's just google. 

When you get more experience you become less reliant on documentation.

 

Getting into L2J now would probably be very difficult. Think about it - decade worth of code, L2jserver pulled the documentation. Getting the necessary support would be extremely difficult if you are not familiar with the code.

Posted

I am also new to java you can start with compile tutorials and then watch l2j timeline there are explainations and codes, code your first add an if statement if you fail try again and thats it :)

Posted (edited)

I like to say than L2J is 80% project knowledge and 20% java practice.

 

Java is one of the easiest langage to learn, I learnt it without opening any book and simply applying diff patches and reading the core. The only concepts you have to learn is Object Oriented ones, http://docs.oracle.com/javase/tutorial/java/concepts/

 

About diff patch, it's automatically generated if you use a SVN, so...

 

Basically said, whatever you need, if you need or are lazy to code it and know where to search, you can find a similar code, copy-paste and edit it at will.

 

About Java (in general), you can find numerous tutorials on the internet. For frenchs you got http://java.developpez.com/ for exemple. About L2J there is no secret, you have to explore, know what class does what, and try to reuse as much as possible existing methods (because whatever you need, it's coded 95% of the time).

 

The idea isn't to simply apply diff patches, but read the content of what you apply, transform it to what you want, and experiment different things.

Edited by Tryskell
Posted

Try c++ if you think java is difficult.I never bothered opening a book to learn java.There are far more interesting languages than java.

 

lmao

Posted

So, none used a guide or something?

 

 

I like to say than L2J is 80% project knowledge

 

You mean like which .class and which part of the code is for what? Well, that's what I'm looking for actually.

 

You made a whole pack without mastering java? Wow.

Posted (edited)

I made a Java project mastering pack organization with time. You just need a lot of time. I know exactly where to search if I need something and I know what methods do what.

 

And I repeat, Java is easy. Most problems can be solved Googling it (90% of time). You don't have to busy about collecting dead variables (but still if you can code it well to avoid terrible optimizations it's always better). What is hard on Java is what would be hard on any other langage : CREATE EXACTLY WHAT YOU WANT (and I would add as a personal challenge and aCis motto : USING THE LESS POSSIBLE RESSOURCES).

 

The hard part is taking time to explore, and how you handle YOURSELF your code organization. If you can't organize yourself you can't support big reworks and are limited to little edits.

 

To be a "L2J dev" you need 4 things :

  • a working brain with basic notions of logic
  • CTRL+F from Eclipse
  • Google search (mostly stackoverflow website answers and javadoc)
  • a lot of time to explore the project.

If you read aCis changesets from 0 to latest, you will figure by yourself I learnt in 4 years of coding. Even OOP stuff like inheritance I DISCOVERED IT one day. And by discovered, I really meant I was  ^-^ in front of my computer when I discovered L2PcInstance was a L2Character, which was itself a L2Object and than a method from L2Object could be used on L2PcInstance, or even overriden to handle different behavior.

 

I had logic concept as I code since my 13yo, but that was on BASIC langage which got strictly nothing similar.

 

And you won't learn project organization on any book, nor L2J javadoc which is deprecated most of the time. You have to take your balls, take time and learn by yourself.

 

Or find someone who will teach you. I, personally, took time to create tutorials, correct my helpers quests and say where it was wrong, in order they deliver better written quests (and I got less code to fix). roko91 for example mastered quests rework, he does almost 0 error both coding and quest-related and it helps me a lot :). Obviously quest system is limited to methods from quest, and my own help is limited to my pack and this section of forums for others projects.

Edited by Tryskell
Posted

I made a Java project mastering pack organization with time. You just need a lot of time. I know exactly where to search if I need something and I know what methods do what.

 

And I repeat, Java is easy. Most problems can be solved Googling it (90% of time). You don't have to busy about collecting dead variables (but still if you can code it well to avoid terrible optimizations it's always better). What is hard on Java is what would be hard on any other langage : CREATE EXACTLY WHAT YOU WANT (and I would add as a personal challenge and aCis motto : USING THE LESS POSSIBLE RESSOURCES).

 

The hard part is taking time to explore, and how you handle YOURSELF your code organization. If you can't organize yourself you can't support big reworks and are limited to little edits.

 

To be a "L2J dev" you need 4 things :

  • a working brain with basic notions of logic
  • CTRL+F from Eclipse
  • Google search (mostly stackoverflow website answers and javadoc)
  • a lot of time to explore the project.

If you read aCis changesets from 0 to latest, you will figure by yourself I learnt in 4 years of coding. Even OOP stuff like inheritance I DISCOVERED IT one day. And by discovered, I really meant I was  ^-^ in front of my computer when I discovered L2PcInstance was a L2Character, which was itself a L2Object and than a method from L2Object could be used on L2PcInstance, or even overriden to handle different behavior.

 

I had logic concept as I code since my 13yo, but that was on BASIC langage which got strictly nothing similar.

 

And you won't learn project organization on any book, nor L2J javadoc which is deprecated most of the time. You have to take your balls, take time and learn by yourself.

 

Or find someone who will teach you. I, personally, took time to create tutorials, correct my helpers quests and say where it was wrong, in order they deliver better written quests (and I got less code to fix). roko91 for example mastered quests rework, he does almost 0 error both coding and quest-related and it helps me a lot :). Obviously quest system is limited to methods from quest, and my own help is limited to my pack and this section of forums for others projects.

You said you created tutorials. Can you redirect me? I want to check them out.

 

By the way, thank you for your helpful post.

Posted (edited)

Search for Guides tag on Server Development Discussion, I made for AI system and quests (scripts). You got also SweeTs one regarding zone system.

 

http://acis.i-live.eu/index.php?board=46.0

Edited by Tryskell
Posted

Search for Guides tag on Server Development Discussion, I made for AI system and quests (scripts). You got also SweeTs one regarding zone system.

 

http://acis.i-live.eu/index.php?board=46.0

 

This need rewrite by the new architecture.  :happyforever:

Posted

Hi.

 

I always wanted to learn how to write my own codes, and I am surprised about how many people were able to learn it within a few years. I'm just wondering what methods you have used to learn java. I searched the web for code analyzers to see if I can upload a code that will be explained line-by-line, but to no avail. So, except if there is such a source and I just miss it, then there has to be another way.

 

Applying already made codes doesn't really help to widen coding knowledge. I've applied thousands of patches but I'm not able to write one. So, I've come to the conclusion that there was another trick for all those MaxCheaters gamers out there suddenly mastering java language within a few months / years.

 

So, tell me, what methods did you use and what would you recommend for me?

 

Thank you.

your making to much toughts, words in your mind, that not what acctualy need to be ! more you talk or think less time you have to acctualy make something that will give you knowledge !

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