Island Anims - Care and feeding: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
m (Text replacement - "[[OFPEC_tags" to "[[Scripting Tags")
 
(14 intermediate revisions by 7 users not shown)
Line 1: Line 1:
<big>Care and feeding of Island Animations</big>
== What it is ==
Island animations are cutscenes that are loaded in the main menu. There is a specific island and its cutscene(s) loaded by default. Via the [[ArmA:_Startup_Parameters]] -world can set a different island or none as default.
If you load a different island for a SP/MP mission or in the editor, and return to the main menu, you will see the cutscene(s) for the island, that was active last.
If the screen remains black or the last mission continues / is active in the background, the currently active island's cutscene is broken or not present.
== Create main menu cutscenes ==
=== Config definition ===
First you need to define the cutscene(s).
You will define an identifier ('DesertIntro1' and 'DesertIntro2' in this case) and the location of the intro mission.
class CfgMissions
{
class Cutscenes
{
class DesertIntro1
{
directory = "ca\introAnims\data\scenes\intro.intro";
};
class DesertIntro2
{
directory = "ca\introAnims\data\scenes\intro2.intro";
};
};
};


Add identifier(s) the list of the cutscenes array to your island:


<big>Care and feeding of Island Animations</big>
class CfgWorlds
==Caveat==
{
Not sure at this time if this still applies to ArmA.
..
class Intro: CAWorld
{
cutscenes[] = {"DesertIntro1","DesertIntro2"};
 
=== Building a cutscene mission ===
 
The cutscene mission is standard mission that can be built with the games mission editor.


==What Is It?==
Only requirement is to have the [[ArmA:_Mission_Editor#Currently_edited_mission_component|'component' set to intro]].
Island animations are the cutscenes that are invoked when you EXIT a mission. They display in the background to the main ofp panel. Each Island, has one (or several). The engine expects to find one to display and you are often presented with either a black screen, or, continuing game play, even though you exited the mission, when they are located in the wrong place. ie, missing,


==The problem==
'''You are very much recommended NOT to use a player entity and AI units as part of the intro mission.'''
All Island anims must go into the official ~\Addons folder ''irrespective of using mod folders or not.''


==The Cause==
If you do so, it will take a lot longer to load the cutscene in the main menu. This results in very annoying wait times!
As ever increasing numbers of addons (and islands) have been constructed over the years, it is impractical, and very inadvisable, to keep stuffing  them into  the 'official' folders of ~\Addons and / or  ~\Res\Addons.  In fact, the release of OFP: Resistance introduced the whole idea of using a mod folder for addons. The resistance pack IS a mod folder, only an 'official' one.


Nowadays, the correct approach is to separate out addons into folders of related material (HYK, BAS, LSR, Nam) and use Kegety's excellent launcher to simply select those addons needed for the specific mission/campaign at hand. This article does not discuss the merits of doing this, it should, be obvious. If it weren't, you wouldn't be reading!
Instead your intro mission should basically only consist of camera scenes of the terrain.


One wrinkle remains however with Island Anims. They cannot be inside a pbo. Neither their own, nor any other. This then prevents relative references being made to them. They must be hard wired to a known folder.  
An example of such a fast, loading simply cutscene can be found [[PROPER:Mod#PROPER_World|here]] (PROPER World ... Instant IntroAnims).


[[category:Operation Flashpoint : Modelling]]
=== Cutscene mission location ===


So the standard approach is to place them in the official ~\Addons folder. Note carefully, not, the ~\Res\Addons folder (it might not exist!). This is a design decision implmemented by the author of the island addon. You, have no say in the matter.
It is good programming practice to separate your island anims from the island addon to a separate pbo.


All of which contradicts the purpose of mods folders in attempting to keep your installation 'clean'.
The suggested naming schema for the pbo container is OfpecTag_M_Cutscenes_IslandName.


==The cure==
* [[Scripting Tags]]
===For Players===
* M = mission container abbreviation
there isn't one. Except to say, wherever you've been in doubt before, place the island anim folder in the root Addons directory. It is, the only place it will work. Note, you dont need (and shouldn't) put the <u>island</u> addon in here despite the readme.txt that says to do so. Addons belong in mods folders. Period. But, you '''must''' place the anim in here.


===For Authors and Hackers.===
Example:
If you look a little closer, a mods directory is actually a mods folder with an embedded addons directory.


Since it's your island, you can be pretty specific on what to call the mods name. In otherwords, you can, dictate the label.
aceip_m_cutscenes_nogova


Let's take Doe's Winter Everon for example.
==== OFP specifics ====


Doe1.pbo is a classic Island pbo. it contains a wrp (island texture) file, a config.cpp, and lots of pretty pictures. The config.cpp for this island addon, and any other island addon out there, specifies where to find the island anim.
The suggested naming schema for cutscene folder is ''OfpecTag_M_Cutscenes_IslandName\introX''


Unsurprisingly, you will discover this
There is an [[Ofp Island Anim bug]] that requires you to do the following:


class CfgWorlds
*The anim must remain in a folder. It '''cannot''' be packed inside a pbo container.
{
*'''All''' {{ofp}} island anims are hardwired addressed because of this.
  class DefaultWorld {};
  class DOEeden_snow: DefaultWorld
  {
    ......
    cutscenes[]={"..\ADDONS\doe1_anim\intro"};


In otherwords, this island pbo conforms to the standard, hardwired convention, of placing the island anim in the root Addons folder.  
Because of the lack of pbo, '''Any''' {{ofp}} island cutscene folder must have a hardwired address. There is no way round this.


However, how about this
By convention, '''most''' island oem creators have designated the official ~OFP\Addons folder. SImply because, that folder is guaranteed to exist!


    cutscenes[]={"..\WinterEveron\ADDONS\doe1_anim\intro"};
cutscenes[]={"..\addons\aceip_m_cutscenes_nogova\intro1","..\addons\aceip_m_cutscenes_nogova\intro2"};


What you are saying here is you have created a mod which MUST be called WinterEveron (hardly an illogical choice, and hardly likely to collide with other folder names!)
'''Some''', few, Mod creators (FDF eg), have improved this situation by putting their anim in a mod folder as follows


The island pbo, will call the anim in the same folder as the pbo. This is, after all how you shipped your island in a zip file in the first place!
cutscenes[]={"..\MyMF\addons\aceip_m_cutscenes_nogova\intro1","..\MyMF\addons\aceip_m_cutscenes_nogova\intro2"};


From now on, you, and players, can use the anim in a 'standard' mod folder, called, WinterEveron.
The point remains however, that an island anim folder for ofp, is a hardwired object, that, unlike pbo's, cannot be moved anywhere other than where the author designates it to be.


The above is the base principle of so-called full modification mods. Mods like @Farmland and Finnish Defence Forces (FDF) and PMC-VTE conform exactly to the manner described above.
{{GameCategory|arma1|Terrain Editing}}

Latest revision as of 12:01, 2 October 2024

Care and feeding of Island Animations

What it is

Island animations are cutscenes that are loaded in the main menu. There is a specific island and its cutscene(s) loaded by default. Via the ArmA:_Startup_Parameters -world can set a different island or none as default.

If you load a different island for a SP/MP mission or in the editor, and return to the main menu, you will see the cutscene(s) for the island, that was active last.

If the screen remains black or the last mission continues / is active in the background, the currently active island's cutscene is broken or not present.

Create main menu cutscenes

Config definition

First you need to define the cutscene(s).

You will define an identifier ('DesertIntro1' and 'DesertIntro2' in this case) and the location of the intro mission.

class CfgMissions
{
	class Cutscenes
	{
		class DesertIntro1
		{
			directory = "ca\introAnims\data\scenes\intro.intro";
		};
		class DesertIntro2
		{
			directory = "ca\introAnims\data\scenes\intro2.intro";
		};
	};
};

Add identifier(s) the list of the cutscenes array to your island:

class CfgWorlds
{
..
	class Intro: CAWorld
	{
		cutscenes[] = {"DesertIntro1","DesertIntro2"};

Building a cutscene mission

The cutscene mission is standard mission that can be built with the games mission editor.

Only requirement is to have the 'component' set to intro.

You are very much recommended NOT to use a player entity and AI units as part of the intro mission.

If you do so, it will take a lot longer to load the cutscene in the main menu. This results in very annoying wait times!

Instead your intro mission should basically only consist of camera scenes of the terrain.

An example of such a fast, loading simply cutscene can be found here (PROPER World ... Instant IntroAnims).

Cutscene mission location

It is good programming practice to separate your island anims from the island addon to a separate pbo.

The suggested naming schema for the pbo container is OfpecTag_M_Cutscenes_IslandName.

Example:

aceip_m_cutscenes_nogova

OFP specifics

The suggested naming schema for cutscene folder is OfpecTag_M_Cutscenes_IslandName\introX

There is an Ofp Island Anim bug that requires you to do the following:

  • The anim must remain in a folder. It cannot be packed inside a pbo container.
  • All Operation Flashpoint island anims are hardwired addressed because of this.

Because of the lack of pbo, Any Operation Flashpoint island cutscene folder must have a hardwired address. There is no way round this.

By convention, most island oem creators have designated the official ~OFP\Addons folder. SImply because, that folder is guaranteed to exist!

cutscenes[]={"..\addons\aceip_m_cutscenes_nogova\intro1","..\addons\aceip_m_cutscenes_nogova\intro2"};

Some, few, Mod creators (FDF eg), have improved this situation by putting their anim in a mod folder as follows

cutscenes[]={"..\MyMF\addons\aceip_m_cutscenes_nogova\intro1","..\MyMF\addons\aceip_m_cutscenes_nogova\intro2"};

The point remains however, that an island anim folder for ofp, is a hardwired object, that, unlike pbo's, cannot be moved anywhere other than where the author designates it to be.