Best Sources of Essentia Calculator and Block/Item info Handy for Mod Devs

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

ProfessorVice

New Member
Jul 29, 2019
6
0
0
April 2 Update:
I have created an Android App that streamlines a lot of the content and is quicker/easier to read on Android Phones. Get it free from Google Play.

You can type 'yoreddit' (without quotes) in the search bar to get the app upgraded to ad-free, but the code will only work for a few more days.


-----

Hey FTBers. I've been developing a website called Minecraft University for the last 6 months and I just launched it today. In its current form it provides a database of information for Blocks and Items in Minecraft, and has some handy tools for both Mod Devs and players alike. It's kind of a cross between NEI on overdrive and a Wikipedia, but my goal isn't to replace either. Rather this is the groundwork for a mod I will be developing that will make sharing building projects between clients hopefully seamless.


Best Sources of Essentia Tool | View Terra Example, Humanus Example

When you view any Aspect on the website, all content that has that aspect assigned is returned sorted according to a custom weight I developed that attempts to factor the relative difficulty of obtainability of the item/block vs. the number of aspects you get when smelting. In this Aqua example you can see that boats are your best bet, but you'll also notice that the tool also factors in Centrifuging (optional), so on an Aspect like Humanus, you get a really good idea of what the best thing is to use without wasting your time.


Block and Item Information | Block Example (Copper Block), Item Example (Diamond)

I have added info for all blocks and items in Minecraft 1.8, and uploaded a sample of content from Thaumcraft and Thermal Expansion as proof of concept. I won't bore you with details, almost all the item properties you'd expect can be found, plus a few neat ones I came up with like color. Of note, Forge Ore Dictionary and Liquid Registry are implemented. I wonder if a large collective DB of this kind of stuff would help developers out? As an example of Mod integration I have included details about what Thaumcraft Aspects an Item/Block has when viewing that page. I would be interested to do more stuff like this in the future and looking for suggestions on what people would like to see. RF? EMC Values?

Mod Information | Thaumcraft Example, Thermal Expansion Example

Details about the mod, mostly as it pertains to the website can be found summarized on an aggregate page. I support Mod Authors so full links to the author's website, donation links, and social media outlets are present. Other Mod and Forge dependencies are listed if applicable. Blocks and Items the Mod implements are listed further down the page (out of screenshot). In the future I would like to support mod packs to 'group' presets of mod packages together.


Block Color Matcher Tool | Diamond Block Example

This is my favorite tool, personally. I developed a pretty complex color library that allows me to assign an overall color to any Block, Item, or Mod in the database. With this you can look up all the blocks in the database with a color that best matches the one you are looking for, or you can use the color picker to choose any color you want.

-----

There's a lot more features than this, but I don't want to bog the post down. Please let me know what you think, I would love to have some input from the FTB community, particularly any missing features or special mod integrations you would like to see added (see the Thaumcraft stuff as an example.) I have the ability to aggregate information easily for blocks and Items in the DB.
 
Last edited:

Claycorp

New Member
Jul 29, 2019
55
0
0
Hey there! I saw you followed me on the twitters and was checking out the site and such.
I must say that this is EXTREMELY nice! It has that nice Wiki feel but isn't plain. You also have that wonderful color picker!

I really do hope this takes off because as a whole this site has tons of potential and many uses that really are not filled anywhere else.
Some questions do arise though...

How do you plan on managing mod related information? Typically things change quite often and can vary quite a lot between major versions.

Will you ever look into crafting related data? You have lots of data covering things like burn time, durability, item stacks and so on but nothing crafting wise.

Would you look into supporting mod devs to document information about their mod? Most Devs don't have the greatest outside documentation but a site with good formating could give new grounds for people to setup. As you would be pulling people in for other minecraft/mod related stuff this would be an optimal site!


Regardless, I for one am looking forward to how this develops over the next months and think what you have done so far is amazing!
Keep up the good work!
 

ProfessorVice

New Member
Jul 29, 2019
6
0
0
Thanks' for your interest and checking the site out. I really appreciate the feedback!

How do you plan on managing mod related information? Typically things change quite often and can vary quite a lot between major versions.
A few ideas here. I am considering going the full Wiki route and opening the website up to open source editing by the public. Because the data is fairly controlled, I think vandalism would be less of an issue. Another great idea someone contributed to me on another forum was to write a mod that parses all this data from the Minecraft client. That would certainly make dealing with mod iterations much more manageable. Both example mods I used (Thaumcraft and Thermal Expansion) are already out of date and I believe contain new content in just a few months.

Another important issue in relation to this are Mods and Mod Packs that polymorph content by making their own adjustments. Obviously I can't account for every possible non-standardized code injection that mod developer x implements, so for now the website is 'best fits all' and I try to add content as though it was the only mod installed on top of the client.

Will you ever look into crafting related data? You have lots of data covering things like burn time, durability, item stacks and so on but nothing crafting wise.
Absolutely! It is on my internal to-do list. At this point tying recipe data into the mix should be relatively easy, but I'd also like to cover custom mod stuff like Machine input/output recipes, multiblock constructions, (on a related note: Tile Entities are not a consideration in Minecraft University yet, I'm guessing they may need to be in the future) and custom mod recipes like Tinker's Construct Tools that don't implement the standard crafting grid.

Would you look into supporting mod devs to document information about their mod?
I touched on this in your first point, but to expand, i'm curious what kind of documentation would be useful to bridge between the developers and the community?
 

nixhlestakov

New Member
Jul 29, 2019
73
0
0
Oh, god, this is awesome.
1. Do block models generate automatically or you need to add them manualy?
2. Does the list of oredict entries generate automatically too?
Because adding them with your hands is painful.
 

ProfessorVice

New Member
Jul 29, 2019
6
0
0
Thanks, nixhlestakov!

1. Do block models generate automatically or you need to add them manualy?
The short answer is; 'sort of'.

I went through several adaptions during development. I come from a 3D Modeling background, so my first instinct was to recreate models directly in Maya and roll my own exporters. This, of course, was a very slow process that required a lot of steps and time investment. I moved on to trying to automate the process, and after a few false starts, I decided to generate my own models in code based off of the new JSON model format introduced in 1.8. I have no idea if my models are generated the same way as MC, but the end result is pretty darn similar. The only problem it really has right now is with rotations (see Fire for Example).

Tile Entities and other custom models are a different beast altogether. I have written an unfinished application that parses most of the data, and with about 2-5 minutes in Maya I can fix the rest of the stuff (again, rotations are an issue.)

I am considering writing a WebGL viewer to let you view content on the website in full 3D without having to download anything. It would actually be very easy at this point, but my concern comes down to how that falls under content distribution in the Minecraft EULA, and securing the data so people cannot steal the meshes.

For items, it was pretty obvious to me how to go about generating 3D models similar to how they are presented in MC from a texture, so I just rolled my own code by sampling the pixels on the texture.

2. Does the list of oredict entries generate automatically too?
Yes indeed! All you have have to worry about on the admin side is making sure the piece of content (block or item) has the correct Ore Dictionary Key assigned and it takes care of the rest. I want to do more stuff like this in the future, and provide more handy interlinking comparisons of similar content to help people find stuff they want.

Because adding them with your hands is painful.
I'll drink to that!
 
  • Like
Reactions: nixhlestakov

Claycorp

New Member
Jul 29, 2019
55
0
0
Thanks' for your interest and checking the site out. I really appreciate the feedback!


A few ideas here. I am considering going the full Wiki route and opening the website up to open source editing by the public. Because the data is fairly controlled, I think vandalism would be less of an issue. Another great idea someone contributed to me on another forum was to write a mod that parses all this data from the Minecraft client. That would certainly make dealing with mod iterations much more manageable. Both example mods I used (Thaumcraft and Thermal Expansion) are already out of date and I believe contain new content in just a few months.


Another important issue in relation to this are Mods and Mod Packs that polymorph content by making their own adjustments. Obviously I can't account for every possible non-standardized code injection that mod developer x implements, so for now the website is 'best fits all' and I try to add content as though it was the only mod installed on top of the client.


Absolutely! It is on my internal to-do list. At this point tying recipe data into the mix should be relatively easy, but I'd also like to cover custom mod stuff like Machine input/output recipes, multiblock constructions, (on a related note: Tile Entities are not a consideration in Minecraft University yet, I'm guessing they may need to be in the future) and custom mod recipes like Tinker's Construct Tools that don't implement the standard crafting grid.


I touched on this in your first point, but to expand, i'm curious what kind of documentation would be useful to bridge between the developers and the community?


You could make some sort of importer to pull data straight into the DB. Then edit things that don't transfer. That would make quick work of loads of stuff.

Ehh when it comes to pack related stuff its typically ignored unless someone makes a wiki dedicated to it specifically. So that can be ignored.


Crafting! Yay! (Well any process of changing one thing into another) I assume that you will be building tools around these also. Like resource calculators.


If you make all these tools like you plan to and implement all this information about item/block the only thing missing would be explanations and uses. This is where the modders/users of said mod could have a heyday with this! Especially if you have a tool for importing data... Currently every option we have for documentation is regular Wikis or self built sites and because theres so many of the darn things they typically run out of date quickly. Most of which are awful to work with and are poorly constructed. Something like this would allow users to trust the information a bit more as the majority of it is pulled directly from game. Obviously this wouldn't work for all mods but a majority would still be covered.

Feel free to contact me via Email/Twitter if you ever want to chat about things! I could see this becoming the "CurseForge" of mod information.
 

ProfessorVice

New Member
Jul 29, 2019
6
0
0
Crafting! Yay! (Well any process of changing one thing into another) I assume that you will be building tools around these also. Like resource calculators.
Yeah, that's kind of a given. I'm not going to lie though, it's not a big priority. My focus for the next iteration is to implement community content so that people can start interacting with the website. A part of that module will be admin tools/interface so that other people can start contributing information to a degree.

If you make all these tools like you plan to and implement all this information about item/block the only thing missing would be explanations and uses.
This is something I've struggled with. I'm trying not to be just another Wiki, but at the same time I recognize that most users are not looking for the granularity of the information currently on this website. You are correct though in that bridging some automation so that mod information is generated would make things easier for everyone.
 

Claycorp

New Member
Jul 29, 2019
55
0
0
The problem i foresee with it will be a lack of general information pertaining to what the purpose and implementation of something is. I won't lie what you got so far is quite amazing and will help in certain circumstances but the overall usefulness would be deteriorated by the fact that people are typically looking for certain information of that specific objects use.

If person can lookup the object on source A that gives use and less data than you do compared to the data you have and no use I feel they would opt for the other place as the other data isn't always as useful. It definitely fills a niche area.

You can have the upper hand on this though as if the base data you pull in can be mostly automatic. (IE smacking a block with a stick to export) Your pages will exist with everything but that little bit of info. As someone who writes all of our documentation on Github Wikis (Which BTW have god awful options for formatting and data representation) I know what its like to hammer in mindless amounts of crap that you hope people can use. With what you have 1/3 or more could be cut out because of automation and people can focus on getting that use data down instead of page formats and other silly stuff that most other wikis go by for guidelines.


IMO I feel like you are undermining the great site you have created by not wanting to be "Another Wiki" BUT what you currently have is MUCH nicer than any wiki I have looked at so it doesn't feel like "Another Wiki". Plus the tools you have created and have planned also put you past the whole "Its just another wiki" even if you only had the information I talked about.

Just my thoughts. If you want to take it in the direction you currently have planned thats OK too. :) You will still have things that don't really exist anywhere else.
 

ProfessorVice

New Member
Jul 29, 2019
6
0
0
The problem i foresee with it will be a lack of general information pertaining to what the purpose and implementation of something is.
I've been thinking about how to address this. For starters I've implemented a new field into the database attached to content that will allow for myself and others to contribute a related youtube video to the subject at hand. These little 3-5 min clips provide a quick general overview of the block and address most of what Average Joe needs to know and is hopefully more convenient than having to read 4+ paragraphs of info just to find out how something works.

You can have the upper hand on this though as if the base data you pull in can be mostly automatic. (IE smacking a block with a stick to export) Your pages will exist with everything but that little bit of info. As someone who writes all of our documentation on Github Wikis (Which BTW have god awful options for formatting and data representation) I know what its like to hammer in mindless amounts of crap that you hope people can use. With what you have 1/3 or more could be cut out because of automation and people can focus on getting that use data down instead of page formats and other silly stuff that most other wikis go by for guidelines.
Yeah, I don't think I'll even be bothering to add any more content to the website by hand at this point. The next time I feel like we need more data, I'll get cracking on some kind of automation API.


Just my thoughts. If you want to take it in the direction you currently have planned thats OK too. :) You will still have things that don't really exist anywhere else.
I view this project as very much mutable and I know my first shot in the dark will not be a success, but I plan to make adjustments with my iterations and adapt to the needs of the community. For example; I am working on a simplified version of the website that I am rolling into an Android app. These changes will later be merged into the main website for a much better browsing experience for mobile users.
 

Claycorp

New Member
Jul 29, 2019
55
0
0
Ehhh. I would prefer reading over a video personally.

Also moderating videos will be harder than text. You could just run over the the text with filter and pull out problem words unlike videos. Along with that is people that don't know how to make quality videos and start blabbering or thinking its a review will be posting to it.
 

ProfessorVice

New Member
Jul 29, 2019
6
0
0
Ehhh. I would prefer reading over a video personally.

Also moderating videos will be harder than text. You could just run over the the text with filter and pull out problem words unlike videos. Along with that is people that don't know how to make quality videos and start blabbering or thinking its a review will be posting to it.

Yeah that's completely understandable and to each his own. I wouldn't have videos standalone and I see them as more of an added bonus anyway. As for quality control, I would be pretty strict about that. I have done videos of my own in a format that I feel is concise, to the point, but not too dull, and would like to delegate this to others in the future. Hell if you look back on that channel I was making these things 3 years ago back in Beta days.

------------
Today I released an Android App for this website called the Blockidex. You guys can grab it free from Google Play if you want to check it out. If you enter 'yoreddit' in the search bar the App will auto-upgrade you to the Ad-free version, but the code is only good for a few days. I'll see how user response on the App is before I develop it more.

Anyone out there want to see this on iOS? In the mean time the website is going to get some new feature updates finally :)