Jump to content
edysos

multiplayer scripts

Recommended Posts

Hi all.

i´m trying to make a multiplayer mission, but my friends can´t see some actions (like  an npc seated on a chair, npc´s sidechat, etc...) while playing this mission. 

any suggestions?

 

 

Share this post


Link to post
Share on other sites

NPC=Non Playable Character? Why would anyone se its sideChat? I think we need some

more information.

 

But in general: remember that a script is always executed on one of the machines (the server or a client), and not "globally somewhere in the mission". Thus, the sideChat command will only show text to a player on the machine that executes it.

Share this post


Link to post
Share on other sites
22 minutes ago, engima said:

NPC=Non Playable Character? Why would anyone se its sideChat?

It is possible as long as you script it. The unit has to be on the same side and needs a radio.

 

7 hours ago, edysos said:

(like  an npc seated on a chair, npc´s sidechat, etc...)

This is a huge topic in ArmA, locality in MP. You first have to understand the basics, like what instances there are (Client, server, and some more), how the commands behave in MP (see the top of the command BIKI page there are some abbreviations like EL, EG, etc). remoteExec is your best friend when it comes to executing local commands to have global effect.

 

Here is an example:

[_unit, "My message"] remoteExec ["sideChat",0];

 

Share this post


Link to post
Share on other sites
16 hours ago, 7erra said:

It is possible as long as you script it. The unit has to be on the same side and needs a radio.

 

This is a huge topic in ArmA, locality in MP. You first have to understand the basics, like what instances there are (Client, server, and some more), how the commands behave in MP (see the top of the command BIKI page there are some abbreviations like EL, EG, etc). remoteExec is your best friend when it comes to executing local commands to have global effect.

 

Here is an example:


[_unit, "My message"] remoteExec ["sideChat",0];

 

ok, i´ll prove that. Thank you!!

Share this post


Link to post
Share on other sites

Yup, MP opens up a whole new can of worms in your scripting for sure. As usual, there is more than one way to skin the Arma cat. Above is correct, but here's another way to call your sideChat in MP with a trigger. Let's assume your walking up to whoever you want to speak in sideChat.

 

You need the speaker, given him a name in Variable Name - bob

 

Place a SetCallsign module down - in Custom Callsign put  - Cmdr Rogers (or whatever) this will be the name  you see on your screen when the sideChat is executed. If you use more than one of these modules make sure the Company/platoon/squad values are different or none will work. SYNC this module to bob.

 

Place a trigger - Make its dimensions 4x1x4 (please don't have your z value reach to heaven!).

 

Place the following in your Trigger values:

Type - none, Activation -Blufor, Activation Type - Present

Put an "x" in the Server Only box.

 

Condition -  !(({isPlayer _x} count ThisList) isEqualTo 0)   this will look for Blufor who are players.

 

On Activation - [[],{ bob sideChat "Blah"}] RemoteExec ["BIS_FNC_SPAWN",0];  remember bob is the dude talking, the set Callsign just overrides his name with Cmdr Rogers and Blah is your text.

 

SYNC this trigger to bob

 

When executed the server will broadcast Cmd Rogers: Blah

 

This is just one way, there are many. I have to thank Neko-Arrow for this. You can experiment using Hint and TitleText commands, but you have to look up the parameters  :wink_o:

 

Some other references:

Killzonekid's blog (There are several pages, page 3 starts some of his MP scripting stuff) - http://killzonekid.com/category/games/arma-3/page/3/

Quick youtube search for arma 3 sidechat shows this from Arma3 Flix :

 

In this he uses the Heaquarters entity modules and this is not set up for MP, but should give you some ideas.

 

Takes a lot of research and trial and error. If you have action triggers in your mission, you will most likely need to look into how to use PublicVariable; as most of your triggers become a 2-step process with PublicVariables in MP.

 

Hope this helps.

 

 

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

×