Jump to content
Sign in to follow this  
Guest

Scripting

Recommended Posts

Yes, I´ve seen that too and it´s really amazing.

The implemented Editing Guide (formaly known as the "holly bible") presented by Murray & Co. should really help me.

I will stay tuned for that...

In that way, BIS overworked the editor, we all wished that for ages^^. Thanx for that.

Share this post


Link to post
Share on other sites

I've got a suggestion too. Everytime I want to change to height of an unit or object I had to enter: this setpos [(getpos this select 0), (getpos this select 1), 10];

So far, so good. But this sucks if you'll have to do it a lot of times. sad_o.gif How's about something like that: this setHeight 10; for example? It would make mission editing a little bit faster.

Share this post


Link to post
Share on other sites
We need a command to ask about the viewdistance. In the case of ArmA 1 & OFP the appropriate command doesn´t exists.

For Example:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">_vDist = viewdistance

Yes, yes.

I added this wish into the http://community.bistudio.com/wiki/ArmA:_Wish_List#Commands some time last year.

and I think it should be added to the ArmA II. It doesn't sound like a major change into anything, just a function which returns a value, nothing more.

The benefit, as I was thinking at the time when I added it to the Biki Wish List, was that it would be much easier to write scripts which take the current viewdistance into account without having to set the viewdistance (then it would be known). It may not be appropriate to set it, so we would need this function to just ask what the existing value is.

Share this post


Link to post
Share on other sites

Im interested in the Logitech G15 keyboard gaining appropriate ArmaII Plugins thumbs-up.gif

Share this post


Link to post
Share on other sites

maybe a playMovie command.

it would be nice to make movies and play them in game as cut scenes.

and a dedicated servers ability to 'look' through a potential players addons and see if they have an addon that is known to crash games. and deny them connection.

it is hard to have an open public server when one knows a new faulty addon has come out.. and it takes months before most people realize what is causing it.

Share this post


Link to post
Share on other sites

variable++ and variable-- as an alternative to variable = variable + 1 and variable = variable - 1

It's pain in the ass doing loops without it wink_o.gif

Share this post


Link to post
Share on other sites

If someone mentioned better support and explanations of the commands on the wiki about locality in MP I do agree.

i.e.

What can be done and can not be done executed from init lines etc, what can and can't be done with players.

In a utopia I'd like to see the whole "client server" thing removed.

Share this post


Link to post
Share on other sites

Hi, i'll like to see a kind of weaponry randomizer; as a game logic

placeable in the editor and affecting a given side (W,E or Res) that

affects the units by their class.

If you've various weapons for the base soldier (i.e: soldier_wb) like

M16A4 Iron, ACOG, Aimpoint or Eotech sighted... then auto randomize

the weaponry of all the soldiers to swap their main weapons for different

ones, in that way... we'll get a less fixed shape on the units so they

look more real instead of clones; removing too the tedious job of

rearm squad after squad with the default available weapons. Let's C ya

Share this post


Link to post
Share on other sites

Randomizing is easy enough with scripting.

Not sure what has been covered yet, but here is a short list:

1. Set and Get commands for number of rounds in a magazine.

2. Get versions of support vehicle amount, i.e. setFuelCargo. I know no way of obtaining the amount using script.

3. Remove double listed commands, such as direction if getDir already exists. Reduce the confusion.

4. Every set command should have a get command and vice verca. Only commands that have one type should have it in "words", such as distance (since there cannot be a setDistance, there shouldn't be a getDistance, and distance is enough).

5. New command getMarkerGeom, which retrieves elliptic or rectangular shape (and maybe polygonal if implemented).

6. New command (marker) isInside "markername", (trigger) isInside trigger, and (boundary object) isInside object, to test if a point lies inside. The boundary version tests in all three dimensions (maybe also trigger?). I have made such a (2D only) function here, but I think maybe BIS have a better way of doing this.

7. New command rayIntersect [posa3d,posb3d] which returns the array [distance, object] from posa3d. I.e. rayIntersect[getPos player, getPos "house5"] returns [15, "terrain"] or [15, objectID]. This would enable us to test for line of sight.

8. Binary commands for maths (similar to arrays) and logical testing.

Share this post


Link to post
Share on other sites

i will post this here as well as in the ui thread.

how about a more user friendly way of creating missions based around selecting conditions and actions (similar to timesplitters 3 or MMF2).

e.g., for hostage mission

Step 1: set condition "enemy soldier alerted"

Step 2: set action "kill these civilians (the hostages)"

this could allow newbies and console players to create scripted stuff for missions but also allow more experienced designers to quickly prototype.

continuing on the Multimedia Fusion example, these scripts and behaviour templates could be thougt of as plugins and new, fan made scripts for actions and behaviours could be added to the folder with the rest and selected in seconds.

hell, there could even be a way to export a collection on conditions and actions as a mod.

BIS could also get in on the whole microtransaction market by releasing new conditions e.t.c. in packs.

using this type of mission scripting could improve the fan creation aspect on xbox live as well as it is a controllable way of making new missions (microsoft would be less wary of fan creation when it is controlled a la far cry).

Share this post


Link to post
Share on other sites

more ideas:

FSM override - ability to TOTALLY override inbuilt AI FSM with new modded AI at will and switch back at will while carrying AI info over if needed.

get/set number of bullets in magazine

get/set/limit the player/AI turning angle based on weapon selection and stance

ability to have a weapon in different states - Bayonet on, Bayonet off, bipod up, bipod down and have that change elements of weapon. make this moddable as to what influences weapon state.

extend FSM to influence a group as well as individuals.

Share this post


Link to post
Share on other sites

Some kind of debug tool or command, called debugChat (?), that allows a client to see what is going on on a dedicated server,  easily. I.e.

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">

if (!isServer) exitWith {}; //clients will exit here.

_text = "hello";

if(debug) then {

 _text = format ["text: %1",_text];

 server debugChat format ["_text is now %1 on the server", _text];

};

It could show up on the client in dedicated red color and look like:

SERVER - DEBUG: _text is now hello on the server

Forcing the DEBUG in the string might prevent designer to using this as a quick replacement for any PVEH's which would be the correct way. It should be displayed when in singleplayer, serving/hosting client, and when on a client using a dedicated server.

Share this post


Link to post
Share on other sites

I think that we need some new commands. But for my personly are <span style='color:red'>following both important:</span>

<span style='color:blue'>- possiblity to switch the gear (scripted reverse move for tanks)

- switchlight OFF for vehicles that are moving in "safe" or "careless" mode.</span>

Share this post


Link to post
Share on other sites

Possibly already covered, but a pos2grid function. AI will already report position as a grid reference using whatever format the map is in. Scripters should have this possibility too. It is a must. I consider myself a casual scripter, and looking at solutions like SPON_Map just frustrates the hell out of me trying to implement it in my own mission.

Share this post


Link to post
Share on other sites

I'm quite sure this has been mentioned earlier, but I'd like to see a possibility to alter values from the config on the fly in the game.

Per default an object would simply contain a pointer to its own class (as I assume it does now), but if this is modified it'd get own instance of variables.

My main gripe is the workarounds needed to create air-burst munitions, since with the above possible I could catch the shell with a fired EH and alter its timeToLive variable to the desired value, but I'm sure there are hundreds of other uses to this as well, be it equippable body armour altering armour values, wear&tear on weapons changing their built-in dispersion, etc.

Share this post


Link to post
Share on other sites

Probably not the correct place, but since you added it here, yes; builtin support for airburst ammunition such as icm's. Also Abrams canister rounds, M203 buckshot; ammunition that produces multiple submunitions.

Trying to script these doesn't work very well in multiplayer.

Share this post


Link to post
Share on other sites

Well, if they would do Arma2 Properly this time in terms of realistic behavior of weapons, then such stuff would be there by default....

However i hate to say it but i personally doubt that we will see any more realism in this manner in Arma2 - even though such munitions like Canister round or Airburst Grenades are very common on todays battlefields.....

I really hope BIS reads that and consider some seriously military advisory. (Anyone remembers that they didn't knew until patch 1.08 or so, that APFSDS Rounds don't do large explosions.........)

Share this post


Link to post
Share on other sites
I'm quite sure this has been mentioned earlier, but I'd like to see a possibility to alter values from the config on the fly in the game.

Per default an object would simply contain a pointer to its own class (as I assume it does now), but if this is modified it'd get own instance of variables.

That would really be very usefull. As an example, we could modify tanks armour on warfare maps, to add some nice tank battles.

Share this post


Link to post
Share on other sites

Hi, i've had a silly idea; to attach actions to certain objects, for

example to doors and human size gates, to allow the player to open

'em up by two methods, Breach Door and Kick Door. And then allow

the player to perform this actions when he's at 0'5m from the target

door; in this way we could also send an AI to open up the door while

we cover it in case of direct OPFOR presence... or some defensive

position after the door. All this with the propper animations fired

by the performed action and that they dissapear if the object (door

or entire wall section) is previously destroyed. Let's C ya

Share this post


Link to post
Share on other sites
7. New command rayIntersect [posa3d,posb3d] which returns the array [distance, object] from posa3d. I.e. rayIntersect[getPos player, getPos "house5"] returns [15, "terrain"] or [15, objectID]. This would enable us to test for line of sight.

We can already do this perfectly well with the standard intersect command. The only issue is in fact that intersect only "collides" with named selections and only infantry have named selections covering their whole body (buildings and things don't have any names; vehicles have a small number of parts named). Thus we could have this entire functionality in ArmA 1 if BIS had named the selections of objects they put in the game. I'm hopeful that they remember to do this for A2 wink_o.gif

Share this post


Link to post
Share on other sites

I really miss a function that would return a list of vehicle/ammobox cargo magazines/weapons. Something like _mags = transportmagazines _weaponbox1 and _wpns = transportweapons _veh. Currently we can retrieve the initial list set in the config, but it is impossible to track the contents in game.

Share this post


Link to post
Share on other sites
I really miss a function that would return a list of vehicle/ammobox cargo magazines/weapons. Something like _mags = transportmagazines _weaponbox1 and _wpns = transportweapons _veh. Currently we can retrieve the initial list set in the config, but it is impossible to track the contents in game.

QFT

Share this post


Link to post
Share on other sites

A scripting command to get "weaponholders" contents or any other way to "pick-up/move/whatever" dropped weapons by script.

(Today i found after 5 hours scripting and much backtalk with "Xeno" out, that this is not possible in Arma1 wow_o.gif )

Share this post


Link to post
Share on other sites

An eventhandler that triggers when the unit kills/destroys another unit or object. It would make score modifications SO much easier without giving a "killed" eventhandler to every unit in the mission. It would also enable you to make a hunting mission with scores because if I've understood correctly, animals are generated into the world rather than placed so giving eventhandlers to them could be tricky.

Share this post


Link to post
Share on other sites

Hit/dammaged eventhandlers could return more useful information:

- Type of ammo object that hit the vehicle (if the damage is 'indirect', eg from a grenade, the object class should still be returned). Ideally, run-over-by-a-car and fell-from-the-roof situations would also be handled.

- Current 'hit' value of the ammo object

- Model coordinates of the impact point (hit selections are too vague). If it's HE damage, model coordinates of the exploded ammunition should be returned.

It also seems a good idea to introduce a damage threshold for vehicles - ie, if the vehicle is hit with force less than specified in its config, the damage will not be taken at all. It will remove the absurd situation with machineguns destroying heavy tanks etc. This value may also be set per selection rather than for the vehicle as a whole.

Hit eventhandler, on the other hand, should not have the threshold for triggering it has now.

These modifications will allow the community to create detailed damage/wounding systems without having to recur to very complex and CPU-intensive workarounds.

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  

×