manzilla 1 Posted November 6, 2011 (edited) Presenting a very basic alpha of a ToH combat mission: Here's the alpha: Rain down on 'em from above Alpha v 1.1 You are flying in some ground troops to assault a mine complex that was recently captured. After you drop of the troops provide them with air support. Credits: BIS for another great game. The community for keepin' BIS in business and thus keeping these games alive. Also for teaching me how to use the Editor and providing valuable feedback. Known Issues: Not sure but there's gotta be a ton. The end trigger may not work. Very basic No intro, cutscenes, etc. No story line Only 1 real objective(will add more later) Too short No base Starts in air, I'll fix this when I add an intro and some story line. Mirrors: Get em up! Again this is nothing special and need many things. No cutscenes, intro, only 1 quick main objective. Don't expect much. If you really want to you can play as one of the ground teams that are dropped off. Just use team switch and select which unit. ***Note: Read the hints that come up at the beginning. If you come in low to the LZ you can drop off troops and not be seen. The LZ is just above the mine on top of a plateau. ---------- Post added at 12:58 PM ---------- Previous post was at 12:36 PM ---------- EDIT: Please wait. I made a mistake and posted the version with the troops in another chopper. Give me a few minutes. ---------- Post added at 03:06 PM ---------- Previous post was at 02:43 PM ---------- New version Alpha v1.1 available in the first post. Fixes: - Player's heli now has a team in it and it does unload if you get close to the wp when landing/hovering. - Fixed end mission trigger. Was going off too early. - A few other tweaks. Edited November 6, 2011 by Manzilla Share this post Link to post Share on other sites
Zipper5 74 Posted November 6, 2011 Fun mission so far, Manzilla. Great to see missions already being made for TKOH! :) Just tried it in the latest version of TKOH and noticed only a couple areas for improvement: Though it is not a necessary feature, it is nice for missions to have overviews whenever possible. The briefing lacks detail and no task is set as your current task at mission start, but luckily there is only one task described. The mission also gives you more info in the hints section as you progress, but I would personally prefer to have these in the briefing so that I am not distracted while flying. I didn't receive any indication that I had completed my objectives, despite them appearing as complete in my briefing. There are a few functions that you can use to make the use of tasks easier now in TKOH, which are all located in the Functions Viewer which can be found in the mission editor. Feel free to check them out! I got an ending that blasted me for being a really shitty pilot, apparently. I'm not sure why this happened, but is it because I lost some crew members due to the anti-air fire I received when assaulting the objective? Might want to try and make this clearer in the debriefing. Overall, there is some nice potential here. I liked the challenge presented to me at the mine, and I also liked the ability to use team switch to change to one of the remaining friendly ground units. It was short, but sweet. I look forward to seeing more of your work! :) Share this post Link to post Share on other sites
manzilla 1 Posted November 7, 2011 Thanks for the feedback Zipper5! - Overview in briefing: I plan on adding that soon. I realized last night that I didn't have anything there. - Briefing detail and task set: I'll definitely go in depth in the future. I left the first task un-set to start so there wasn't 2 markers(green dots) to confuse the player. I believe when you get to the first wp the task than becomes set. I need to rework the way the tasks appear. - Task not being marked: I will add this too. Definitely something I'm aware of. I just set them up using an OA mission I made. It seems the way I used to make them appear as complete doesn't work the same way in TKoH as it did in A2. I didn't check in to the new functions but I'll definitely do so in the future. Nice to hear there's some new stuff to work with in TKoH. - Sh*&&y pilot thing: That was just me being a jack ass and an attempt at being funny. It says that even if you complete the mission successfully. Sorry about that. Again I appreciate the feedback. It's pretty motivating to get that from a developer. I was going to wait but I really wanted to get something out for the community to try. I plan on expanding this mission in the future and will implement your feedback. Also thanks for the great games. I've been a fan of BIS since OFP and the games have added fun to my free time for a decade. You guys are by far the best development I've ever encountered. Hell you listen to the community and even use the stuff we make, what more can one ask for? Share this post Link to post Share on other sites
RTK1972 10 Posted November 7, 2011 maybe i'm to stupid but where do i have to place the pbo file ? tried it in single missions directory but it did not appear in the game. Thanks for your help, Carsten Share this post Link to post Share on other sites
manzilla 1 Posted November 7, 2011 maybe i'm to stupid but where do i have to place the pbo file ? tried it in single missions directory but it did not appear in the game.Thanks for your help, Carsten No problem bud, I had the exact same problem at first. You need to put it in the missions folder in the main TKoH directory. Then go in game select Single Player and then Challenges. It will be listed there. Should be the first one, under My missions. Share this post Link to post Share on other sites
RTK1972 10 Posted November 7, 2011 thanks my friend. it works fine. Thanks a lot :-) Carsten Share this post Link to post Share on other sites
manzilla 1 Posted November 7, 2011 zipper5, I'm checking out the functions viewer but I often have trouble using this thing. Say for Tasks->BIS_fnc_taskSetDestination. I have trouble figuring out how I would use it. Do I need to put all this into an .sqf? /* Author: Karel Moricky Description: Set task destination Parameter(s): _this select 0: STRING - task ID _this select 1: ARRAY or OBJECT or NUMBER - position, object or waypoint ID Returns: BOOL */ private ["_logic","_taskName","_destination","_taskParams","_taskArray","_taskArrayObjects","_taskGroup"]; _logic = bis_functions_mainscope; if (isNil "_logic") exitWith {false}; _taskName = [_this,0,"",[""]] call bis_fnc_param; _destination = [_this,1,[],[[],objnull,0]] call bis_fnc_param; if !(_taskName call bis_fnc_taskExists) exitwith {["Task '%1' does not exist",_taskName] call bis_fnc_error; false}; _taskParams = _taskName call bis_fnc_taskParams; _taskArray = _taskParams select 0; _taskArrayObjects = _taskParams select 1; _taskGroup = _taskParams select 2; { if (isPlayer _x && local _x) then { private ["_task"]; _task = _taskArray select (_taskArrayObjects find _x); switch (typename _destination) do { case (typename []): { private ["_dx","_dy","_dz"]; _dx = [_destination,0,0,[0]] call bis_fnc_param; _dy = [_destination,1,0,[0]] call bis_fnc_param; _dz = [_destination,2,0,[0]] call bis_fnc_param; if ([_dx,_dy,_dz] distance [0,0,0] > 0) then { _task setsimpletaskdestination [_dx,_dy,_dz]; }; }; case (typename objnull): { _precision = if (count _this > 2) then {_this select 2} else {false}; _task setsimpletasktarget [_destination,_precision]; }; case (typename 0): { if (_destination >= 0) then { [_taskGroup,_destination] setwaypointvisible false; _task setsimpletaskdestination waypointposition [_taskGroup,_destination]; }; }; }; }; } forEach units _taskGroup; true It's confusing. I'm sure there's an easier way to use a function like this, I just don't see it the description/code. Share this post Link to post Share on other sites
Derbysieger 11 Posted November 7, 2011 I like the encouraging debriefing^^ Nice little mission Share this post Link to post Share on other sites
manzilla 1 Posted November 7, 2011 Derbysieger, Ya that was just me being an a$$. :) Thanks for the compliment. I'll make it longer in the near future. Share this post Link to post Share on other sites
Derbysieger 11 Posted November 7, 2011 Maybe it's just me but I'd love it if you actually had to land to end the mission. And proper take off in the beginning would be nice. Share this post Link to post Share on other sites
manzilla 1 Posted November 7, 2011 Maybe it's just me but I'd love it if you actually had to land to end the mission.And proper take off in the beginning would be nice. I completely agree and I will make both part of the mission in upcoming versions. I couldn't decide the best way to set up the take off part so I left it out for now. I just wanted to get something out for the community to play with. I plan on having the mission start with an intro scene of the pilot getting orders from a CO and then have the first task being to get to the heli. Same goes for the landing. Again, just me wanting to rush something out and being too lazy to do that part yet. I definitely will though. Hopefully I'll have a longer version out by the weekend. No promises though. I'm slowly getting motivated to get back on the editing train and start making missions again. I kinda miss it. Headaches et al. Thanks for the feedback. It's always appreciated. Share this post Link to post Share on other sites
Zipper5 74 Posted November 7, 2011 (edited) Say for Tasks->BIS_fnc_taskSetDestination. I have trouble figuring out how I would use it. Do I need to put all this into an .sqf? Nope, it is compiled at the start of the mission each time you run it. To use it, you must use the call command. The same will go for the other functions you find there, though sometimes it will be better to use the spawn command. In this case, the syntax for this function is as follows: _nul = ["task_name",destination] call BIS_fnc_taskSetDestination; "task_name" - the string ID you have given to your task destination - the object or position you wish to use as the destination However, to use these commands you must first use BIS_fnc_taskCreate to create the task. Have a poke around the functions viewer and experiment. Explanations as to the use of the functions included in TKOH are being added here, so that may be something you wish to bookmark for future reference. :) Here's an example of managing tasks using TKOH's functions: //First, wait for all functions to be initialized waitUntil {!(isNil "BIS_fnc_init")}; /* Now we'll create our player unit's task using BIS_fnc_taskCreate, 1st parameter - the unit(s) that have the task assigned to them 2nd parameter - the string ID for the task. This will be used to reference this task from now on 3rd parameter - an array containing the text for the task. It goes in the order: [task description,task title,task GUI title] (Optional) 4th parameter - the destination of the task, i.e. where the waypoint will point to (Optional) 5th parameter - set to true to make it the current task (Optional) For now, I'll include just an example that adds the description & destination for the task, and makes it the player's current task: */ [player,"ExampleTask",["This is an example task.","Example Task","EX TSK"],position ExampleDestination,true] call BIS_fnc_taskCreate; /* Now that we have the task created, we can manipulate it during the mission. Let's say we receive an update from HQ and need to change its description, so we'll use BIS_fnc_taskSetDescription, 1st parameter - the string ID for the task. In this case, "ExampleTask" 2nd parameter - the new description for the task still following [task description,task title,task GUI title] */ ["ExampleTask",["This is a NEW example task.","NEW Example Task","NEW EX TSK"]] call BIS_fnc_taskSetDescription; //Let's wait for a condition to be turned true upon the completion of the task TaskCompleted = false; waitUntil {TaskCompleted}; /* Since we have succeeded with the task, we need to update its state. To do this, we use BIS_fnc_taskSetState, 1st parameter - the string ID for the task. In this case, it is still "ExampleTask" 2nd parameter - the task state. Can be either "SUCCEEDED", "FAILED", "CREATED", "CURRENT", or "CANCELLED" 3rd parameter - set to true to save the game (Optional) 4th parameter - set to true to show the GUI hint displaying the updated task state (Optional) Let's set it to "SUCCEEDED", save the game, and show the hint: */ ["ExampleTask","SUCCEEDED",true,true] call BIS_fnc_taskSetState; //And there we have it. We have created & changed a task, as well as changed its state upon the completion of the task. Hope this helps! This example can be executed in any .sqf script, should you wish to try it out for yourself. Edited November 7, 2011 by Zipper5 Share this post Link to post Share on other sites
W1ndy 10 Posted November 8, 2011 That's a good mission. It gives a taste of what can come later. Share this post Link to post Share on other sites
sxp2high 23 Posted November 8, 2011 Very nice mission indeed! Keep 'em coming! Same goes for the landing. Again, just me wanting to rush something out and being too lazy to do that part yet. I definitely will though. This piece of code will detect if the engine is off, for a "Shut down your heli" task (using that in my mission too): ((enginesRPMRTD Bird1 select 0) < 1250) && !(enginesIsOnRtd Bird1 select 0) Bird1 is the name of the heli obviously. Share this post Link to post Share on other sites
manzilla 1 Posted November 8, 2011 (edited) Zipper5, Wow I'm an idiot. I shoulda been able to figure that out. Thanks a bunch for the refresher and new info. And to the new forum folks, this shows why BIS beats all other developers. You can't go wrong getting advice from a developer. W1ndy, Thank you! I appreciate the compliment. Welcome to the BIS forums. It's always nice to see new members. sxp2high, Thanks as well for the compliment and good looking out with that code. Exactly what I was looking for and needed. You rock! Edited November 8, 2011 by Manzilla Share this post Link to post Share on other sites
Sylle 1 Posted December 11, 2011 Hi Manzilla, Had some god fun with your mission! Thank you for that :) Looking forward to any improvement you are planning in the future. Just one question for my personal curiosity... To keep things organized, I initially tried to put the pbo file in a modfolder like I did with the landing practice missions made by Jedra. (@custommissions/addon/your pbo file here ; also tried in @custommissions/missions/your pbo file here) but your mission did not appear in the list of single player challenges (while the missions made by Jedra do). What is the reason that your mission only appears if we put it in the default TOH missions folder? Regards, Sylvain Share this post Link to post Share on other sites