Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Everything posted by A-SUICIDAL

  1. Is it possible to remove grass within a specific area? Like maybe within the radius of a trigger?
  2. === Sample Mission & Description Updated 2/14/2013 - Download link available === Team Kill Punish Script with Jail Cell :jail: Download link: JAIL_TK_PUNISH.zip 3 Versions: Arma2, Arrowhead & Combined Operations. This script was last tested on a dedicated server 2/14/2013. The movie is still from an older version, but shows the same basic functionality. Supports up to 100 playable/non-playable friendly (same side) units. More can be added manually. Install Instructions: Open the sample mission in the editor and turn markers on "F6" and you will see descriptive marker text. Select the entire jail cell and the Functions Module and the "1 trigger(CO & Arrowhead)" near the Functions Module and press "Ctrl-C" to copy, then open your own existing mission and press either "Ctrl-V" to paste, or "Ctrl-Shift-V" to paste in (same)place. I am assuming that you already have a "respawn_west" marker, but if you don't, copy and paste that into your mission too. Open the sample mission folder and copy all of the sub folders and the "stringtable.csv" file and paste them into your own existing mission folder. Open the sample missions "init.sqf" file and copy everything and paste it into your own exisiting "init.sqf" file. You can set the "jail_timer" in the init.sqf (line 4) to the desired punish time. I recommend setting it to 4 minutes: 240 You will not be able to hit your "Escape" key during you're time in jail, so you won't be able to choose "Abort" or "Respawn", so you might want to leave the timer set to 10 seconds when testing. Open the sample missions "description.ext" file - from line 20 and down you will need the "class CfgSounds", "class RscStdText" and "class RscTitles", so you can either copy and paste line 20 & down into your own existing "description.ext" file, or if you already have these classes in your existing mission, then you would just need to add the defined sound and image file from the sample mission to your own existing "description.ext" file. This should be simple to do for anybody with basic editing skills. Units must be named... s1, s2, s3 etc. Or you can change the unit names in scripts. Both the "wrongful_kill.sqf" & "check_crew.sqf" has support for players s1-s100. You can easily remove any unnecessary lines or add new lines to these files as needed. Add the following line to the "init" field each playable & non-playable "friendly" unit: null = this addEventHandler ["killed", {nul = [_this select 0, _this select 1] execVM "jail\wrongful_kill.sqf"}]; You can also add this line to the "init" field of each friendly unit if you would like the "Remove Body" feature when a unit dies: null = this addEventHandler ["killed", {(_this select 0) execVM "scripts\removePlayerBody.sqf"}]; For mission makers that create missions that do not have ai enabled (like most Domi missions) and use "disabledAI = true;" in their description.ext file and do not have any non-playable friendly ai placed or spawned in their mission, then the alternative method for adding the EH to each playable unit would be... to leave each playable unit's "init" field empty and simply un-comment the lines in the "EH_Handlers.sqf" file, which can be found in the "EH" sub folder. This will automatically add the EH to each "player" that joins the server. For testing purposes, and this is very important, you can turn off the feature that disables the ability to hit the "Escape" key by simply adding "//" in front of line 15 of the "start_punish.sqf" file. Just remember to remove the "//" later before you release your mission, other wise players will just choose respawn instead of being stuck in jail. Special Features: Fixes and Tweaks as of 2/14/2013.
  3. I threw this script together fast and added it to a trigger system that checks when each player is alive and then adds the ability for each player to build a small sandbag wall. It works great when I preview it, but I knew it was going to bug when I tested it online. My friend built a sandbag wall, but I could not see the sandbag walls that he built, and he couldn't see the walls that I built. So I searched around and could not find a fix for this, so I decided to ask for help. Here's the script: build_cover.sqf _unit = _this select 0; _id = _this select 2; _unit removeAction _id; _unit switchMove "AinvPknlMstpSlayWrflDnon_medic"; sleep 3; _cover1 = "Land_BagFenceShort" createVehicleLocal [0,0,0]; _cover2 = "Land_BagFenceShort" createVehicleLocal [0,0,0]; _cover1 setDir ((direction _unit) -180); _cover1 setPos (_unit modelToWorld [0,1.4,((position _unit) select 2)]); _cover2 setDir ((direction _unit) -180); _cover2 setPos (_unit modelToWorld [0,1.2,((position _unit) select 2) -0.6]); sleep 1; _unit addAction ["Build Cover", "cover_build.sqf","",1,false]; exit I tested it a few different ways and couldn't get it fixed. But yeah, it sure is a fun script when I previewed it. I tried this: this addAction ["Build Cover", "cover_build.sqf","",1,false]; and i tried this: if (local this) then {this addAction ["Build Cover", "cover_build.sqf","",1,false]}; But I'm no scripting god, so now I'm just lost. It creates 2 sandbag walls stacked on top of each other, because when I tried building a wall on the side of a steep hill, the wall appeared hovering in mid air, so by creating a second wall below it that sinks into the ground, I was able to solve the hovering problem. Now I just need to make this script work so other players can see the wall online.
  4. I changed the veh_add_gear_s2.sqf file to look like the following and it seemed to work in single player, but now my friend is sleeping, so I am unable to test it online with him. I'm hoping this will work. hmmwv_s2 setVariable ["selections", []]; hmmwv_s2 setVariable ["gethit", []]; hmmwv_s2 addEventHandler ["HandleDamage",{ _veh = _this select 0; _selections = _veh getVariable ["selections", []]; _gethit = _veh getVariable ["gethit", []]; _selection = _this select 1; if !(_selection in _selections) then { _selections set [count _selections, _selection]; _gethit set [count _gethit, 0]; }; _i = _selections find _selection; _olddamage = _gethit select _i; _damage = _olddamage + ((_this select 2) - _olddamage) * 0.25; _gethit set [_i, _damage]; _damage; }]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; hmmwv_s2 addMagazineTurret ["100Rnd_127x99_M2",[1]]; clearWeaponCargo hmmwv_s2; clearMagazineCargo hmmwv_s2; hmmwv_s2 addMagazineCargoGlobal ["PIPEBOMB",2]; hmmwv_s2 addMagazineCargoGlobal ["20Rnd_762x51_B_SCAR",20]; hmmwv_s2 addMagazineCargoGlobal ["MAAWS_HEAT", 10]; hmmwv_s2 addMagazineCargoGlobal ["stinger", 4]; hmmwv_s2 addWeaponCargoGlobal ["M110_NVG_EP1",2]; hmmwv_s2 addWeaponCargoGlobal ["MAAWS", 2]; hmmwv_s2 addWeaponCargoGlobal ["Stinger", 2]; hmmwv_s2 addAction [("<t color=""#FF0000"">" + ("Repair HMMWV GPK M2") + "</t>"),"vehicle\veh_repair.sqf",nil,+50,true,true,"","alive hmmwv_s2 && (!canMove hmmwv_s2 OR (damage hmmwv_s2>0 && damage hmmwv_s2<1)) && player distance hmmwv_s2<5"];
  5. So I have a vehicle drop script that spawns a HMMWV GPK (M2) in the air that drops from a parachute. There are actually a few scripts involved, but I have a problem with the script that adds weapons and gear into the cargo of the vehicle - where the weapons and gear multiply depending on how many players are on the server. So if I test by myself, everything works fine, but as soon as a friend joins the server and he request a vehicle drop, the weapons and gear added to his HMMWV vehicle then double in amount, so instead of there being 2 MAAW launchers and 10 MAAW rockets, my friends HMMWV shows 4 MAAW launchers and 20 MAAW rockets. I would imagine that if there are 3 players on the server it would then show 6 MAAW launchers and 20 MAAW rockets. I tried using a if (isServer) command, but then no weapons and gear appear in the vehicle at all, but maybe I did that wrong. Each player has their own vehicle drop script, and each vehicle is named according to the player, so player s2 would be the owner of dropped vehicle named hmmwv_s2. So I then tried adding triggers that are specific to each player's vehicle name, so when player s2 requests a vehicle drop, a vehicle named hmmwv_s2 would spawn in a parachute and a trigger trigger specific to his vehicle would then do the following: (Note: The script adds additional armor to the vehicle, additional turret ammunition, clears the vehicle cargo, then adds weapons and gear in cargo, and adds the action to repair the vehicle if it is damaged. I haven't checked, but I would assume that the turret ammunition is multiply too.) condition: alive hmmwv_s2 On Act. null = [hmmwv_s2] execVM "request_vehicle_drop\veh_add_gear_s2.sqf"; veh_add_gear_s2.sqf: hmmwv_s2 setVehicleInit "hmmwv_s2=this; this setVariable ['selections', []]; this setVariable ['gethit', []]; this addEventHandler ['HandleDamage',{ _veh = _this select 0; _selections = _veh getVariable ['selections', []]; _gethit = _veh getVariable ['gethit', []]; _selection = _this select 1; if !(_selection in _selections) then { _selections set [count _selections, _selection]; _gethit set [count _gethit, 0]; }; _i = _selections find _selection; _olddamage = _gethit select _i; _damage = _olddamage + ((_this select 2) - _olddamage) * 0.25; _gethit set [_i, _damage]; _damage; }]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; this addMagazineTurret ['100Rnd_127x99_M2',[1]]; clearWeaponCargo this; clearMagazineCargo this; this addMagazineCargoGlobal ['PIPEBOMB',2]; this addMagazineCargoGlobal ['20Rnd_762x51_B_SCAR',20]; this addMagazineCargoGlobal ['MAAWS_HEAT', 10]; this addMagazineCargoGlobal ['stinger', 4]; this addWeaponCargoGlobal ['M110_NVG_EP1',2]; this addWeaponCargoGlobal ['MAAWS', 2]; this addWeaponCargoGlobal ['Stinger', 2]; hmmwv_s2 addAction [('<t color=''#FF0000''>' + ('Repair HMMWV GPK M2') + '</t>'),'vehicle\veh_repair.sqf',nil,+50,true,true,'','alive hmmwv_s2 && (!canMove hmmwv_s2 OR (damage hmmwv_s2>0 && damage hmmwv_s2<1)) && player distance hmmwv_s2<5'];"; processInitCommands; How should this script be changed, or how should it be executed so it will add the weapons and gear to the vehicle and not multiply for every player on the server? It seems as though the script executes twice if there are 2 people on the server. I need it to execute only 1 time and add the weapons and gear and other stuff to the vehicle and make sure that all players can then see the correct amount of weapons and gear in the cargo of the vehicle.
  6. I just wanted to let my friends in this editing section know that I just released a new 14 Player Coop Combined Operations Mission called "Annihilation" at Armaholic, it is waiting to be authorized and processed. It's a domination mission, but I designed it from scratch and I did not use an existing domination mission or template, nor did I use any scripts from an existing domination mission. The mission comes packed with a lot of cool features, most of which are my own inventive scripts. The only required addon is the island Faysh Khabur 1.2 I tested the mission with various addons, like ACE, and found out that it does cause errors and other problems, so it is probably best to play the mission using only the addon island. You can go to my Annihilation Mission Page and download the mission and read a full description of all of the additional features incorporated in the mission. I gave credit to all those that helped me with the making of the mission as well as for helping me create various scripts that are used in the mission. I also gave credit to the authors of any scripts that I used in the mission. Mostly, I wanted to thank everybody in these forums for all of their help when I asked for it. I designed levels/maps/missions for a bunch of different games and I have never visited an editing forum that was more helpful and friendly than this forum. The forum moderators here run a good clean ship and I thank them too. I have a few other old missions that I've never released that I am going to try to get released soon, for instance, a coop Jet Fighting mission and a coop Attack Chopper mission, both of which are awesome missions. I just want to test them further and make sure they are completely bug free. I have no plans to make more Arma 2 missions in the near future since I will be going back to my roots and working on my Unreal Editor skills so I will be ready to make maps for the game "Takedown" when it finally releases. I might make some Arma 3 missions in the future, but I would rather wait until Arma 3 has been further developed or fully released. Anyway, I hope the mission turns out to be some what of a success. I put a lot of work into it and tested it to death to make sure everything is working perfectly and bug free. Have fun! :)
  7. Sample Mission: suicidals_radio.zip This video demonstrates how it tested on a dedicated server(my crappy pc, lol). Full Description: Basically what happens is... when the mission starts and there is at least 1 player present a repeated trigger is activated by "player==player", then the music starts playing track 1 and will eventually cycle through all 10 tracks if left alone. A player can run over to the radio at any time and either turn the radio off, or they can turn the radio off and back on again, which will cause it to cycle to the next song - and they can continue to keep turning it off-and-on until they find a song they like. Now if somebody joins in progress, that new player will automatically activate the "player==player" trigger and the radio will simply cycle to the next song and all players (in range) will immediately hear the new song start to play. Yeah, it's a bit different from how I initially wanted it to work, but I actually like how this worked out. So if you are standing around at base and 5 players join the server during the course of 1 minute, you would hear the radio cycle through 5 tracks, kind of like your friend playing with the radio station dial in you car. This could seem annoying if you are just standing around at base picking you nose, but it's really no different than if somebody were to walk over to the radio and turn the radio off-and-on 5 times trying to find a song they like. I haven't decided on what songs I want to use in my own final version, but the mission I am eventually going to use this in only has 14 coop players, which is fine, but I wouldn't want to use the radio in a mission that has like 50 players unless I were to change the "player==player" activation to some other activation method, otherwise the radio would constantly be cycling to a new song as many players come and go on the server. So this radio playlist script is probably better suited for small missions that do not have a lot of players. I never create missions with more than 14 players. Normally, most players would be out in the field killing bad guys, so the radio is only entertaining for the moment when you respawn at base and need to goof around in the ammo crate, or run over and hop in a vehicle or whatever you need to do at base before heading back to the battle. And it's entertaining for the player that joined in progress. It definitely adds a little life to an otherwise very boring and dreadfully quite base. Again, the radio in this sample mission is only triggered by "player==player" or if somebody actually walks over to the radio and plays around with the on/off actions, otherwise the radio just plays on it's own and does it's own thing and requires no interaction at all. Also, if somebody turns the radio off and leaves it off, the radio will turn back on and start playing the next song when a new player joins the server. I never wanted the radio to play songs randomly, but instead I wanted it to use a set playlist so each song has a fair chance to be heard, plus it's nice to remember what order the songs are in if you create your own long list of songs. During testing, when I left the server and rejoined, the radio started to play right away, but the on/off actions were not available for a few seconds, which is not a problem since they do eventually appear. Install Instructions: It's very simple to implement into your own mission. Simply open the sample mission and select everything except the players and the respawn_west marker and hit (Ctrl-C) to copy. Open your own existing mission and hit (Ctrl-V) to paste, or (Ctrl-Shift-V) to paste in "same" place. Copy the "radio" and "sound" folders from the sample mission and paste them into your own existing mission folder. If you already have a "sound" folder, you can copy the contents and paste them into your "sound" folder. Add the following lines to your init.sqf: mission_started=true; publicVariable "mission_started"; Add the following line to your description.ext: #include "sound\sound.cpp" Or open the sound.cpp file with a text editor and copy the script and paste it in the bottom of your description.ext file. If you have experience with .ogg sound files, you can easily replace the songs in the playlist with your own songs by simply using the same file names track1.ogg, track2.ogg.. etc, but... VERY IMPORTANT, you then need to open the "radio_playing.sqf" file and change all of the "sleep times" for each song and make sure that they match the length of your replacement songs. So if you replace track1.ogg with a song that is 3 minutes long, then the sleep time for track1 should be "sleep 183;" giving it an additional 3 seconds of slack time since Arma 2 does not maintain "real time" accurately. I use Goldwave sound editor since it is very easy to use and it loves .ogg files. Goldwave is free, just google it. Another thing to keep in mind if you plan to replace sound files, and this is very important too, in the "sounds.cpp" cfgSounds list of ogg sound files that you replace, it is extremely important that you do not use a volume of 1, otherwise the sound will cast too far and when players hear the sound from very far away, it will sound crappy and the pitch will be badly distorted at a far distance. It's most noticeable when you are flying fast in a chopper to-or-from base. When you fly away from base, the pitch drops deep, when you fly towards base the pitch increases and sounds like mickey mouse, to avoid this from happening you should keep your volume setting below "0.5". The volume setting actually behaves more like a sound radius setting than a volume control, so try to keep your sound volume no higher than 0.5 and no lower than 0.3 or it will sound like crap. sound[]={"sound\track1.ogg",[color=red][b]0.5[/b][/color],1}; I am in no way an expert at scripting, quite the opposite, so I more than welcome any outside help with fine tuning the scripts or fixing whatever might be buggy. I did not copy anybody's script, nor do I know if anything like this exists that plays cfgSounds (not cfgMusic). I'm still amazed I got it to work at all.
  8. LOUDSPEAKER_PLAYLIST.zip The example mission shows how to add loudspeaker to your mission that will play through a custom playlist of songs. There is no ability to interact or select an action to change to the next song. The loudspeaker does it's own thing. When a player disconnects from a dedicated server during a song and then reconnects, the player will not hear any music until the next songs starts. I have an older version of a PA System radio script, but I was not happy with it. This method works much better and the scripts are easier to work with when it comes to replacing the songs with your own selection of songs. I created the loudspeaker pole by spawning a lamp post and flipping it upside down and then I pushed it into the ground a little and attached 2 pairs of speakers to the top facing opposite directions. In the editor it just looks like 1 loudspeaker object, the loudspeaker init spawns the pole and second speaker. Makes it easier to deal with. It doesn't hurt to test it out. Sorry the movie sucks, but I just wanted to show how it works when you disconnect and reconnect. The songs are medium quality, you can easily replace the songs with lower quality sound files to keep your overall mission file size small. If you replace any of the music, make sure that you add the correct timing for each song and add an extra 3 seconds. So if you add a song that is a minute and a half long, set the time to be 93. It's simple.
  9. I changed my script. I am going to use it in the next version of my team kill punish script. If a pilot teamkills and is teleported into jail, it used to move either an assignedGunner or assignedCargo unit into the driver seat, but I kept playing with it and tried to get it to work for all turret positions and this is what I came up with: part of the script that would eject the team killing pilot from the vehicle... if (vehicle _killer != _killer) then { null = [_killer] execVM "jail\check_crew.sqf"; doGetOut _killer; sleep 0.5; }; //then the killer/pilot gets teleported into jail. check_crew.sqf: _killer = _this select 0; _veh = (vehicle _killer); if (driver _veh == _killer) then { waitUntil {driver _veh != _killer}; }; _man0 = _veh turretUnit [0]; if (!isNull _man0) exitWith { waitUntil{!(isNil "BIS_MPF_InitDone")}; [nil, _man0, "loc", rEXECVM, "jail\toDriver.sqf", _man0] call RE; }; _man1 = _veh turretUnit [1]; if (!isNull _man1) exitWith { waitUntil{!(isNil "BIS_MPF_InitDone")}; [nil, _man1, "loc", rEXECVM, "jail\toDriver.sqf", _man1] call RE; }; _man2 = _veh turretUnit [2]; if (!isNull _man2) exitWith { waitUntil{!(isNil "BIS_MPF_InitDone")}; [nil, _man2, "loc", rEXECVM, "jail\toDriver.sqf", _man2] call RE; }; _crewList = assignedCargo _veh; _crewMan = _crewList select 0; if ((!isNull _crewMan) && (_crewMan in _veh)) exitWith { waitUntil{!(isNil "BIS_MPF_InitDone")}; [nil, _crewMan, "loc", rEXECVM, "jail\toDriver.sqf", _crewMan] call RE; }; toDriver.sqf: _unit = _this select 0; _veh = (vehicle _unit); unassignVehicle _unit; doGetOut _unit; sleep 1; _unit assignAsDriver _veh; _unit moveInDriver _veh; _unit action ["EngineOn", _veh]; _veh engineOn true; if ((local _unit) && (!isServer)) then { cutText ["YOU ARE NOW THE PILOT","PLAIN DOWN",2]; sleep 8; cutText ["","PLAIN DOWN",2]; }; The only problem I have encountered when testing is... on a dedicated server, if an ai unit is moved into the pilot seat, the engine never turns on and the air vehicle crashes into the ground. When I test in single player or hosted environment, everything works smoothly. You can see in the script that I tried using 2 different methods to get the engine to turn back on, but both fail to work on a dedicated server. Any ideas as to how I can get the engine to turn back on for a dedicated server?
  10. Out of the handful of vehicles in my mission, I have one Littlebird attack chopper and sometimes the pilot accidentally kills a teammate or civilian with rockets or minigun fire - and the pilot then gets punished and ejected and sent to jail for a couple of minutes. What I would like to do is switch the co-pilot into the driver seat before the chopper crashes. I just need to do this for this one vehicle, none of the other birds in my mission offer the ability for a pilot to fire weapons. The AI are disabled in this mission, so I don't need to worry about ai really, but it would be fun to test it with ai and see it actually work. Anyway, lets say player "s1" is the driver of littlebird1 and when he gets tossed into jail there is a publicVariable "s1_inJail" that fires right away. So I have a script that first checks to see who did the wrongful kill, then it checks to see what vehicle the killer was in and depending on if it's player s1 through s14, it will execute the corresponding script, so... if (s1 == driver littlebird1) then {[] execVM "check_littlebird1.sqf";}; So the first thing I assume I need to do is waitUntil "s1_inJail" is ready to be used as a condition. But then I need to somehow get a list of units "s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14" that could possibly be in the cargo seat of littlebird1, and then do something like the following. check_littlebird1.sqf waitUntil {s1_inJail}; // now I need to somehow get a list of possible units s2-s14 that might be in the cargo seat of littlebird1 // and then switch that unit into the pilot seat - hopefully before the chopper crashes and ruins any chance of the passenger being able to eject. if ((s1_inJail) && (_unit in littlebird1)) then { unassignVehicle _unit; doGetOut _unit; sleep 1; _unit assignAsDriver littlebird1; [_unit] orderGetIn true; _unit moveInDriver littlebird1; littlebird1 engineOn true; }; Now I tried doing this so many different ways. I'm sure I was close a few times, but I just couldn't get it working - and dealing with passenger seats is sometimes tricky, especially when you can use commands like: gunner _veh driver _veh but there is no... cargo _veh
  11. Sorry I couldn't help.
  12. addMagazineTurret won't work for Arma 2. I don't think there is another way to do what you want. I think your best bet is to buy Arrowhead. www.gamersgate.com is currently selling it for $19.90 and they sell games world wide. Or you could simply rearm the entire chopper by using a script.
  13. With CLY heal, when you die, you do not become incapacitated, but instead you are just dead and will respawn normally. CLY Heal might work with ACE wounds, but I'm almost positive that it will not work with Norrin's revive because I have tried and it didn't work. Even the most basic heal script seems to not work at all with Norrin's revive. It is possible to use all of the ACE features in a mission and leave out just the ACE wounds stuff, which I have done and I did use CLY Heal.
  14. The punish script will not activate if victim is also the killer. The game might tell you that you killed yourself, but the punish script will not punish you for it. You also cannot be punished if you are dead, but I might implement a feature where the killer can be sent to jail upon respawn. I am also trying to count the number of victims and give each victim the opportunity to vote if the killer should be forgiven and released from jail - at which point the killer would only be released from jail if more than 50% of "Forgive" votes cast are "Yes".
  15. The new version is still not ready for release - it needs to be tested more thoroughly on a dedicated server and I need to find somebody to help me test it. Here's a preview video showing some of the new changes: It might be easier to read the messages in the movie if you choose high detail and fullscreen. I used an enemy (Takistan Army rifleman) to test the teamkill script, that's why in the video you don't see a teammate score get penalized for team killing me. Normally the script is set so the enemy cannot trigger the punish script, but for testing purposes I changed it. You also see me team kill 2 teammates with the Littlebird chopper. What would happen in that situation is... only one of the victims (the first killed)would be given the chance to forgive. I'm still looking into other solutions for that, but for now it shouldn't cause any problems.


    I'll assume that you've already tried disabling the "save" button completely. I'm still looking to find out how to disable the abort button. http://forums.bistudio.com/showthread.php?145625-Respawn-button-delay

    Taskmaster 2

    First off, ELLIPSE is a shape, not an icon, that is why it is not in the list of marker types. Markers can either be an icon or a shape, but not both. So that is probably why you were having problems with that. Taskmasters use it's own helpful markers. I actually edited the taskmaster script slightly to use different markers specific to my mission. But I also use many other markers for specific targets and other things, so that's when I need rely on other methods. This is what I would do... Place an empty marker in the mission and name it according to the task, for example if it's task 3, name the marker "task3_AO_marker". Then place a trigger in the mission radius: 0 activation: None trigger name: task3_trigger condition: task3_started on Act: "task3_AO_marker" setMarkerShape "ELLIPSE"; "task3_AO_marker" setMarkerSize [1000, 1000]; "task3_AO_marker" setMarkerColor "colorRedAlpha"; deleteVehicle task3_trigger; When you want the trigger to activate, use this in a script: task3_started = true; publicVariable "task3_started"; It will activate the trigger, change the empty marker into a big red (slightly transparent) ellipse marker 1000x1000 in size. Then the trigger will automatically delete itself permanently so it cannot be activated again by players that join the game later(JIP), because if you later set the marker to be green, JIP players will turn it back to red if the trigger still exists. With this method, JIP players will see the marker when they join even if it was created before they joined. Shuko taught me stuff like this himself a over the past couple of years, I've learned a lot from him. His taskmaster script is a life saver. I use Taskmasters2 to generate random tasks, which will create my basic red AO marker when a task is assigned, but then I use a trigger to activate many other target/objective markers within the AO. It's a simple system. And as targets are destroyed, the target icon markers change from red to green and players that join late can see exactly what has been accomplished so far and what targets still need to be destroyed, captured etc.
  18. The whole reason why I use the heal script, is so that there is no need for a medic at all. Everybody can heal themselves, but they have a set number of bandages that they can use - and when they run out, they need to get more from a field hospital or medical vehicle. I won't use first aid modules for several reasons, for one the animations are buggy at times. Things like dragging bodies and carrying bodies is a great feature, until some smart-ass thinks it's funny to carry you on his shoulders for 20 minutes, or disconnect while you are on his shoulders and leaves you floating in mid air. Revive scripts are great, but nobody ever seems to want to wait for a revive, they all hit the "Respawn" button the first chance they get, which really bugs me when I run 300 meters through the open, under fire, to revive somebody and they decide to hit "Respawn" the moment I am 5 feet away. That's when I get shot and I need a revive and I wind up lying there for several minutes as other players run right passed me and don't bother to revive me at all. That's when I wish there was no revive at all, besides the fact that I spend 80% of my time in the game trying to revive players instead of actually fighting the enemy. So many times I tell a friend not to revive me because there are enemy in my area, but then my friend tries to revive me anyway and gets killed and then the both of use sit there for several minutes screaming at the sky. So when it comes down to it, Celery's heal script is what I consider to be the best alternative to a revive system.

    Stolen map/mission

    I don't recommend doing this unless you absolutely feel that your mission needs a little protection. It was explained to me in the past that it is better to share even if somebody might attempt to steal your mission, butcher it and then try to take credit it for it, and I'd have to say I agree no matter what the circumstances. It is possible to add a light form of "save" protection to a mission by renaming the mission folder using special characters and then using a 3rd party program to save/compile the mission to pbo. If an inexperienced mission creator later downloads the mission pbo file and extracts the mission and opens it in the editor, he or she will be unable to "save" new changes to the mission, because the strange characters in the mission name will cause the editor to save the mission as a new folder name, but the old folder name will still appear in the mission name field when the person clicks the "save" button. The person editing the mission won't realize that the mission saved to a new empty folder. The result is that it will first cause confusion and the inexperienced mission creator will wonder why the new changes he/she is making to the mission are not saving at all. They could add an A-10 on the runway and then hit save and then preview the mission and there won't be any A-10 there at all, because it saved to a different mission folder. It might take them a while to figure this out. After several attempts to save changes to the mission without any luck, the person might give up and assume that the mission is protected some how - without ever realizing that each time they hit save - that the changes they made were being saved to a different mission folder. In order to actually be able to save changes to the mission, they would have to first extract the mission pbo file, then rename the mission folder without special characters in the name, then they could open it in the editor and save new changes to the mission. Chances are if they rename the mission, they might use part of the original mission name and possibly still have strange characters in the name, causing the mission to still save to a new empty mission folder without them realizing. Even a more experienced mission creator might not figure it out right away, because it's so obvious - they fail to notice it. Anyway, it's not a fool proof method to adding protection to a mission, but in DeltaFOX209's case, it might have prevented his mission from being butchered by a noob. The first reply in this thread from BlackMamb - he referred to some dude. I think that dude might have been me :rolleyes:
  20. I moved the dialog over to the right where a hint message would normally appear. It works fine. It's actually better this way since I do want the team killed victim to be able to see the scoreboard. I tested it at different resolutions and it looks good and does not get in the way of the scoreboard at all. I added a 20 sec countdown timer that can be seen in the dialog window and if players do not choose "Yes" or "No" the dialog will self-close after the 20 sec timer expires and default to "No". When I first tried to create a dialog for a mission a while back, I struggled to get it to work. There were very few dialog tutorials out there, if any, and most did not make much of any sense. The only good tutorial I found was at the ofpec website and later that same day their site was put "under construction", so I got all of about an hour to view the tutorial, which wasn't long enough. Ever since then their dialog tutorial page still says "under construction". I eventually figured out how to create a dialog and I made several in my mission that are exactly like the one in Iceman77's tutorial. For instance, in my mission, I added an action to all players that allows then for to deploy a static GPMG every ten minutes, but sometimes players will accidentally choose the action when they did not mean to and it suddenly deploys the static tripod machine gun in a place that is useless and then they cannot deploy it again for ten minutes. So I wanted to create a dialog that would appear if they choose the action that asks them "Deploy GMPG?" with a "Yes" & "No" buttons. This prevents players from accidentally deploying the GPMG in a useless place. I also added an image in the dialog for the players that do not know what a GPMG is, so they can actually see what it looks like in the image - letting them know exactly what it is that they would be deploying. I added additional checks in the script so players are warned that they cannot deploy the GPMG within 150 meters of base, or deploy the GPMG above ground level. And after the GMPG is deployed, if they try to deploy another GPMG before the 10 minutes has passed, they are given a hint message telling them something like... "00:08:23 remaining before you can deploy a new GPMG". Players in my mission also have the ability to "Request Vehicle Drop" every ten minutes and it also uses a Yes/No dialog with a picture of a vehicle dropping. The leader in my mission can deploy a Rally Point every 10 minutes that teammates can teleport to, which also uses a Yes/No dialog so the leader won't accidentally deploy the Rally Point. The reason why I wanted to tell people about how I use the dialogs in my mission is because a lot of mission creators do add actions to players that allow them to be able to do special things - and most often players will accidentally choose an action when they did not wish to. So dialogs are very helpful - and it makes any mission seem more professional in design. Anyway, I eventually learned how to make my first dialog by downloading Curry's View Distance script from Armaholic. I remembered that his view distance script used a simple dialog similar to what I wanted to create for my mission. But I had a lot of problems dissecting his script and trying to create my own. I later stumbled across the GUI Editor by Karel Moricky, which is the same GUI editor that Iceman77 suggested to use in this thread. It is really amazing how helpful the GUI editor can be. It saves hours of work, but it was never advertised to the public enough, and many mission creators don't even know that it exists. This thread is extremely useful and Iceman77's tutorial and sample mission helps make creating dialogs much easier, especially for somebody trying to create a dialog for the first time. I wish this thread existed back when I was struggling to create my first dialog. To me, writing some script for a mission is completely different than creating a dialog - they just seem like tow totally different worlds. I think this thread should be sticky'd so it never gets buried. I personally wish to thank Iceman77 and Karel Moricky for their efforts. Oh, and you too Curry :)
  21. Well, the first page of this thread, Celery explained... Put this in your init script: [player,0.2,0.15,3,true] execVM "cly_heal.sqf" He means your init.sqf file in your mission root folder. If you do not have an init.sqf file, just create one and add that line to it. ---------- Post added at 12:56 AM ---------- Previous post was at 12:39 AM ---------- It's important when using Celery's script that you addAction to field hospital tents and medical vehicles so you can take more bandages when needed. I know it was discussed in this thread, so if you don't know how to do that, just read through this thread thoroughly and you should find out how to do it.
  22. My "Forgive" team killer dialog appears for the victim when he/she is dead, but the scoreboard is in the way. I don't want to disable the scoreboard completely throughout the entire mission for all players, but if I could either temporarily hide the scoreboard until the victim chooses "forgive yes/no" or have my dialog appear in front of the score board, then I could solve the problem. I figured the easiest method would be to have the dialog appear in front of the scoreboard, but I don't know how to do this. Any ideas as to how I could do this? ---------- Post added at 04:00 PM ---------- Previous post was at 03:18 PM ---------- I guess I could simply move the dialog over to the right a little - out of the way of the scoreboard. But I would still like to know if there is a way to hide the scoreboard momentarily.
  23. I am just finishing some last touches on a new version of the punish script. It's much easier to implement into a mission now too. No more need to name your playable units s1, s2, s3, etc. There is also working "Forgive Yes/No" 20 sec dialog feature that appears for victims. I'm still working out some bugs with attach chopper pilots that fire rockets and teamkill and then both the pilot and gunner get punished. I think once the pilot is sent to jail - any rockets that are still airborne that then kill a player then get blamed on the gunner, or something to that effect. My last changes seemed to have fixed that problem since I have yet to see it re-occur. There is also a new check system for moving gunners or crew members in the pilot seat if the pilot was sent to jail for team killing. There are various other fixes incorporated as well. So far it has been testing fine. I just need to figure out a way to make the victims "forgive" dialog to appear in front of the score board. I can help you get it working in your mission when I am done.
  24. I use a modified version of this script in my missions. It works great. I even added a hud feature in the bottom right corner of my screen that always shows bandages remaining "Medkits: 3". The only strange bug I've encountered is the ability to bandage an enemy, heh, but it's kind of funny. I never use first aid modules, so I don't know if they would conflict with Celery's script. I do know that I have always had problems in the past when I use the first aid modules - even if I don't use any heal scripts at all. That is the main reason why I use Celery's heal script - so I don't have to use modules or rely on brainless ai medics or medics that are never around when you need one.

    HUD over other units

    I'm just curious. At first I thought you just wanted to force the game to show the player's name and distance all the time, without having to aim at the player, but you said you wanted to mod that stuff. What did you want to change about it?