Jump to content

L2jTesla - The Interlude project you shouldn't use


Elfo

Recommended Posts

Long story short, I recently shared the Autobots engine and many people were very quick to message me to help them set it up.

I am not really doing that sort of thing, paid or otherwise and I'm leaving it to the leeches to scam them for shared code.

 

That being said, the biggest issue I had selling Autobots was that I had to adapt it to so many projects.

 

L2jTesla was originally a private project that I've been working on for over a year now.

This public version is a blank slate of the project based on aCis 382. I will slowly start migrating some of the "cool" features of the private Tesla to the public one. The private one is NOT for sale so don't even ask.

 

DO NOT EXPECT ME TO ACTIVELY WORK ON THE PROJECT. I WON'T

 

GitHub repo: https://github.com/Elfocrash/L2jTesla


There is currently nothing special in the project except for:

  • Migrated to Java 14 and also running Kotlin interop
  • shadowJar (Fat jar) compilation
  • Autobots engine
  • bcrypt with an option for SHA1 for backwards compatibility purposes
  • Uses HikariCP instead of c3p0

 

I will be adding more things as I go and every share I do in the future will be added in this single project. This saves me a lot of time cherrypicking code when I share.

 

How to build (Will create a simple video too):

  • Open in Intellij IDEA. Don't use Eclipse, it's not 2011 anymore. Download it here
  • Make sure you have git bash installed and run "git clone https://github.com/Elfocrash/L2jTesla" or simply checkout the repo via the Open dialog in Intellij
  • This is a monorepo so you need to copy the folders in a single repo. You can install SQL via the tools folder as you would do normally
    • config
    • data
    • The contents of "dist"
  • To build the project simply run the "shadowJar" task in the gradle window. It will create a single l2jtesla.jar that you can drop at the top level of the folder you moved the other files to
    image.png.fcfa0aac20c5f495f9a7d603ea725adc.png

 

I might add a single gradle task at some point to automate all this.

 

You can easily run this through Intellij by simple clicking the Run or Debug (if you wanna debug) button in the LoginServer.java or Gameserver.java

image.png.05715c26454ece2d0bd1ee983ed0cbb1.png

 

The code is licensed under GPL v3, not because I wanted it to be but because l2j is GPL v3 and you can't sublicense that. Tk and whoever else is doing sublicensing over GPL v3 is actually breaking open source licensing law.

 

Anyway, that's it.

 

  • Like 5
  • Thanks 1
  • Upvote 2
Link to comment
Share on other sites

Thats the most awkward way to work i've ever seen... so prepare people for unrecoverable errors, elfo will fix 1-2 just so he can shut me up and then "project abandoned" nothing new here just thank him for the half-done work he did and the bugs he shares with you just so he can brag for the kotlin

  • Like 1
  • Sad 1
Link to comment
Share on other sites

i call it trash and i am not even talking about structure...  what sane person would transfer all l2j classes into another project while its already unstable where it is.... for people info i just installed this bot system... its not worth the time or the project revision is based on, changing revision or for adaption on other projects means you have to know kotlin too, conclusion it was dead from the moment it started on kotlin through gradle with the amazing touch of elfo/kotlin-show-off.

 

PS: l2j was already hard to achieve a "build" for some people and then you go and do this...

Edited by iTopZ
  • Sad 1
Link to comment
Share on other sites

1 hour ago, iTopZ said:

i call it trash and i am not even talking about structure...  what sane person would transfer all l2j classes into another project while its already unstable where it is.... for people info i just installed this bot system... its not worth the time or the project revision is based on, changing revision or for adaption on other projects means you have to know kotlin too, conclusion it was dead from the moment it started on kotlin through gradle with the amazing touch of elfo/kotlin-show-off.

 

PS: l2j was already hard to achieve a "build" for some people and then you go and do this...

not defending anyone here, but if you know java, you know kotlin too. Kotlin is super easy to learn if you already know java. Syntax is like 90% the same... If people can adapt between revisions, Kotlin-> java is almost the same...

Link to comment
Share on other sites

9 minutes ago, HyperBlown said:

not defending anyone here, but if you know java, you know kotlin too. Kotlin is super easy to learn if you already know java. Syntax is like 90% the same... If people can adapt between revisions, Kotlin-> java is almost the same...

true, then add a little delphi, and just on top small parts of c# so it will look like a clown.

  • Haha 1
  • Sad 1
Link to comment
Share on other sites

44 minutes ago, zemaitis said:

So this is essentially acis 382 with autobots?

what revision of acis was with CPU load 100% and then crash? it was 380+ something :laughing: and movement rework all the bugs until 390 still there good luck.

add to that his changes before 1 year.

Edited by iTopZ
  • Sad 1
Link to comment
Share on other sites

6 hours ago, Elfocrash said:

I mean isn’t syntax isn’t really that similar even though it’s close enough. It’s way more scale than Java. The main reason for using its isn’t to brag. I don’t have anything to prove to anyone. It’s a practical reason. Autobots uses Coroutines instead of the thread pool to function which allows to do delays without locking the thread. You also end up writing significantly less code. 

 You could use also only the coroutines to do those tasks, no?

Link to comment
Share on other sites

6 hours ago, HyperBlown said:

 You could use also only the coroutines to do those tasks, no?

Do you mean threads from the thread pool?

Link to comment
Share on other sites

2 hours ago, Elfocrash said:

Do you mean threads from the thread pool?

Yes, having all main code in java, but sending them to be executed on coroutines instead of thread pool

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