Jump to content

chrisnic

Member
  • Content Count

    24
  • Joined

  • Last visited

  • Medals

  • Medals

Everything posted by chrisnic

  1. www.getwrecked.info @getwreckeda3 Description This game mode challenges players to create, customize, drive, survive and destroy. Players build their ultimate vehicle using a range of parts, weapons and modules and then fight to the death in a race zone of choice. It's a prototype vehicle combat sandbox that's designed for small games of up to 12 players. This mod is also a finalist in the multiplayer category of Make Arma Not War. Download & Links Features - Custom object manipulation system (rotation, snapping, lifting and moving) - Unique and original textures to put a finishing touch on your vehicle - Custom key-binding system that's specific to each vehicle - The ability to save/load your vehicle so you can play with it next time - Earn money from kills that you can then use to purchase higher tier weapons and vehicles - Persistent stats tracking (kills, deaths, mileage etc) - Five uniquely challenging custom race zones (Airfield, Swamp, Downtown, Salt flat & Wasteland) - A total of 8 different weapons, 14 tactical modules and 22 different building parts Controls Binding these controls can be helpful, but isn't necessary. Use Esc Menu > Settings > Configure > Custom Controls Grab/Drop [user Action 1] Attach [user Action 2] Rotate CW [user Action 3] Rotate CCW [user Action 4] Open Vehicle Settings Menu [user Action 20] All other controls are handled by the settings menu (cog icon when scrolling on a vehicle). From that menu you can double click an item then press a key to bind it. Guide Quick start guide available at getwrecked.info. License This mod is licensed under a CC-BY-NC-ND 4.0 License Attribution-NonCommercial-NoDerivatives 4.0 International Permission must be sought from the Author for its commercial use or any modification
  2. A minor update v0.8.2c has just been released. This is a compatibility update to support 1.48. Enjoy!
  3. v0.8.2 is rolling out (all sources should be updated shortly). Here's a quick list of changes: As always a full changelog is available at getwrecked.info/changelog. Vehicles from previous versions are compatible, but might require a re-save to be fully functional.
  4. Glad you had fun and thanks for the feedback! There are indeed a handful of items that behave like that. The issue is that they never load in a consistent position no matter what location you record for them. Sometimes this is also because with even the slightest amount of server lag the object collides with the source vehicle before it has a chance to disable simulation on it. Static turrets and rpgs/railguns in ground weapon holders are notoriously bad at this. The object shifting on save/load, the ballistics system and some form of starter tutorial are the three major hurdles I currently have to make this game-mode less frustrating for fresh players.
  5. chrisnic

    Land transporter script

    Hey, I had a crack at this, it's a bit rough but it should get your started: [color="#FF8040"][color="#006400"][i]//[/i][/color] [color="#006400"][i]// Name: createTransportLoop[/i][/color] [color="#006400"][i]// Desc: Creates a transport route for an ai vehicle that stops for players and loops indefinitely [/i][/color] [color="#006400"][i]// Author: Sli[/i][/color] [color="#006400"][i]// Return: Nothing[/i][/color] [color="#006400"][i]//[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]count[/b][/color] [color="#000000"]_this[/color] [color="#8B3E2F"][b]=[/b][/color][color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]exitWith[/b][/color] [color="#8B3E2F"][b]{[/b][/color][color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_transportWaypoints[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]_this[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Create the transport and assign a crew for it[/i][/color] [color="#1874CD"]_transportArray[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#8B3E2F"][b]([/b][/color][color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b],[/b][/color][color="#191970"][b]random[/b][/color] [color="#FF0000"]360[/color][color="#8B3E2F"][b],[/b][/color] [color="#7A7A7A"]"O_Truck_03_transport_F"[/color][color="#8B3E2F"][b],[/b][/color] [color="#000000"]west[/color][color="#8B3E2F"][b]][/b][/color] [color="#191970"][b]call[/b][/color] BIS_fnc_spawnVehicle[color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_transport[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_transportArray[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]createVehicleCrew[/b][/color] [color="#1874CD"]_transport[/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_transportDriver[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#191970"][b]driver[/b][/color] [color="#1874CD"]_transport[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Configuration[/i][/color] [color="#1874CD"]_waitPeriod[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]30[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// How long the transport should wait if there is people at a stop[/i][/color] [color="#1874CD"]_radiusFromStop[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]30[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Radius around the stop to check for people[/i][/color] [color="#1874CD"]_movingPeriod[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]5[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// How quickly the transport should switch between waypoints [/i][/color] [color="#1874CD"]_checkPeriod[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]1[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Default minimum check rate of the overall loop[/i][/color] [color="#1874CD"]_transportTarget[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]1[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Start by going to stop #1[/i][/color] TRANSPORT_ACTIVE [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]true[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Set to false to end the bus loop if it's active (may take the sleep period to stop)[/i][/color] [color="#1874CD"]_hasWaited[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]false[/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]for[/b][/color] [color="#7A7A7A"]"_i"[/color] [color="#191970"][b]from[/b][/color] [color="#FF0000"]0[/color] [color="#191970"][b]to[/b][/color] [color="#FF0000"]1[/color] [color="#191970"][b]step[/b][/color] [color="#FF0000"]0[/color] [color="#191970"][b]do[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#006400"][i]// If the bus dies, is stuck, or its driver is incapacitated, abort![/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#8B3E2F"][b]![/b][/color][color="#191970"][b]alive[/b][/color] [color="#1874CD"]_transport[/color] [color="#8B3E2F"][b]|[/b][/color][color="#8B3E2F"][b]|[/b][/color] [color="#8B3E2F"][b]![/b][/color][color="#191970"][b]canMove[/b][/color] [color="#1874CD"]_transport[/color] [color="#8B3E2F"][b]|[/b][/color][color="#8B3E2F"][b]|[/b][/color] [color="#8B3E2F"][b]![/b][/color][color="#191970"][b]alive[/b][/color] [color="#1874CD"]_transportDriver[/color] [color="#8B3E2F"][b]|[/b][/color][color="#8B3E2F"][b]|[/b][/color] [color="#8B3E2F"][b]![/b][/color][color="#191970"][b]canMove[/b][/color] [color="#1874CD"]_transport[/color] [color="#8B3E2F"][b]|[/b][/color][color="#8B3E2F"][b]|[/b][/color] [color="#8B3E2F"][b]![/b][/color]TRANSPORT_ACTIVE[color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]exitWith[/b][/color] [color="#8B3E2F"][b]{[/b][/color][color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_nextStop[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_transportWaypoints[/color] [color="#191970"][b]select[/b][/color] [color="#1874CD"]_transportTarget[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_sleepTime[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_checkPeriod[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// If the bus is outside the check radius for the stop, keep sending it to the position[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_transport[/color] [color="#191970"][b]distance[/b][/color] [color="#1874CD"]_nextStop[/color] [color="#8B3E2F"][b]>[/b][/color] [color="#1874CD"]_radiusFromStop[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_transport[/color] [color="#191970"][b]doMove[/b][/color] [color="#1874CD"]_nextStop[/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_sleepTime[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_movingPeriod[/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]systemChat[/b][/color] [color="#191970"][b]format[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]'Transport moving to %1 at %2'[/color][color="#8B3E2F"][b],[/b][/color] [color="#1874CD"]_transportTarget[/color][color="#8B3E2F"][b],[/b][/color] [color="#000000"]time[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// If the bus is within range of the stop, check for commuters[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_transport[/color] [color="#191970"][b]distance[/b][/color] [color="#1874CD"]_nextStop[/color] [color="#8B3E2F"][b]<[/b][/color][color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_radiusFromStop[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#FF8040"][color="#006400"][i]// Find commuters/players in stop radius[/i][/color] [color="#1874CD"]_hasCommuters[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]isPlayer[/b][/color] [color="#000000"]_x[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_hasCommuters[/color] [color="#191970"][b]pushBack[/b][/color] [color="#000000"]_x[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color] [color="#191970"][b]count[/b][/color] [color="#8B3E2F"][b]([/b][/color] [color="#1874CD"]_nextStop[/color] [color="#191970"][b]nearEntities[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]"Man"[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b],[/b][/color] [color="#1874CD"]_radiusFromStop[/color][color="#8B3E2F"][b]][/b][/color] [color="#8B3E2F"][b])[/b][/color] [color="#8B3E2F"][b]>[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b];[/b][/color] [/color] [color="#006400"][i]// If there are people there and we've not already waited, stop for wait period[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]count[/b][/color] [color="#1874CD"]_hasCommuters[/color] [color="#8B3E2F"][b]>[/b][/color][color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]1[/color] [color="#8B3E2F"][b]&[/b][/color][color="#8B3E2F"][b]&[/b][/color] [color="#8B3E2F"][b]![/b][/color][color="#1874CD"]_hasWaited[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_sleepTime[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_waitPeriod[/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_hasWaited[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]true[/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]systemChat[/b][/color] [color="#191970"][b]format[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]'Transport stopped at %1 until %2'[/color][color="#8B3E2F"][b],[/b][/color] [color="#1874CD"]_transportTarget[/color][color="#8B3E2F"][b],[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#000000"]time[/color] [color="#8B3E2F"][b]+[/b][/color] [color="#1874CD"]_waitPeriod[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color] [color="#191970"][b]else[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_hasWaited[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]false[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Otherwise, find the next stop, loop back to the start if we're at the end of the array[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_transportTarget[/color] [color="#8B3E2F"][b]=[/b][/color][color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]count[/b][/color] [color="#1874CD"]_transportWaypoints[/color] [color="#8B3E2F"][b]-[/b][/color] [color="#FF0000"]1[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_transportTarget[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color] [color="#191970"][b]else[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_transportTarget[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_transportTarget[/color] [color="#8B3E2F"][b]+[/b][/color] [color="#FF0000"]1[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_sleepTime[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#1874CD"]_checkPeriod[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]sleep[/b][/color] [color="#1874CD"]_sleepTime[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [/color] All you need to do is an array of points (positions) and it will create the AI vehicle and do the rest. You may need to fiddle with how/who the AI vehicle is spawned by, especially in MP as if the groups aren't configured correctly they might not do what you want. I just used BIS_fnc_spawnVehicle to easily make a demonstration vehicle. [color="#FF8040"][color="#8B3E2F"][b][[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#FF0000"]34943[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]12123[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b],[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#FF0000"]33223[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]13333[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b],[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#FF0000"]32113[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]13333[/color][color="#8B3E2F"][b],[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b]][/b][/color] [color="#8B3E2F"][b]][/b][/color] [color="#191970"][b]execVM[/b][/color] 'createTransportLoop.sqf'[color="#8B3E2F"][b];[/b][/color][/color] Assuming your positions aren't likely to change , my favourite method of getting all that position data is creating markers in the editor like this: And then using this function when the mission loads to find all the positions: [color="#FF8040"][color="#006400"][i]//[/i][/color] [color="#006400"][i]// Name: findAllMarkers[/i][/color] [color="#006400"][i]// Desc: Finds all markers of a given stem and returns all positions as an array[/i][/color] [color="#006400"][i]// Author: Sli[/i][/color] [color="#006400"][i]// Return: Array [Marker positions][/i][/color] [color="#006400"][i]//[/i][/color] findAllMarkers [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#191970"][b]private[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]"_stem"[/color][color="#8B3E2F"][b],[/b][/color] [color="#7A7A7A"]"_a"[/color][color="#8B3E2F"][b],[/b][/color] [color="#7A7A7A"]"_d"[/color][color="#8B3E2F"][b],[/b][/color] [color="#7A7A7A"]"_max"[/color][color="#8B3E2F"][b],[/b][/color] [color="#7A7A7A"]"_endIf"[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_stem[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]0[/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// String with the beginning part of the marker name[/i][/color] [color="#1874CD"]_endIf[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]isNil[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]1[/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#000000"]false[/color] [color="#8B3E2F"][b]}[/b][/color] [color="#191970"][b]else[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]1[/color][color="#8B3E2F"][b])[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// End early if we're missing a marker (default: false)[/i][/color] [color="#1874CD"]_max[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]isNil[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]2[/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#FF0000"]50[/color] [color="#8B3E2F"][b]}[/b][/color] [color="#191970"][b]else[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#000000"]_this[/color] [color="#191970"][b]select[/b][/color] [color="#FF0000"]2[/color][color="#8B3E2F"][b])[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Absolute maximum number of markers in this series (default: 50)[/i][/color] [color="#1874CD"]_a[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#8B3E2F"][b][[/b][/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]for[/b][/color] [color="#7A7A7A"]"_s"[/color] [color="#191970"][b]from[/b][/color] [color="#FF0000"]0[/color] [color="#191970"][b]to[/b][/color] [color="#1874CD"]_max[/color] [color="#191970"][b]step[/b][/color] [color="#FF0000"]1[/color] [color="#191970"][b]do[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_m[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#191970"][b]getMarkerPos[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#191970"][b]format[/b][/color][color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]'%1_%2'[/color][color="#8B3E2F"][b],[/b][/color] [color="#1874CD"]_stem[/color][color="#8B3E2F"][b],[/b][/color] [color="#1874CD"]_s[/color][color="#8B3E2F"][b]][/b][/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_d[/color] [color="#8B3E2F"][b]=[/b][/color] [color="#191970"][b]vectorMagnitude[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_m[/color][color="#8B3E2F"][b])[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_d[/color] [color="#8B3E2F"][b]<[/b][/color][color="#8B3E2F"][b]=[/b][/color] [color="#FF0000"]0[/color] [color="#8B3E2F"][b]&[/b][/color][color="#8B3E2F"][b]&[/b][/color] [color="#1874CD"]_endIf[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]exitWith[/b][/color] [color="#8B3E2F"][b]{[/b][/color][color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// End loop early if the marker chain is incomplete[/i][/color] [color="#191970"][b]if[/b][/color] [color="#8B3E2F"][b]([/b][/color][color="#1874CD"]_d[/color] [color="#8B3E2F"][b]>[/b][/color] [color="#FF0000"]0[/color] [color="#8B3E2F"][b]&[/b][/color][color="#8B3E2F"][b]&[/b][/color] [color="#8B3E2F"][b]![/b][/color][color="#1874CD"]_endIf[/color][color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]then[/b][/color] [color="#8B3E2F"][b]{[/b][/color] [color="#1874CD"]_a[/color] [color="#191970"][b]pushBack[/b][/color] [color="#1874CD"]_m[/color][color="#8B3E2F"][b];[/b][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#006400"][i]// Marker is valid, so add it to the array[/i][/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color] [color="#1874CD"]_a[/color] [color="#8B3E2F"][b]}[/b][/color][color="#8B3E2F"][b];[/b][/color][/color] It accepts a marker "stem" i.e "stop" and then finds all markers in a series, such as stop_0, stop_1, stop_2 etc and returns their positions as an array. So the transport route above might work a bit like this: [color="#FF8040"][color="#8B3E2F"][b]([/b][/color][color="#8B3E2F"][b][[/b][/color][color="#7A7A7A"]"stop"[/color][color="#8B3E2F"][b]][/b][/color] [color="#191970"][b]call[/b][/color] findAllMarkers[color="#8B3E2F"][b])[/b][/color] [color="#191970"][b]execVM[/b][/color] 'createTransportLoop.sqf'[color="#8B3E2F"][b];[/b][/color][/color] Made with KK's SQF to BBCode Converter
  6. Can't say I understood it either but it wasn't working correctly until I did that. To confirm my sanity I just edited the version back to see what would happen and I found that it was the restart of blender that was needed. If you load the add-on again or edit the version as I did during one session, you get no toggle option like this: Which persists until blender is restarted. Not exactly an issue since restarting is kind of obvious when installing new stuff, but i've corrected my post above. Thanks for making this add on.
  7. Hey, i'm completely new to Blender but I thought i'd give this add-on a shot since my head kept hitting the keyboard with O2. The add-on installed fine but I ran into an issue with 'Arma Object Properties' being blank and didn't allow me to change anything like the user guide is suggesting - all that was needed was a restart of blender.
  8. As the title implies, i'm looking for a way to set the mouse position when opening a dialog control. Specifically I need the mouse to 'auto-center' and go back to [0.5, 0.5] whenever this control is opened. At the moment it seems to keep shifting from its previous position by a few hundred pixels each time (perhaps the width/height of the control?) and eventually it ends up at the edge of the screen. Does anyone know of a trick that will allow this behaviour? Thanks! EDIT: Ok, so after a more extensive google search I found setMousePosition :j:. Should this not be added to: https://community.bistudio.com/wiki/Category:Command_Group:_GUI_Control?
  9. This is sorcery. Here I am making custom particle AND smoke effects just to get the same thing, and there's secret objects like this. How do you find these?
  10. Minor hotfix (v0.8c) released to solve the following issues: Full list of changes available at getwrecked.info/changelog.
  11. Basically yep, you can use them similarily but with modelToWorld you are calculating the x and y values for the angle you want manually ( [3,3,0] would be 45 degrees for example and with some trig you could do any angle, really). You are correct in that relPos doesn't calculate height and I dont believe it considers the vectorUp of the object either. I find modelToWorld far more flexible to use because of this.
  12. If the direction is always directly ahead, or to the side of the unit (and never at a random direction from it), you can also use modelToWorldVisual. So a position 3m ahead of a player would be: This is much faster than using BIS_fnc_relPos in this case.
  13. Just released a hotfix (v0.8.0b) to solve the following issues:
  14. New version v0.8 is now public. Here's a few release highlights: Thanks to everyone who has contributed so far by giving their time, ideas and feedback. Progress is already happening on a new race-mode and also expansion onto new maps. ;)
  15. chrisnic

    line intersect problem

    I appreciate you taking the time to respond, but I don't need help with this. My first comment was just pointing out how I have used a similar method to OP to use lineIntersects as triggers.
  16. chrisnic

    line intersect problem

    No, this wasn't accurate enough since the caltrops are 3m long and 0.1m wide. Using the line intersect to draw a line along the extent of the object and raised slightly made it super accurate and trigger exactly when tyres hit it. The above solution I placed to satisfy op's request to use lineIntersect, in this situation nearEntities might be better since the object is small and not elongated or irregular.
  17. chrisnic

    line intersect problem

    I am using a lineIntersect check for triggering caltrops in my mission, so this problem intrigued me as I wasn't aware this didn't work for player objects. My workaround was to attach an object to the player that's floating and using that as the trigger object for the intersect. LineIntersect doesn't work below ground so I was forced to put it as high as possible so that it's out of sight. In testing this worked as high as 20km, but past maybe 1km you can't see it anyway. Once it's triggered you can just use attachedTo on the trigger object to retrieve the player reference. I used a file, but you might want to use a slightly larger object depending on the tolerance you want. // Set this however high you want to go _alt = 2000; _origin = player modelToWorldVisual [0,0,_alt]; _trigger = createVehicle ['Land_File1_F', [0,0,0], [], 0, 'CAN_COLLIDE']; _trigger attachTo [player, [0,0,(_alt + 0.5)]]; _pos1 = ATLtoASL _origin; _pos2 = ATLtoASL _origin; // Set one point slightly higher _pos2 set [2, (_pos2 select 2) + 1]; while {true} do { _intersect = lineIntersectsWith[_pos1, _pos2, objNull, objNull, true]; hintsilent format["_intersect: %1", _intersect]; sleep 0.1; }; I used a custom function to render some debug lines so you can see the intersect in action at 2m.
  18. www.getwrecked.info @getwreckeda3 Get Wrecked challenges players to create, customize, drive, survive and destroy. Players construct wheeled, armoured behemoths using a variety of building parts then fight to the death in a race zone of choice. It's a creative vehicle combat sandbox for Arma 3 and designed for small games of up to 12 players. It is in an alpha release state. The game mode requires no mods (not even CBA). It's just a mission file so you only need to find a server running it to play (unless you want to host yourself). Please see the release thread here for download links and more information. Alternatively check the website for a breakdown of features, server list and a quick guide.
  19. You don't need a .dll for the first one, but the commands are limited to the default battle-eye ones (the second looks like you can actually send snippets of sqf which is awesome). To lock the server using battle-node you should be able to use (although i've yet to try this): bnode.sendCommand('lock');
  20. Absolutely! The best place to catch updates is if you follow @GetWreckedA3 on Twitter. A new version should be out this month that addresses a number of bugs, improves key binding and customization, plus a few surprises.
  21. It wasn't meant to be condescending, sorry if you took it that way. The impression I got from your first post is that you were suggesting this mod was somehow fundamentally broken because of that one combination. While it may not be balanced perfectly just yet, I can assure you that it's pretty far from being as simple as slapping three lasers on a vehicle. Admittedly, the tactical laser isn't technically meant as a primary weapon; its main feature is the burn effect it tags vehicles with. The fire status effect does not stack so its intended primarily for being able to damage fast moving or well protected targets. If it's being used as a one-shot kill weapon then for sure it's not fulfilling the aim of its original implementation. Frankly, however, there are a number of options for countering the combination you are talking about and with a bit of experimentation you and others may come across them too.
  22. People have very different expectations for what is an "Alpha" I think. Complaining about balance issues right now is like pointing out the sky is blue. It will all be sorted, but right now the focus is padding features out and bug fixing. I'd be curious to know if you were running 0.7.6 or 0.7.7? Overall weapon damage was tweaked in the latter to increase the time-to-kill and i've seen a few of the German servers still running the older version. As a side note, I found a rather funny comment from someone stating they were disappointed this wasn't "realistic vehicle combat". It can't be stressed enough that this mod isn't for everyone, so if there's something you really don't like no-one is forcing you to play it. At the very least if you are going to leave critical feedback please make it constructive; perhaps even contextualise it a bit if you are reporting an obvious bug.
  23. Hey mate, yep i'll definitely add that to the list. It was a poly-fill for the MANW release as the object manipulation system didn't seem to function 100% in first person. That and some of the audio effects were not working in first person in a vehicle. There are a handful of issues being reported that seem to be related to people trying this with other mods active, so it is definitely helpful if people diagnose it first by turning them off. Thanks! It's been really fun to make and test. Glad you enjoyed it!
  24. Website at getwrecked.info updated and now includes a small starter guide for new players. Also did some new versions of the current key art, what does everyone reckon? Some bug fixes and tweaks to drop this weekend, after the test crew gets their turn to try and break everything.
×