101

(64 replies, posted in Plugins)

Windows builds status:

~ Fork builds OK with scons. smile

~ I've found a shell program for symlinking, working with any version of Windows, making it as easy as linux big_smile

~ Unfortunately, when trying to compile the plugins, vpaths & _WORKING_DIR can't be assigned/retrieved (nil value error). sad
It seems that these variables have been introduced in version 4.4 (I've downloaded v4.3) so I'll try with latest.


I'm sure nice solution will come to you soon, maybe tomorrow!

102

(64 replies, posted in Plugins)

Great, I'll try to build for Windows anyway, in order to be able to provide builds for Windows users soon as everything runs perfectly OK.

103

(64 replies, posted in Plugins)

Does latest MScriptableBehaviour+fork work as expected on your Mac?
If so I'll try to compile for Windows to see if it works.

104

(64 replies, posted in Plugins)

Ooops, post edited

I've tried with a blank table (just script_name{} in the lua script) and I still have crashes, so script content is not the culprit.

Nistur wrote:

If it's still occuring, can you let me know which plugins you're using to make sure I've got the same configuration loaded to reproduce it and any scripts you're using that are causing the problem.

To simplify, I'm just using MScriptableBehaviour.so (size=306 ko, compiled without the other plugins .h files) put in my project folder, with a blank script as mentioned.

Please note that this issue is related to the update of the Maratis fork.

105

(64 replies, posted in Plugins)

I've updated everything today. I'll check more in depth this afternoon.

For now, what I've just found is that I have to put a "/" before "Plugins" in the premake files.
For example in the premake4.lua of MScriptableBehavior :

-- use MGameEvent if it exists
if os.isfile(os.getenv("MSDKDIR") .. "/Plugins/Includes/MGameEvent.h") then ...

instead of

if os.isfile(os.getenv("MSDKDIR") .. "Plugins/Includes/MGameEvent.h") then ...

Don't know if this is a linux particularity...


Is the script that I previously  provided still valid?

106

(64 replies, posted in Plugins)

Many thanks for settings, everything compiles perfectly now ! tongue

However, since I've udpdated Maratis fork, MScriptableBehavior doen't work anymore.
I get the following error:
PANIC : unprotected error in call to Lua API (attempt to index a nil value)
Same error when I apply a script and then remove it.

With MScriptExt.so, when I click the pacman (player mode), Maratis crashes after a few seconds. This happens even if this is the only plugin in the project folder.


Nistur wrote:

Would there be anyone interested in supporting me with this by helping to create builds?

Sure, I'd be pleased to contribute in some way. I can provide builds for Linux (Ubuntu).

107

(64 replies, posted in Plugins)

I'm fan for a unique plugin as it will be easier to update and keep in sync.

By the way, I'm having trouble building with premake (on linux), it seems that there are prerequisites to match, like environment variables, file locations...
Documentation for these settings &/or a bash script would be greatly appreciated (I'm currently building with a standard makefile).

108

(64 replies, posted in Plugins)

I've run a getClone function with MScriptableBehaviour in debug mode to check what makes the editor crash.
Console returns :

ERROR lua script : unable to read file /behaviors/MScriptableBehaviour.lua

109

(5 replies, posted in Plugins)

Great, I'm looking forward for news from you.

110

(5 replies, posted in Plugins)

Nistur, I was meaning importing the RecastDemo meshes (dungeon & nav_test) in Maratis, putting Jules in the scene and setting basic zoom & rotation to navigate in the scene.

How can I upload the resulting Maratis project to the forum ???

111

(5 replies, posted in Plugins)

Again great news from you, Nistur big_smile

What do you think of setting up 2 levels based on the examples provided with Recast sources and putting Jules in them.
In this way we could replicate the examples and test if they behave as expected in Maratis.
An we could enhance further later after validation.

112

(7 replies, posted in General)

Does anyone have first hand experience with RAICK (Ragnarok Artificial Intelligence Creation Kit) ?

113

(64 replies, posted in Plugins)

Thanks, a zip might not be necessary.

Try creating a file named Hero.lua with no active script in it (just a blank update function or even an empty table) and apply it to the Player in Jules demo. With this name it crashes in any project I test, but if I name it for example Hero_N then no crash.

I'll test your new version immediately! tongue

By the way, did you try the getClone function ?

114

(64 replies, posted in Plugins)

Take your time, Nistur, and don't forget to have fun !

115

(64 replies, posted in Plugins)

Update: deleting the script in the scripts folder doesn't improve the situation, I still cannot use the original name. And if in place of _Nistur I rename by _N for both scripts then it works.


I've found another small issue : cloning an object (using the getClone function) onto which a behavior has been applied makes the editor crash.

116

(64 replies, posted in Plugins)

First tests look really promising & work fine. big_smile

However I found a little issue with how the script names are handled.

Even if scripts are put in 2 different folders (scripts & behaviors) and the script from scripts folder is not called with a dofile, you cannot use the same name for both, it makes the editor crash.
So I renamed the script in the behaviors folder with a "_Nistur" (for example Script_Nistur.lua) to fix this.

Then I did the same with a second new script (ZZZ_Nistur.lua) and it makes the editor crash again. If I remove the "_Nistur" then it works fine.

117

(64 replies, posted in Plugins)

Many thanks, I'll check if everything is OK now.

Nistur wrote:

you can't currently use MScriptableBehaviour for multiple objects like this easily

Not sure if MScriptableBehaviour is robust enough, but currently it can handle objects from other scripts (like Head in SponzaFPS) without any problem. I'll check more extensively a little later, but for now it looks almost perfect!

118

(64 replies, posted in Plugins)

Nistur wrote:

Can you send me a sample that shows this that I can test?

Of course. I've tested with the SponzaFPS demo and the following Script1.lua file put in the behaviors folder:

Script1 =
{

    ----------------------
    -- SetUp Once / Constants
    ----------------------

    onBegin =

    function(object, behaviorID)

        speed=3

    end,

    ----------------------
    -- Scene Update
    ----------------------

    update =

    function(object, behaviorID) -- NB: behaviorID is currently inactive

        if isKeyPressed("A") then addCentralForce(object, {-speed, 0, 0}, "local") end
        if isKeyPressed("Z") then rotate(Head, {1, 0, 0}, 1, "local") end

    end

}

The behavior is applied onto the Player.

If I put the "speed=3" in the main lua script (joystick or mouse) or in update then it works.

Thanks

119

(64 replies, posted in Plugins)

Hey Nistur,

Very excellent job ! Many thanks for sharing. big_smile

I've tested your MScriptableBehaviour and found an interesting thing : now we can pass variables from other scripts to the update function, but we can't pass variables from onBegin to update. To clarify, what I did is set a variable in onBegin and use it in update.

Maybe it is related to current issue exposing variables between lua and C++

I'll try MSaveFile asap and give you feedback.

PS: you should take holidays more often!

120

(46 replies, posted in General)

Nistur wrote:

There's also the pretty interesting animation system but I think, as that's a standalone application right now, hooking that up might prove more difficult.

Procedural animation is really exciting stuff.
There are some sources in C provided in the archive file, are they for the editor only?

121

(1 replies, posted in General)

You can tweak the mass of the objects and/or increase the addCentralForce strength to achieve this.

122

(46 replies, posted in General)

Great news and thanks for suggestion, I think it will do the trick for basic needs. big_smile

123

(46 replies, posted in General)

Yes Anaël, that's exactly the desired goal.

Hope that you can find some time to add it soon, this would seriously leverage the interactivity and possibilities for professional-looking user interfaces.

@Nistur : we can later expose options/variables in the editor to fine-tweak the behavior

124

(46 replies, posted in General)

By "physics for scene layers" I was meaning that :
- you have a main 3D scene
- you put a 2D scene layer on top of it (with menus or gamepad simulator) and its objects are clickable

By "Point and click" I was meaning that you use a single click in the scene to move the camera/player to this point (ie target position to reach).

125

(46 replies, posted in General)

Hey Nistur,

Maybe you could focus on a few very usefull improvements like :

- physics for scene layers, which would allow clickable menus & sub-menus, as well as gamepad emulation
- a fullscreen-non windowed lua function
- a point & click behavior
- path-finding
- ...