Jump to content

Recommended Posts

 

MISSION MAKER FRAMEWORK for ARMA III, ver.  0004 (2019)

438077-1569903549.jpg
 This MODULE is compatible with BASE GAME (current version)

 

 

Welcome to MMF_fnc. This easy-to-use module and function library makes creating scripted missions for ArmA 3 both simple and fun. Instead of being frustrated that your project is hamstrung by technicalities and set-backs, just paste some calls into your mission script and have fun!

Mission Features:

Spoiler

* Spawn groups of all sides from customize-able arrays of class-names. Give the groups way-points, join player, become recruit-able, animate, randomly patrol, and more all from the same call.
* Spawn mobile groups as ambushes, patrols, stalkers, convoys and more from customize-able arrays each with a single call.
* Spawn airborne units as patrols, striker groups and stalkers
* Spawn intro sequences, use base functions and services, spawn playSound from configurable arrays, assign dynamic way-points with radio messages.
* Create multiple mission states to advance or repeat via several easy-to-configure and dynamic trigger functions, interactions and end conditions.
* Create mission specific static vehicles to move player via cut-scene.
* Set stuff on fire, make units rescue-able hostages, make units and vehicles destructible tasks,
* and way more...


Design Features:

Spoiler

 

* Reduce frustration and time lost due to technicalities. Make mission creation fun.
* Complete customization
* Design anywhere you can write text. Design with pen and paper if you like. With no need for the editor you can design at your work-desk, on the toilet, at your sister's wedding, wherever. 
* Create whole missions in a few minutes. Paste and configure a few calls to generate a mission or use templates to spawn a custom mission in seconds.
* Test your new mission in a split second! Paste your mission script into the debug console and go!

* Make your mission a spawn-able function which can be repeated any time. Just paste your mission script into one of the type/state templates and now the whole mission is a function!

* Support, assets and more! Post questions to this forum and you will receive support often within 24 hours. Check this topic for shortcut functions and new type/state templates as they become available.
* Learn and graduate through design tiers as you progress. Learn about: Scheduled vs. Unscheduled environments, Function Parameters, Variable types, Script Syntax-- even if you don't realize what you're doing.
* Help build the library of assets. Submit shortcut functions and mission templates to this topic for other people to use.

 



Check out the readMe

NEW changelog

Function Instructions (WIP)
A Checkpoint Darkly: Steam Workshop example mission

MMF_0004,
the complete module including VR test demo and Altis Sandbox demo

MMF 0004b
replace "Net" object with usable targets

 

NEW
Altis Sandbox:

Spoiler

*see images

 

*Supplies object 1 keeps track of collected salvage.

 

*The helipad requires 5 salvage and unlocks a mission you can engage at will.

 

*The generator requires 2 salvage and begins a scenario whether you like it or not.

 

*Tents spawn guards. These guards can be recruited by the player. Each tent, up to four, will produce new guards. Killed guards may be re-spawned at tent.

 

*Mission Vehicles may load groups depending on the capacity of the vehicle. These groups may be deployed at will and will move to current WP. Hint: build a COMM Tower to designate new WP via radio channels.

 

*The COMM Tower generates missions when used "Request Mission".* (kinda WIP).

 

*There is no win scenario but if your Base Object (Big truck in this case) is destroyed the mission will end.

 

*You may deploy (from mission vehicle) and pack your base at any time. This will not remove placed objects but will remove base functions from that area (until redeployed).

*0004b Place targets to create impromptu kill-house courses.

 

NEW

Images

Spoiler

Objects placed by the build menu may be grabbed (replaced) or removed. Grabbed objects may have their grab action canceled to return the object to its original position. 
Objects are placed on the ground from the menu but moved vertically while grabbed.
Only placed objects may be grabbed/removed, except weapons.

438077-1575263314.png

 

 


Videos

Spoiler

A Checkpoint Darkly Walk-through

V2 Altis Demo

 

Version 0002 VR DEMO

 

Version 0001 DEMO

 

Version 0001 DEMO

 

 

 


Have fun!

APL-SA.png
Arma Public License No Derivatives (APL-ND)

Use:

Spoiler

Please link back to this forum when you post missions based on MMF so other users can find these tools, too. Use my signature as a banner if you like.

You may extract functions and use them independently.

 

Edited by wogz187
Version Update
  • Like 8
  • Thanks 5

Share this post


Link to post
Share on other sites
1 hour ago, GEORGE FLOROS GR said:

Thank you very much for sharing this Wogz !

Keep it up !  :wave:

:yeahthat:

  • Like 3

Share this post


Link to post
Share on other sites

This project will be configured for 3 levels of design skill. Each level will build user confidence and encourage an eventual graduation to the next level of skill.

level 1: Mission Maker  (10 minutes)
Place the helpers and use pre-configured mission types to run the functions. This is pretty self explanatory and is exactly like the FTA Airport Module Tutorial.


Level 2: Script Designer (20 minutes to several hours depending on complexity)
Place the helpers and configure your own mission type to run functions.

 

Level 3: Pro (take your time)
Use whatever objects you want to determine placement, reconfigure functions and write your own mission type.

Have fun!

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites

I posted a link to the V2 preview in the main topic if anybody wants to try it out before the official release.

have fun!

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

It's come to my attention that I can seriously improve the framework with an edit to the system of global variables. I thought using variables like that would be easier for end-users but it could be one step easier still and closer to MP compatible all at the same time. All I have to do is completely rewrite the entire function library again.

So, no worries. You have what I have for now in the preview and we'll do the official release with an even better framework next week.

Thanks for your patience. Please stand-by...

In the meantime you can still play the demo and most importantly,

Have fun!

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites

It sounds like you're making a mission maker framework for MP?  Bless your heart.  I will see what comes.  

  • Like 1

Share this post


Link to post
Share on other sites
15 hours ago, jandrews said:

It sounds like you're making a mission maker framework for MP?  Bless your heart.  I will see what comes.  

It does kinda sound like that but MP is outside the current scope of this project. If I employ best practice when it comes to variables now, whenever MP is considered, it will at least be plausible.

Have fun!

  • Like 2

Share this post


Link to post
Share on other sites

Added, 
Function Instructions
to begin explaining mission script design. This only includes some of the functions users may call.
 

While adding parameters to the functions I also extracted all of the arrays to make them easy to customize.


Mission scripts are the main driver of this framework. The included templates, MMF_fnc_sceneType and MMF_fnc_sceneState, are scheduled environments for users to place calls from. If you can write a text message you can script missions in ArmA 3. Here's a useful analogy for a complex call:

Spoiler

You're on break at work and Jim left to fetch your coffee order. Pam and Susan walk into the break-room but they didn't get to place their order with Jim before he left. You need to text Jim with Pam and Susan's coffee orders in such a way that when he comes back he can say, "Pam, here's your order", and, "Susan, here's your order.".

If you can do that you can make complex missions with MMF. Also, you'd be an excellent work-mate!


This means you can write missions anywhere you can write text. And once you have written a mission, it is a spawn-able function.

 

Pre-configured missions for mission makers to use with the helper markers are simply examples of the above mission scripts already filled out.

Like this,

Spoiler

if (_sceneType==1) exitWith {

	if (_sceneState==1) exitWith {

	[baseAREA2, 10, 0, 1, player, 0, 1] call MMF_fnc_ambush;

	[addmark, 2, 2] call MMF_fnc_wreck;

	[baseMARK1, 5, WEST, MMF_west, "AWARE", addMARK, 1, 1, 0, 0] call MMF_fnc_soldiers;
	[baseMARK3, 5, EAST, MMF_ind, "AWARE", addMARK, 0, 3, 0, 0] call MMF_fnc_soldiers;
	[baseMARK2, 3, EAST, MMF_ind, "AWARE", baseMARK2, 0, 3, 0, 0] call MMF_fnc_soldiers;
	baseMARK2 call MMF_fnc_coverTrap;
	bluLeader=lead_grp;
	[bluLeader, "AWARE"] call MMF_fnc_patrolNAV;

	[baseAREA1, WEST, "SAFE", baseMARK2, 1] call MMF_fnc_spawnTank;
waitUntil {sleep 1; !isNull blu_tank;};
	alphaTank=blu_tank;
		[alphaTank, "SAFE"] call MMF_fnc_patrolNAV;
		[alphaTank, "SAFE"] call MMF_fnc_patrolNAV;
		[alphaTank, 30, 1, 2, alphaTANK, 1, 1] call MMF_fnc_ambush;
		[addMARK, 50, 0, 1, baseMARK1, 1, 0] call MMF_fnc_ambush;
		targetMARK1=ambushVEH;
		[targetMARK1, 1, 0] call MMF_fnc_destroyThis;
		targetMARK1 call MMF_fnc_coverTrap;
		systemChat "Scene Loaded";
		[player, baseMARK2, 0, 1, 0, 0] call MMF_fnc_wpTracker;

waitUntil {sleep 1; !alive targetMARK1};
		[baseMARK3, 50, 0, 1, baseMARK3, 1, 0] call MMF_fnc_ambush;
		targetMARK2=ambushVEH;
		targetMARK2 call MMF_fnc_coverTrap;
		[targetMARK2, 1, 1] call MMF_fnc_destroyThis;
		[player, baseMARK2, 0, 1, 0, 0] call MMF_fnc_wpTracker;
		systemChat "Scene Loaded";
waitUntil{sleep 3; ((player getVariable ["scoreBLUE", 0])>99) or ((player getVariable ["scoreRED", 0]) >99)};
	systemChat format ["%1", player getVariable ["scoreBLUE", 0]];
if (player getVariable ["scoreBLUE", 0]>99) then {"Success!" call BIS_fnc_endMission} else {"Failure!" call BIS_fnc_endMission;};
	};

 


Function library soon!

 

Have fun!

  • Like 2

Share this post


Link to post
Share on other sites

MMF_fnc_0002b

Another as-is version. This version has nothing for "mission makers". Placing the helper marks will not automatically spawn a scenario.

Instead I encourage designers to open the supplied VR demo and try placing calls through the debug console to see what happens. The file "MMF_calls" has instructions and call examples for all the primary functions as does the file Function Instructions. The bundled readMe also has a few callable shortcut examples for the VR scenario (like MMF_easyHostage).

Soon:
"mission maker" templates (demo missions)
Shortcut functions (see bundled readme for a couple examples to use in the VR demo)
Tutorials for both mission makers and script designers

Have fun!

  • Thanks 2

Share this post


Link to post
Share on other sites

Released: A Checkpoint Darkly, on Steam Workshop.

The first actual mission designed with MMF_fnc is now live on Steam. It was prudent to create a mission using the framework before taking the project any further.

Bonus: If you hop in the helicopter you can spend the whole mission dropping groups off at the battlefield. If you need to practice low-flying and combat landings, there's a lot of that.

Grab South Asia and the TOH Core.

Here's the mission files for designers to check out. Because it's MMF_fnc you can change one integer in fnc_design and have an empty scenario ready to play with the redux Sumrakent (streets and props) already laid out.

Spoiler

Navigate to the bottom of MMF_fnc_design (set up) and change master_type to 2-5 or 9. See comment.


Have fun!

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites

Release!
 

This project will continue to evolve and grow but I'm confident the framework can do its job. Documentation is a little sparse because MMF is a brand-new toy. We know how to turn it on and off but what do all these other knobs and switches do? I'm working on it. You can help by playing around with the functions and reporting back what happened.

 

Coming soon:
Tutorials
Shortcut functions

 

Have fun!

  • Like 1

Share this post


Link to post
Share on other sites

3 posts with the same message in one topic within 10 mins. What was that called... I had a word for it... Damnit it was right there.. 

  • Like 1
  • Haha 1

Share this post


Link to post
Share on other sites

Maybe a person can try to help too aggressively? I dunno,

Have fun!

  • Haha 3

Share this post


Link to post
Share on other sites

Coming soon,

MMF_fnc provides a pretty slick interface for mission creation. Need something? Just call. However it still requires a bit of script knowledge to write a mission script. If you like writing missions scripts that's great and that is the fun. But if you don't like writing mission scripts and you just want to play-- that's not fun! And we can't have not fun because not fun is not fun at all.

Too bad we can't just make a mission in-game while playing. Or can we? What if the functions were tied to contextually accurate representations of their purpose? What if we had a Fallout 4 style "base builder" with functional pieces each representing a game-play mechanism? With something like that you could design a mission by making choices as you play. That would be fun.

And it is.

438077-1573488469.png

  • Like 2

Share this post


Link to post
Share on other sites

Happy New Year!

This minor update replaces the somewhat glitchy "Net" with usable targets. Build custom Kill-House scenarios with targets that reset with a menu action.

 

Have fun!

  • 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

×