PDA

View Full Version : Doctrine Language


lancer
04-13-07, 07:35 AM
Goodaye,

Having read the Sonalyst Doctrine_spec.txt and examined the doctrine files provided with the game I have a question that someone knowledgeable may be able to help me with.

My aim is to create a target sub platform that exhibits randomised behaviour using for example, the RND command and the setcourse and depth commands. My question is not how to write the doctrine file, as this appears pretty straightforward, but in how to attach the file to the target sub so that once the mission starts the target sub starts changing depth/speed at randomised intervals as directed by the file.

I'm unsure if I have to use a trigger or can I somehow attach it directly to the platform? I understand the use of the doctrine language for fine tuning goals but how to use it to monitor and change a target platforms behaviour throughout a mission is currently beyond me. Any help would be appreciated.

Cheers,
Lancer

Eagle1_Division
04-14-07, 11:08 AM
you have to use DW edit, and in the box labeled: 'Doctrine' put the name of ur doctrine file without the .txt

thats how I'd do it anyways...

lancer
04-14-07, 11:17 PM
Goodaye,

Fair enough but if I place a target sub on the map in the editor I don't get any option (on any of the 3 pages related to that sub) for 'doctrine'. Specifically where are you referring to?

Cheers,
Lancer

Molon Labe
04-15-07, 12:24 AM
You're confusing DW edit with the scenario editor. DW edit is a separate program.

LuftWolf
04-15-07, 03:12 AM
User-created doctrines cannot be loaded in the mission editor.

The only way to make this doctrine available to platforms is to edit the SubDef doctrine or replace the SubDef doctrine.

Keep in mind, the doctrine system ALWAYS works in the following manner: the doctrine assigned in the Database to the platform is called the Platform Doctrine.

The Platform Doctrine is always running for the platform, evaluated each game cycle. This doctrine tells the platform what to do under various circumstances, with or without any other input from the sim or sensor contacts.

The other type of doctrine is the Target Doctrine. This is the doctrine that is called by the Platform Doctrine whenever a new sensor or link contact is detected by the platform AND the NewTrack variable is evaluated as True by the sim. The NewTrack variable will be evaluated as True in the Platform Doctrine exactly ONCE for each NEW sensor contact, and at this time there is the opportunity to call the target doctrine using the SETTACTIC "xxx" command.

Also, ALL platforms of the same object type in the database MUST use the same platform doctrine.

So, I'm not sure what kind of behavior your are trying to get from the submarines exactly, but getting them to do what you want and keep a functional AI takes a bit of trial and error work.

I hope this helps, feel free to get specific if you want further assistance. :up:

Cheers,
David

lancer
04-16-07, 12:45 AM
Goodaye,

Yep, that helps. I'll dig around a bit based on what you've both mentioned and see how I go.

Thanks for the info.

Cheers,
Lancer