Jump to content

Recommended Posts

Posted (edited)
2 hours ago, Elfocrash said:

Sorry for that. I thought you were on GitHub. 

 

 

Now i am worried, according to me, in the README.md file I am clear, so if you thought that, other people can think the same (sad face)

 

ea.thumb.png.2b60d2962c6565381e10f931ec889ac1.png

 

@Rootware Cause i took the "version 1" (public) and i did not use L2jFrozen 2.0 (private)... So i made my own path and in honor to the public version i called my project L2jFrozen 1.5, simple.

Edited by Dragic
Posted
2 hours ago, xFranky said:

Whoever wants to participate and help out please send me a PM. If not, I will simply abandon this idea

You should start and eventually people will join you

  • Upvote 1
Posted (edited)

Hi @xFranky,

 

You need someone like @Tryskell (or himself) to have a good understanding of the project and not to rush on committing 2 lines suggested by a random guy. Everything has to be organized in order to success. If you don't control the changes/commits, the project will end up like any other L2J fork from 2009 when everyone was having one. You really need to think it thru when doing a commit

  • what is it fixing
  • what else may that affect
  • how can you improve it
  • how can you make sure you're following a coding style
  • and testing it in every possible way

Adding customs is definitely easier. But how will this project of yours save the community?

Server owners can pay several (if not one) developers to code whatever he/she wants.

Perhaps it will only help the community if server owners would be more open minded and cooperative.

 

I'm reading every single new reply on aCis forums weekly. I'm not opening a server, but I'm very attached to the project. I'm occasionally helping people (so called "L2 buddies") with their servers, for free.

 

If I were you, I'd make a separated project, self-styled "engine" with listeners, like we/I used to be working on aCis, thanks to Seth that opened my eyes many years ago.

If you do this, you'll have one file for each feature/custom. I will c/p one example below for you.

You and your developers that wanna join you will be more satisfied with this.

Maybe you can join an existing community, such as aCis with your engine -separated categories on the forum. Try to talk to @Tryskell, @Sido and @SweeTs about it.

 

# True or false.
OlympiadSkillsSystem = False

# Skill level set to 0 will auto select max skill level.
# [classId: = skillId-skillLv];
OlympiadSkills = [101:92: = 7100-1];
public class OlympiadSkills implements EventListener
{
	private static final Logger LOG = Logger.getLogger(OlympiadSkills.class.getName());
	
	protected static final HashMap<Integer, L2Skill[]> olympiadSkills = new HashMap<>();
	
	public OlympiadSkills()
	{
		CorvusConfig config = Corax.config();
		
		String data = config.getProperty("OlympiadSkills", "");
		String[] dataHash = data.split(";");
		for (String data2 : dataHash)
		{
			String[] skillIds = data2.split("=")[1].split(",");
			L2Skill[] leIds = new L2Skill[skillIds.length];
			SkillTable table = SkillTable.getInstance();
			for (int i = 0; i < skillIds.length; i++)
			{
				String[] defs = skillIds[i].split("-");
				String skillIdValue = defs[0].replaceAll("[^\\p{L}\\p{N}]", "");
				String skillLevelValue = defs[1].replaceAll("[^\\p{L}\\p{N}]", "");
				
				int skillId = Integer.parseInt(skillIdValue);
				int level = Integer.parseInt(skillLevelValue);
				boolean max = level <= 0;
				L2Skill skill = table.getInfo(skillId, max ? table.getMaxLevel(skillId) : level);
				
				if (skill != null)
					leIds[i] = skill;
				else
					LOG.warning(getClass().getSimpleName() + ": Failed loading skill: " + skillId + " level: " + (max ? table.getMaxLevel(skillId) : level) + ". Skill dose not exist!");
			}
			
			String[] dataHash2 = data2.split("=")[0].split(":");
			for (int i = 0; i < dataHash2.length; i++)
			{
				String classIdValue = dataHash2[i].replaceAll("[^\\p{L}\\p{N}]", "");
				int classId = -1;
				if (classIdValue.isEmpty())
					continue;
				
				try
				{
					classId = Integer.parseInt(classIdValue);
					olympiadSkills.put(classId, leIds);
				}
				catch (Exception e)
				{
					e.printStackTrace();
				}
			}
		}
		
		LOG.info(getClass().getSimpleName() + ": Loaded " + olympiadSkills.size() + " balance entry(s).");
	}
	
	@Override
	public void listen(Event event, Object... params)
	{
		switch (event.eventId)
		{
			case EventKeys.Olympiad.portPlayerToArena:
			{
				Player player = (Player) params[0];
				
				L2Skill[] skills = olympiadSkills.get(player.getClassId().getId());
				if (skills != null)
				{
					for (L2Skill skill : skills)
						player.addSkill(skill, false);
				}
				else
					LOG.warning(getClass().getSimpleName() + ": Missing skill for classId: " + player.getClassId().getId());
				
				break;
			}
			case EventKeys.Olympiad.portPlayerBack:
			case EventKeys.Cleanup:
			{
				Player player = (Player) params[0];
				
				L2Skill[] skills = olympiadSkills.get(player.getClassId().getId());
				if (skills != null)
				{
					for (L2Skill skill : skills)
						player.removeSkill(skill.getId(), true);
				}
				
				break;
			}
		}
	}
}

 

Edited by Trance
  • Like 1
  • Upvote 1
Posted (edited)

Well aside from what the OP suggests we could combine our resources and open a multiversion server. If im not mistaken L2jserver and others were working on a universal login. Just get a bunch of people to develop their servers and put everything under one roof. Im sure if 20 people contribute a few eu/usd we could rent a hude dedicated server and offer cool servers without donations for everyone to enjoy. That i think is the only way to revive this community.

Edited by Porthos
Posted (edited)
10 hours ago, Porthos said:

Well aside from what the OP suggests we could combine our resources and open a multiversion server. If im not mistaken L2jserver and others were working on a universal login. Just get a bunch of people to develop their servers and put everything under one roof. Im sure if 20 people contribute a few eu/usd we could rent a hude dedicated server and offer cool servers without donations for everyone to enjoy. That i think is the only way to revive this community.

 

There's a whole world between multiversion login and multiversion server.

 

"Just get a bunch of people"... Do you know how much ppl already contributed to L2J, and you still got that feeling nothing is working correctly ?

 

Until you're a real life project manager, and got illimited human ressources, simply forget the idea. It took me 9y to put aCis where it is (bad tongues could say I didn't work for almost 3 full years, but bad tongues are unable to assure project management for as long time), and I don't even count all people who contributed.

 

So a MULTIVERSION server ? With all checks, races which are/aren't here, features to desactivate/activate, scripts rewards rates/differences/full rework on GoD ? Lol. Gl with that.

 

I don't even count human ego in the story. Who will be the leader of such thing ? And who seriously will accept it ?

Edited by Tryskell
Posted (edited)

 

13 hours ago, Porthos said:

Well aside from what the OP suggests we could combine our resources and open a multiversion server. If im not mistaken L2jserver and others were working on a universal login. Just get a bunch of people to develop their servers and put everything under one roof. Im sure if 20 people contribute a few eu/usd we could rent a hude dedicated server and offer cool servers without donations for everyone to enjoy. That i think is the only way to revive this community.

 

To ask that, you do not comprehend the changes that make each version different.

The changes between different versions are beyond idiotic level. (I call that NC level)

Take it from someone that supports 20 different branches and counting.

 

The only thing you can achive by something like that,

is make your server extensively use resources for no reason.

 

The best solution for this:

- Multiple simultaneous projects on same Eclipse environment.

- SVN for simultaneous commits and easy branch comparison using Eclipse.

- Keep code compatible between different versions.

 

See how same changes are committed between different versions

Note that C1 and C6 rarely share the same changes with the rest versions.
https://bitbucket.org/MobiusDev/l2j_mobius/src/master/

 

Edited by Mobius
Posted
36 minutes ago, Porthos said:

Cant we alternatively just have a single login server and everyone would connect their servers to it?

Something like that.

No, each project have his own rules about Loginserver <-> gameserver.
It could be possible only if every pack adopt standard methodology

Posted

Thank each and everyone for their support, but I believe, it was a waste of time to ask people who would want to contribute in such a thing. Only a few people have responded positively, but I haven't seen anything. I will most likely start something by myself and let others just contribute, if they want, whenever they want, as I will be sharing my links to everyone.

 

The way how I will make this is, I will come to the community to ask what features they would like to see, then I will be starting it myself, and when I feel is in an "okish" standard to be released, I will share the link to the public. If anyone has to suggest any correction, this will be welcomed on my GitHub Repositories, as for each feature I will be starting to work on, it will have its own repository.

Posted
On 1/22/2020 at 12:53 PM, Tryskell said:

(bad tongues could say I didn't work for almost 3 full years,...

 

Bad tongues say you can't answer properly on fb.

  

On 1/15/2020 at 10:42 PM, Reynald0 said:

Even if is not about money, how will you pay to L2jaCis, webserver (if you will use), domain (if you will use), server to host your test server (if you will use).

 

Nowdays, if you are above 15yo, those are very cheap to cover.

 

On 1/22/2020 at 1:01 AM, Trance said:

Hi  @Sido!

 

Sup @Trance !

 

On 1/23/2020 at 2:36 AM, xFranky said:

Thank each and everyone for their support,....  anyone ... will be welcomed...

 

Web related, if you need my help, let me know :)

  • Like 1
Posted
3 hours ago, Trance said:

@xFranky, and yet, you haven't answered my reply.

Hello @Trance. I am sorry about that. Silly me!

 

On 1/21/2020 at 11:01 PM, Trance said:

Hi @xFranky,

 

You need someone like @Tryskell (or himself) to have a good understanding of the project and not to rush on committing 2 lines suggested by a random guy. Everything has to be organized in order to success. If you don't control the changes/commits, the project will end up like any other L2J fork from 2009 when everyone was having one. You really need to think it thru when doing a commit

  • what is it fixing
  • what else may that affect
  • how can you improve it
  • how can you make sure you're following a coding style
  • and testing it in every possible way

Adding customs is definitely easier. But how will this project of yours save the community?

Server owners can pay several (if not one) developers to code whatever he/she wants.

Perhaps it will only help the community if server owners would be more open minded and cooperative.

 

I'm reading every single new reply on aCis forums weekly. I'm not opening a server, but I'm very attached to the project. I'm occasionally helping people (so called "L2 buddies") with their servers, for free.

 

If I were you, I'd make a separated project, self-styled "engine" with listeners, like we/I used to be working on aCis, thanks to Seth that opened my eyes many years ago.

If you do this, you'll have one file for each feature/custom. I will c/p one example below for you.

You and your developers that wanna join you will be more satisfied with this.

Maybe you can join an existing community, such as aCis with your engine -separated categories on the forum. Try to talk to @Tryskell, @Sido and @SweeTs about it.

 

Initially, my project concept or idea was not to create a derival of aCis, but about a group of multiple but separated from one another, up-to-date and available features, which aims people that are looking for a particular feature. The advantages were to reduce the developer's time on looking for the features that are hard to be found either on MxC or Google, and they will not be out-of-date


Part of this idea for the features was to be based on aCis for creating and building up those features, and make them available for multiple L2J packs that enables an easier adaptation of the code. In order to achieve this was to make use of GitHub. GitHub has a great engine for keeping a track of all the commits and, which allows me to either approve or amend commits as I see necessary. Additionally, everyone could contribute, without been told for what to do, when they are suitable and find free time. Therefore, I will have a total control about what is going on with the repositories, where any developer at any given point of time, can see all the commits and why they are made, in order to go ahead and update their code.


The idea of "saving the community" was because I remember myself when I started l2 developing, while I had no knowledge of coding. I was able to search the forum to find what I was looking for and simply figure out how to make simple changes without harming anything else. The majority of the code was available to the public, and it gave me the opportunity of learning code. Nowadays, this has been reduced, and in order to get a feature, as simple as a PvP and PK colour (I just gave an example to justify what I mean as simple code) you have to pay someone between 20€ to 100€, even though it is just 20 max lines of code. I just wanted to encourage developers to be more open minded, and give away simple things, since they could earn the trust of the community, create a good reputation, potentially increase of their customers, improve their code and coding style as they will be getting suggestions of how they could improve in the future and helping the L2 development community to grow up again. This can give them a nice feeling for contributing and helping hundreds of people.


When it comes to the engine which you mention, which is a great example, is easy and possible to be done. I just needed ideas and motivation, which are gone since a few days ago 
for something that have happened to me, so I am waiting them to come back and recover. I might have to take some time off from coding and drink a lot of Vodka. Idk. 


Nevertheless, I could just start by myself and if anyone wanted to commit, they would be more than welcome including yourself. However, there is an issue which I learned recently. We are not allowed to have any aCis source code and pack shared on MxC, after the request of @Tryskell to Maxtor, which forces me to respect his decision, therefore this idea with the GitHub is not possible, since I have to share the link of the repository, in order for the whole idea to work. I could alternatively have diff files available but the whole concept would be corrupted. If I had the "Ok" from either @Tryskell, @SweeTs or @Sido to share a link of their source files to the public, with the promise of keeping all the repositories up-to-date with the latest free available sources, this concept can revive again! However, it is unlikely to happen and therefore I might just discontinue this idea.


Anyway, I like your idea and I will keep it in mind along with the advices you have given me on your post. I am thankful for that and for the time you have spent.

Posted (edited)
46 minutes ago, xFranky said:

Nevertheless, I could just start by myself and if anyone wanted to commit, they would be more than welcome including yourself. However, there is an issue which I learned recently. We are not allowed to have any aCis source code and pack shared on MxC, after the request of @Tryskell to Maxtor, which forces me to respect his decision, therefore this idea with the GitHub is not possible, since I have to share the link of the repository, in order for the whole idea to work. I could alternatively have diff files available but the whole concept would be corrupted. If I had the "Ok" from either @Tryskell, @SweeTs or @Sido to share a link of their source files to the public, with the promise of keeping all the repositories up-to-date with the latest free available sources, this concept can revive again! However, it is unlikely to happen and therefore I might just discontinue this idea.

 

@xFranky You can use L2jFrozen 1.5, we have kind of engine letting you integrate customs without modifying too much the main project (L2jFrozen 1.5).

You can create a script to download the last commit made in my SVN repository every 5 minutes and upload to your repository at the same time. So you can become a L2jFrozen 1.5  mirror with your work or work from others.

I only ask you to put in your README.md the link of the real repository in SourceForge.

Edited by Reynald0
  • Upvote 1
Posted (edited)
14 hours ago, xFranky said:

The idea of "saving the community" was because I remember myself when I started l2 developing, while I had no knowledge of coding. I was able to search the forum to find what I was looking for and simply figure out how to make simple changes without harming anything else. The majority of the code was available to the public, and it gave me the opportunity of learning code. Nowadays, this has been reduced, and in order to get a feature, as simple as a PvP and PK colour (I just gave an example to justify what I mean as simple code) you have to pay someone between 20€ to 100€, even though it is just 20 max lines of code. I just wanted to encourage developers to be more open minded, and give away simple things, since they could earn the trust of the community, create a good reputation, potentially increase of their customers, improve their code and coding style as they will be getting suggestions of how they could improve in the future and helping the L2 development community to grow up again. This can give them a nice feeling for contributing and helping hundreds of people.

 

That may be a bit off-topic but I request that you reconsider your choice. The problem is actually those dozens of private servers being around. Those greedy of admins have already drained enough of free material for more than a decade now, especially from l2j community, and the majority of them still failed to develop a decent project. This proves 'that majority' consists of immature and irresponsible people nowadays. Private servers have to be reduced and only those worth of managing such projects should start one.

 

If you wish to start something, don't let it be for free or it's gonna be wasted.

Edited by DnR

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



  • Posts

    • For the first time in thousands of posts I've read on this forum, I’ve actually found a message that is enriching on both a personal and professional level. I’ll take your advice to heart: I’m going to start creating more and stop overthinking things that get me nowhere. I totally agree about the toxic community; it's a shame. Time to keep working. Thanks a lot for your input.   Exactly, that’s why the Scryde method and their merge system work so well. People don't lose their progress and can still keep rushing new servers. Obviously, gameplay has mutated into something much faster-paced, but obviously, this happens in real life too, everyone is more accelerated and on edge. Thanks to social media and mental conditioning. But, well, it’s something we have to accept. Don't even get me started on gambling and online casinos; that’s a whole other topic regarding all the P2W servers.   Really, amen bro.
    • Hello, the server lifespan isn't something that only affects Argentina; just look at the South American and European communities. Those distant days you mentioned, when we were younger, which I completely agree with, are long gone. Today, the community plays RUSH for 30 or 60 days and seeks the adrenaline rush of starting over. As for free or paid packs, there are many options, but in all of them, you'll have to create your own unique style.  
    • Introducing: NimeraCP V2! What's New: Realtime Tickets (Receive + Send messages without refreshing page, instant delivery to player) Powered by WebSockets Realtime Rankings/Stats (Receive instant updates without refreshing page) Powered by WebSockets - PvP/Boss Rankings/Clan Rankings etc... oAuth Login + Register (VK, Discord, Google) Two Factor Authentication (Authenticator App) Passkey coming soon! Theme Editor New Arcade Game: Rock Paper Scissors Let players gamble wagering their topped up wallet balance! Discord Webhooks: Receive messages to discord via Bot or Webhook for certain events New Player registration New Payment received New Ticket Opened and more Complete UI Overhaul NimeracCP V2 is now fully multilangual supporting the following languages: English Ελληνικά Português / Brasileiro Español Русский Українська 한국어 Onboarding: Easy installation wizard via /onboarding on first use of the panel for easy installation. Feature Flags: You have full control over the UI. Disable/Enable pages + features via Admin CP CloudFlare R2 Bucket integration: The panel comes with Bucket storage integration for all kinds of assets uploaded to the panel.   A new website shop at https://nimeracp.com/ is also coming soon, including full installation docs.  You can join the discord for further updates/questions: https://discord.nimeracp.com/
    • thanks for choosing me ! 
  • 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..

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock