Jump to content
Sign in to follow this  
neokika

Arma 3 PhysX Playground

Recommended Posts

Arma 3 PhysX Playground

Created by _neo_

Use your new super powers wisely.

2013030800007.jpg

Installation:

Decompress file and place it at your Documents\Arma 3 Alpha\missions folder and access it through the editor.

Use action menu to change properties.

Press F to spawn object and apply forces.

Press E to Push nearby objects.

Press Q to Pull nearby objects.

Have fun!

Download

_neo_

Edited by neokika

Share this post


Link to post
Share on other sites

This is lots of fun. Good job neo

Share this post


Link to post
Share on other sites

I extracted the file to that folder, but where am I supposed to load it? (never used editor before)

Share this post


Link to post
Share on other sites

Video should be working now.

Share this post


Link to post
Share on other sites
I extracted the file to that folder, but where am I supposed to load it? (never used editor before)

Find the load button in your editor and load Physx test

Share this post


Link to post
Share on other sites

Hey there Neo,

First of all can I thank you for putting this awesome script out there and that this is a great start to a surely big future for messing with the engine further.

I am trying to create some mission content involving your script and wanted to know if there could be further advances added to it, such as being able to control simply one object that has been spawned etc.

Having tested multiplayer with the physX playground It would seem that only the host player is unable to be killed or messed with by the levitate and throw whereas other players get killed and thrown around by the host which is somewhat annoying, also is there a way to only give one player the "powers" so that everyone else playing in the mission can just be standard soldiers (trying to make a mission with one superhero who is being hunted by a squad of normal soldiers), sorry for all the questions, just very interested in how you did this and changes that could be made to further implement it into a mode that is not to OTT.

Any way of making it so only vehicles/items spawned by the superhero can be cleaned up so the other teams vehicles don't disappear too? Maybe a script for specific vehicles so their not effected by his powers, One last question, In multiplayer games when a player dies and respawns they still have the power to spawn the last object they created & manipulate them, but the action menu for choosing stuff is gone, looking to fix this?

Thanks again and will be keeping up to date on further developments of yours and others physX scripts

Share this post


Link to post
Share on other sites

This is really cool Neo - big thanks.

I can't get it to spawn choppers, men or cars, but the boxes is more than enough fun. You can do loads of crazy patterns in the sky - would keep me entertained for hours. :)

EDIT: Here's the errors I was getting when trying to spawn in choppers and so on.

Cannot create non-ai vehicle O_Ka60_Unarmed_F,
Cannot create non-ai vehicle B_AH9_F,
Cannot create non-ai vehicle O_Ka60_Unarmed_F,
Cannot create non-ai vehicle B_AH9_F,
Cannot create non-ai vehicle O_Ka60_Unarmed_F,
Cannot create non-ai vehicle B_MH9_F,
Cannot create non-ai vehicle B_AH9_F,
Cannot create non-ai vehicle O_Ka60_Unarmed_F,
Cannot create non-ai vehicle B_MH9_F,
Cannot create non-ai vehicle O_Ka60_Unarmed_F,
Cannot create non-ai vehicle B_MH9_F,
Cannot create non-ai vehicle O_Ka60_Unarmed_F,

Edited by Das Attorney

Share this post


Link to post
Share on other sites

this post is like 8 months old and has not been update since alpha and all the names haven't been changed. here is a updated "fn_throw.sqf" just copy and paste to update the class names.

_height = getPosASL player select 2;
_height = _height + 5;
_pos = [player, 5, getDir player] call BIS_fnc_relPos;
_pos set [2, _height];
_object = objNull;

switch (neo_type) do {
case 0 : {
	_class = "Land_CargoBox_V1_F";
	_object = createVehicle [_class, position player, [], 0, "NONE"];
	_object allowDamage neo_damage;
	_object setVectorUp [random 1, random 1, random 1];
	_object setVectorDir [random 1, random 1, random 1];

	_object setPosASL _pos;
};
case 1 : {
	_class = ["B_APC_Wheeled_01_base_F","B_APC_Wheeled_01_cannon_F","O_APC_Wheeled_02_base_F","O_APC_Wheeled_02_rcws_F","I_APC_Wheeled_03_base_F","I_APC_Wheeled_03_cannon_F","B_Truck_01_transport_F","B_Truck_01_covered_F","B_Truck_01_mover_F","B_Truck_01_medical_F","B_Truck_01_box_F","B_Truck_01_Repair_F","B_Truck_01_ammo_F","B_Truck_01_fuel_F","O_Truck_02_covered_F","O_Truck_02_transport_F","I_Truck_02_covered_F","I_Truck_02_transport_F","O_Truck_02_box_F","O_Truck_02_Ammo_F","O_Truck_02_fuel_F","I_Truck_02_ammo_F","I_Truck_02_box_F","I_Truck_02_fuel_F","O_Truck_02_medical_F","I_Truck_02_medical_F","C_Van_01_transport_F","I_G_Van_01_transport_F","C_Van_01_box_F","C_Van_01_fuel_F","I_G_Van_01_fuel_F","B_G_Van_01_transport_F","O_G_Van_01_transport_F","B_G_Van_01_fuel_F","O_G_Van_01_fuel_F","B_MRAP_01_F","O_MRAP_02_F","C_Offroad_01_F","I_G_Offroad_01_F","I_G_Offroad_01_armed_F","B_G_Offroad_01_armed_F","O_G_Offroad_01_armed_F","B_G_Offroad_01_F","O_G_Offroad_01_F","B_Quadbike_01_F","O_Quadbike_01_F","C_Quadbike_01_F","I_Quadbike_01_F","I_G_Quadbike_01_F","B_G_Quadbike_01_F","O_G_Quadbike_01_F","I_MRAP_03_hmg_F","I_MRAP_03_gmg_F","C_Hatchback_01_F","C_Hatchback_01_sport_F","C_SUV_01_F","B_UGV_01_F","O_UGV_01_F","I_UGV_01_F","B_UGV_01_rcws_F","O_UGV_01_rcws_F","I_UGV_01_rcws_F"] call BIS_fnc_selectRandom;
	_object = createVehicle [_class, _pos, [], 0, "NONE"];
	_object setPosASL _pos;
	_object allowDamage neo_damage;
	_object setVectorUp [random 1, random 1, random 1];
	_object setVectorDir [random 1, random 1, random 1];
};
case 2 : {
	_class = ["Heli_Light_01_base_F", "Heli_Light_02_base_F", "Heli_Transport_01_base_F", "Heli_Transport_02_base_F", "B_Heli_Light_01_F", "Heli_Light_01_armed_base_F", "B_Heli_Light_01_armed_F", "O_Heli_Light_02_F", "O_Heli_Light_02_unarmed_F", "B_Heli_Transport_01_F", "B_Heli_Transport_01_camo_F", "I_Heli_Transport_02_F", "B_Heli_Attack_01_F", "O_Heli_Attack_02_F", "O_Heli_Attack_02_black_F", "B_UAV_01_F", "O_UAV_01_F", "I_UAV_01_F", "I_Plane_Fighter_03_CAS_F", "I_Plane_Fighter_03_AA_F"] call BIS_fnc_selectRandom;
	_object = createVehicle [_class, _pos, [], 0, "NONE"];
	_object setPosASL _pos;
	_object allowDamage neo_damage;
	_object setVectorUp [random 1, random 1, random 1];
	_object setVectorDir [random 1, random 1, random 1];
};
case 3 : {
	_class = ["Land_CargoBox_V1_F","Heli_Light_01_base_F", "Heli_Light_02_base_F", "Heli_Transport_01_base_F", "Heli_Transport_02_base_F", "B_Heli_Light_01_F", "Heli_Light_01_armed_base_F", "B_Heli_Light_01_armed_F", "O_Heli_Light_02_F", "O_Heli_Light_02_unarmed_F", "B_Heli_Transport_01_F", "B_Heli_Transport_01_camo_F", "I_Heli_Transport_02_F", "B_Heli_Attack_01_F", "O_Heli_Attack_02_F", "O_Heli_Attack_02_black_F", "B_UAV_01_F", "O_UAV_01_F", "I_UAV_01_F", "I_Plane_Fighter_03_CAS_F", "I_Plane_Fighter_03_AA_F","B_APC_Wheeled_01_base_F","B_APC_Wheeled_01_cannon_F","O_APC_Wheeled_02_base_F","O_APC_Wheeled_02_rcws_F","I_APC_Wheeled_03_base_F","I_APC_Wheeled_03_cannon_F","B_Truck_01_transport_F","B_Truck_01_covered_F","B_Truck_01_mover_F","B_Truck_01_medical_F","B_Truck_01_box_F","B_Truck_01_Repair_F","B_Truck_01_ammo_F","B_Truck_01_fuel_F","O_Truck_02_covered_F","O_Truck_02_transport_F","I_Truck_02_covered_F","I_Truck_02_transport_F","O_Truck_02_box_F","O_Truck_02_Ammo_F","O_Truck_02_fuel_F","I_Truck_02_ammo_F","I_Truck_02_box_F","I_Truck_02_fuel_F","O_Truck_02_medical_F","I_Truck_02_medical_F","C_Van_01_transport_F","I_G_Van_01_transport_F","C_Van_01_box_F","C_Van_01_fuel_F","I_G_Van_01_fuel_F","B_G_Van_01_transport_F","O_G_Van_01_transport_F","B_G_Van_01_fuel_F","O_G_Van_01_fuel_F","B_MRAP_01_F","O_MRAP_02_F","C_Offroad_01_F","I_G_Offroad_01_F","I_G_Offroad_01_armed_F","B_G_Offroad_01_armed_F","O_G_Offroad_01_armed_F","B_G_Offroad_01_F","O_G_Offroad_01_F","B_Quadbike_01_F","O_Quadbike_01_F","C_Quadbike_01_F","I_Quadbike_01_F","I_G_Quadbike_01_F","B_G_Quadbike_01_F","O_G_Quadbike_01_F","I_MRAP_03_hmg_F","I_MRAP_03_gmg_F","C_Hatchback_01_F","C_Hatchback_01_sport_F","C_SUV_01_F","B_UGV_01_F","O_UGV_01_F","I_UGV_01_F","B_UGV_01_rcws_F","O_UGV_01_rcws_F","I_UGV_01_rcws_F"] call BIS_fnc_selectRandom;
	_object = createVehicle [_class, _pos, [], 0, "NONE"];
	_object setPosASL _pos;
	_object allowDamage neo_damage;
	_object setVectorUp [random 1, random 1, random 1];
	_object setVectorDir [random 1, random 1, random 1];
};
case 4 : {
	_object = (createGroup side player) createUnit [typeOf player, _pos, [], 0, "NONE"];
	_object setPosASL _pos;
	_object setDamage 1;
};
};

_object setVelocity [(eyeDirection player select 0) * neo_force, (eyeDirection player select 1) * neo_force, (eyeDirection player select 2) * neo_force];

neo_count = neo_count + 1;
hintSilent format ["Entities: %1", neo_count];

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×