Jump to content
Sign in to follow this  
BinaryMan

Game logic module inconsistency?

Recommended Posts

In my current mission I am using a game logic module to begin a script that spawns enemies. In the same script I have also included several hint statements for debugging purposes. When I played the mission with a friend he said that he was also getting hint messages as well (I was the host). This has left me confused as to the functionality of the game logic module and or the hint command.

it says here: http://community.bistudio.com/wiki/Game_Logic

In multiplayer, a game logic will always be local to the host computer

So I have a couple of questions:

When starting a script (via execVM) is that script only local to the host?

When starting a script in the init line of a game logic module (via execVM) is that script only local to the host?

Does the hint command broadcast that hint to every player?

Share this post


Link to post
Share on other sites

If the game logic is placed in the editor, it is local to the server, but it is also present/accessible to every machine. So, if you execute a script from it init line (which I assume is what you are doing), it will execute on the server and all clients unless you use isServer or !isServer depending on your requirements. So to specifically address your questions:

When starting a script (via execVM) is that script only local to the host?

Yes, the script is local but (some of) the results may be global depending on the commands in the script.

When starting a script in the init line of a game logic module (via execVM) is that script only local to the host?

No, see my explanation above.

Does the hint command broadcast that hint to every player?

If the script is run on every client (which it does in your case), then yes.

I hope that helps a little!

Share this post


Link to post
Share on other sites

You are correct Loyalguard, I am starting the script from the init line. What is the best way to make sure that a script starts only on the host machine, or all client machines?

Also I have more questions:

For the createunit command does it matter if the script is run locally, on the server, or both server and client? And the same question for addWaypoint and setWaypointType

What about the problems associated with JIP players with all of these commands? (if any)

Edit:

In my playing around I tried putting this line in the init line of my game logic module: http://i.imgur.com/hXpzfu6.jpg

The script that is being executed still displays hint messages for all players, including me, the host

Edited by BinaryMan
Added stuff

Share this post


Link to post
Share on other sites

Some really weird things are happening now.

I started a server using the -server command, more specifically the guide found here: http://www.armaholic.com/forums.php?m=posts&q=20991

Then joined my dedicated server starting arma 3 normally.

first run I had a sqf file that would do this:

sleep 5;
hint "0";

It ran as expected and displayed 0 in the hint box.

I then closed both the server and my arma game client and deleted the contents of the script file so it was empty.

when I started my dedicated server back up and connected to it and ran the same mission I got a hint box in the upper right hand corner with a 0 in it

Edited by BinaryMan

Share this post


Link to post
Share on other sites

that's probably because your ArmA downloaded the mission the first time, and hasn't updated it when you modified the mission.

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  

×