Jump to content

RNC 3: Rebuilding the Core


Sporadic
 Share

Recommended Posts

The Remove Nexus Chronicles

On rebuilding the core plugins of LotC

 

This is my ramblings and thoughts while working on what I believe is the top priority for LotC right now: Remove Nexus.

 

This one is going to be very technical and honestly is just there for me to go on tangents, for you to realize the absurd scale of work that goes into reworking plugins, and for maybe that 1 dude out there that is interested in code stuff.

 

People often have the (very justified) question why Removing Nexus is so difficult. Why not just, like, delete the jar file from the server, reboot, and you're done. The short answer to this is "it's complicated". The long answer is going to be given here.

 

around mid-Anthos, people still believed the Skill Plugin and Magic Plugin, which had been promised by every single Tech ever and delivered by none of them, were the obvious next step for LotC. As the newest Senior Technician, I was not privy to the marvels that went on in Maxim's workshop, but I was budding to get some major work done. So I set out to build my own plugin.

 

This plugin ended up being a cornerstone of the LotC pluginbase. However, nobody outside of the Dev Team knows that it exists, what it does or even what its name is. The reason for this I didn't like making promises, and I still don't. The plugin does its job and does its job well, but I never advertised it the way some previous techs tried to sell their work, as they had managed to dissappoint many people this way and caused their successors to be held responsible.

 

The issue being that this cornerstone plugin does a lot of the things that are often attributed to "Nexus". And while a lot of these features need removing to satisfy the players, the code is inextricably woven in with a lot of vital features which cannot be removed or LoTC collapses.

 

Another issue we have right now is the way we handle custom items. Custom items, of course, have become REALLY important on LotC. People want their lore items that are renamed and redescribed, with custom bells and whistles and want to be able to properly buy, sell and save these items without them getting mixed up with "vanilla items". Nobody wants to lose their lore artifact item because Minecraft thought it was actually a block and tried to place it. The answer to "why can't you just remove everything and revert to 3.0 plugins?" is always "custom items": The old plugins of 3.0 do not work with the Item Metas (name, description, potion effects, etc) that LotC is a huge user of for 99% of its roleplay item representations.

 

A lot of what me and 501warhead are doing right now is the most boring of boring stuff to end users. Restructuring databases, reconsidering the way personas are loaded at start-up, modernizing old hacks we used which have become outdated and ugly for newer versions of Minecraft. We are also reworking how custom items are handled in a cleaner way which is made possible due to modern Bukkit (Spigot) features.

 

These things, however, are sufficiently large-scale that they cannot be implemented without an entire item wipe, which is why we are waiting until 6.0 to launch this new core system. Getting it ready in time is going to be a stretch goal- I've only returned to the Tech Team for a few months and it took many weeks to even get the ball rolling- but it is something that is very important to get done in time.

 

Thank you if you somehow managed to read all of that. The work continues.

 

 

 

Link to post
Share on other sites

Thank you Sporadic. You are doing God's work. 

Link to post
Share on other sites

Thank you for this, as it's nice to be more informed on Nexus, this cornerstone plugin that does many things people say Nexus does, and so on.

Link to post
Share on other sites

So tl;dr nexus is basically the LOTC equivalent of a .dll file at this point.

Am I correct?

Link to post
Share on other sites

19 hours ago, WuHanXianShi14 said:

Thanks for the update, removing diamond armour would be a good start too

 

That's not even a Nexus feature so it's not the scope of anything I'm working on. But maybe I'll do a writeup on the restriction of vanilla features, but I'm guessing it'll be controversial since a lot of people fiercely oppose restricting vanilla.

 

15 hours ago, Dunstan said:

So tl;dr nexus is basically the LOTC equivalent of a .dll file at this point.

Am I correct?

 

It's... somewhat. It's also an implementation to a large extent, but not the full implementation. Obelisk is probably the closest thing we have to a dll file.

 

12 hours ago, Tofuus said:

Sporadic is doing what should have been done a long time ago. Lots of LoTC's proccess don't scale well. They're little hacks that work well for the time being but end up costing the devs a lot of time and frustration down the line. There's a laundry list of things of things that need to be modernized but they're making headway. Best of luck!

 

It's strangely something I enjoy doing that nobody else likes to do, so it works out well. Cleaning up old code feels good despite the many head-shaking moments where I see some of the old code.

 

1 hour ago, drfate786 said:

Sporadic, you can't salvage an out of date system. You need to start over from scratch to fix the issues LoTC's plugins are causing. 

 

?

Link to post
Share on other sites

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.



×
×
  • Create New...