Jump to content

pierremgi

Member
  • Content Count

    7279
  • Joined

  • Last visited

  • Medals

  • Medals

Everything posted by pierremgi

  1. Hi all, Remember FURY? An American Sherman, lost in core of Germany, surrounded by Nazi troops. STEAM link: https://steamcommunity.com/sharedfiles/filedetails/?id=1560958858 Here, the scenario takes place at Zargabad, (a fine CUP map). Your crew of 4 plus a US soldier are stuck in the middle of a Taliban's nest. Your Abrams is out of order and out of gas. Challenge is simple: Repair the Abrams, refuel it and escape!... Perhaps. The mission is SP or MP up to 5 players, with HEAL & REVIVE feature for AIs and player(s)! You can heal or be healed in both SP MP but it's preferable to play in "MP one player" for mission parameters. You will be leader what ever the slot you choose. In SP, you don't die. AIs fellows can heal you as you're unconscious. If not, you'll respawn after 2 minute bleed out. You can heal them as well. You can enable/disable Arsenal crates for players. So, required mods are CUP only (+CBA as dependency). I recommend also: - enhanced movement (even if this is not the best corner of map for using it); - MGI tactical pack, for beginners or smart players (not using the whole stuff, but you can stick charges on vehicles) Have fun!
  2. pierremgi

    Help! Server Log Spam

    Yep, With such report lines (object not found), I think the best bet is to discard mods. Some of them are not mandatory in your scenario, so it's easy to check them and reload them after (like enhanced movements). Problem should be located on modded units/vehicles/objects. Probably not CUP (I often use them). Good chase! Share the result, please.
  3. pierremgi

    End mission question

    You need to define what are the conditions for winning/losing the game, then add some classes in the description.ext. I didn't test it, sorry.
  4. OK, but why isServer as you need to remoteExec the code on every client? if ( hasInterface) then {...}; should avoid remote execution. PS: I do prefer my script, saving the vehicle appearance, its loadouts... It's ridiculous to see different vans, hatchbacks, with different colors.
  5. Playing with addons or not... That's my first worry. Because, some players don't like too many mods, other ones are fond of big ones. So, usually, I try to make a couple of Vanilla and modded missions (CUP, RHS...), based on the same scenario. That leads to me for scripting generic arrays of vehicles/weapons classes for limited arsenal, spawned units... With some experience, I have got some adaptable generic scripts. But I don't care for too specific mods, breaking Arma's engine/menus. That's the problem of the players. MP or SP. I definitely made the choice to script for both. SP is absolutely too restricted but doesn't need LAN/Internet. The MP solo is a good alternative. Anyway, I always place the player in a leading group unit. It's easy in SP, that demands little scripts in MP. The most difficult, IMHO, is to cope with all possibilities for the player like the switch between units or the fact you can't respawn (SP). You can save game... I do prefer adding a heal/revive for AIs SP/MP. In MP, scripting difficulties apart, the mission parameters are fine for the hosting/admin player who decides if the mission will run with arsenal or not, loot or not, civilian life or not, time of the day, weather, even positions at start, FOB or not, respawn configuration, respawning vehicle or not... So, on my mind, MP is the best solution. Personal added scripts. What I'm adding on my scenarios: - the revive/heal SP/MP for Ais (group or side); - the FOBs + playable units respawn positions. (BI didn't make this mix but it seems to me useful to respawn on bros or base(s)) - respawning with the current loadout at death (same mags, same counts, same weapons and current weapon). For more realism, you respawn as you died. It's possible to add in mission parameter, an option for respawning with start loadout... - the arsenal choice, but also the anti-cheat arsenal if not chosen; - the enhanced turret for each cannon, making AI gunner to select HE bullets and fire to infantry, without losing AP shells for armored threat; - the civilian life (spawning / despawning along with players' distances) - enemies area, centered on locations (existing on map or added by script), randomized enemy groups patrolling at random and reacting (splitting in combat mode). Density depending on number of players. These areas add for immersion, even if you need to accomplish an objective with its own enemy units. - in some cases: * replenishable UAV, * supports available with radio backpack only, * solo/group HALO jump, * vehicle/crate drop, * vehicle taxi (you jump into AI driven vehicle (helo or else) and you can order a destination, alter it, return to base) ... Have fun with your scenarios.
  6. pierremgi

    Hide unit icons

    So you need something like: disableMapIndicators [true,true,true,true]; cond = true; // variable you can toggle true/false for the player icon display 0 = findDisplay 12 displayCtrl 51 ctrlAddEventHandler ["Draw", " _map = _this select 0; _color1 = [side player] call BIS_fnc_sideColor; _color2 = [1,0.3,0.3,1]; _alpha = [0,1] select cond; _color1 set [3,_alpha]; _color2 set [3,_alpha]; _map drawIcon [ getText (configfile >> 'CfgVehicles' >> typeOf vehicle player >> 'icon'), _color1, getPosVisual player, 18, 18, getDirVisual vehicle player ]; _map drawIcon [ '\a3\ui_f\data\igui\cfg\islandmap\iconplayer_ca.paa', _color2, getPosVisual player, 24, 24, 360 ]; "];
  7. pierremgi

    remoteExec an addAction

    You created a "Land_DataTerminal_01_F" but terminal is a variable known on server only. Your intel.sqf runs locally to the caller, so that can't work with if (isServer) except for the hosting one. if (isServer) then { terminal = createVehicle ["Land_DataTerminal_01_F", _rndPos, [], 0, "NONE"]; [terminal, ["Download Intel", "scripts\intel.sqf", nil, 2, true, true, "", "true", 3.5, false]] remoteExec ["addAction",0, terminal]; }; //Intel.sqf params ["_target"]; Systemchat "Downloading Intel - STANDBY"; removeAllActions _target; sleep 5; Systemchat "Downloading Intel - FINISHED"; sleep 5; deleteVehicle _target;
  8. New version (2nd script): - modified the code for better performance (i hope so); - corrected a little bug for native virtual arsenal for clients (now reproducible with the exact 3den virtual equipment storage); - added possibility to "respawn" the code written in the init field of a vehicle (need to wrap it with specific variable. See front page). To do list: add parameters to choose what is necessary to keep on respawn and avoid temporary desync.
  9. Ai's fire depends on visibility, raycasting, weapons used... So you will not change that easily, except playing in daylight and good weather condition. To start the thread, I suggest you : yourSniper reveal [yourGuy,4]; and { yourSniper setSkill [_x,1] } forEach ["aimingSpeed","spotDistance","spotTime"];
  10. Yes! You're right as far as players are concerned. Apart: Because the revive is not provided, nor for SP mission, neither for not playable AIs in MP, you could exit the incapacitated state (something to plan also) at once, but it's better to make some action, and wait for an hold action completed for reviving a unit. That's exactly what I'm doing in my script for healing AIs SP/MP. EDITED: If you fail to display the Bis_fnc_holdActionAdd, then check your scripts for a removeAllActions or any mod which could use this kind of command.
  11. Fine! that seems to me clearer. The reason why there is no difference for me. I don't have any function "attached to" the param class (like function = "BIS_fnc_paramDaytime";) , but only scripts from init.sqf which refer to these params as a variable (a global one, compared to local or public). So, I understand isGlobal doesn't matter in my param classes.
  12. Hi all, I'm trying to understand what "isGlobal" really does in mission parameters. BIKI says: isGlobal = 1; // (Optional) 1 to execute script / function locally for every player who joins, 0 to do it only on server My question is simple: does (isGlobal = 1) make every player can choose his own setting, or this is a mean for publicVariable this setting coming from server? In this last case, I understand that isGlobal = 0 (or absent) means that the parameter concerns the server only and clients can't change the param (or will not see it at all); The BI example adds confusion: class Daytime { title = "Time"; texts[] = {"Morning","Day","Evening","Night"}; values[] = {6,12,18,0}; default = 12; function = "BIS_fnc_paramDaytime"; // (Optional) [[Functions_Library_(Arma_3)|Function]] [[call]]ed when player joins, selected value is passed as an argument isGlobal = 1; // (Optional) 1 to execute script / function locally for every player who joins, 0 to do it only on server }; class ViewDistance { title = "View distance (in metres)"; values[] = {500,1000,2000,5000}; // When 'texts' are missing, values will be displayed directly instead default = 1000; file = "setViewDistance.sqf"; // (Optional) Script [[call]]ed when player joins, selected value is passed as an argument }; Well! Here view distance could be a local parameter (on each client) for better FPS, so why on server only??? and I can't imagine every player choosing his own day time. So, why locally on every player who joins??? My actual case: From init.sqf, I'm using a param for running a script on specific units. The script is loaded by server + clients but I need the param to be chosen by the server (hosted)/ admin? (dedicated). It's clear that I want the hosting player chose the parameter. I don't know how that works on dedicated. Perhaps at the mission start??? Then, this param must be known by all clients (in order to run the script locally, but not modified by them). Thanks for your lights.
  13. pierremgi

    setFlagTexture issues

    To make it short, this command doesn't work as intended with custom texture: Tested with: if (isServer) then {this setFlagTexture "drapeau_francais_mirroir.paa"}; // no sub-folder, - working fine on server (hosted), always but insufficient!; >> not working on MP preview client (path problem even if the texture is in mission's root due to unpbo'ed files); - working in MP exported (pbo'ed) mission, for eveyone (JIP compatible); >> not working for Steam subscribed mission (orange text MP mission in MP menu), even if clients have also subscribed to the mission.
  14. Yep, but I missed something. How do you point the attack at the right person? Is this the closest units from Boomer?
  15. pierremgi

    Collect Intel

    See also this thread. but also: https://community.bistudio.com/wiki/Arma_3_Leaflets and https://forums.bohemia.net/forums/topic/166686-interactive-intel-items/?page=3
  16. pierremgi

    Hide unit icons

    I'm afraid the easiest way is to hide them by the difficulty setting, then display what you need with your condition in the EH draw.
  17. addAction runs the code locally on the caller's PC. if (!isDedicated) exitWith {} literally means, if the player is not on server dedicated (there is no player on dedicated server, never), abort. So, this line is absolutely breaking the addAction. Furthermore, you don't need any version with isServer or isDedicated or else. setPos will work anyway in your code (even locally and remote) because it's an command. Same for addWaypoint... assignAsDriver... On the other hand, setVectorDir is not so friendly. , So you need to apply it on the local PC owning the object (could be server, could be a player). The best workable way is to remoteExec it on this PC (and this PC only) with, as example : [border1,[359.389, 2.748, 285.230] ] remoteExec ["setVectorDir",border1] ; Same for orderGetin, ... I don't have any clue about ACE functions . I never ever use ACE.
  18. pierremgi

    Collect Intel

    Yes It does (with task id, not module name). blabla in task Id, "blabla" when you refer to it in some functions like bis_fnc_tasksetstate . Task name is a string here. So, keep on mind the syntax. Always.
  19. Keep what you want (2nd script). Not tested with specific R3F factory, but I can adapt if it fails.
  20. pierremgi

    Players Ready Condition

    waitUntil {count allPlayers == count playableUnits + count switchableUnits}; or waitUntil {count allPlayers == count (playableUnits + switchableUnits)}; I guess a count playableUnits + switchableUnits will fail by the lack of brackets, counting playableUnits only, (so, zero in SP preview). Not tested.
  21. You could enableSimulationglobal false / hideObjectGlobal true on it ?
  22. Hi, I definitely (til further idea) abandon the couple of commands: domove / unitready , subject to too many difficulties with AIs in MP. Especially to avoid some healing animation before the medic reaches the wounded). Not sure, at this time, the unitReady is fine for that in MP... So I decided to write a new version with addWaypoint and waypoint completion test to start the healing action after the move to wounded. Not perfect, especially when a potential medic is in vehicle, needs to disembark and join the victim, then heal him. I'm still having some "distant" healing... Anyway, I hope this last version is ever more reliable. I added a new param for those who would have the medic white flagged during their task (hidden by default). See front page. Thanks for feedback.
×