Forge and Nova

  • 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

Apparently I own this thread now...Is NOVA a good thing?


  • Total voters
    80
  • Poll closed .
I just get irritated whenever someone says something along the lines of "there's not x of something, there's x + y of it". It's basic logic you learn for programming, (x + y) is a set that still includes (x).
I get that I was just talking about your qoute typo
 
One thing to note about Lex, last I heard he has no job other then maintaining forge and his only revenue is from donations/possible ad money. Which may explain a little bit of why he is so defensive about things that he perceives as threats to forge, since his job is on the line basically.

This is exactly the same as the drama that kicked up when Forge first came about; other people who were monetising their APIs essentially lost their jobs to Forge. (and made a bit of a fuss about it)
 
  • Like
Reactions: 1SDAN
This is exactly the same as the drama that kicked up when Forge first came about; other people who were monetising their APIs essentially lost their jobs to Forge. (and made a bit of a fuss about it)
I doubt that those other people were making their living from these APIs. And I guess modding wasn't as much of a thing as it is now.
 
  • Like
Reactions: pc_assassin
NOVA seems to be a way to help make mods more version-independent with respect to vanilla updates. All in all, it seems to be a good step in the right direction, since it'll give modders less backend stuff they need to worry about, thus allowing them to focus more on content, bugfixes, and the like for their own content. Forge is still quite beholden to Minecraft's update schedule and the ways in which it can, and at times will, break things rather badly. I applaud it.

To put it into real-world terms, think of it like this:

As it is now, when Reika goes to update RotaryCraft for a new vanilla version, he has to take into account not only the various changes that inevitably pop up with Forge, but also the massive changes under the hood in vanilla code, like the massive changes to rendering in 1.8. Accounting for these changes takes away time from Reika's schedule that could otherwise be spent on adding content to RotaryCraft, improving its functionality, and generally making it a better mod than it already is.

With the abstraction layer provided by NOVA, and operating under my understanding of what that means, Reika would now have fewer "behind the scenes" changes to worry about since NOVA would take care of that internally. NOVA's wrapper classes and methods encapsulate Forge's (and perhaps vanilla's, to an extent) code, and delegates between them and RotaryCraft; it speaks the ever-evolving language of Forge to Forge, but when speaking to RotaryCraft, it will be using the same words and syntax every time, making it easier for RotaryCraft to understand. This frees up time Reika would otherwise be spending on accounting for Forge's various changes, allowing him to get more done with respect to his mod's actual content.

Again, this is all working off my own, personal understanding of how NOVA works, so take it with a grain of salt. I, like anyone, am totally capable of being utterly, completely wrong.
Completely correct. Also, the old wrappers keep working - so while Forge stabilizes for 1.8, bleeding-edge people can use NOVA mods with 1.8 to test, while people who like stability can use 1.7.10 - easing the "mod movement period" a lot and making the vanilla Minecraft version simply another number to worry about, just like mod versions.

I admit I have questions on how much can be accomplished before I need to "dip into" vanilla or Forge code; much like Forge, it has to add a hook for the specific item, and those generally only get added as they are requested by someone.
 
  • Like
Reactions: Strikingwolf
I admit I have questions on how much can be accomplished before I need to "dip into" vanilla or Forge code; much like Forge, it has to add a hook for the specific item, and those generally only get added as they are requested by someone.

Generally, our goal is to allow for almost anything that does not override existing vanilla behaviour - so nothing like Hunger Overhaul, but most "tech" mods should work nicely.

Also, yes, that is why the NOVA team (pretty much without my involvement at this point) runs issue trackers and contacts people on IRC. You are welcome to suggest anything at any time.
 
Generally, our goal is to allow for almost anything that does not override existing vanilla behaviour - so nothing like Hunger Overhaul, but most "tech" mods should work nicely.

Also, yes, that is why the NOVA team (pretty much without my involvement at this point) runs issue trackers and contacts people on IRC. You are welcome to suggest anything at any time.
How does it handle things I imagine are native to Minecraft, like the TileEntity system or a lot of network stuff?
 
How does it handle things I imagine are native to Minecraft, like the TileEntity system or a lot of network stuff?
It wraps them. Our equivalent of a TileEntity is a PositionalBlock implementing Stateful - there is no Block/TE split, you just define if you want your block to be instanced or a singleton.

The network stuff is wrapped with a Packet interface that wraps around ByteBuf, and PacketReceivers/Senders which pass around that Packet - however, that is still not finalized.

I am not aware of the situation now, though, as the API is moving rapidly and I'm starting to lose touch with the project.

EDIT: Some example WIP code -> https://github.com/NOVAAPI/NovaExample/blob/master/src/main/java/nova/sample/block/BlockGrinder.java
 
  • Like
Reactions: 1SDAN
PO!-TA!-TO!
*kicks poll down the stairs*

I doubt that those other people were making their living from these APIs. And I guess modding wasn't as much of a thing as it is now.
Some extra money in one's back pocket is still some extra money- regardless of the amount.
Modding was a fairly big thing back then too ( compared to the size of the 2011 MC community).
 
  • Like
Reactions: 1SDAN
Hehe...after the NovaExample finally got a working gradle script I am now able to build and launch it in my dev environment :D
 
I kind of want to learn how to use NOVA now... I tried my hand at modding with Forge a while back, but got burned out because I didn't really know what I was doing, and there's almost no documentation anywhere, and I was having trouble finding open- or visible-source mods that did things similar enough to what I wanted to do that I could learn from them (Tinker's Construct was the best I could find, but I couldn't for the life of me find how to make custom particle effects work), and then Minecraft updated and I was faced with either rewriting my half-dozen classes from scratch or trying to update and flail around with what might break. So I put it off, and then the whole Microsoft thing happened, causing me to seriously (but briefly) consider switching to Terasology, but I couldn't figure out how to make most of the modules work in-game, much less write my own.

But NOVA sounds really cool. Now I might not even need to choose a platform! And if it works across platforms (which is the plan, correct?), it should work across versions too, which is good.
 
I kind of want to learn how to use NOVA now... I tried my hand at modding with Forge a while back, but got burned out because I didn't really know what I was doing, and there's almost no documentation anywhere, and I was having trouble finding open- or visible-source mods that did things similar enough to what I wanted to do that I could learn from them (Tinker's Construct was the best I could find, but I couldn't for the life of me find how to make custom particle effects work), and then Minecraft updated and I was faced with either rewriting my half-dozen classes from scratch or trying to update and flail around with what might break. So I put it off, and then the whole Microsoft thing happened, causing me to seriously (but briefly) consider switching to Terasology, but I couldn't figure out how to make most of the modules work in-game, much less write my own.

But NOVA sounds really cool. Now I might not even need to choose a platform! And if it works across platforms (which is the plan, correct?), it should work across versions too, which is good.
Nova is pretty early in-dev atm so making something really complex with it is probably not possible. And making any modifications to the game is completely unfeasible
 
First bukkit and now nova? can't you guys get along. we dont need another drama bomb on politics. just remember that whatever you guys do, you effect the players in the end. its bad enough that forge and opifine can never be used together.