Jump to content

mindstorm

Member
  • Content Count

    247
  • Joined

  • Last visited

  • Medals

Everything posted by mindstorm

  1. I have a helicopter set up on mission start. After everyone is loaded it should start moving toward a waypoint. So I created a waypoint: Condition: {alive _x && _x in heliExtract1} count [scientist1, Scientist2, Scientist3, Scientist4, Scientist5, Scientist6, Scientist7, Scientist8, Scientist9, Scientist10, Scientist11, Scientist12, Scientist13, Scientist14, Medic1, Medic2] == {alive _x} count [scientist1, Scientist2, Scientist3, Scientist4, Scientist5, Scientist6, Scientist7, Scientist8, Scientist9, Scientist10, Scientist11, Scientist12, Scientist13, Scientist14, Medic1, Medic2]; At mission start however the chopper starts up and flies away. Even if non of the people entered it. In the debug window the condition actually says "false" so its not the condition syntax. I also tried to insert a waypoin "load" before this waypoint, but then the chopper flies up and lands again to commence loading which is not wat I want. Anny suggestions?
  2. After a while I just let a trigger make the waypoints: WP1_W = (group heliExtract1) addWaypoint [position WP1, 0]; WP1_W setWaypointBehaviour "CARELESS"; WP1_W setWaypointSpeed "FULL"; WP1_W setWaypointCombatMode "BLUE"; WP2_W = (group heliExtract1) addWaypoint [position WP2, 1]; WP2_W setWaypointBehaviour "CARELESS"; WP2_W setWaypointSpeed "FULL"; WP2_W setWaypointCombatMode "BLUE"; Not idael but it worked, untill I let AI entere te vehicle. I have 2 groups. As soon as an AI commanded group enters the vehicle it lifts of eventho the trigger is not triggered. Apparently the AI is giving orders to the helicopter? Anyone know how to disable this?
  3. So, after about 1 year of not having worked with Arma3 I decided to give it annother go and make a mission for the upcomming lan event we have. My god what an annoyance. I made my mission, tested it in the editor and everything seemed to work perfect. Started it on the dedicated server and that was about when everything broke. Example 1: Players are teleported into the cargo of a chopper at mission start. This is the choppers innit. clearMagazineCargo this; clearWeaponCargo this; clearItemCargoGlobal this; this addWeaponCargo ["acc_flashlight", 2];{this removeWeapon _x} forEach weapons this; None actually gets executed on the client. How is this possible? It's in the init afterall?!?! The cargo is not cleared, new weapons are not added. Example 2: Players should be teleported into the chopper at mission start, with a fade out before and fade in after. This is in the init.sqf: if!(isDedicated) then { waitUntil {!isNull player}; waitUntil {player == player}; titleCut ["", "BLACK OUT", 0]; player moveInCargo heliExtract1; titleCut ["", "BLACK IN", 1]; }; As long as you are host this works fine. But if you're a client it doesn't work... But why? It turns out that after initalization you are not local to yourselve (!?!?) and therefore movinCargo does not work. Oh wait let's fix this with: waitUntil {local player}; And supprise supprise. This doesn't work. Putting in a sleep 5 made it work for some players, not for others. Sleep 10 seemed to fix it (so due to network latency?). Then. lets spawn some dead bodies with no gear on them, proceeds to place bodies all over the place with this in init. Example 3: this setDamage 1; removeAllItems this;removeAllWeapons this; And again, not working.... Why?!?!? It's in the init and should be executed on all clients? Wth is this!?!? Example 4: Heli crashes. Make player invurnable and spawn him somwhere safe near heli with this command. _position = [position _vehicle ,10 ,20 , 1, 0, 0, 0] call BIS_fnc_findSafePos; player setPos _position; Notice how the 10 is suppose to say minimum distance from center. Gues what happends? Yes, I spawned right on top of the crashed heli. These are just the annoyances I've come accross after trying to host my mission on a dedicated server. I thought I knew a fair amount of ARMA and scripting on but half of this stuff is just unacceptable if you ask me. For example the movincargo, I spend about 1 hour looking for a solution for it before I finally saw someone on the forum mention it. Besides the dedicated server issues (probably meaning they fail on server-client with non-dedicated aswell) I also encountered the useueall stuff: No errors when tring to play a .OGG file with unsupported birate (and thus did not play). AI spawning in advance and teleporting to location being about 20times slower then creating a new one on location Weird error in GUI elements because I used a static referenced in BIS wiki which apparently is not used anymore AI refusing to fire at unarmed enemies 50% of the time AI refusing to fire at civils even when setFriend is used Huge FPS drops when calling moveTo on AI with toPos on water AI helicopters refusin to enable searchlight no matter what Spawning more then 140ish units in a group not working (without giving an error) Probably more Don't get me wrong. I really love arma and how open their engine is. But for the love of god is about time they take a serious look at their scripting engine. Currently when I'm making stuff I feel like it's about 25% typing code and 75% trying to find out why the typed code is not working. Yes some cases it's not working because "code" but it's just so annoying that half of these cases it's because some weird thing from the arma engine.... Anyway. If anyone has some good feedback on how to fix my issues I would really appreciate that. Besides that I just hope devs start doing something about the amount of wtf's I (and probably others) have while coding this game.
  4. The spot is probably to small so it takes of and lands 50 meters away to commence loading.
  5. http://puu.sh/cRTzM/8857844ed4.png (112 kB) Tried placing is closer by the chopper. But even with this is doesn't work. ---------- Post added at 18:43 ---------- Previous post was at 18:34 ---------- I did what you said but even when putting in on top of the chopper it still leaves and continues with the next waypoint. Could you maybe upload the test version so I can check what I am doing differently.
  6. Ok. And any tips on why some players are not moving into the helicopter at mission start? And again. Can anyone answer this: I thought stuff placed in the INIT of units placed on the map is executed on every client. Just like with triggers. Am I right on this one or not?
  7. Thx for the reply. But for example clearWeaponCargo in init means it will be executed on client and server right? Or am I missing some crusial information about how init script of vehicles placed from the map editor work? Or the player moveInCargo, how on earth am I going to fix this in a decent matter? Each client executes the script themselve. Should I really build in a moveIncargo on the server aswell because... wel arma?
  8. Dynamics Race Script I'm proud to present to you my race script. With this script you can create your own race maps really simple!!! Content Features: 8 Different race modes Vote system for race mode Vote system for damage enabled/disabled Vote system for vehicle type (all vehicles available, even carts without dlc*) Team selection dialog As many players as you like (have not tested performance with high numbers) Countdown timer Race timer Current Position Checkpoints Race result screen Race continues for 60 seconds after 1st player finishes Spectate mode for finished & JIP players Vehicle reset/repair Vehicle reset if leaving the road Smoke screens Explosion triggers Traffic spawning triggers A-B race or multiple laps *You can race with carts since my scripts places players into the vehicle at the start of a race. Players who do not own the carts DLC get the buy this DLC option after the mission ends. Race modes: Normal race: Normal race. Damage can be enabled or disabled. If damage is disabled taking damage will slow you down. Driver & Gunner: Every vehicle has a driver and a gunner. The gunner can shoot at other vehicles, if damage is disabled it will slow them down. For balance reasons the gunner can only shoot in front of the vehicle. Team race:* Same as driver & gunner race but each team also has a Commander. The commander has a spectator view of the map and he can activate commander features. Features cost commander points which he gaines every second. Features include: Spawn smoke/explosive barrels, boost, repair, spawn and control infantry (for short time) and spawn and control vehicles. Cops & Robbers* In this race robbers are trying to escape with armored vehicles from the police. The robber team consist of a driver & gunner. The cops must try to halt all robbers. They can do this by destroying them or by making them move slower then 10km/h for 5 seconds. Cops, Robbers & Commander* Same as cops & robbers, only this time the police are assisted by commanders. Cat & Mouse* In this race each time consists of a mouse and one or multiple cats (max 6 teams, more cats per team depending on player amount). A team wins if their mouse finish first. Cats must obstruct other player's mouse. Cat, Mouse & Commander* Same as cat & mouse, but each team also has a commander. *Race are only available for voting once enough players have joined the server. If there is an uneven player amount commander slots will be available for those players. Video *If you have a decent rig and play this mission with friends please record video's of it so I can create a better video. Credits will be given of course.* More video's Installation Below is the bare minimum listed to make a nice race mission. More stuff is located in the readme file on github. init.sqf call compile preprocessFile "dynrace\init.sqf"; Mandatory: DYN_RACE_MUST_STAY_ON_ROAD = bool; Optional: DYN_RACE_LAPS = int; (default is 1) description.ext #include "dynrace\client\ui\dynrace.hpp" class CfgSounds { sounds[] = {}; class BEEP { name = "BEEP"; sound[] = {"audio\beep.ogg", 1, 1}; titles[] = {}; }; class BEEP_HIGH { name = "BEEP_HIGH"; sound[] = {"audio\beep_high.ogg", 1, 1}; titles[] = {}; }; }; //Params are all optional! class Params { class MB_WEATHER_PARAM { title = "Starting Weather"; values[] = {0,1,2,3,4}; texts[] = {"Clear","Overcast","Rain","Fog","Random"}; default = 4; }; class DYN_RACE_DAYTIME { title = "Time Of Day"; values[] = {1, -8, -4, 0, 6, 13}; texts[] = {"Random", "Early Morning", "Morning", "Noon", "Sundown", "Night"}; default = 0; }; class DYN_RACE_LAPS { title = "Amount of laps"; values[] = {2,3,4,5}; texts[] = {"2","3","4","5"}; default = 2; }; class DYN_RACE_DEFAULT_SMOKE_SCREEN_AMOUNT { title = "Smoke screens available"; values[] = {0,5,10,20,50}; texts[] = {"0","5","10","20","50"}; default = 10; }; class DYN_RACE_TIMETOFINISH { title = "Time to finish (after 1st person finishes)"; values[] = {0,30,60,120}; texts[] = {"0","30","60","120"}; default = 60; }; class DYN_RACE_ROBBER_SPEEDLIMIT { title = "Robber speed limit (if lower then this & vehicle near they get caught)"; values[] = {5,10,20,30,40}; texts[] = {"5","10","20","30","40"}; default = 10; }; class DYN_RACE_ROBBER_DISTANCELIMIT { title = "Robber distance limit (if distance from cop to robber is lower then this & speed is lower then above)"; values[] = {5,10,15,30,40}; texts[] = {"5","10","15","30","40"}; default = 15; }; class DYN_CAN_SHOOT_BACKWARDS { title = "Gunners can only shoot forward"; values[] = {0,1}; texts[] = {"Only forward","Also backward"}; default = 1; }; class DYN_ENABLE_AIPARAM { title = "Enable AI (only use for testing)"; values[] = {0,1}; texts[] = {"Disable","Enable"}; default = 0; }; }; Map markers DYN_RACE_Respawn: Respawn location for racers after a race DYN_RACE_Start_Position: From this point start positions will be generated, along the road or not depending on init setting. DYN_Checkpoint_X: start with DYN_Checkpoint_1 and increment. Don't create the finish checkpoint. Face in direction of track. Trigger DYN_RACE_FINISHTRIGGER: This is your finish line. Face in direction of players. No onActs or conditions. For more triggers see readme file. Downloads Github Thread with 3 example missions Known issues You can test maps with AI, they won't be much of a match tho. With AI your current position won't display correctly. Finish positions work however. Version history Credits Team Dynamics: Testing Killzone_Kid: For his help with tons of things. Without him I would have spend a lot more time creating this script. Kronzky: String functions Meatball weather script JoSchaap, JW Custom, Chillroy and many others from arma3 scripting forum: Testing/troubleshooting and help with scripting.
  9. mindstorm

    [MP][RACE] Atlis & Stratis Race maps

    Updated all missions to version 0.0.4 of my script. Including: Mission parameter: Weather Mission parameter: Time of day Some more (minor) mission parameters Better race type descriptions Info about reste at start of race Info about gun being disabled for first 20 seconds of race And some minor bugfixes.
  10. After some time away I noticed it was time to update my Dynamics race script again. It had some bugs that came with the new arma versions. I also created 2 new missions for Atlis. Content Race types: Normal race with/without damage Race with driver & gunner with/without damage Cops & Robbers: 1 (or more depending on player amount) armed vehicle(s) with 2 players are robbers. Rest is police and must arrest (halt) them before robbers reach the finish. Cat & Mouse: Teams of 2 players: Each player has a mice (slower vehicle) and a cats (faster). Cats must prevent the mice from opponent teams from finishing. If more then 12 players teams get larger. Driver, gunner & commander race. Cops & Robbers + Commander: Same as cops & robbers but with commander. Cat & Mouse + Commander: Same as cat & mouse but with commander. Features: Vote system for race type Vote system for damage enabled/disabled Vote system for vehicle type. Team selection Vehicle reset up to 32 players Race timer & results Commander actions Checkpoint system Spectator mode JIP Support Many more You can run this missing with AI in single player, or multiplayer. But they won't be much of an opponent and your current position will most likely not be correct. The finish registration works tho. Video *If you have a decent rig and play this mission with friends please record video's of it so I can create a better video. Credits will be given of course.* More video's Version history Downloads Atlis race: Kavala Atlis race: Zaros Stratis race Whole pack Armaholic: Dynamic Race maps RAC-32 Steam Atlis race: Kavala Atlis race: Zaros Stratis race Credits Team Dynamics: Testing Killzone_Kid: For his help with tons of things. Without him I would have spend a lot more time creating this script. Kronzky: String functions Meatball weather script JoSchaap, JW Custom, Chillroy and many others from arma3 scripting forum: Testing/troubleshooting and help with scripting.
  11. mindstorm

    Dynamics Race Script

    Added support for weather, time and multiple mission parameters today.. Also made a trailer which might be a little better then the boring video I had first (see fp). Would still love to see some footage of large races with decent video settings :). Changelog:
  12. mindstorm

    [MP][RACE] Atlis & Stratis Race maps

    Cool, let me know what you think about the maps. Suggestions are welcome. And please report bugs if you find some, most of my buddies don't own arma 3 so it's hard for me to test these missions.
  13. Can anyone help me with this. I'm trying to create a "target" marker for a spectator but I can't seem to get it to display: CFG: class RscPicture { access = 0; type = 0; idc = -1; style = 48;//ST_PICTURE colorBackground[] = {0,0,0,0}; colorText[] = {1,1,1,1}; font = "TahomaB"; sizeEx = 0; lineSpacing = 0; text = ""; fixedWidth = 0; shadow = 0; }; class DYN_COMTARGETDiag { idd = 4040; name= "Commander targetter"; movingEnable = false; enableSimulation = true; class controls { class Picture: RscPicture { text = "\a3\ui_f\data\IGUI\Cfg\TacticalDisplay\targettexture_gs.paa"; x = 0.45; y = 0.45; w = 0.1; h = 0.1; colorText[] = {0.4,0.6745,0.2784,1.0};// doesn't influence picture? }; }; }; .sqf (finddisplay 46) createDisplay "DYN_COMTARGETDiag"; I have no errors in my rpt so I have no clue what is wrong with above code.
  14. I proudly present my own race mission. It is using my own (aplha) Dynamics Race script. I mean, I always wanted to have a good race in ARMA. Who doesn't? =). Content Race types: Normal race with/without damage Race with driver & gunner with/without damage Cops & Robbers: 1 (or more depending on player amount) armed vehicle(s) with 2 players are robbers. Rest is police and must arrest (halt) them before robbers reach the finish. Cat & Mouse: Teams of 2 players: Each player has a mice (slower vehicle) and a cats (faster). Cats must prevent the mice from opponent teams from finishing. If more then 12 players teams get larger. Driver, gunner & commander race. Cops & Robbers + Commander: Same as cops & robbers but with commander. Cat & Mouse + Commander: Same as cat & mouse but with commander. Features: Vote system for race type Vote system for damage enabled/disabled Vote system for vehicle type Team selection Vehicles must stay on road Vehicle reset up to 32 players Race timer & results Commander actions Checkpoint system Spectator mode JIP Support Many more Images Video This is an outdated video without the new GUI. *If you have a decent rig and play this mission with friends please record video's of it so I can create a better video. Credits will be given of course.* ---->Download<---- ---->Armaholic URL<---- Please report all errors/features requests here or preferably on the github page. If you want to test this mission without friends either launch it locally or host MP and set enable ai param to true. Notice: AI waypoints currently have an issue resulting in incorrect position display. Version history
  15. mindstorm

    [MP][RACE] Race for stratis 32

    Just a quick update: -I started developing a death race type. Currently I got I am quite far with a car-build option. You can select a car and attach parts to it the way you like (guns/steel plates e.t.c). The designs are saved to your profile. -Also did some research into custom textures for the boosters, gun enablers e.t.c. -did some Prework for mines and other stuffs. However, upcoming 2 weeks I can't do any work. I've got business trip and will return from it on 9th of september. I will start a WIP thread in the WIP mod section when I get back so I can inform you guys with updates.
  16. Yeah I can't really test my stuff so some errors you might need to fix. Forgot the fadein, fadeout and duration. class RscTitles { //// Respawn Script - Start //// #include "INS_revive\rsctitles.hpp" #include "=BTC=_Logistic\=BTC=_Lift\=BTC=_Hud.h" //// Respawn Script - End //// class myTimerClass { idd = 1800; name = "Timer"; movingEnable = false; enableSimulation = true; onLoad = "uiNamespace setVariable ['myTimerDiag', _this select 0];"; onUnLoad = "uiNamespace setVariable ['myTimerDiag', nil]"; duration = 9999999; fadeIn = 0; fadeOut = 0; class controls { class SK_Frame: RscFrame { idc = 1801; text = "This is the timer"; //--- ToDo: Localize; x = 0.479373 * safezoneW + safezoneX; y = 0.269085 * safezoneH + safezoneY; w = 0.0515678 * safezoneW; h = 0.0219919 * safezoneH; }; }; }; };
  17. If it's already defined just add the class myTimerClass to it. //This line needs to be added if you do gue magic in scripts. disableSerialization; //This "displays" the display/gui thingy. It basically adds it to the current display. 20000 cutRsc ["myTimerClass","PLAIN"]; //Here you retrieve the display from the uiNamespace. The onload && onunload make sure it's added to the uiNamespace _myTimerGui = uiNamespace getVariable "myTimerDiag"; //Here you specificly select the text control of your display. (A display can have more controls, like text or a image or both). _timer = _uiObj displayCtrl 1801; //Then you change the text of the specific display control _timer ctrlSetText "1"; So you probably want something like this: if!(isDedicated) then { [] spawn { disableSerialization; 20000 cutRsc ["myTimerClass","PLAIN"]; _myTimerGui = uiNamespace getVariable "myTimerDiag"; _timer = _uiObj displayCtrl 1801; while{ELAPSED_TIME < END_TIME } do { _time = END_TIME - ELAPSED_TIME; _finish_time_minutes = floor(_time / 60); _finish_time_seconds = floor(_time) - (60 * _finish_time_minutes); if(_finish_time_seconds < 10) then { _finish_time_seconds = format ["0%1", _finish_time_seconds]; }; if(_finish_time_minutes < 10) then { _finish_time_minutes = format ["0%1", _finish_time_minutes]; }; _formatted_time = format ["%1:%2", _finish_time_minutes, _finish_time_seconds]; _timer ctrlSetText _formatted_time; sleep 1; }; }; };
  18. in description.ext: #include "myFile.hpp" myFile.hpp: class RscFrame //Base class for reference { type = 0; idc = -1; style = 64; shadow = 2; colorBackground[] = {0,0,0,0}; colorText[] = {1,1,1,1}; font = "Zeppelin32"; sizeEx = 0.02; text = ""; } //rscTitles is needed if you want to create permantvisible displays (So everything that isn't a dialog). class rscTitles { class myTimerClass { idd = 1800; name = "Timer"; movingEnable = false; enableSimulation = true; onLoad = "uiNamespace setVariable ['myTimerDiag', _this select 0];"; onUnLoad = "uiNamespace setVariable ['myTimerDiag', nil]"; class controls { class SK_Frame: RscFrame { idc = 1801; text = "This is the timer"; //--- ToDo: Localize; x = 0.479373 * safezoneW + safezoneX; y = 0.269085 * safezoneH + safezoneY; w = 0.0515678 * safezoneW; h = 0.0219919 * safezoneH; }; }; }; }; Then from your script: disableSerialization; 20000 cutRsc ["myTimerClass","PLAIN"]; _myTimerGui = uiNamespace getVariable "myTimerDiag"; _timer = _uiObj displayCtrl 1801; //then use this line in your loop _timer ctrlSetText "1"; The 20.000 in front of cutRsc is a custom recourse layers. This way if you fade-out or go spectate or whatever your dialog isn't removed.
  19. Just place unit 1 till 10 on the map. Then place this in the init.sqf waitUntil {!(isNull (findDisplay 46))}; MYOPFORUNITS = [opf_target_1, opf_target_2, opf_target_3, opf_target_4, opf_target_5, opf_target_6, opf_target_7, opf_target_8, opf_target_9, opf_target_10]; Then to kill them all: {_x setDamage 1} foreach MYOPFORUNITS; and trigger condition: {!(alive _x)} count MYOPFORUNITS == 0
  20. mindstorm

    [MP][RACE] Race for stratis 32

    Thank you for your constructive feedback. You don't know how much I appreciate this! -Mines and smoke are coming in a future update (actually smoke is sorta in it but not really working). -Top speed: I've had multiple versions of speed boosts but for now they don't seem to work rather well. WHen the script becomes an addon this will be perma fixed because of custom vehicles. Untill then I'll see about adding a boost script, it does however effect vehicle handling negatively if you ask me. -Flags: Currently I use draw3d to draw text above the players based on their distance. When playing cat and mouse I attach a marker object with the corresponding color (I am working on car colors as well). Flags is a possebility but the current flag poles are rather large. You can however attach custom textures/colors to the flags. Ill test it with collision off cause I believe it would indeed look rather cool if winds effects are even applied. -Next patch will include a decrease in omfg you've gone offroad =). -Force 1st person is a difficulty settings which cannot be forced by means of scripting. I might be able to add it to the description.ext but i'm not sure about that (will look into it). -Vehicle flip can indeed be achieved by pressing R. I had an option that would automatically reset when you lied top-down for a couple of seconds but I removed it because sometimes you trip over say like in 3secs and you would be autoreset in my case where it would cost you an extra 5 seconds which in custom reset would not. Can still look into like a 5 second auto-reset when topdown.
  21. Thx for the answers both of you. To bad, i was hoping I could edit those menu's from my script (I know it's possible from mod) so I could change some layout parts in a mission.
  22. If you want to work with waypoints you can just do something like: trigger onact: THEGROUP = group this; then you can just use this somewhere later. _wp = THEGROUP addWaypoint [getMarkerPos _checkpoint, 0]; _wp setWaypointType "MOVE"; _wp setWaypointSpeed "FULL"; _wp setWaypointBehaviour "AWARE";
  23. If you simple want a unit whom enters a trigger area to join a new group so you can "command" him around without affecting other group members you could just add him to new group. grp = createGroup (side _unit); [unit] joinSilent _grp; Or is this not what you want to achieve?
  24. Nice script. I got some questions: 1. Why do you edit the texture of the vehicle? 2. How did you change the vehicle damage indicator position and the mission hint position? Then one thing. If your _delay is set to high it's possible the bomb won't explode because the delay is making sure the "explosion" part isn't hit yust yet. You might wanna spawn it before sleeping between explosions.
×