Jump to content

Professional L2J Developer Services


Guest Elfocrash

Recommended Posts

Let me tell you a story about codes of Elfocrash:

Few months ago i had to return a favor to a friend who did something for me, his request was simple he wanted an 'ingame player stats balancer' when i asked him what exactly he wants he placed an link pointing to this thread.

I've open it i've seen what it is and started codding it, suddenly my friend somehow found the sources of l2jesios or wtf it was, and sent them on my skype.

I wasn't really need them but he said look how it works and so i did.

I was shocked looking at the code at the first look, i mean i've never really expected an approach like the one i found!

Seriously i've never seen such way of codding things..

Dude with this way of codding things you can open an opensource project and you can be sure noone is going to touch your shit other then deleting it.

I've never seen so bad code in my life, and that's professional l2j developer really?

Few months ago i've even seen 'Oracle Certificated Developer' award on his profile, i trough he is real coder what a shame.. thanks god it was removed.

You're really lucky you know? if your customers was giving a shit how the code works, but not only if it works you wouldn't sold more then 2 shits.

 

I've shown this code to some real developers https://gist.github.com/UnAfraid/ef5e7d1173033a4220dc and they said: WTF Man how this could even work, its even larger then l2j itself!

 

Looking at comments like this just makes me sad, how clueless people are..

 

Actually I believe you don't see the real beauty here:

Really short import list (3 or 4 imports per class), huge improvement when you try to compile code.

Proper management of connection close: if (con != null) if (localThrowable2 != null) try { con.close(); } catch (Throwable x2) { localThrowable2.addSuppressed(x2); } else con.close();

All static data saved in database for easy modifications.

Duplicated code that improves readability and maintenance.

Declaration of mutators, but no use for them all fields are public.

No use of complex code, interfaces, abstract classes, polymorphism, iterations, nothing but assign and variable declarations pretty much.

All is static, no time for instantiation.

Link to comment
Share on other sites

Actually I believe you don't see the real beauty here:

Really short import list (3 or 4 imports per class), huge improvement when you try to compile code.

Proper management of connection close: if (con != null) if (localThrowable2 != null) try { con.close(); } catch (Throwable x2) { localThrowable2.addSuppressed(x2); } else con.close();

All static data saved in database for easy modifications.

Duplicated code that improves readability and maintenance.

Declaration of mutators, but no use for them all fields are public.

No use of complex code, interfaces, abstract classes, polymorphism, iterations, nothing but assign and variable declarations pretty much.

All is static, no time for instantiation.

Yeah sorry i couldn't see any beauty between so much shit inside.

I like your sarcasm btw!

Link to comment
Share on other sites

Let me tell you a story about codes of Elfocrash:

Few months ago i had to return a favor to a friend who did something for me, his request was simple he wanted an 'ingame player stats balancer' when i asked him what exactly he wants he placed an link pointing to this thread.

I've open it i've seen what it is and started codding it, suddenly my friend somehow found the sources of l2jesios or wtf it was, and sent them on my skype.

I wasn't really need them but he said look how it works and so i did.

I was shocked looking at the code at the first look, i mean i've never really expected an approach like the one i found!

Seriously i've never seen such way of codding things..

Dude with this way of codding things you can open an opensource project and you can be sure noone is going to touch your shit other then deleting it.

I've never seen so bad code in my life, and that's professional l2j developer really?

Few months ago i've even seen 'Oracle Certificated Developer' award on his profile, i trough he is real coder what a shame.. thanks god it was removed.

You're really lucky you know? if your customers was giving a shit how the code works, but not only if it works you wouldn't sold more then 2 shits.

 

I've shown this code to some real developers https://gist.github.com/UnAfraid/ef5e7d1173033a4220dc and they said: WTF Man how this could even work, its even larger then l2j itself!

 

Looking at comments like this just makes me sad, how clueless people are..

 

because he made a bad code doesnt prove anything at all, still I believe that the whole idea of ingame balancer is bad

Link to comment
Share on other sites

Guest Elfocrash

if you check the commit comment i said myself that the code is pure SHIT and it was there for a reason. I can show you guys the current version of my balancer and part of the code (not that you cant do it yourselves lol, but UnAfraid and Zoey are great devs, but when you do something for free you dont really give the 100% of your work. Look at L2jServer as it is now. People really thing it is opensource (lol yeah and China has democracy) but the truth is that the actual devs of it have private servers with way better files than the ones that l2jserver provides now. So why should i give out such a kickass feature with a perfect code? However my clients never had something to say for paid work. Thats from me. Cheers for the interest btw.

Link to comment
Share on other sites

if you check the commit comment i said myself that the code is pure SHIT and it was there for a reason. I can show you guys the current version of my balancer and part of the code (not that you cant do it yourselves lol, but UnAfraid and Zoey are great devs, but when you do something for free you dont really give the 100% of your work. Look at L2jServer as it is now. People really thing it is opensource (lol yeah and China has democracy) but the truth is that the actual devs of it have private servers with way better files than the ones that l2jserver provides now. So why should i give out such a kickass feature with a perfect code? However my clients never had something to say for paid work. Thats from me. Cheers for the interest btw.

 

Well you are totally wrong, I give everything I do for free and don't keep anything, I don't have a server and I don't work for servers.

There is no secret code shared between developers, there is no secret svns, all we do is for free, for all.

 

If you can't see that L2J is a real open source project, then you should expend some time in our forums, maybe you can learn a thing or two.

 

I not only work at L2J as main project, but also help projects with good open source spirit such as L2JFrozen.

 

I don't expect you to check trac but you will see we added hundred of missing features retail like.

 

And when I'm joking about your code, I also know you help others.

 

It's just that seeing "professional" in the title was too much for others who expend time trying to improve their skills and give the best for free.

 

Finally, I'm glad that you say that you are better now, you didn't set the bar too high :D

Link to comment
Share on other sites

Well you are totally wrong, I give everything I do for free and don't keep anything, I don't have a server and I don't work for servers.

There is no secret code shared between developers, there is no secret svns, all we do is for free, for all.

 

If you can't see that L2J is a real open source project, then you should expend some time in our forums, maybe you can learn a thing or two.

 

I not only work at L2J as main project, but also help projects with good open source spirit such as L2JFrozen.

 

I don't expect you to check trac but you will see we added hundred of missing features retail like.

 

And when I'm joking about your code, I also know you help others.

 

It's just that seeing "professional" in the title was too much for others who expend time trying to improve their skills and give the best for free.

 

Finally, I'm glad that you say that you are better now, you didn't set the bar too high :D

 

I was with the idea, that if a guy who makes a bunch of codes is a developer or a proffessional developer (general speaking), then what the fack are those who coded l2j from scratch? gods?

Link to comment
Share on other sites

I was with the idea, that if a guy who makes a bunch of codes is a developer or a proffessional developer (general speaking), then what the fack are those who coded l2j from scratch? gods?

L2J was coded by many devs with the time.

if you check the commit comment i said myself that the code is pure SHIT and it was there for a reason. I can show you guys the current version of my balancer and part of the code (not that you cant do it yourselves lol, but UnAfraid and Zoey are great devs, but when you do something for free you dont really give the 100% of your work. Look at L2jServer as it is now. People really thing it is opensource (lol yeah and China has democracy) but the truth is that the actual devs of it have private servers with way better files than the ones that l2jserver provides now. So why should i give out such a kickass feature with a perfect code? However my clients never had something to say for paid work. Thats from me. Cheers for the interest btw.

Of course we give our best there.

We may have servers but our servers are different only because of some custom codes which we haven't committed in l2j.

But isn't that the point of l2j to provide stable server and everyone to customize it as he likes? :)

I checked some other codes i really don't think that they are any closer to 'Professional'.

Link to comment
Share on other sites

L2J was coded by many devs with the time.Of course we give our best there.

We may have servers but our servers are different only because of some custom codes which we haven't committed in l2j.

But isn't that the point of l2j to provide stable server and everyone to customize it as he likes? :)

I checked some other codes i really don't think that they are any closer to 'Professional'.

 

still dc shits on u, I didnt see anywhere saying that l2j sucks etc etc (just saying)

Link to comment
Share on other sites

Guest Elfocrash

What i said wasn't on Zoey or UnAfraid but tell me about nBd or Nik and these are just 2 examples.

So yeah what i said is totally correct. Zoey and UnAfraid might really try for something better but don't say i am wrong on that i said.

Also about the professional thingy, you really know shit about marketing and promotion don't you? (No offense)

Link to comment
Share on other sites

What i said wasn't on Zoey or UnAfraid but tell me about nBd or Nik and these are just 2 examples.

So yeah what i said is totally correct. Zoey and UnAfraid might really try for something better but don't say i am wrong on that i said.

Also about the professional thingy, you really know shit about marketing and promotion don't you? (No offense)

 

Well, it seems that your marketing works. Everyone is saying "The Best developer ever"

Small world

Link to comment
Share on other sites

What i said wasn't on Zoey or UnAfraid but tell me about nBd or Nik and these are just 2 examples.

So yeah what i said is totally correct. Zoey and UnAfraid might really try for something better but don't say i am wrong on that i said.

Also about the professional thingy, you really know shit about marketing and promotion don't you? (No offense)

This is not an excuse to code like that..

You've spend even more time to make all that in such a wrong way.

The real-time balancer i had to do thing took me around 15-20 mins (Including tests) in such simple way allowing to change ANY possible Stats that exists.

Here's it https://gist.github.com/UnAfraid/6cbb728c3210fb6ad178

 

My point is when you claiming that you're selling 'Professional' development services, your code should looks like at least good.

Link to comment
Share on other sites

  • 2 weeks later...

This is not an excuse to code like that..

You've spend even more time to make all that in such a wrong way.

The real-time balancer i had to do thing took me around 15-20 mins (Including tests) in such simple way allowing to change ANY possible Stats that exists.

Here's it https://gist.github.com/UnAfraid/6cbb728c3210fb6ad178

 

My point is when you claiming that you're selling 'Professional' development services, your code should looks like at least good.

 

Indeed, I reviewed his code and I was like What the f u c k ? 6k lines of code! Just creating functions and local variables and stuff but no object-orientated programing...UnAfraid is right, doesn't matter if you are paid for it or not, the way you code it reflects your experience and knowledge.

Link to comment
Share on other sites

We should see more recent codes to judge. Everyone has a learning curve

Although, promoting himself as professional when he couldn't even get to a medium programmer is nasty. Marketing or not

Still, we just don't know what is his current status

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.



  • Posts

    • 🌟 Welcome to the dawn of a new adventure in the realm of Lineage 2 Supreme! 🌟 Prepare yourself for an epic journey that transcends time and space. Our upcoming project promises to deliver the ultimate mid-rate experience, where heroes are forged and legends are born. Stay tuned for updates as we embark on this thrilling journey together. The realm of Lineage 2 awaits, and destiny beckons. Are you ready to answer the call? www.l2supreme.cc https://discord.com/invite/QA32rQ77nM
    • Official Website @>> https://www.eventbrite.com/e/biopeak-male-enhancement-reviews-warning-important-information-no-one-will-tell-you-tickets-894184589177   Biopeak Male Enhancement:- Considering the mind-boggling interest in their products, the organization needed to confine the quantity of units ready to move. We considered what compelled this sugary treat to surprise the world, and we discussed whether it satisfied our grand assumptions,    https://www.facebook.com/BiopeakMaleEnhancementInUS/ https://www.facebook.com/Get.BiopeakMaleEnhancementUS/   https://trybiopeakme.clubeo.com/calendar/2024/04/29/biopeak-male-enhancement-reviews-the-disturbing-biopeak-supplements-truth https://trybiopeakme.clubeo.com/calendar/2024/04/28/biopeak-male-enhancement-reviews-warning-important-information-no-one-will-tell-you https://trybiopeakme.clubeo.com/calendar/2024/04/28/biopeak-male-enhancement-reviews-truth-exposed-2024-biopeak-supplements-usa-for-men https://medium.com/@BiopeakMaleEnhancementBuyNow/biopeak-male-enhancement-reviews-revitalize-your-sexual-biopeak-supplements-health-with-1b0dcc117608 https://medium.com/@BiopeakMaleEnhancementBuyNow/biopeak-male-enhancement-reviews-warning-usa-ca-important-information-no-one-will-tell-you-f375f53b3cd9 https://medium.com/@BiopeakMaleEnhancementBuyNow/biopeak-male-enhancement-reviews-truth-exposed-2024-is-biopeak-supplements-it-scam-or-real-9b8fc49be4c3 https://medium.com/@BiopeakMaleEnhancementBuyNow/be-informed-biopeak-male-enhancement-reviews-on-scam-alert-this-enhancement-for-male-female-2d49c8f9ec17   Nexalyn Norway Official Links   https://www.facebook.com/NexalynInNorway/ https://www.facebook.com/NexalynNorway/ https://nexalyn-norway.company.site/ https://nexalyn-norway.jimdosite.com/ https://nexalyn-norway-1.jimdosite.com/   https://infogram.com/nexalyn-norway-reviews-advarsel-viktig-informasjon-ingen-vil-fortelle-deg-1h0n25oyjvynz4p?live https://medium.com/@NexalynNorway/nexalyn-norway-reviews-truth-exposed-2024-nexalyn-tablet-iceland-for-men-ad3f06ce6c83 https://medium.com/@NexalynNorway/nexalyn-norway-reviews-2024-er-nexalyn-tablet-iceland-lovlig-eller-svindel-ac2a9a8506d3 https://medium.com/@NexalynNorway/nexalyn-norway-reviews-revitalisere-din-nexalyn-tablet-seksuelle-helse-med-a0d44852760c https://bonniedgrafh.clubeo.com/calendar/2024/04/26/nexalyn-norway-reviews-does-it-really-work https://bonniedgrafh.clubeo.com/calendar/2024/04/26/nexalyn-norway-reviews-revitalisere-din-nexalyn-tablet-seksuelle-helse-med https://bonniedgrafh.clubeo.com/calendar/2024/04/27/nexalyn-norway-reviews-advarsel-viktig-informasjon-ingen-vil-fortelle-deg https://bonniedgrafh.clubeo.com/calendar/2024/04/26/nexalyn-norway-reviews-testo-booster-pills-real-buyers-alert https://medium.com/@NexalynNorway/v%C3%A6r-informert-nexalyn-norway-reviews-om-svindelvarsel-denne-forbedringen-for-mannlig-og-kvinnelig-f52047570116
    • WELCOME TO THE BOXID MARKETPLACE THE BOXID is the best place to buy accounts in bulk. Also on THE BOXID there are any services for digital marketing and arbitrage! We offer cheap accounts and provide flexible prices, discounts and bonuses for loyal customers. If you want to make a bulk order, specify the quantity of items in the checkout form or contact our manager and ask for help with your bulk purchase. We sell social media at the most affordable price! https://theboxid.com/category/accounts/
    • Hello, I am adapting it to acis 401, and when I run it in the game it tells me: No rights defined for admin command 'admin_search'. Admin tried to use admin command 'admin_search', but has no access to use it.   Also try to adapt it in AdminAdmin.java with else in the last lines using it as admin_buscar (buscar = search in spanish) and I get the same error: No rights defined for admin command 'admin_buscar'. Admin tried to use admin command 'admin_search', but has no access to use it. I have the AdminSearch.java like this: package net.sf.l2j.gameserver.handler.admincommandhandlers; import java.util.Arrays; import java.util.List; import java.util.StringTokenizer; import net.sf.l2j.commons.lang.StringUtil; import net.sf.l2j.commons.math.MathUtil; import net.sf.l2j.gameserver.data.xml.ItemData; import net.sf.l2j.gameserver.handler.IAdminCommandHandler; import net.sf.l2j.gameserver.model.WorldObject; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.item.kind.Item; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; public class AdminSearch implements IAdminCommandHandler { private static final String[] ADMIN_COMMANDS = { "admin_search" }; private static final int PAGE_LIMIT = 15; @Override public void useAdminCommand(String command, Player activeChar) { if (command.startsWith("admin_search")) { StringTokenizer st = new StringTokenizer(command, " "); st.nextToken(); if (!st.hasMoreTokens()) { final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile("data/html/admin/search.htm"); html.replace("%items%", ""); html.replace("%pages%", ""); activeChar.sendPacket(html); } else { final String item = st.nextToken(); int page = 1; if (st.hasMoreTokens()) { try { page = Integer.parseInt(st.nextToken()); } catch (NumberFormatException e) { page = 1; } } results(activeChar, item, page); } } return; } private static void results(Player activeChar, String item, int page) { final NpcHtmlMessage html = new NpcHtmlMessage(0); html.setFile("data/html/admin/search.htm"); //List<Item> items = new ArrayList<>();//no sirvio List<Object> items = Arrays.asList(ItemData.getInstance().getAllItems()); for (Object itemName : items) if (itemName != null) if (((WorldObject) itemName).getName().toLowerCase().contains(item.toLowerCase())) items.add(itemName); if (items.isEmpty()) { html.replace("%items%", "<tr><td>No items found with word " + item + ".</td></tr>"); html.replace("%pages%", ""); activeChar.sendPacket(html); return; } final int max = Math.min(100, MathUtil.countPagesNumber(items.size(), PAGE_LIMIT)); items = items.subList((page - 1) * PAGE_LIMIT, Math.min(page * PAGE_LIMIT, items.size())); final StringBuilder sb = new StringBuilder(); for (Object itemName : items) { String actualName = getFontedWord(item, ((WorldObject) itemName).getName()); StringUtil.append(sb, "<tr><td>", actualName, " (", ((Item) itemName).getItemId(), ")", "</td></tr>"); } html.replace("%items%", sb.toString()); sb.setLength(0); for (int i = 0; i < max; i++) { final int pagenr = i + 1; if (page == pagenr) StringUtil.append(sb, pagenr, "&nbsp;"); else StringUtil.append(sb, "<a action=\"bypass -h admin_search ", item, " ", pagenr, "\">", pagenr, "</a>&nbsp;"); } html.replace("%pages%", sb.toString()); activeChar.sendPacket(html); } private static String getFontedWord(String word, String tt) { int position = tt.toLowerCase().indexOf(word.toLowerCase()); StringBuilder str = new StringBuilder(tt); String font = "<FONT COLOR=\"LEVEL\">"; str.insert(position, font); str.insert(position + (font.length() + word.length()), "</FONT>"); return str.toString(); } @Override public String[] getAdminCommandList() { return ADMIN_COMMANDS; } } Can someone give me a hand and tell me what I'm doing wrong?  
    • Contact me: Disrcord : https://discord.gg/fJ5geYMu Skype: pparik2451 Email: golbergsoft@gmail.com You are welcome
  • Topics

×
×
  • Create New...