Developing HCF Cores

Discussion in 'Spigot Plugin Development' started by savfsfcwdvcfs, Aug 8, 2018.

  1. So, I have a few questions about developing HCF cores. If you aren't into HCF and don't develop any sort of HCF plugins, then you most likely won't understand what I'm asking.

    Ive been looking thru some open source hcf cores and my mind is just confused as fuck. I want to move from like smaller projects and try to make atleast like half of a hcf core.

    1. Is it alright if I don't know what something means with their naming. Example: They name a class or a method something "fancy" and complicated when they can just make it a lot simpler.
    2. In hcf cores there is usually a Profile object that stores player data, what are they used for.
    3. Any recomendations on how to make a simple and efficient hcf scoreboard.
    4. Why do ppl say "optimized hcf core", are they just blowing smoke out there ass or is there something that they actually did to optimize and what would that be.
    5. How hard is it really to make a hcf core? Some peple are like: "oo yh bro i make u fork for 5$" and some say that its over $1000 and takes months. Do you have to be very skilled? or is it just time consuming

    This is a lot of questions. Sorry if I've given anyone whos reading this a stroke. I'm typing this on my phone so its equaly as anoying for me to type as it is for you to read. If you can give me a hint to the right direction by answering to any of the questions above, I will give u a cookie if u ever visit my house. Thank you for reading! <3
    #1 savfsfcwdvcfs, Aug 8, 2018
    Last edited: Aug 8, 2018
  2. 1. Generally a class should have a name that speaks for itself... So either that's bad practice in naming convention of the author or you're not up on your terminology, but no big deal.
    2. You answered your own question; to store data. Probably data about which faction they're in, power, etc. Probably some helper methods too (like Profile#setFaction or stuff like that that links to other methods in other classes).
    3. Making an efficient scoreboard is a skill in and of itself. An easy solution would to just make it compatible with featherboard and let users use that, since any self respecting server basically has that plugin already :p
    4. Write proper efficient code with nice caching for a start.
    5. [​IMG] Time and skill are major factors.
    6. I dont think you should do that... stick to smaller stuff if you dont feel confident in making proper stuff. If you start off with an inefficient framework you'll have to refactor and rewrite half your plugin later :p (+ a lot of people would get lazy later and just never fix it, the "temporary" fixes you see everywhere)
  3. About the last question, ill prob remove it bc anyways yeh, if i make it now i will go from the easiest things and try to make everything efficient. Thank you so much for ur answers! I'd like to get answers from a lot of perspectives so I know what I have to do in the end. Thank you once again, have a great day.
    • Agree Agree x 1
  4. Bumpy Bump Bumpy Bump
  5. I´ve never made a HCF core as I am not into HCF really, although I understand the concept.

    From what I´ve read you shouldn´t be working on one for a while, get to know the Bukkit/Spigot API and learn some Java so you feel confident and can foresee somewhat of how you are going to make it work, it will make it a lot easier.

    Creating a full HCF core is going to take a lot of time, even for experienced developers.

    Forking a plugin and making a plugin is two very different things, a fork is basically just an edit of an existing plugin (correct me if I am wrong).

    As @simgar98 said, you should stick to smaller stuff for now until you feel confident enough to actual create an entire core, as it is not an easy task in the slightest. It will take you a shit ton of time and a lot of effort, and at the level you are on currently(afaik) I would not expect you to ever finish it in the near future.