Updating SDK Plugins to 3.1 (AI-Plugin)

Hey Guys,
So as the latest engine version broke some plugins and the way we build also changed, I’ve took the time to make it work again.

Long story short: MeFisto94/jme3-artificial-intelligence here you have my fork of the plugin, which I plan to integrate into the official repo once someone gave me the permission :stuck_out_tongue:
As said in the release, the SDK can directly install plugins from nbm but since I don’t sign them (yet), it might print a warning, whether you trust me.
Well, it’s up to you, but since it’s open source, feel free to run ./gradlew assemble and build it on your own.

Ultimatively I consider upgrading every plugin, so I am open to your suggestions which plugins are most demanded?

From the technical side, what I did was I gradlefied everything. Under MeFisto94/nbproject you have a suite, which will essentially set everything up (engine, netbeans) so the build can work.

Historically the nbproject is the netbeans project settings for the root project which allowed us to build all plugins after manually setting up the harness and such.

Since we have CI now, we had to automate it. What every plugin has to do is simply checking out that nbproject repo and calling the setupSuite task in there and then changing the suite directory in the plugin dir.

Unfortunately the Engine Naming scheme isn’t “jMonkeyEngine3.jar” anymore, but some more complex, so we also need a code which finds out the engine version (it changes depending on which branch you use, etc).

What doesn’t work yet is placing the suite directory outside of the project root. That would enable us to have one engine/netbeans for all plugins but it’s not relevant to travis (building on a per project base) and the problem is to get the “inverse” of the suite path (because we need to define our plugin directory inside of the suite).

If you want to roll your own plugin (or rather update an existing one), simply copy the jme3-ai repo and see the build.gradle there. Actually the only thing you have to change is in assemble, the two properties it sets:

ant.propertyfile(file: "suite/nbproject/project.properties") {
        entry(key: "project.com.jme3.ai", value: "../") // Set the current directory as directory for module.
        entry(key: "modules", value: '${project.com.jme3.ai}')
    }

You simply need to find out the project path (see the original nbproject: nbproject/project.properties and you will see all possible plugins defined there.

3 Likes

Thanks so so much friend.
Since yesterday I started to study Chapter 5. Artificial Intelligence : Pathfinding – using NavMesh from JME Cookbook which use JME-AI lib. thanks to you now I can use it in JME3.1.:heart::blue_heart::green_heart:

Just added the AV-Capture thing:

Note that due to the fact that this uses jars rather than source code I can’t tell if the AV-Capture itself is 3.1 compilant.

For the NBM install: Plugins->Downloaded->Add (Choose the nbm there)

1 Like