Forge and Nova

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


  • Total voters
    80
  • Poll closed .

pc_assassin

New Member
Jul 29, 2019
1,809
-2
1
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
 

Celestialphoenix

Too Much Free Time
Nov 9, 2012
3,741
3,204
333
Tartarus.. I mean at work. Same thing really.
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

ljfa

New Member
Jul 29, 2019
2,761
-46
0
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.
 

VikeStep

New Member
Jul 29, 2019
1,117
0
0
  • Like
Reactions: pc_assassin

Reika

RotaryCraft Dev
FTB Mod Dev
Sep 3, 2013
5,079
5,331
550
Toronto, Canada
sites.google.com
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

asiekierka

Over-Achiever
Mod Developer
Dec 24, 2013
555
1,086
213
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.
 

Reika

RotaryCraft Dev
FTB Mod Dev
Sep 3, 2013
5,079
5,331
550
Toronto, Canada
sites.google.com
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?
 

asiekierka

Over-Achiever
Mod Developer
Dec 24, 2013
555
1,086
213
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

Celestialphoenix

Too Much Free Time
Nov 9, 2012
3,741
3,204
333
Tartarus.. I mean at work. Same thing really.
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

ljfa

New Member
Jul 29, 2019
2,761
-46
0
Hehe...after the NovaExample finally got a working gradle script I am now able to build and launch it in my dev environment :D
 

Someone Else 37

Forum Addict
Feb 10, 2013
1,876
1,440
168
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.
 

Strikingwolf

New Member
Jul 29, 2019
3,709
-26
1
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
 

Zexmaxwell001

New Member
Jul 29, 2019
92
0
0
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.