Jump to content

drivetheory

Member
  • Content Count

    24
  • Joined

  • Last visited

  • Medals

Posts posted by drivetheory


  1.  

    problem occurs regardless of cpu count in my experience.

     

    rpt file shows the following:

    17:13:28 InitSound ...
    17:13:28 Error: Create XAudio2 device failed, error 80040154
    17:13:28 Warning: Audio device creation failed, attempt to create default audio:
    17:13:28 SamplesPerSec: 44100, channels: 2, bitsPerSample: 16
    17:13:28 Error: Create XAudio2 device failed, error 80040154
    17:13:28 InitSound - complete
    

     

     

    reinstalled the june 2010 directx redistributable package, problem solved. last time i played arma 3 was in december and it worked fine, not sure what happened in the interim to break things...

     

    that pack is in the arma 3 folder:

    .\Steam\steamapps\common\Arma 3\_CommonRedist\DirectX\Jun2010\DXSETUP.exe


  2. Hello,

    we've found out that the issue occurs when CPU count parameter is set to 1. Please check you Launcher parameters (Parameters page -> Advanced tab -> Advanced section) or command line/Steam startup parameters for -cpuCount=1.

     

    problem occurs regardless of cpu count in my experience.

     

    rpt file shows the following:

    17:13:28 InitSound ...
    17:13:28 Error: Create XAudio2 device failed, error 80040154
    17:13:28 Warning: Audio device creation failed, attempt to create default audio:
    17:13:28 SamplesPerSec: 44100, channels: 2, bitsPerSample: 16
    17:13:28 Error: Create XAudio2 device failed, error 80040154
    17:13:28 InitSound - complete
    

  3. if you run the script via addAction only the person who performs the addAction sees the hints/score and everyone sees the targets.

    when i tried

    if(!isServer)exitWith{};

    nobody sees the hints/scores but they do get the popups

    if you run it via server side trigger everyone sees the hints but the popups go haywire because everyone is triggering the popups...

    i'm trying to make the script only popup server side but hint/score on all clients

    hey F2k Sel, any ideas? I'll post my work in progress modification if it'd help.

    EDIT: currently messing with some ideas, will post back later


  4. I can't seem to get this basic script idea to hint all players within the given radius in a multiplayer game.

    the constants:

    1) 1 flag pole placed in game called "hint_pole"

    2) init field of that flag pole: this addAction ["Generate Test Hint","distance_based_hint.sqf"];

    I've tried to following:

    _players = nearestObjects [hint_pole,[],30];
    {if (_x == player) then {hintSilent "TEST HINT #1";};} forEach _players;
    

    and

    _players = (position hint_pole) nearEntities 50;
    {hintsilent "TEST HINT #1"} forEach (_players);
    

    yeah.. im not very good at this scripting thing, but im relentless in my pursuit of trying to make things work...


  5. so, after many hours of work and lots of trial & error and wiki page reading (instead of sleep, god im going to be worthless @ work today) this is the final working result:

    init.sqf

    if (isNil "AirRaid") then {
    AirRaid = false;
    if (isServer) then {
    publicVariable "AirRaid";
    };
    };
    
    "AirRaid" addPublicVariableEventHandler {
    (_this select 0) execVM "air_raid_pt2.sqf";
    };
    

    description.ext

    class CfgSounds {
    sounds[] = {
    	WarningSiren
    };
    class WarningSiren
    {
    	name="Warning_Siren";
    	sound[] = {"\sounds\danger.ogg",db-10,1};
    	titles[] = {};
    };
    };
    

    "el_flagpole" init field:

    this addAction ["Begin Air Raid Warning","air_raid_pt1.sqf",["AirRaid"]];
    

    air_raid_pt1.sqf

    private ["_params","_PubVar"];
    
    _params = _this select 3;
    _PubVar = _params select 0;
    
    if !(AirRaid) then {
    call compile format ["%1 = true;",_PubVar];
    publicVariable _PubVar;
    sleep 1;
    el_speaker say3D "WarningSiren";
    hintSilent "Incoming Aircraft!";
    sleep 5;
    hintSilent "Hurry! Take Cover!";
    sleep 5;
    hintSilent "They're Almost Here!";
    sleep 5;
    hintSilent "";
    call compile format ["%1 = false;",_PubVar];
    publicVariable _PubVar;
    }
    else {
    hintSilent "The Alarm Has Already Been Sounded";
    sleep 3;
    hintSilent "";
    };
    

    air_raid_pt2.sqf

    if (AirRaid) then {
    el_speaker say3D "WarningSiren";
    if (player distance el_flagpole < 50) then {hintSilent "Incoming Aircraft!";};
    sleep 5;
    if (player distance el_flagpole < 50) then {hintSilent "Hurry! Take Cover!";};
    sleep 5;
    if (player distance el_flagpole < 50) then {hintSilent "They're Almost Here!";};
    sleep 5;
    if (player distance el_flagpole < 50) then {hintSilent "";};
    };
    

    I'm still not 100% certain why:

    1) the public variable name has to be passed via command line in the init field of the flagpole

    2) "call compile format ["%1 = false;",_PubVar];" has to be used instead of just "AirRaid = false;"

    if anyone could explain these 2 things is in a way that someone as incompetent as myself could understand it i would be very appreciative of such generosity.

    i tried using "AirRaid = false;" many times but it would only change the public variable locally and never propagate to the server or other clients and when combining "AirRaid = false;" with "PublicVaraiable AirRaid" in pt1 the script seemed to just hang (debugged it with the oh-so-clever use of a million hintsilent lines)

    and as i sit here typing this out im wondering why addPublicVariableEventHandler ran when AirRaid was changed to true at the begging of pt1.sqf but did not again when AirRaid was changed back to the original value at the end of the very same script... or is it only run when it's changed from the state originally listed in init.sqf?.....

    _Me = "rather confused";

    thanks again


  6. i had thought about using the addAction to toggle the pubvar and making the pubvar value the condition for the trigger (saw this method used before)- but don't triggers check the condition state once every cycle?... and if there's 1 flag pole in every city and 30 cities that's 30 triggers checking pubvar status every cycle? least this was the reasoning that had me continuing in the manual fire script method... thanks for pointing out the re-declaration of the pubvar with the "if (isServer) then {publicVariable "AirRaid";};" line, that part of the client+server what gets executed/updated where still confuses me since i can't get it crystal clear in my mind what does/is-supposed-to happen where.... will re-script, test, and post back

    edit: any ideas on how to limit the hint to people only within 50m of flagpole?


  7. The end result I am trying to accomplish player activates an addAction attached to an in-game flagpole object ("el_flagpole"), which calls an SQF that executes a say3D ("WarningSiren") sound ("\sounds\danger.ogg") from an in-game object ("el_speaker") as well as sending a hintSilent to all players within a 50m radius of the activation object.

    the problem i'm having is making the say3D sound and hintSilent occur on all MP clients, as well as making the global variable work (which it's not when i mp host it?...)

    I've tried and tested a couple ideas to make things propagate to all clients but they aren't working so i've come here seeking help. coding is definitely something i'm not very good at and confuses me greatly at times...

    below is what i have so far that seems to be working correctly, but only for the client that executed the action added to the object.

    init.sqf

    if (isNil "AirRaid") then {
    AirRaid = false;
    if (isServer) then {
    publicVariable "AirRaid";
    };
    };

    description.ext

    class CfgSounds {
    sounds[] = {
    	WarningSiren
    };
    class WarningSiren
    {
    	name="Warning_Siren";
    	sound[] = {"\sounds\danger.ogg",db-10,1};
    	titles[] = {};
    };
    };

    "el_flagpole" init field:

    this addAction ["Warn The Locals!", "air_raid_warning.sqf"];

    "air_raid_warning.sqf"

    if !(AirRaid) then {
    AirRaid = true;
    el_speaker say3D "WarningSiren";
    hintSilent "Incoming Aircraft!";
    sleep 5;
    hintSilent "Hurry! Take Cover!";
    sleep 5;
    hintSilent "They're Almost Here!";
    sleep 5;
    hintSilent "";
    sleep 1;
    AirRaid = false;
    }
    else {
    hintSilent "The Alarm Has Already Been Sounded";
    sleep 3;
    hintSilent "";
    };


  8. love the script Tophe, but havin some trouble with the vehicle respawn location...

    this is the SQF snippet i created that is giving me trouble

    hangar_1 = createVehicle ["Land_Mil_hangar_EP1", ([getMarkerPos "xtra_hangar_1" select 0,getMarkerPos "xtra_hangar_1" select 1,0.4]),[],0,"NONE"];
    hangar_1 setDir 150;
    
    a10_one = createVehicle ["A10_US_EP1", ([getMarkerPos "a10_1" select 0,getMarkerPos "a10_1" select 1,0.4]),[],0,"NONE"];
    a10_one setDir 330;
    a10_one setVehicleInit "veh = [this, 10, 10, 0, FALSE, FALSE] execVM ""vehicle.sqf"";";
    

    "xtra_hangar_1" is a marker on the map where the hangar spawns in.

    "a10_1" is a marker on the map where the A-10 spawns in.

    the problem I'm experiencing is that the A-10 respawns where it crashes instead of respawning in the hanger at marker "a10_1"... i've tried to modify your script but can't quite get it right.

    i'd truly appreciate all help you can provide as concisely as possible- coding is definitely something im not very good at and confuses me greatly at times.

    thanks in advance


  9. thanks for the replies. seriously, thank you!

    @PvPscene

    bi.bikey has now been deleted, thanks

    @GossamerSolid

    that code snippet helps immensely; led me to discover this lil bit of info:

    packet1:

    TargetPLSTRINGdrivetheory

    packet2:

    Code STRINGdisableUserInput true;

    also found this:

    if (name vehicle player == hTargetPL) then {_xcompiled = compile hijCode;call _xcompiled;};+if (name vehicle player == hTargetPL) then {_xcompiled = compile hijCode;call _xcompiled;};
    


  10. read http://forums.bistudio.com/showthread.php?t=121438

    and http://forums.bistudio.com/showthread.php?t=123407

    threads, secure You server correct first ...

    use BattlEye

    current server launch shortcut is already:

    C:\Program Files\Bohemia Interactive\ArmA 2\arma2server.exe -port=9999 -name=ArmA2 -config=D:\blah\the-config.cfg -cfg=D:\blah\the-cfg.cfg -profiles=D:\blah -BEpath=D:\blah\be

    the-config.cfg already contains:

    verifySignatures = 2;
    BattlEye = 1;

    as far as sharing bans that would be a great idea, something similar to what punkbuster does already...

    but im still were i was at the first post in this thread.....


  11. well the fact still remains, running a vanilla server, if you're logged into the in-game admin slot your arma2 client locks up and you can't do anything. and, as i posted, i still can not find a single instance of this in a capture file. yes, i've read they are just exploiting holes in the scripting language, but like i said already, the fact still remains and i don't see "servercommand" listed in any packets associated with this. is it some other plain text command? i've been reading the wiki and http://community.bistudio.com/wiki/Category:Scripting_Commands_ArmA2 ..... please do clarify what im missing


  12. a) negative, server does not have the DLC on it

    b) the keys are the standard bi.bikey & bi2.bikey (in both locations)

    c) yes, only full DLC players get kicked

    d) i've reconfigured the server to use v1 signatures as of this posting, will report back later

    e) i don't know

    However, today i did read this:

    http://forums.bistudio.com/showthread.php?t=120482

    this person has the same problem but in reverse, he's a player getting kicked for having full DLC that isn't passing signature checks.

    is it the v2 signatures? are they not 100% fully functional or?


  13. For whatever reason, players who connect to the server are failing on BAF & PMC signature checks and are being kicked. Some players will fail upon initial connection and get kicked, some will fail after XYZ time period in game and get kicked. Some players are using steam and some are not. Some players are in the USA, some are not. Some players said they have all the addons are are not being kicked.

    my new-server.cfg file

    //
    // server.cfg
    //
    // comments are written with "//" in front of them.
    // --------------------------------------------------
    // GLOBAL SETTINGS
    hostname="Custom Public OA Server";  // The name of the server that shall be displayed in the public server list
    password = "";															// Password for joining, eg connecting to the server
    passwordAdmin = "XXXXXXXXXX";									// Password to become server admin. When you're in Arma MP and connected to the server, type '#login xyz'
    //reportingIP = "armedass.master.gamespy.com";								// This is the default setting. If you change this, your server might not turn up in the public list. Leave empty for private servers.
    //reportingIP = "arma2pc.master.gamespy.com";            					// In case of ArmA2  
    reportingIP = "arma2oapc.master.gamespy.com";         					// For Operation Arrowhead
    logFile = "new-server.log";													// Tells ArmA-server where the logfile should go and what it should be called
    // --------------------------------------------------
    // WELCOME MESSAGE ("message of the day")
    // It can be several lines, separated by comma
    // Empty messages "" will not be displayed at all but are only for increasing the interval
    motd[] = {
    "",
    "",
    "",
    "Welcome to the Server",
    "Feel free to join us on TS3",
    };
    motdInterval=20;	// Time interval (in seconds) between each message
    // --------------------------------------------------
    // JOINING RULES
    checkfiles[] = {};				// Outdated. DO NOT USE 
    maxPlayers=60;					// Maximum amount of players. Civilians and watchers, beholder, bystanders and so on also count as player.
    kickDuplicate = 1;				// 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 the players files by checking them with the .bisign signatures. Works properly from 1.08 on
    							// New signature version 2 relesea with 1.58
    							// verifySignatures=1 will check both v1 and v2 signatures.
    							// verifySignatures=2 the server will reject clients using any addons which are signed by v1 signatures only.
    							// v2 signatures are extension of v1 signatures.
    							// v2 signature can be still understood by old servers and clients but it acts the same as v1 signature there
    							// v1 signatures can be still understood by new versions, but they do not pass when extended test is required by the server used during v2 signature verification
    equalModRequired = 0;			// Outdated. DO NOT USE. If set to 1, player has to use exactly the same -mod= startup parameter as the server.
    // --------------------------------------------------
    // VOTING
    voteMissionPlayers=255;  		// Tells the server how many people must connect so that it displays the mission selection screen.
    voteThreshold=9;				// 33% or more players need to vote for something, for example an admin or a new map, to become effective
    // --------------------------------------------------
    // INGAME SETTINGS
    disableVoN = 0;					// If set to 1, Voice over Net will not be available
    vonCodecQuality = 2;			// Quality from 1 to 10
    persistent = 1;					// If 1, missions still run on even after the last player disconnected.
    // --------------------------------------------------
    // SCRIPTING ISSUES
    onUserConnected = "";			// self-explaining
    onUserDisconnected = "";
    doubleIdDetected = "";
    regularCheck = "";
    // --------------------------------------------------
    // ArmA signature verification
    onUnsignedData = "kick (_this select 0)";			// unsigned data detected
    onHackedData = "kick (_this select 0)";				// tampering of the signature detected. use ban instead of kick once testing is complete
    onDifferentData = "";								// data with a valid signature, but different version than the one present on server detected
    BattlEye = 1;										//Server to use BattlEye system
    // --------------------------------------------------
    // MISSIONS CYCLE (see below)
    class Missions {
    class Mission_0									// name for the mission, can be anything
    	{
    		template = "co44_DomW.Takistan";	// omit the .pbo suffix
    		difficulty = "regular";					// difficulty: recruit, regular, veteran or mercenary
    		param1 = 90;							// dress
    		param2 = 23;							// age
    };
    
    };
    // --------------------------------------------------
    // LOGGING
    timeStampFormat=full;			// Sets the timestamp format used on each report line in server-side RPT file. possible values are: none (default), short, full
    

    my new-arma2.cfg file

    // These options are created by default
    language="English";
    adapter=-1;
    3D_Performance=1.000000;
    Resolution_W=800;
    Resolution_H=600;
    Resolution_Bpp=32;
    
    // These options are important for performance tuning
    MinBandwidth=131072;			// Bandwidth the server is guaranteed to have (in bps). This value helps server to estimate bandwidth available. Increasing it to too optimistic values can increase lag and CPU load, as too many messages will be sent but discarded.
    							// Default: 131072
    MaxBandwidth=76800000;			// Bandwidth the server is guaranteed to never have. This value helps the server to estimate bandwidth available.
    MaxMsgSend=256;					// Maximum number of messages that can be sent in one simulation cycle. Increasing this value can decrease lag on high upload bandwidth servers.
    							// Default: 128
    MaxSizeGuaranteed=512;			// Maximum size of guaranteed packet in bytes (without headers). Small messages are packed to larger frames. Guaranteed messages are used for non-repetitive events like shooting.
    							// Default: 512
    MaxSizeNonguaranteed=256;		// Maximum size of non-guaranteed packet in bytes (without headers). Non-guaranteed messages are used for repetitive updates like soldier or vehicle position. Increasing this value may improve bandwidth requirement, but it may increase lag.
    							// Default: 256
    MinErrorToSend=0.005;			// Minimal error to send updates across network. Using a smaller value can make units observed by binoculars or sniper rifle to move smoother. Default: 0.01
    MaxCustomFileSize=0;			// Users with custom face or custom sound larger than this size are kicked when trying to connect.
    

    my new-default.arma2oaprofile file

    class Difficulties
    {
    class Regular
    {
    	class Flags
    	{
    		3rdPersonView = 1;		// This turns 3rd(third) person view and group leader view on or off. Please never talk of this as "3D view" - ArmA is not an arcade game !
    		armor = 1;				// Gives you improved body armor, tank armor etc
    		autoAim = 0;			// Enables auto aim when you're not looking through your weapon's scope. Also works with crosshair off.
    		autoGuideAT = 0;		// AT missiles will be automatically guided to their target. If 0, player has to lock onto the target.
    		autoSpot = 1;			// If you're close enough to an enemy, you'll report it without right-clicking.
    		cameraShake = 1;		
    		clockIndicator = 1;		// Displays the clock indicator on the left of your screen when giving/receiving orders like "At 11 o'clock, eemy man at 200 meters"
    		deathMessages = 1;		// Displays "XXX was killed by YYY" messages in multiplayer
    		enemyTag = 0;			// Displays information on enemy units
    		friendlyTag = 1;		// Displays information on friendly units. ONLY WORKS WITH 'Weaponcursor=0', eg crosshair on.
    		hud = 1;				// Shows you leaders location and your position in formation
    		hudGroupInfo = 1;		
    		hudPerm = 1;			// Shows HUD permanently
    		hudWp = 1;				// Shows Waypoints right after they're ordered to you
    		hudWpPerm = 1;			// Shows Waypoints permanently
    		map = 1;				// Shows symbols for all objects known to your gruop on the map. This will NOT disable the map itself !
    		netStats = 1;			// Enables the scoreboard functionality in MP
    		tracers = 0;			// Displays tracers even of small arms that in real life would not have tracers
    		ultraAI = 0;			// Enables some kind of super AI that hears and sses more and has better tactics. This is for both friendly and enemy sides.
    		unlimitedSaves = 1;		// Enables saing permanently. For single player missions. But you then can only load the last save state.
    		vonId = 1;				// When using VoN, display the name of the player speaking.
    		weaponCursor = 1;		// Shows the crosshair for your weapon
    	};
    	// These are the skills. Value may range from 0.000000 to 1.000000
    	skillFriendly = .75;			// Friendly tactics skill
    	precisionFriendly = .75;		// Friendly shooting precision
    	skillEnemy = 1;			// Enemy tactics skill
    	precisionEnemy = 0.5;		// Enemy shooting precision
    };
    };
    
    
    // Sets the server default view distance.
    // Render distance is 3/4 of view distance - for 2000 metres, objects will be render up to 1500 metres
    // This maybe overidden by the mission 
    viewDistance=4000;
    
    // Sets the server default terrain quality. Very High:10, Low:50
    // This maybe overidden by the mission 
    terrainGrid=10;
    

    my arma2oaserver launch string:

    "C:\Program Files (x86)\Bohemia Interactive\ArmA 2\arma2oaserver.exe" -port=2325 -name=new-default -config=new-default\new-server.cfg -cfg=new-default\new-arma2.cfg -profiles=new-default
    

    I had 2 of the players send me their report files:

    Warning Message: Files "baf\addons\air_d_baf.pbo", "baf\addons\characters_d_baf.pbo", "baf\addons\characters_w_baf.pbo", "baf\addons\data_baf.pbo", "baf\addons\dubbing_baf.pbo", "baf\addons\languagemissions_baf.pbo", ... are not signed by a key accepted by this server. To play on this server, remove listed files or install additional accepted keys.

    Warning Message: Files "pmc\addons\air_pmc.pbo", "pmc\addons\ca_pmc.pbo", "pmc\addons\characters_pmc.pbo", "pmc\addons\dubbingradio_pmc.pbo", "pmc\addons\dubbing_pmc.pbo", "pmc\addons\languagemissions_pmc.pbo", ... are not signed by a key accepted by this server. To play on this server, remove listed files or install additional accepted keys.
    

    Is the server missing bikeys? The server is patched to 1.59 and bi.bikey as well as bi2.bikey both exist in .\Keys\ and .\Expansion\Keys\

    Is it a configuration problem on my end?

    This OA server is on a box with a 3GHz quad core CPU, 4GB of RAM, and a 100Mb pipe (verified using speedtest.net)

    All advice is truly appreciated and please forgive my ignorance, have been config'n various servers for about a decade now but this is my first Arma2 server.

    Webpages I've been reading to get this server configured:

    http://www.kellys-heroes.eu/files/tutorials/dedicated/

    http://community.bistudio.com/wiki/server.cfg

    http://community.bistudio.com/wiki/arma2.cfg

    http://community.bistudio.com/wiki/server.armaprofile

    http://community.bistudio.com/wiki/basic.cfg

    http://community.bistudio.com/wiki/ArmA:_Server_Side_Scripting

    http://community.bistudio.com/wiki/Arma2:_Startup_Parameters


  14. I recently purchased Arma II Combined Operations.

    I Installed ARMA II & Patch 1.08

    I Installed ARMA II Operation Arrowhead & Patch 1.57

    In Arma II all the sound is all staticy / screeching / scratchy (even the music is fubar).

    In ARMA II Operation Arrowhead the sound works 100% fine, IDEAS?

    ---------- Post added at 06:21 AM ---------- Previous post was at 05:08 AM ----------

    Problem SOLVED!

    turns out installing patch 1.08 before installing Operation Arrowhead was causing the problem... go figure...

×