Jump to content
Sign in to follow this  
Desolate

The Structure of an Arma Server

Recommended Posts

I have all the scripts the mission file and everything I need for a new dedicated arma server. The problem is I honestly don't know where to put them besides the MPMissions folder. The stat save does not work and neither do alot of the other scripts, so I figure I have them located in the wrong directory. My current setup is C:\Program Files (x86)\Steam\SteamApps\common\Arma 2 Operation Arrowhead\MPMissions\, with anarchyinthetk.takistan, build, scripts outside the pbo files in that directory. Are SQF scripts supposed to be in another directory?

Share this post


Link to post
Share on other sites

All the scripts you distribute using the mission-file have to be in your missions.pbo, scripts floating around in MPMissions won't get recognized unless you reference them with "\MPMissions\yourSQF.sqf", which wouldn't be conformant to the usual way of distributing scripts - the thing is that you want to make sure that others have the same scripts so executing the scripts will work on every client, compiling all of your scripts into a pbo is the only way to achieve that.

Share this post


Link to post
Share on other sites

Im not sure what you want, you must say more exact what you are trying to do but i think you are trying to save your mission so you can make dedicated server (if not then be more exact).

1. open your arma 2 as administrator.

2. go to C:\Users\name\Documents\ArmA 2 Other Profiles\name\missions\anarchyinthetk.takistan\

3. put all your scripts there.

4. in arma 2 open the map in editor.

5. save and export the map to multiplayer (this will create and replace the old .pbo file with new files (.pbo is like winrar file, it contains all scripts and misson and if you want to look inside pbo then you need tools like: pboView)).

6. create 3 files: ban.txt, server.cfg, arma2.cfg.

7. leave ban.txt empty.

8. server.cfg

// server.cfg
//
// comments are written with "//" in front of them.


// GLOBAL SETTINGS
hostname = "name";				
password = "";						
passwordAdmin = "password";					
logFile = "server_console.log";	 //creates auto			

motd[] = {
"your message line 1",
"your message line 2",
"your message line 3",
"your message line 4",
};
motdInterval = 1800;


// JOINING RULES
checkfiles[] = {};					// Outdated.
maxPlayers = 60;					// Maximum amount of players. Civilians and watchers, beholder, bystanders and so on also count as player.
kickDuplicate = 0;					// Each ArmA version has its own ID. If kickDuplicate is set to 1, a player will be kicked when he joins a server where another player with the same ID is playing.
verifySignatures = 2;					// Verifies .pbos against .bisign files. Valid values 0 (disabled), 1 (prefer v2 sigs but accept v1 too) and 2 (only v2 sigs are allowed). 
equalModRequired = 0;					// Outdated. If set to 1, player has to use exactly the same -mod= startup parameter as the server.


// INGAME SETTINGS
disableVoN = 0;						// If set to 1, Voice over Net will not be available
vonCodecQuality = 10;					// since 1.62.95417 supports range 1-20 //since 1.63.x will supports range 1-30 //8kHz is 0-10, 16kHz is 11-20, 32kHz is 21-30
persistent = 1;						// If 1, missions still run on even after the last player disconnected.
timeStampFormat = "short";				// Set the timestamp format used on each report line in server-side RPT file. Possible values are "none" (default),"short","full".
BattlEye = 1;                                           // Server to use BattlEye system


// SCRIPTING ISSUES
onUserConnected = "";					//
onUserDisconnected = "";				//
doubleIdDetected = "";					//
//regularCheck = "{}";                                  //  Server checks files from time to time by hashing them and comparing the hash to the hash values of the clients. Causes heavy I/O, uncomment to disable feature - READ WARNING ABOVE - makes cheating possible!


// SIGNATURE VERIFICATION
onUnsignedData = "kick (_this select 0)";		// unsigned data detected
onHackedData = "kick (_this select 0)";			// tampering of the signature detected
onDifferentData = "";					// data with a valid signature, but different version than the one present on server detected


//MISSIONS CYCLE (see below)
class Missions 
{
class  yourmission //any name
{
	template="anarchyinthetk.takistan";
	difficulty="Regular";
};
};

9. arma2.cfg

language="English";
adapter=-1;
3D_Performance=8021;
Resolution_W=160;
Resolution_H=120;
Resolution_Bpp=32;
viewDistance=10000;
terrainGrid=10;
MinBandwidth=15000000;
MaxBandwidth=100000000;
MaxMsgSend=1024;
MaxSizeGuaranteed=1024;
MaxSizeNonguaranteed=64;
MinErrorToSend=0.0024999999;
MaxCustomFileSize=0;
Windowed=0;

10. if you dont use any server hosting tools then: go to: C:\Program Files\Steam\SteamApps\common\ARMA 2 Operation Arrowhead and create shortcut for: arma2oaserver.exe (put it somewere ex: desktop).

11. in target paste this: "C:\Program Files\Steam\SteamApps\common\ARMA 2 Operation Arrowhead\arma2oaserver.exe" -config=server.cfg -cfg=arma2.cfg

12. you are set. but i saw you recently made post about stat saving. It isnt easy to make it so good luck (and if you want to host arma server you should learn about arma scripting unless you think its perfect and doesnt need any configuration).

Edited by sudslv

Share this post


Link to post
Share on other sites

That was extremely helpful thanks

---------- Post added at 19:25 ---------- Previous post was at 19:21 ----------

With some of this information I have completed a small scale stat save system, but I was wondering is there anyway to take a snapshot(using a script) of the server before restarting so that it wont wipe everyones stats upon restart. So that I can just reload the mission where everyone has the same money they had before the server restarted.

Share this post


Link to post
Share on other sites

well im not sure how your stat save works? it is some sqf script that saves all user data or it is a mySQL database? (im not that good when it comes to mySQL).

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  

×