Jump to content
Sign in to follow this  
bn880

Coc server (network services 1.1 and public array)

Recommended Posts

We at The Chain of Command are pleased to inform you that version 1.1 of our Network Services has been released to the public in Addon and script format. The addon version has a very simple Installation procedure which involves the placement of the CoC-Server object on map. After that you gain access to all the Functions and Resources provided in the system.

1.1 DOWNLOAD

The CoC Network Services originally devised for "in house" use allow Operation Flashpoint scripters to transfer any data necessary to any specific network node in a networked OFP session. The scripter can send data by simply calling one function and designating a target pre-processed function on the destination node/machine. The system is designed to allow for fastest transfer of small to large data between the specific network nodes.

Supported network send data is:

[*]Boolean

[*]Group

[*]Number

[*]Object

[*]String (passed in as Character Arrays, see ReadmeCoCNS.txt)

[*]Array (filled with nothing or any of the above in any combination)

[*]Multi-Dimensional Array (filled with nothing or any of the above in any combination)

Once the handshaking process is completed each machine has an array with information on every other machine in the session/mission. The server is always in the first entry of this array.

The CoC Public Array system build into this CoC-Server allows for the definition of publically shared arrays to be transferred over the network when the function fPublicArray is called.

We hope everyone enjoys the benefits of this pack either in Add-on or Script format.

Also check out the CoC Unified Documentation system: UDS

Share this post


Link to post
Share on other sites

Previously announced there but all discussions for scripts and addon should be directed here to avoid confusion.

Share this post


Link to post
Share on other sites
Quote[/b] ]Yes, in CoC Command Engine 3, a remote human general may designate a waypoint for his human subordinate leader, this waypoint information can be passed to all machines on the network or just the specific one using the fNSend function and a custom waypoint change function. (fNSend being the main attraction in this release

I recall hearing something about this. However what would impress me is being able to designate waypoints and send money without convoluted dialogue commands.. assuming that's how it works. By convoluted I mean anything more complicated than what a colobus monkey can understand. Since I guess myself and possibly other well intentioned and enthusiastic members of the editing community lack the braincells to understand more abstract things... well maybe it's just me. Still. It's nevertheless fascinating. =P

Still. I'm definitely looking forward to CoC3 should it come to fruition and I hope it turns out as you guys intend it to.

Share this post


Link to post
Share on other sites

Hi,

Hmm....This is probably a stupid question but

Would CoC allow you to call different cutscenes on different clients depending on side and location of each player e.t.c

Errr.....assuming it's possible, and you cant do it all ready? smile_o.gif

Share this post


Link to post
Share on other sites
Hi,

Hmm....This is probably a stupid question but

Would CoC allow you to call different cutscenes on different clients depending on side and location of each player e.t.c

Errr.....assuming it's possible, and you cant do it all ready?  smile_o.gif

You would not need the network service to do this as far as I know smile_o.gif

RED

Share this post


Link to post
Share on other sites

Well yes of course it would Sgt_Wilson.

Although like RED says you may not need to use any network service for that. biggrin_o.gif

Share this post


Link to post
Share on other sites

bn880, does some of the CTI versions use this network services? And if they are i think they are on version 1.0. Would the CTI mission makers have any use of updating it to 1.1?

Anyway good job! smile_o.gif

Share this post


Link to post
Share on other sites

smile_o.gif Hmm I only now found this post, must have never gotten E-mail notification or something.

Private Flak has been using the services in his versions of CTI maps for a while, however as far as I am aware, the core CTI system does not yet use the services, especially since CTI came out before the Network Services did. There is indeed a benefit in upgrading to 1.1 as the performance of the system has been improved, particularly at the start of the mission. There is also the addition of a very low bandwidth Public Array system which can probably be utilized in CTI.

Again sorry for not answering this on time... crazy_o.gif

Share this post


Link to post
Share on other sites

Good day (not really), here are some bulletins on the Chain of Command Network Services:

================================================

For anyone using version 1.1 of the network services Addon only, you are instructed to insert the following line in the initialization field of the CoC_Server object: <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">this exec "\CoC_NS\init.sqs"; This is done right in the mission editor when you double click on the CoC_Server which looks like a trigger or blue gamelogic. wink_o.gif

The reason for this is an addon eventhandler range limitation present in OFPR 1.91, this way we are independent of any eventhandler.

We may be releasing a newer addon for version 1.92 of OFPR in the future to eliminate the need for this line.

================================================

Patch for CoC NS 1.1 Script version

We have located 2 bugs in the fNRecieve.sqf function of the Network Services.

1. Making use of fNSend* in a custom receive function caused infinite send loops on the specific machine. Reason: BIS implemented bug in Private[] variable declaration. Fix: Switched Private declaration to lowercase.

2. NS 1.1 execution on a dedicated server was unable to receive any data through fNSend*, sending was intact. Reason: Error made in fNRecieve function error checking design. Instead of checking the transmitted data against CoC_ClientList, CoC_PeerList was used, which works only on clients and non-dedicated servers. Surprisingly unlike Microsoft, our function did NOT execute what it thought was a badly formed message. ;) Fix: Implemented logic to use CoC_ClientList on any server node. Special thanks to CrashDome of the Sinews of War mod for reporting problems with the dedicated server communications!

Here is the patched fNRecieve.sqf, please overwrite the existing /Network/fNRecieve.sqf file with this ASCII content (if you think you require the fix): <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">comment " CoC Network Service 1.1 ";

comment " CoC bn880 14/06/2003 ";

comment " CoC bn880 Patched on 18/08/2003 ";

comment " Fixed OFP uppercase Private declarations and NS 1.1 dedicated server receive bug. ";

comment " Calling back from a custom receive function will now work and the dedicated server can receive messages;) ";

private ["_data","_datastream","_datainfostream","_callerid","_destid","_callwith","_functionname","_ok","_count"];

_dataInfoStream = _this select 0;

_dataStream = _this select 1;

_data = [_dataInfoStream,_dataStream] call fNStreamsToData;

_count=0;

if(count _data <4) then {

_ok = false;

} else

{

_callerId = _data select 0;

_destId = _data select 1;

_callWith = _data select 2;

_functionName = _data select 3;

if(CoC_isServer) then {_count =count CoC_ClientList;} else {_count =count CoC_PeerList;};

if (_callerId < 0 || _destId < 0 || _callerId >= _count || _destId >= _count || _functionName == "") then

{

_ok = false;

} else

{

_callWith call (call _functionName);

_ok = true;

};

};

_ok;

If anyone out there is actually using the addon version of the services, we can provide information on how to patch the addon itself, but the best solution appears to be using the script version until BIS releases OFP 1.92 and we make the NS conform. (yes the filename is mis-spelled)

Regards,

bn880

Share this post


Link to post
Share on other sites

I'm attempting to integrate NS 1.2 into my CTI maps. The first thing I'd like to do is make server vehicle arrays available to the clients (I have some areas where this would be useful like a vehicle status script that shows your team's vehicles, grid location, and damage amount).

I'm wondering how the client knows when the array has been received completely by the client? I'm looking through the documentation but I'm not seeing the answer. Sorry if it's there and I missed it.

Could someone post a simple example of how to use CoC NS 1.2 to transmit an array from server to client.

in init.sqs I've set the arrays:

CoC_PublicArrays = ["vehicles","westVehicles","eastVehicles"];

then I believe I need to send the array information from the server later on. I created a script file run by the server:

@CoC_ClientsReady

#top

@ (transmit)

"vehicles" call fPublicArray

"westVehicles" call fPublicArray

"eastVehicles" call fPublicArray

transmit = false;PublicVariable "transmit"

goto "top"

and finally when a client wants updated information it does this:

@ !(transmit)

transmit = true;PublicVariable "transmit"

@ !(transmit)

[EDIT] just so I'm complete with my explanation I'm using the script version and have added the gamelogic named CoC_Server in my map.[/EDIT]

I'm sure this isn't the way to do it so wanted to asked here. Thank you for any advice/feedback.

regards,

SSG Plazmoid

Share this post


Link to post
Share on other sites

Good day,

well there is no automatic thing that tells you an array is recieved through fPublicArray. However your transmit flag might do the trick, I'd put a ~1 in there at least. You do not want to transmit a lot of data in OFP constantly, it's a recipe for disaster.

Another method is to have an integer count somewhere at the start of each array, so you could do

server

_trNum=0

vehicles=[_trNum]+vehicles

#top

~5

vehicles set[0,_trNum]

"vehicles" call fPublicArray

_trNum=_trNum+1

goto"top"

(you may want to use duplicates of arrays depending on your external scripts)

on clients have

_trNum=0

#wait

@vehicles select 0 != _trNum

_trNum=vehicles select 0

(new array arrived)

goto"wait"

However this is (server side loop) the wrong way to do it, what you should do is transmit the array you need to transmit when an even occurs (such as adding a vehicle or removing a vehicle).

Then again you can use another approach if you want, use fNSendClients.

create a destination function and add it to CoC_NSFunTable everywhere

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

txVehicleArrIn={player sidechat"new vehicle array is in";vehicles=_this;}

CoC_ClientsReady = false

call loadFile "Network\init.sqf"

; INIT CODE NOT DEPENDING ON NETWORK EXECUTES NOW

@CoC_ClientsReady

CoC_NSFunTable=CoC_NSFunTable+["txVehicleArrIn"]

On server event you can now do:

[vehicles,"txVehicleArrIn"]call fnSendClients

This will transmitt the array, even with sides and all sorts of stuff, and then run that txVehicleArrIn on the clients when the array arrives. (you can also transmitt an expanded array with a flag signifying which array you sent: [[0,vehicles],"txArrIn"]call fnsendclients, and check _this select 0 in the txArrIn to make a decision)

Note that the syntax may need slight fixing for typos if any. So use sends across the network sparingly/when you have to, the fNSendClients is MORE network intensive than fPublicArray, but gives you the power of calling a remote function.

Share this post


Link to post
Share on other sites

<span style='font-size:17pt;line-height:100%'>Just wanted to post some very relevant news:</span>

In development (testing) we have NS 2.0 which will

[*] utilize a hack of fPublicArray to call destination functions with data on selected clients (this uses one set of PublicVariables per transmitt, as opposed to fnSend* which sends to each client seperately) Data send supported will be: Arrays, multi dimensional arrays, filled with anything that PublicVariable sends.

[*] fnSend* functions will now send regular strings, character array support is removed as strings need no translation to individual characters (maximum string length is 4000 characters, use string sending sparingly)

[*] fnRemoteCall function which will simply send a command to remote nodes (all nodes by default). For example [[],"skiptime 12"] call fnRemoteCall or [[],"[12,13]exec {myscript.sqs}"] call fnRemoteCall (also 4000 characters max, to be used sparingly ) Sending of units or groups is not supported via this method, only whatever translates into a string and can be called is sent.

Share this post


Link to post
Share on other sites

thank you very much for your reply and NS 2.0 sounds great! That's pretty exciting strings can now be sent. 4000 characters rings a bell from another conversation I saw about using dialogs as an ingame notepad.

I was going to ask how the client would know when the array had fully arrived after the first element containing the new number of elements had changed (in your example). But I just realized that if that 1st element is sent first by the function then all I have to do is force the client to wait for

count vehicles = vehicles select 0

to be sure the array is all there.

regards,

Plaz

Share this post


Link to post
Share on other sites
thank you very much for your reply and NS 2.0 sounds great! That's pretty exciting strings can now be sent. 4000 characters rings a bell from another conversation I saw about using dialogs as an ingame notepad.

Indeed, same reason, 4096 max bytes in OFP, but we use a few of these for our data abstraction. smile_o.gif

Good luck with your scripting,

Regards

Share this post


Link to post
Share on other sites

Have tried to find some example missions utilizing NS 1.x and publicArray function. However I'm trying to send my array across isn't being received at the client. If there is a mission anywhere that I can download I'll be able to figure out how it works. Otherwise I'll post what I'm doing below:

in init.sqs:

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

vehiclesMP = [0]

westVehicles = []

westVehiclesMP = [0]

eastVehicles = []

eastVehiclesMP = [0]

CoC_PublicArrays = ["vehiclesMP","westVehiclesMP","eastVehiclesMP"];

CoC_ClientsReady = false;

call loadFile "Network\init.sqf"

...

then in myinit.sqs which runs only after mission start via a trigger set to true:

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

@CoC_ClientsReady

? (CoC_isServerDedicated) && (CoC_isServer) && !(CoC_isClient):[] exec "init\arrayTransServer.sqs"

? (CoC_isClient) && !(CoC_isServer):[] exec "init\arrayTransClient.sqs"

arrayTransServer.sqs

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

~1

@ (count vehicles != (vehiclesMP select 0))

vehiclesMP = [count vehicles] + vehicles

"vehiclesMP" call fPublicArray

~1

westVehiclesMP = [count westVehicles] + westVehicles

"westVehiclesMP" call fPublicArray

~1

eastVehiclesMP = [count eastVehicles] + eastVehicles

"eastVehiclesMP" call fPublicArray

goto "top"

arraytransclient.sqs

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

_westVehiclesMPCount = 0

_eastVehiclesMPCount = 0

#top

~1

@ (vehiclesMP select 0 != _vehiclesMPCount)

_vehiclesMPCount = vehiclesMP select 0

vehicles = vehiclesMP - [_vehiclesMPCount]

@ (westVehiclesMP select 0 != _westVehiclesMPCount)

_westVehiclesMPCount = westVehiclesMP select 0

westVehicles = westVehiclesMP - [_westVehiclesMPCount]

hint format ["%1\n\n%2",westVehicles,westVehiclesMP]

@ (eastVehiclesMP select 0 != _eastVehiclesMPCount)

_eastVehiclesMPCount = eastVehiclesMP select 0

eastVehicles = eastVehiclesMP - [_eastVehiclesMPCount]

goto "top"

so the idea is when the array changes on the server the server script wakes up and transmits the MP copies of the arrays. then on the client the client loop waits for the 1st element of the array (containing the number of elements) to be different from what it expects and then copies the MP arrays that were just received. Problem is I don't ever receive anything.

I'm testing this by saving my map and copying on LAN to a dedicated server then joining that server remotely across the LAN from my client. When the game starts I see the link established message. Also I run a simple report script that watches the value of CoC_ClientsReady and the client does see this go true after a few seconds.

thanks for any ideas,

Plaz

Share this post


Link to post
Share on other sites
Have tried to find some example missions utilizing NS 1.x and publicArray function. However I'm trying to send my array across isn't being received at the client. If there is a mission anywhere that I can download I'll be able to figure out how it works. Otherwise I'll post what I'm doing below:

Perhaps you can find an example here: http://www.downloads.thechainofcommand.net/zips/CoC_NS_11_Pack.zip

Thats NS 1.1, but it should have some stuff in there, you can swap the files in the subfolders to 1.2 as far as I know.

Quote[/b] ]

in init.sqs:

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

vehiclesMP = [0]

westVehicles = []

westVehiclesMP = [0]

eastVehicles = []

eastVehiclesMP = [0]

CoC_PublicArrays = ["vehiclesMP","westVehiclesMP","eastVehiclesMP"];

CoC_ClientsReady = false;

call loadFile "Network\init.sqf"

...

Looks ok.

Quote[/b] ]then in myinit.sqs which runs only after mission start via a trigger set to true:

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

@CoC_ClientsReady

? (CoC_isServerDedicated) && (CoC_isServer) && !(CoC_isClient):[] exec "init\arrayTransServer.sqs"

? (CoC_isClient) && !(CoC_isServer):[] exec "init\arrayTransClient.sqs"

You don't need the double logic check, and try to do some sidechats to verify what's running

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

? CoC_isServer:[] exec "init\arrayTransServer.sqs"

? CoC_isClient && !(CoC_isServer):[] exec "init\arrayTransClient.sqs"

Quote[/b] ]arrayTransServer.sqs

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

~1

@ (count vehicles != (vehiclesMP select 0))

vehiclesMP = [count vehicles] + vehicles

"vehiclesMP" call fPublicArray

~1

westVehiclesMP = [count westVehicles] + westVehicles

"westVehiclesMP" call fPublicArray

~1

eastVehiclesMP = [count eastVehicles] + eastVehicles

"eastVehiclesMP" call fPublicArray

goto "top"

Simple, run this in non dedicated server and debug it with sidechats.

Quote[/b] ]arraytransclient.sqs

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

_westVehiclesMPCount = 0

_eastVehiclesMPCount = 0

#top

~1

@ (vehiclesMP select 0 != _vehiclesMPCount)

_vehiclesMPCount = vehiclesMP select 0

vehicles = vehiclesMP - [_vehiclesMPCount]

@ (westVehiclesMP select 0 != _westVehiclesMPCount)

_westVehiclesMPCount = westVehiclesMP select 0

westVehicles = westVehiclesMP - [_westVehiclesMPCount]

hint format ["%1\n\n%2",westVehicles,westVehiclesMP]

@ (eastVehiclesMP select 0 != _eastVehiclesMPCount)

_eastVehiclesMPCount = eastVehiclesMP select 0

eastVehicles = eastVehiclesMP - [_eastVehiclesMPCount]

goto "top"

looks ok, try this syntax thoug, again use sidechats, print out array contents too

@(vehiclesMP select 0)!=_vehiclesMPCount

.

.

.

Share this post


Link to post
Share on other sites

tried using hints to see when things were running and I determined my arrayTransServer.sqs was running on the server and arrayTransClient.sqs was running on the client but client didn't receive update. I used hints to determine what the array was doing on the server but the client didn't receive any update.

So I chose to try something as simple as possible. I created a blank map, put the CoC_Server gameobject, a player unit, and a trigger set to true that calls a script.

init.sqs

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

vehicles = []

CoC_PublicArrays = ["vehicles"];

CoC_ClientsReady = false;

call loadFile "Network\init.sqf"

exit

myinit.sqs (called from true trigger after map start)

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

? (CoC_isServer):goto "server"

? (CoC_isClient):goto "client"

exit

#server

vehicles = [1,2,3,4,5]

"vehicles" call fPublicArray

exit

#client

~1

hint format ["%1",vehicles]

? (count vehicles > 0):exit

goto "client"

running on dedicated server joining as remote client I saw the link established message and then in the hint box []. I waited a suitable amount of time but the client vehicles array didn't change from an empty array.

Am I wrong to expect the client vehicles array to be equal to the server vehicles array once publicArray is sent? I know it's not instantaneous so my loop ran indefinitely until the array changed. Not sure what else to try.

thanks,

Plaz

Share this post


Link to post
Share on other sites

Sounds great as well as very very confusing

Ok how about this in laymans terms for the rest of us non-rocket builder types.

Share this post


Link to post
Share on other sites
tried using hints to see when things were running and I determined my arrayTransServer.sqs was running on the server and arrayTransClient.sqs was running on the client but client didn't receive update. I used hints to determine what the array was doing on the server but the client didn't receive any update.

So I chose to try something as simple as possible. I created a blank map, put the CoC_Server gameobject, a player unit, and a trigger set to true that calls a script.

init.sqs

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

vehicles = []

CoC_PublicArrays = ["vehicles"];

CoC_ClientsReady = false;

call loadFile "Network\init.sqf"

exit

myinit.sqs (called from true trigger after map start)

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

? (CoC_isServer):goto "server"

? (CoC_isClient):goto "client"

exit

#server

vehicles = [1,2,3,4,5]

"vehicles" call fPublicArray

exit

#client

~1

hint format ["%1",vehicles]

? (count vehicles > 0):exit

goto "client"

running on dedicated server joining as remote client I saw the link established message and then in the hint box []. I waited a suitable amount of time but the client vehicles array didn't change from an empty array.

Am I wrong to expect the client vehicles array to be equal to the server vehicles array once publicArray is sent? I know it's not instantaneous so my loop ran indefinitely until the array changed. Not sure what else to try.

thanks,

Plaz

All I can say is , hmmm. I will have a look, maybe something was broken for 1.2, will be easy solution either way.

Share this post


Link to post
Share on other sites

Hi again, yes I forgot (didn't realize) we still had the Public Array system not initializing properly on dedicated server in 1.2. It's a very small logical error and here is a very simple fix:

In /PA/Init.sqs find these lines

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

?CoC_IsClient:[] exec "PA\Client.sqs"

exit

change to this (you can do this since you have script version)

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

[] exec "PA\Client.sqs"

exit

Thanks, and this was already fixed in our dev version. Most people don't rely on Dedi server + PA so far that's why that was missed for 1.2.

Regards

Share this post


Link to post
Share on other sites
Guest [B.B.S.] T_D

At first I want to thanks you guys for this very helpful addon. I am implementing it in the C&C CTI and it works well so far. But sometimes an error message occurs. Everything works well but it looks crappy. So here the error line:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">call(call (_t select 1))

found it in fNRemoteCallR.sqf

Since I play with German language I only can guess what "Reihe" means in English. I know that the English word is row but that doesnt belong to scripting so I think that means array.

error call: nothing expect array

this should be the english version of the error.

Hope you can help me. thumbs-up.gif

Share this post


Link to post
Share on other sites

That usually happens when you send bad data across, espeically if you try to send data that a function won't send anyway. Perhaps one of your remotecall commands is buggy and ends up being "".

Make sure to use NS 2 smile_o.gif it can be downloaded on the documentation page.

Share this post


Link to post
Share on other sites
Guest [B.B.S.] T_D

Forgot to mention that I use NS2 after I searched a while for it tounge2.gif

The only line with fNRemoteCall is the following:

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">[[],{_mags = magazines _vehicle; {_vehicle removeMagazines _x } foreach _mags}] call fNRemoteCall

Maybe you can explain me what exactly causes the problem and how to use fNRemoteCall correctly. I will change this line using fNSendAll but I am interested how to use fNRemoteCall and which variables I can use. Are local variables allowed?

But thanx for the fast reply. thumbs-up.gif

Share this post


Link to post
Share on other sites

Ohh, no the local variables can't be used like that as they don't exist on the remote nodes in the remotecall script.

You can only translate local variables into the remoteCall string using format[], however you can never pass vehicles in remoteCall, only an index to a vehicle. Remotecall basically passes strings, no chance to send objects in strings.

Have a look at the main document here, it will tell you what you can pass in remoteCall

http://www.thechainofcommand.com/docs/LIBNETWORK/CoC_LIBNETWORK.html

middle of page

Share this post


Link to post
Share on other sites
Guest [B.B.S.] T_D

ah thank you very much. I think now I better understand this command. thumbs-up.gif

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  

×