Jump to content
Alwarren

Arma Toolbox for Blender - Arma 2/3 exporter script

Recommended Posts

Normally, you need the context of an operator to do such things. But even then, you won't be doing things very differently either, the Blender API is ... special ...

Share this post


Link to post
Share on other sites
2 hours ago, Alwarren said:

Normally, you need the context of an operator to do such things. But even then, you won't be doing things very differently either, the Blender API is ... special ...

 

So I'm good the way I am? Just wanted to make sure I wasn't supposed to be using an argument to a function, and I'm doing something that might break later.

Share this post


Link to post
Share on other sites

Yeah you're good

 

  • Like 1

Share this post


Link to post
Share on other sites

@gigglebok do you mind sharing your script for the street signs please once you are happy enough with it?

Share this post


Link to post
Share on other sites

Hi,

 

is it possible to make proxies visible within blender when placing?

Or: What is the best way to allign Objects properly when using them as proxies?

(Just as a visible triangle is bit annoying when you want to try to arrange the sub proxies to their correct positions but dont see the mesh) ?!

Share this post


Link to post
Share on other sites
1 hour ago, grillstern666 said:

(Just as a visible triangle is bit annoying when you want to try to arrange the sub proxies to their correct positions but dont see the mesh) ?!

 

There is no functionality for that, and it would be a bit hard to implement since some proxies are binarized.

I have a change lined up to an existing function "Join as Proxy" which currently disregards the joined object's rotation. I'll see that I make a new release ASAP, there are a huge number of improvements that are as of yet unreleased.

Share this post


Link to post
Share on other sites

Hi Alwarren,

 

thx for your feedback - did not expect it to be so fast 😉

 

The thing is, i am currently working on my deerisle map (https://steamcommunity.com/workshop/filedetails/?id=1602372402) for dayz.

Here i got around 400 of custom (unbinarzied) objects i converted via blender - thx to your great blender toolsuite.

I just got curious in how to get a complex Modell (maybe with around 8-12 proxies) to one single one while aligning all sub-objects correctly. 

PS: Do you have a paypal for little support donation?


PPS: ...but if it doesnt work for now its ok 😉 

 

Share this post


Link to post
Share on other sites
On 3/31/2021 at 5:14 PM, grillstern666 said:

The thing is, i am currently working on my deerisle map (https://steamcommunity.com/workshop/filedetails/?id=1602372402) for dayz.

 

That's one sweet looking map O.o

 

 

On 3/31/2021 at 5:14 PM, grillstern666 said:

I just got curious in how to get a complex Modell (maybe with around 8-12 proxies) to one single one while aligning all sub-objects correctly. 

 

I didn't get around to a new release. I recently had the same issue, putting deployment gear on to the bustle rack of my Abrams model. I ended up arranging the stuff in Blender then using "Join as Proxy", that works reasonably well since I fixed that function to correctly take rotation into account.

 

 

On 3/31/2021 at 5:14 PM, grillstern666 said:

PS: Do you have a paypal for little support donation?

 

I have a Paypal at friedenhq@friedenhq.org

Any donation is very much appreciated 🙂

 

Share this post


Link to post
Share on other sites

I'm having an issue importing a .p3d file, this is what happens when I attempt to import something: 

 

Python: Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\ops\ops.py", line 69, in execute
    return import_cdp3d.load(self, context, **keywords)
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\ops\import_cdp3d.py", line 261, in load
    p.read(file)
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\crashday\p3d.py", line 326, in read
    p.read(file, self.textures, self.num_textures)
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\crashday\p3d.py", line 183, in read
    vp = r('<3f')
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\crashday\p3d.py", line 165, in r
    return rf(file, format)
  File "C:\Program Files\Blender Foundation\Blender 2.91\2.91\scripts\addons\blender-p3d-import-export-master\crashday\p3d.py", line 7, in rf
    answer = struct.unpack(format, file.read(struct.calcsize(format)))
struct.error: unpack requires a buffer of 12 bytes

location: <unknown location>:-1

 

Share this post


Link to post
Share on other sites
11 hours ago, gatkat13 said:

 


blender-p3d-import-export-master

 

 

You are using the wrong package. Check the first post for the real Arma Toolbox, you are using a package to import Crashday (a racing game) files.

Share this post


Link to post
Share on other sites

Thanks for the toolbox, really nice to be able to export directly from Blender. 🙂

 

I spent a good part of yesterday creating my first RTMs and it's going well so far (just a few static poses to get the hang of it), and got these into game just fine.  Now I need to add vector motion to some RTMs.  After watching this video I see exactly how to do this (mentioned and shown at ~3:53), but I don't see this "RTM Motion Vector" option in my instance of Blender.  I'm using v2.92, and appears the video author is using 2.78, so I imagine that's the discrepancy.

 

Also, I tried to check documentation at http://friedenhq.org/?page_id=236 but is says "Site is offline for maintenance", etc.

 

Anyhow, can someone talk me through how to add "RTM Motion Vector" to an RTM in Blender v2.92 (what to click, etc)?

 

Share this post


Link to post
Share on other sites
On 4/23/2021 at 3:43 PM, madrussian said:

Thanks for the toolbox, really nice to be able to export directly from Blender. 🙂

 

I spent a good part of yesterday creating my first RTMs and it's going well so far (just a few static poses to get the hang of it), and got these into game just fine.  Now I need to add vector motion to some RTMs.  After watching this video I see exactly how to do this (mentioned and shown at ~3:53), but I don't see this "RTM Motion Vector" option in my instance of Blender.  I'm using v2.92, and appears the video author is using 2.78, so I imagine that's the discrepancy.

 

Also, I tried to check documentation at http://friedenhq.org/?page_id=236 but is says "Site is offline for maintenance", etc.

 

Anyhow, can someone talk me through how to add "RTM Motion Vector" to an RTM in Blender v2.92 (what to click, etc)?

 

Still stuck on this, but made a bit of progress.  I'm still not seeing "Arma Object Properties" panel anywhere using Blender v2.92 with Arma Toolbox 3.0.4, no matter what I try.  Curious, I tried Blender v2.78 with Arma Toolbox 2.7.0.  Now I do get a "Arma Object Properties" panel, but it doesn't have "RTM Motion Vector" like I need.

 

Here is "ArmA Object Properties" panel of aforementioned youtube video (guy that has it working; I spliced two of his shots together to show his whole panel):

 

Arma-Toolbox-Arm-A-Object-Properties-Cir

 

And here is my (considerably sparser) "ArmA Object Properties" panel:

 

Arma-Toolbox-Missing-Properties.png

 

^ As you can see, no "RTM Motion Vector" on my panel...  Any ideas?


Btw - Is that "Path to O2 script" required for Arma Toolbox to display "Arma Object Properties" panel properly?  Likewise is Oxygen 2 required?

Share this post


Link to post
Share on other sites

This works for me. Check the System Console if you have any error messages. Also, if in doubt try to download the source directly from github, it's newer than the released version.

 

The panel should pop up no matter what, but you need to have o2script.exe from the tools package currently to get meaningful output.

Share this post


Link to post
Share on other sites
21 minutes ago, Alwarren said:

This works for me. Check the System Console if you have any error messages. Also, if in doubt try to download the source directly from github, it's newer than the released version.

 

The panel should pop up no matter what, but you need to have o2script.exe from the tools package currently to get meaningful output.

 

Thanks for the heads up, will try this.  Quick questions, hopefully I should be able to get up and running:

 

1. Where can I find latest Arma Toolbox for Blender manual?  (Looks like http://friedenhq.org/?page_id=236 is down.)

2. Does seeing correct panel (with "RTM Motion Vector") depend on what armature I open?

3. Generally what armature should I start with?  I found an older Arma Toolbox for Blender manual (v1.5) and it suggests the following:

 

Quote

Armatures You will need a suitable armature for this. You can either make one yourself, or use one of the existing skeletons for Blender:

  • ArmaRig by Maczer. At the time of writing, this is by far the most advanced rig available. His original rig won't work, but in the meantime he made an updated rig that works very well with the Toolbox.
  • Blender Animation Rig by deanosbeano.
  • There is also a thread by HJohnson on the BIS forum, but as far as I know, that one's using the same rig as deanosbeano.

 

^ Is this still current?  Thanks again!

 

 

Share this post


Link to post
Share on other sites
4 hours ago, madrussian said:

1. Where can I find latest Arma Toolbox for Blender manual?  (Looks like http://friedenhq.org/?page_id=236 is down.)

 

There is none, really. The old one is hopelessly outdated, and I don't get the time to write a new one.

 

4 hours ago, madrussian said:

2. Does seeing correct panel (with "RTM Motion Vector") depend on what armature I open?

 

You must have an armature selected, and it must be marked as an Arma object.

 

4 hours ago, madrussian said:

3. Generally what armature should I start with?  I found an older Arma Toolbox for Blender manual (v1.5) and it suggests the following:

 

I use Maczer's rig, but I don't really do much in terms of animations, mostly weapon hands/Reloads and cargo poses.

Share this post


Link to post
Share on other sites

@Alwarren

Again, thanks for this handy tool and for your support.  I'm still having difficulty (tried on 2 different PCs now), not seeing proper "Arma Object Properties" panel.  I'm convinced I'm missing an important step.  Hoping you can cue me in.

 

Here's my exact process (absolutely everything, inc screenshots):

 

1. To ensure a clean install, first I uninstall Blender (via Windows Control Panel → Programs → Programs and Features).

 

Spoiler

Step1.png

 

2. To ensure a completely clean install, next I navigate to “%APPDATA%” (for me that’s C:\Users\Rune\AppData\Roaming\), and delete the “Blender Foundation” folder.

 

Spoiler

Step2.png

 

3. On www.blender.org, I download Blender 2.92.0 (file is “blender-2.92.0-windows64.msi”). I install Blender (from this file) with all defaults.

 

Spoiler

Step3.png

 

4. Using OP of this thread, I go to GitHub (https://github.com/AlwarrenSidh/ArmAToolbox), and download what I believe to be the absolute latest Arma Toolbox for Blender, like this:

 

Spoiler

Step4.png

 

5. I open the resulting download “ArmAToolbox-master.zip” (in File Explorer) and have a look. One level down, I see the ArmaToolbox folder, which I extract. In File Explorer, I right click in empty space and select New → Compressed Zipped Folder, and name this new file “ArmaToolbox.zip”. I add (previously extracted) ArmaToolbox folder to my new “ArmaToolbox.zip”. I now have a zip file that Blender can use as an addon.

 

Spoiler

Step5.png

 

6. I open Blender 2.92, select Edit→Preferences. In resulting Blender Preferences window, I click “Install…” button. I navigate to my newly created “ArmaToolbox.zip” file and select it. Back on Blender Preferences window, I confirm “3D View: Arma: Toolbox” is an option, and I check box to select.

 

Spoiler

Step6.png

 

7. I open Blender Console (via Window → Toggle System Console), have a look and everything seems ok?:

 

Spoiler

 

Quote

addon_utils.disable: ArmaToolbox not disabled
Modules Installed (ArmaToolbox) from 'G:\\Blender Work Area\\ArmAToolbox.zip' into 'C:\\Users\\Rune\\AppData\\Roaming\\Blender Foundation\\Blender\\2.92\\scripts\\addons'
Arma Toolbox registering
Internal classes...
properties
registering properties
operators
panels
lists
Register done

 

 

8. I search for Macser’s ArmaRig for Blender, the latest of which appears to be v6.3. On https://www.armaholic.com/page.php?id=24137, I download “ArmaRig-for-Blender-version-6.3.7z”.

 

Spoiler

Step8.png

 

9. In Blender using File → Open , I open “ArmaRigV6_3.blend” (from step 8 ) and observe Macser’s rig.

 

Spoiler

Step9.png

 

10. In Blender (after ensuring “3D View: Arma: Toolbox” is selected in Preferences), I select Animation tab, and expand the “properties” panel (not sure what to call it):

 

Spoiler

Step10.png

 

11. The panel pops up, and I see side-tabs for “Arma 3” and “Arma 3 Tools”.

 

Spoiler

Step11.png

 

12. I select “Arma 3” tab and now see “Arma Object Properties”. Good so far, based on my understanding I don’t expect to see “RTM Motion Vector” until I check that box.

 

Spoiler

Step12.png

 

13. I select everything associated with the rig (by sweeping everything I see in the picture including the man and all the controls), and then click the checkbox by “Arma Object Properties”. (Btw – I’m somewhat unclear as to what exactly I should select before clicking the checkbox by “Arma Object Properties”?) Here’s the problem: My “Arma Object Properties” panel is missing “RTM Motion Vector” field, and looks like this instead:

 

Spoiler

Step13.png

 

14. I recheck Blender Console (via Window → Toggle System Console), and it looks like this... seems ok?:

 

Spoiler

 

Quote

Read blend: G:\Blender Install WIN\ArmaRigV6_3.blend
Dependency cycle detected:
  OB1ArmaRig/RightArm/POSE_IK_SOLVER() depends on
  OB1ArmaRig/RightForeArm/BONE_READY() via 'IK Solver Owner'
  OB1ArmaRig/RightForeArm/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/@Control_RArmTwist/BONE_DONE() via 'Action'
  OB1ArmaRig/@Control_RArmTwist/BONE_READY() via 'Ready -> Done'
  OB1ArmaRig/@Control_RArmTwist/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/RightForeArm/BONE_DONE() via 'Copy Location'
  OB1ArmaRig/RightArm/POSE_IK_SOLVER() via 'IK Solver Result'
Dependency cycle detected:
  OB1ArmaRig/RightForeArm/BONE_DONE() depends on
  OB1ArmaRig/RightForeArm/BONE_READY() via 'Ready -> Done'
  OB1ArmaRig/RightForeArm/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/@Control_RArmTwist/BONE_DONE() via 'Action'
  OB1ArmaRig/@Control_RArmTwist/BONE_READY() via 'Ready -> Done'
  OB1ArmaRig/@Control_RArmTwist/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/RightForeArm/BONE_DONE() via 'Copy Location'
Dependency cycle detected:
  OB1ArmaRig/LeftArm/POSE_IK_SOLVER() depends on
  OB1ArmaRig/LeftForeArm/BONE_READY() via 'IK Solver Owner'
  OB1ArmaRig/LeftForeArm/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/@Control_LArmTwist/BONE_DONE() via 'Action'
  OB1ArmaRig/@Control_LArmTwist/BONE_READY() via 'Ready -> Done'
  OB1ArmaRig/@Control_LArmTwist/BONE_CONSTRAINTS() via 'Constraints -> Ready'
  OB1ArmaRig/@Control_LArmTwist/BONE_POSE_PARENT() via 'Pose -> Constraints Stack'
  OB1ArmaRig/LeftArm/BONE_DONE() via 'Parent Bone -> Child Bone'
  OB1ArmaRig/LeftArm/POSE_IK_SOLVER() via 'IK Chain Result'
Detected 3 dependency cycles
Arma Toolbox registering
Internal classes...
properties
registering properties
operators
panels
lists
Register done

 

 

Surely I'm missing something important.  Anyway, I'm bound and determined to get this working.  And I appreciate all your help, thanks again!

 

  • Like 1

Share this post


Link to post
Share on other sites

As far as I can see, your problem is that you did not select the rig but rather the weapon model. If you look at the color of the outlines, the weapon model is brighter, and the Arma 3 Object Properties panel shown there is that of a mesh. Make sure you have the rig itself selected, i.e. just click on any bone so that the outline is bright orange.

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
2 minutes ago, Alwarren said:

As far as I can see, your problem is that you did not select the rig but rather the weapon model. If you look at the color of the outlines, the weapon model is brighter, and the Arma 3 Object Properties panel shown there is that of a mesh. Make sure you have the rig itself selected, i.e. just click on any bone so that the outline is bright orange.

 

Awesome, that got it! :yay:

 

Sounds like although I selected everything (per my step 13) by sweep-selecting, that doesn't give primary selection (or similar) to the rig?  Thus "RTM Motion Vector" was failing to come up, etc.  Anyway, selecting single bone got it working so thanks again. 😄

 

Share this post


Link to post
Share on other sites

Good to hear it worked 🙂

Share this post


Link to post
Share on other sites

OK, I'm chipping away at this but not quite there yet.  My goal is to get a unit to move in-game using my special RTM via "RTM Motion Vector" alone.  In other words, without using setVelocity command (or similar).

 

I managed to create RTM with "RTM Motion Vector" (thx again!).  My config looks like this:

 

Quote

class CfgMovesMaleSdr {
    class States {
        class AmovPercMrunSrasWrflDf;
        class MRU_Forward: AmovPercMrunSrasWrflDf
        {
            file = "\MRU_SpecialRTMs\Forward.rtm";
        };
    };
};

 

The trouble is, when I open game and playMove/switchMove my animation ("MRU_Forward") on my unit in-game, he assumes the pose but he does not move.  Which of course, I need him to move.

 

When creating my RTM, in Blender in "Arma Object Properties", I didn't mess with the "RTM Keyframes" section at all (left it blank), and as far as I know I pretty much just made a static animation.  Btw - He doesn't need to be "animated" per say, visually.  Looking static is fine, he just needs to move.  (Also I used [0,3,0] as the "RTM Motion Vector".)  So, what's the trick to get him actually moving in-game?

 

Share this post


Link to post
Share on other sites
35 minutes ago, madrussian said:

So, what's the trick to get him actually moving in-game?

 

Seems I just figured this out.  Added a keyframe at frame 0.

 

Now it works, he moves! 😁

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×