Jump to content

JohnKalo

Member
  • Content Count

    1111
  • Joined

  • Last visited

  • Medals

Posts posted by JohnKalo


  1. Glad to hear it worked! Yep the weekend seems to be going fine. Spending much time in editing myself. As for issue number 3 let us not leave it unresolved :scratchchin:

     

    Here is what you can try,

     

    1.] Create any sort of marker you like in the editor and name it nameOfMarker.

    2.] You have already named your units so we will use the name directly p1.

    2.] In your init.sqf place this line:

     

    [] spawn { while{not isnull p1} do {"nameOfMarker" setmarkerpos getpos p1; sleep 0.5;}; };

     

    All done for unit p1! The above line will attach the nameOfMarker marker on your p1 unit and its position will be updated on anybodys map after 0.5 seconds.

     

    Doing so for all units will give you the exact position in real time for all units you desire. Maybe you only want the leaders' positions so you will add 2 such lines in your init.sqf.

    For the units' names you can just add a text to each unit's marker.

    For more markers you just copy paste the above as many times as you like like this:
     

    [] spawn { while{not isnull drop_plane} do {"Marker_drop_plane" setmarkerpos getpos drop_plane; sleep 0.5;}; };
    [] spawn { while{not isnull aa0} do {"marker_aa0" setmarkerpos getpos aa0; sleep 1;}; };
    [] spawn { while{not isnull aa1} do {"marker_aa1" setmarkerpos getpos aa1; sleep 1;}; };
    
    [] spawn { while{not isnull hostjet0} do {"marker_hostjet0" setmarkerpos getpos hostjet0; sleep 1;}; };
    [] spawn { while{not isnull hostjet1} do {"marker_hostjet1" setmarkerpos getpos hostjet1; sleep 1;}; };
    [] spawn { while{not isnull hostjet2} do {"marker_hostjet2" setmarkerpos getpos hostjet2; sleep 1;}; };
    
    [] spawn { while{not isnull aa2} do {"marker_aa2" setmarkerpos getpos aa2; sleep 1;}; };
    [] spawn { while{not isnull aa3} do {"marker_aa3" setmarkerpos getpos aa3; sleep 1;}; };

     

    It would be wise to just not over-minimize the 0.5 value. That might cause lag if set to 0.001 for example. It will be less realisticly shown in the map too. 

    • Like 1
    • Thanks 1

  2. Any way to respawn the ships when they are destroyed and then place the players back in?

    I do not know how the names for the different positions are like moveInDriver, moveInCargo and such.

     

    In previous versions neither the reload modules worked so does this version support the vehicle respawn modules?

     

    And hopefully the issue where the 2 boats the vessels carried fell down whenever you turned the ship inside the editor (change rotation not while playing) has been fixed.


  3. The next task not appearing is strange since they are still in the same group when they re-spawn for example. So even if there is a glitch and there is yet another player in the group alive they should be synced again? How about syncing the players with the task modules again if they die?

     

    Like a repeatable trigger with this as a condition:

     

    !alive nameOfPlayer;

    and make it activate 0.01 seconds after the player is re-spawned like this:

     

    nameOfPlayer synchronizeObjectsAdd [NameOfTaskModule];

    so you will have as many triggers as the number of units and it will all work?

     

    Sounds weird or too simple but with Arma whatever works and causes no lag or whatever glitch should be used in my humble opinion 

    • Like 2

  4. Thanks for all replies! Now,

     

    Quote

     

    I have no experience with mission making, but I would guess you could make use of the firednear EH.
    You can set the AI behaviour to no combat with a loop and use the firednear EH to set it to combat if needed.

     

    I don't know if there's another way to force AI behaviour to no combat, other than a with a loop.

     

     

    It sounds like a good idea but that would mean using many event handlers since there will be multiple people firing a variety of hostiles with different weapons and magazines. Esepecially considering that the players might pick up a hostile's weapon.

     

    Quote

     

    The ASR AI3 might causing this exact reation ,

    https://community.bistudio.com/wiki/knowsAbout

    https://community.bistudio.com/wiki/reveal

    i don't remember the vanilla ai to do something more , than being just in aware behaviour.

    Have you asked @Robalo about ?

     

     

    Nicely said, I have not yet at least. The knowsAbout and reveal however will need many conditions looping so they might lag the mission.

     

    Quote

     I have made a couple of stealth missions and the AI is a pain in the backside. Couple of things I have found don't group enemy AI units together, they have some weird hive mind thing going, but even singles can still react if an AI unit is killed even though they did not see it or hear it. Also I tend not to use any type of AI mods when doing a stealth mission, ie ASR,VCOM etc. I will try and link a mission I made in my  dropbox. You are welcome to tear into it and see if anything I have done helps you out. I am using scripts from other authors and alot of scripting I came up with, some of it is more brute force to make the AI behave correctly. It is "hollywood" stealth, basically if you have a suppressor AI can't hear you, I know this is not realistic but makes for a fun mission. It has only been tested on hosted server with friends, not sure how it will play on a dedicated (i am pretty sure things will break). 

     

    Bravo for a very detailed description! I know players tend not to read the briefings. I still write them however even for that 10 or ..... rather 1%. There is a problem however. If not 4 players play the mission together there will be AI units so them ruining everything will be a problem. I shall check out the if the AI is shot but not killed the alarm sounds script though. 

     

    Quote

    You could also try playing around with the audibleCoef of setUnitTrait. In my testing (with vanilla AI) it would lower the chance of detection by sound dramatically. 

     

    An awesome idea! If the audibleCoef works it will be really effective!

     

    Oh and with vanilla AI, at least when I had it in vanilla, I remember that they would detect you according to the distance from the unit and not according to from which side you approach them.

    • Like 1

  5. So if you are following the Defying the Odds campaign and wish no semi spoilers you can stop reading here. If not you can continue :thumbsup:

     

    I am trying to create a stealth mission and everything seems to be possible but one thing. That is how the AI reacts to players. You can come close to the AI and take him down easily if he does not see you, something which is great but if you fire your weapon everything gets ruined. You see AI units that are far away can detect you and sometimes they can even detect your exact position. This might be semi real but it can easily destroy the mission. I would like the enemy AI not to hear any gunshots coming from suppressed weapons. Or if possible get in AWARE mode without knowing where the player is. One thing that should be noted is that I use ASR AI3 and we are talking about MP missions.

     

    So can anybody please help?

    • Like 1

  6. 6 hours ago, Grumpy Old Man said:

     

    It's not a bug.

    Tasks assigned via module to objects cease to work, because upon respawn the player becomes a new object.

    Can be handled via onPlayerRespawn.sqf or respawn eventhandler etc.

    Also you never should execVM either onPlayerRespawn.sqf or onPlayerKilled.sqf since they are automatically executed upon their respective events.

     

    Cheers

    How exactly can it be handled? 

    Because in previous missions of mine players re-spawning and having their own tasks kept on having their tasks. There was never an issue with units losing their tasks.

     

    In any case nearly all missions of ours have tasks assigned to BLUEFOR. Pheeeew!

     

    @Far East LieutenantIn case you are not aware black boxes showing errors only appear in the editor and not when you play the mission. 

    • Like 2

  7. For issue number 1 I use the same  onPlayerRespawn.sqf and  onPlayerKilled.sqf scripts and it works with no errors. I call both via the init.sqf like this:

     

    execVM "onPlayerKilled.sqf";
    execVM "onPlayerRespawn.sqf";

     

    For issue number 2 I used to use modules but thanks @Grumpy Old Man I now use scripts. It is a bit hard at first but it soon becomes really simple. Here is an example. You call it via the initPlayerLocal.sqf like this:

     

    _handleTasks = [] execVM "Tex_fnc_taskHandling.sqf";

    and the script goes like this:

    //make sure these 3 are identical inside the _makeTaskN arrays
    _myTaskIDs = ["Task01","Task02","Task03"];
    
    
    _makeTask1 = [["Task01"],west,["long description goes here","short task description goes here","Task01Pos"],getMarkerPos "StartHere0","ASSIGNED",3,true,true,"land"];
    _makeTask2 = [["Task02"],west,["spoilers","Reach pos Delta","Task02Pos"],ObjNull,"ASSIGNED",2,true,true,"walk"];
    _makeTask3 = [["Task03"],west,["spoilers","Hack the Security Center",""],getposATL tv,"ASSIGNED",1,true,true,"interact"];
    
    waitUntil {time > 0};
    
    waitUntil {!(blue0 in tran0)};
    sleep 1;
    
    _watchTask1 = [] spawn {
    
    waitUntil {sleep 0.5;when the task will be done condition};
    ["Task01", "SUCCEEDED",true] spawn BIS_fnc_taskSetState;
    
    };
    
    _makeTask1 call BIS_fnc_setTask;
    
    waitUntil {!alive vic5};
    sleep 5;
    
    _watchTask2 = [] spawn {
    
    waitUntil {sleep 0.5;!alive vic6};
    ["Task02", "SUCCEEDED",true] spawn BIS_fnc_taskSetState;
    
    };
    
    _makeTask2 call BIS_fnc_setTask;
    
    waitUntil {!alive vic6};
    sleep 24;
    
    _watchTask3 = [] spawn {
    
    waitUntil {sleep 0.5;!alive vic7};
    ["Task03", "SUCCEEDED",true] spawn BIS_fnc_taskSetState;
    
    };
    
    _makeTask3 call BIS_fnc_setTask;

    The above are all parts of existing missions so they work. Plus please check this one you mentioned:

     

    Quote

    if variable names are lost upon respawn, this part will also get lost too.

     

    If it does not work after respawn it is a major bug since many missions will become unplayable.

     

    • Like 2

  8. There have been a few months since anything new has been introduced in-game.

     

    The only thing that happens is re-balances again and again. I have mentioned before that the same leveled units cannot  battle a variation of leveled defenses but nothing has changed.  Maybe a new building can be introduced. One that enhances already existing units and upgrades them to something new and much stronger. A building only unlocked at higher levels. Also, a map can be introduced. A map where all player bases can be seen and attacked according to the level differences between the two bases. And why not add AI bases that are to be attacked so as to gather resources. Send an occupying force which can be attacked by other players so as to loot what supplies the defending player has gathered. Additionally how about a global chat. How about making alliances worth the while. Like an ally to be able to send forces to help defend your base. A base attack that needs some time to take place since the troops will have to travel across the aforementioned map.

     

    There are so many possibilities but to be honest I doubt anyone is seriously working on this game. Hence the alliance chats go dead. Why not? There is nothing to talk about. And maybe the game is too. 

     

     

    • Like 2
×