Jump to content

Ships modeling and luck of information


Recommended Posts

Hi all, after 20 years of modding in ArmA series game, I've decided to continue importing my work here in DCS.

So I've started by a Ship (a MEKO-200HN Frigate). Looking on forums here I'm trying to gather knowledge of what I need to do in order to have this Ship working (by AI) in game ... but what I found are just scattered infos for several things without any decent tutorial to explain step by step the procedure.

By now I have my model working in game with some animations (propellers - radars) but still can't figure out about weapons animations plus make them fire. I have the animations set as described by some users here, but even if working into ModelViewer, they don't into game (at least as should).

The animations I'm interested, have to do with Ship main cannon, VLS, Harpoon launcher, Torpedo tubes and CIWS ... 

Notice that I'm still on digging for such things and my knowledge is limited and btw I'm using 3DS MAX 2022.

 

Any help would be much appreciated.

P.S. excuse my English as are not my native language.

P.S.2 please let me know if more details needed by my side.

Μεκο_ΗΝ.jpg


Edited by Aplion
  • Like 4
Link to comment
Share on other sites

Ok, coming from a sandbox community in ArmA (as stated), I am used to sharing modding info with other mod developers.

Now, since there is not a single answer to my query, I guess one of the following is true: Either nobody but 3rd party devs are privy to game modding, or nobody wants to share info.

Which is kinda weird, but hey, I guess every community has its own rules.

Perhaps it is a money thing, maybe someone is afraid of DCS becoming open source-ish like BMS if modding is encouraged. FYI, ArmA did not hurt from mods, it soared.

Anyways, pardon my blabbering, back to unlocking more modding secrets… Have a good one.

btw ... no intension to offend anyone ... thanks.


Edited by Aplion
Link to comment
Share on other sites

I'm not sure of the exact reasons no one has answered your questions, but I can tell you there is a very small number of people who possess the knowledge to answer you. I would suggest looking at the naval mods that are out there and messaging their creators directly.

  • Like 1
Link to comment
Share on other sites

  • 3 months later...

Hey Aplion,

no solution to your problems, but also looking for information on getting a ship (torpedoboat) properly into DCS. I converted the blender 3d to edm with tobi's plugin. I viewed the model in ModelViewer2, looks ok for now, copied an existing ship mod and just swapped the .edm's in Shapes directory. The boat sits very low in the water, has no collision and fires wildly from invisible weaponry from the original mod 🙂 Any ideas how to improve the situation and some guidance would be appreciated.

Cheers,
TeTeT

Link to comment
Share on other sites

 

 

See if these help.

There are more....

  • Thanks 2

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Anyone got some advice for misbehaving turrets? I followed a tutorial video from Tobi, and in ModelViewer the turn and rotate vertically animations look ok, but in game it looks slightly out of control. The front turret only goes up and down, the rear turret is also caught in a loop. 

 

Link to comment
Share on other sites

Classic Code conflict.

Show your code,

or send via PM.

I will look at it to see if I find the error.

Cheers!

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Thanks @Hawkeye60, with help of the discord I figured out to change the drawArgument1 and drawArgument2 to the correct value, and rotate and elevate the turret fully in blender.

Now the front turret engages and shoots, albeit the barrels went missing. The rear turret idles. This is the current code for testing:

 

-- weapon systems goes here

GT_t.WS_t.ship_2x23mm = {name = "2x23mm 2A14x2"};
GT_t.WS_t.ship_2x23mm.angles = {
                    {math.rad(180), math.rad(-180), math.rad(-5), math.rad(90)},
                    };
GT_t.WS_t.ship_2x23mm.omegaY = math.rad(115) -- Block 1B
GT_t.WS_t.ship_2x23mm.omegaZ = math.rad(116) -- Block 1B
GT_t.WS_t.ship_2x23mm.pidY = {p=300, i = 0.05, d = 10.0, inn = 1000};
GT_t.WS_t.ship_2x23mm.pidZ = {p=300, i = 0.05, d = 10.0, inn = 1000};
GT_t.WS_t.ship_2x23mm.reference_angle_Z = 0
GT_t.WS_t.ship_2x23mm.LN = {}
GT_t.WS_t.ship_2x23mm.LN[1] = {}
GT_t.WS_t.ship_2x23mm.LN[1].type = 3
GT_t.WS_t.ship_2x23mm.LN[1].distanceMin = 10
GT_t.WS_t.ship_2x23mm.LN[1].distanceMax = 2500 -- effective shooting
GT_t.WS_t.ship_2x23mm.LN[1].max_trg_alt = 2000
GT_t.WS_t.ship_2x23mm.LN[1].reactionTime = 3
GT_t.WS_t.ship_2x23mm.LN[1].beamWidth = math.rad(1);
GT_t.WS_t.ship_2x23mm.LN[1].sensor = {}
set_recursive_metatable(GT_t.WS_t.ship_2x23mm.LN[1].sensor, GT_t.WSN_t[3])
GT_t.WS_t.ship_2x23mm.LN[1].PL = {}
GT_t.WS_t.ship_2x23mm.LN[1].PL[1] = {}
GT_t.WS_t.ship_2x23mm.LN[1].PL[1].ammo_capacity = 2000;
GT_t.WS_t.ship_2x23mm.LN[1].PL[1].shell_name = {"2A7_23_HE"};
GT_t.WS_t.ship_2x23mm.LN[1].PL[1].shell_display_name = "23mm HE";
GT_t.WS_t.ship_2x23mm.LN[1].PL[1].shot_delay = 0.066666666666667
GT_t.WS_t.ship_2x23mm.LN[1].PL[1].reload_time = 10;
GT_t.WS_t.ship_2x23mm.LN[1].BR = 
{ {
	pos = { 2, 0, -0.1 }
}, {
	pos = { 2, 0, 0.1 }
} }


ws = GT_t.inc_ws();
GT.WS[ws] = {};
set_recursive_metatable(GT.WS[ws], GT_t.WS_t.ship_2x23mm );
GT.WS[ws].area = 'Turret_B';
GT.WS[ws].center = 'CENTER_TOWER_01';
GT.WS[ws].drawArgument1 = 0;
GT.WS[ws].drawArgument2 = 1;
-- GT.WS[ws].angles[1][1] = math.rad(170);
-- GT.WS[ws].angles[1][2] = math.rad(-170);
-- GT.WS[ws].angles[1][3] = math.rad(-5);
-- GT.WS[ws].angles[1][4] = math.rad(70);
-- GT.WS[ws].reference_angle_Y = math.rad(0);  
GT.WS[ws].LN[1].BR[1].recoilTime = 1.0;
GT.WS[ws].LN[1].BR[2].recoilTime = 1.0;
GT.WS[ws].LN[1].BR = 
{
	{
		connector_name = 'POINT_23mm_1_1',
		recoilArgument = 150,
	},
	{
		connector_name = 'POINT_23mm_1_2',
		recoilArgument = 150,
	}
}

ws = GT_t.inc_ws();
GT.WS[ws] = {};
set_recursive_metatable(GT.WS[ws], GT_t.WS_t.ship_2x23mm );
GT.WS[ws].area = 'Turret_A';
GT.WS[ws].center = 'CENTER_TOWER_02';
GT.WS[ws].drawArgument1 = 2;
GT.WS[ws].drawArgument2 = 3;
-- GT.WS[ws].angles[1][1] = math.rad(170);
-- GT.WS[ws].angles[1][2] = math.rad(-170);
-- GT.WS[ws].angles[1][3] = math.rad(-5);
-- GT.WS[ws].angles[1][4] = math.rad(70);
-- GT.WS[ws].reference_angle_Y = math.rad(180);  
GT.WS[ws].LN[1].BR[1].recoilTime = 1.0;
GT.WS[ws].LN[1].BR[2].recoilTime = 1.0;
GT.WS[ws].LN[1].BR = 
{
	{
		connector_name = 'POINT_23mm_2_1',
		recoilArgument = 150,
	},
	{
		connector_name = 'POINT_23mm_2_2',
		recoilArgument = 150,
	}
}

 

I've put the complete project up at https://github.com/tspindler-cms/DCS-Ship-mod-Template/tree/vaspa , maybe that's more helpful.

 

Cheers,
TeTeT

Link to comment
Share on other sites

perfect!

I will look ASAP.

Lets get those guns firing!

Did you know. ED has a Blender EDM exporter tool available?

They have  decided to support Blender as a EDM exporter!

 

  • Like 1

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

http://files.eagle.ru/mods/

I use max,

YMMV

3D modeling forum section

I always use a older version, say, a month old at least.

Newer files may contain bugs.

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Also, Ask Tobi, the creator of the exporter which version he recommends.

He has a discord.

Also,

 

 

You may find a link among these vids.

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Hi Hawkeye60. I only recently discovered this DCS modding and started  with yourww2 ships now: FANTASTIC work and mucho gracias !!

Just found an old He111 bomber MOD as download, is there any way to get this to work for 2.9?

https://www.digitalcombatsimulator.com/en/files/1985066/

I am an more or less experienced IL2 skinner and maybe can help with 4k or even 2k dds files for it. (I am mainly into ww2 stuff, love to shoot nazi's still since i have family that was executed in 1944 by them sadly.) PS i do have great friends in current Germany however ....

Did this historic & captured Beer hauling use only they say He111H6 f.i.

+He111H6_4K_British_Lybia_v2b.jpg

 


Edited by jackd
  • Like 1
Link to comment
Share on other sites

Hi, 

I'm now looking into animating some of the radars on a destroyer, the USS Maddox. The small one on the mast is constantly rotating, this is ok. But the top one on the mast is more like a search radar. Is it possible to randomly rotate it somehow for a few degrees, stay stationary for a few seconds or minutes even, and then continue? Maybe via some lua functions that can control the connector/bone of the radar? 

And related, the fire control radar is I believe in front of the mast, with the up/down movable antenna. I can only think of slaving it to a turret animation via sharing the same argument. Or is there a better way to animate it?

Cheers,

TeTeT

image.png

  • Like 1
Link to comment
Share on other sites

You can designate any UN-used arg for the radar.

To do as you suggest, use the arg as a position arg, not a rotation arg.

One thing I noticed.

The ED carriers use a radar connector.

Never used one.

FYI

With clever use or the time line, and vis args,

You can get the effect you wish.

@jackd

Lovely!

I will send you a PM about the HE111

 


Edited by Hawkeye60
  • Thanks 1

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Hi,

I wanted to address @Aplion concern on the lack of information on DCS modding of ships and went ahead and published an article on getting the P 4 Torpedo Boat into DCS. The article is on mudspike, I hope it's ok to link to another site from here: https://forums.mudspike.com/t/how-to-get-a-boat-into-dcs/15854 

Cheers,
TeTeT

 


Edited by TeTeT
typo
  • Like 4
  • Thanks 1
Link to comment
Share on other sites

  • 2 weeks later...

Re ships guns

-- Bofors Mk 12 (40 mm) naval AAA weapons. Source: https://en.wikipedia.org/wiki/Bofors_40_mm_gun
-- Used default Mark 15 CIWS Phalanx Block 1 weapon system as template with alterations
GT_t.WS_t.ship_Bofors_40_Mk_12 = {name = "40 mm Bofors Mk 12"};
GT_t.WS_t.ship_Bofors_40_Mk_12.angles = {
                    {math.rad(180), math.rad(-180), math.rad(-5), math.rad(90)},
                    };
GT_t.WS_t.ship_Bofors_40_Mk_12.omegaY = math.rad(115) -- Block 1B
GT_t.WS_t.ship_Bofors_40_Mk_12.omegaZ = math.rad(116) -- Block 1B
GT_t.WS_t.ship_Bofors_40_Mk_12.pidY = {p=300, i = 0.05, d = 10.0, inn = 1000};
GT_t.WS_t.ship_Bofors_40_Mk_12.pidZ = {p=300, i = 0.05, d = 10.0, inn = 1000};
GT_t.WS_t.ship_Bofors_40_Mk_12.reference_angle_Z = 0
GT_t.WS_t.ship_Bofors_40_Mk_12.LN = {}
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1] = {}
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].type = 3
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].distanceMin = 10
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].distanceMax = 7160 -- effective shooting
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].max_trg_alt = 3800
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].reactionTime = 1.8
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].beamWidth = math.rad(1);
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].sensor = {}
set_recursive_metatable(GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].sensor, GT_t.WSN_t[3])
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL = {}
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1] = {}
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1].ammo_capacity = 560;
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1].shell_name = {"Boforos_40_Mk12_HE"};
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1].shell_display_name = "40mm HE";
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1].shot_delay = 60/120 -- 120 rpm
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].PL[1].reload_time = 1000000; -- never during the mission (ship autogun)
GT_t.WS_t.ship_Bofors_40_Mk_12.LN[1].BR = { {pos = {3.478, 0, 0} }, }
GT_t.WS_t.ship_Bofors_40_Mk_12.pidY = {p=300, i = 0.05, d = 10.0, inn = 1000};    rotation limit
GT_t.WS_t.ship_Bofors_40_Mk_12.pidZ = {p=300, i = 0.05, d = 10.0, inn = 1000};    rotation limit
GT_t.WS_t.ship_Bofors_40_Mk_12.reference_angle_Z = 0        Position at rest.

 

 

ws = GT_t.inc_ws();
GT.WS[ws] = {}
set_recursive_metatable(GT.WS[ws], GT_t.WS_t.ship_38cal_Mk12 )
GT.WS[ws].area = 'Scafo_Centrale_Sx'
GT.WS[ws].center = 'CENTER_TOWER_06'
GT.WS[ws].drawArgument1 = 23
GT.WS[ws].drawArgument2 = 24
GT.WS[ws].angles[1][1] = math.rad(150); rotation limit (deg) This means turn 150 deg
GT.WS[ws].angles[1][2] = math.rad(0);   rotation limit (deg) This means do not turn that direction.  For one side of the ship
GT.WS[ws].reference_angle_Y = math.rad(0);     rest position Not active See the Zero? Zero is always forward in sim
GT.WS[ws].LN[1].BR[1].recoilTime = 1.0;
GT.WS[ws].LN[1].BR =
{
    {
        connector_name = 'POINT_CV6_MT_3',
        recoilArgument = 38,
    }
}

Study the  code and comments

I am pretty sure this is correct.

Now if I understood spawn code/taxi code.....LOL

 

Any code with angles controls the movement limits

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Any advice on texturing the flight deck? It's currently a tileable texture, but I would like to add skid marks and dirt to it at certain places.

Naive idea is creating faces on top of the flightdeck and using a semi-transparent texture with the dirt/skid marks. Any better ways? Engine supported would be best!


Cheers,
TeTeT

Link to comment
Share on other sites

Substance painter is your friend.

It is the De facto app,

Used by many of the third parties for the work you ask about.

The Admiral swears by it!

Makes adding wear and tear very easy.

Check it out!

"Yeah, and though I work in the valley of Death, I will fear no Evil. For where there is one, there is always three. I preparest my aircraft to receive the Iron that will be delivered in the presence of my enemies. Thy ALCM and JDAM they comfort me. Power was given unto the aircrew to make peace upon the world by way of the sword. And when the call went out, Behold the "Sword of Stealth". And his name was Death. And Hell followed him. For the day of wrath has come and no mercy shall be given."

Link to comment
Share on other sites

Hi Hawkeye60,

thanks for the pointer to Substance Painter, it's a great tool for texturing. Basically my question is how to apply skid marks and dirt to a tileable base texture. Or remove the tileable texture and make it several 4k textures with the dirt/skid marks applied directly? Or use a layer on top of the tileable texture? This is not clear to me, especially if there's any sort of engine support from DCS to add wear/tear to an object.

Going on a detour, Arma provides a technique called multimat, where basically multiple materials are combined over a large object. A detail texture is applied as a base and various other textures are mixed in, resulting in a varied appearance of the large object in game. Does DCS provide anything like this?

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...