torndeco 128 Posted August 29, 2015 extDB2 works fine with Arma2/3Your issue is purely SQF code errorAlso the error you pasted is for different code that what you pasted below. It is similiar code but its not the same. Share this post Link to post Share on other sites
HazJ 1289 Posted September 1, 2015 Thank you. The function (fn_async.sqf) is from Tonic's Altis Life RPG (credits to him) and has A3 only commands such as isEqualTo, etc... I don't suppose you have an alternative function like this that works in Arma 2? I tried changing the commands to Arma 2 standard and now nothing works. :D Haz Share this post Link to post Share on other sites
Herr_Pinkman 0 Posted September 14, 2015 I have spent about a couple hours know reading through the documentation continuously and still have not figured out how the hell you are to use this on your own mission as im trying to setup a extDB module to save player gear locations info and vehicles gear and locations and objects and locations. If Anyone can help me out your help will be greatly appreciated and maybe even rewarded. Cheers, Ducky Hi Ducky, I am sure the following link will help regarding your query: http://www.armaholic.com/page.php?id=29345 Regards, Jesse Share this post Link to post Share on other sites
emrak 12 Posted October 6, 2015 I have spent about a couple hours know reading through the documentation continuously and still have not figured out how the hell you are to use this on your own mission as im trying to setup a extDB module to save player gear locations info and vehicles gear and locations and objects and locations. I concur with Ducky. I'm a DBA by trade, so this is double frustrating for me. :) I'm probably making an obvious mistake. Hopefully someone can assist. What I accomplished: +With the Arma 3 editor, I've made a fairly basic multiplayer mission. +My custom mission runs fine by itself and friends can join in when I run a test server locally. Now I decide to try and make some statistics persistent: +I've set up a MySQL Server running locally, all ports open, database ready and waiting. +I've downloaded extDB2 and placed it within my .../Arma 3 directory. I've also copied tbb + tbbmalloc dlls as well. +I've altered the extdb-conf.ini to point to my local database. +I add @extDB2 to my launch parameters +I start Arma 3 (and see that extDB is listed in the addons section at the bottom) and go into the Editor and load my custom scenario. So, now what? There's no where I can find in the Editor that lists extDB processes. How do I get my scenario to use extDB? This is the missing piece of the puzzle for me. Share this post Link to post Share on other sites
torndeco 128 Posted October 6, 2015 extDB2 is not drop and replace and use arma inbuilt editor for missions etc... extDB2 is basically a customizable connector that allows arma to talk to a MySQL/MariaDB/SQLite Database.It is up to you to code an SQF Framework to use extDB2 to save/load from a database.Try look at other mods/missions that are using extDB2.Currently my recommend to look at to start with is https://github.com/MrEliasen/Supremacy-Framework http://www.exilemod.com(is alot more complicated, but prob has one of the best implementationsof extDB2 i seen so far) -----------------Note:If you are still confused this extension is alot simpler to use i.e http://www.armaholic.com/page.php?id=26985 Share this post Link to post Share on other sites
emrak 12 Posted October 6, 2015 extDB2 is not drop and replace and use arma inbuilt editor for missions etc... extDB2 is basically a customizable connector that allows arma to talk to a MySQL/MariaDB/SQLite Database. It is up to you to code an SQF Framework to use extDB2 to save/load from a database. Try look at other mods/missions that are using extDB2. Currently my recommend to look at to start with is https://github.com/MrEliasen/Supremacy-Framework http://www.exilemod.com(is alot more complicated, but prob has one of the best implementationsof extDB2 i seen so far) -----------------Note: If you are still confused this extension is alot simpler to use i.e http://www.armaholic.com/page.php?id=26985 Thank you torndeco. I have seen the extension using node. Ironically, I went with extDB2 because of my background and figured it'd be easier/simpler given the limited number of concurrent players on an Arma 3 server. I've looked through Supremacy and yeah, I'm still confused, but now it's not about the stat-saving anymore, now it's personal. lol. I want to figure this out! My confusion stems from not having some sort of walk-through. Do you know of anything like this on the internet (because I can't find it): a very brief walk-through that simply shows someone taking a basic mission and setting up a one-SQL-script example using extDB, like just saving the date/time the player logged on or somesuch and then retrieving it from the DB. That would pretty much answer all my questions. I'm not sure where the block in my brain is, but I keep hitting a wall when trying to link together the disparate elements of mission, extDB, and MySQL. Thanks for your time Share this post Link to post Share on other sites
sagefhopkins 0 Posted November 3, 2015 Hello, I am trying to connect a mission to my MySQL database, so I can save some player stats, however I am very confused about how to make a call to the database to insert the players data. Currently the snippet is just a test to see if the database is recieving the data. Please correct any issues, you just help me write a line or two to be able to correctly connect. "extDB2" callExtension "1:Test:Save"; [Main] Version = 5 ;Threads = 0 ; Default Value is the number of CPU Cores Detected (max value is 6, min value is 2) Randomize Config File = false ;This is a legacy option to randomize config file for Arma2 Servers. Only for Windows Builds [Rcon] ;; This is functional, should be working fine. Just needs abit of testing on a $ ;; Allow for changing Address for those running server in a VM environment. IP = 127.0.0.1 Port = 2302 ;; Rcon Password i.e Battleye/beserver.cfg Password = password ;; Bad Player Name Checks ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON Bad Playername Enable = false Bad Playername Kick Message = Bad Player Name ;; By default : is a bad character (used as seperator for extDB2 Calls (this is hardcoded in) ;;Bad Playername Strings = (:):{:} ;;Bad Playername Regex_1 = [:alnum:] ;;Bad Playername Regex_2 = [:alnum:] ;;Bad Playername Regex_3 = [:alnum:] ;; Whitelisting / Reserve Slots ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON Whitelist Enable = false Whitelist Kick Message = Only Reserved Slots Left Whitelist Public Slots = 999 ;; Database settings to use (Optional) Whitelist Database = MySQL_Example Whitelist SQL Prepared Statement = SELECT CASE WHEN EXISTS(SELECT UID FROM PlayerInfo WHERE BattlEyeGUID=? AND Whitelisted=1) THEN 1 ELSE 0 END Whitelist Kick on SQL Query Failed = false ;; Hardcoded BEGuids for whitelisted players ;Whitelist BEGuids = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx : yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy [RemoteAccess] ;; Remote TCP Access to extDB2 Enable = true Port = 2300 MaxThreads = 4 MaxQueued = 4 IdleTime = 120 Password = password [Steam] ;; This is for VAC Protocol for VAC Bans + Steam Friends. ;; https://steamcommunity.com/dev/apikey API Key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [VAC] ;; This feature requires Steam + Rcon to be enabled. ;; Also this feature is called via SQF Code atm, i.e it doesn't auto detect players joining server yet.... Auto Ban = true ;; For Player to get banned ( their total VAC Bans => NumberOfVACBans) AND ( Days Since their Last Ban was <= DaysSinceLastBan) ;; This is also used extDB Protocol VAC:VACBanned returned results NumberOfVACBans = 1 DaysSinceLastBan = 999999999 BanDuration = 0 ;; 0 = Forever, otherwise its x Minutes BanMessage = Steam VAC Banned [Log] ;; Flush Logs after each write, more work on Harddrive Flush = true [Test] Type = MySQL Name = Test Username = root Password = ******** IP = **.**.**.*** Port = 3306 ;minSessions = 2 idleTime = 60 compress = false ; Really should only use this if MySQL server is external. Also only for MySQL Secure Auth = true ; Recommend you turn this on http://dev.mysql.com/doc/refman/5.6/en/mysql-command-options.html#option_mysql_secure-auth [MySQL_Example] Type = MySQL Name = Database_Name Username = root Password = password IP = 127.0.0.1 Port = 3306 ;minSessions = 2 idleTime = 60 compress = false ; Really should only use this if MySQL server is external. Also only for MySQL Secure Auth = true ; Recommend you turn this on http://dev.mysql.com/doc/refman/5.6/en/mysql-command-options.html#option_mysql_secure-auth [SQLite_Example] Type = SQLite Name = sqlite.db minSessions = 1 ; minSession Default Value = 1 ;maxSessions = 4 ; maxSession Default Value = number of Main->Threads ; You really should leave this value alone idleTime = 60 ; idleTime no Default Value yet, needs to be defined. ; idleTime is the time before a database session is stopped if not used. ; If Database Sessions are greater than minSessions [HTTP_Example] Type = HTTP Host = 127.0.0.1 Port = 80 ; Username = user ; Password = password ;Database Calls [Save] SQL1_1 = INSERT INTO PlayerInfo (UID, Name, BattlEyeGUID) SQL1_2 = VALUES ('HELLO', 2, 3); Number of Inputs = 3 Share this post Link to post Share on other sites
torndeco 128 Posted November 3, 2015 ;Database Calls [Save] SQL1_1 = INSERT INTO PlayerInfo (UID, Name, BattlEyeGUID) SQL1_2 = VALUES (?, ?, ?); Number of Inputs = 3 _query = [_uid, _name, _beguid] joinString ":"; "extDB2" callExtension _query; Or better way to accomplish the same is to get extDB2 to generate the beguid from the player uid. Since there is no ingame method, unless you went through the hassle of writing that in SQF Code. Note: player names can't contain : since extDB2 uses it as a seperator character. ;Database Calls [Save] SQL1_1 = INSERT INTO PlayerInfo (UID, Name, BattlEyeGUID) SQL1_2 = VALUES (?, ?, ?); SQL1_INPUTS = 1, 2, 3-BeGUID Number of Inputs = 2 _query = [_uid, _name] joinString ":"; "extDB2" callExtension _query; joinString is better than format, since its not limited by 8k size in length. Looks to be tiny bit slower in testing, but not by any significant margin. Share this post Link to post Share on other sites
sagefhopkins 0 Posted November 3, 2015 ;Database Calls [Save] SQL1_1 = INSERT INTO PlayerInfo (UID, Name, BattlEyeGUID) SQL1_2 = VALUES (?, ?, ?); Number of Inputs = 3 _query = [_uid, _name, _beguid] joinString ":"; "extDB2" callExtension _query; Or better way to accomplish the same is to get extDB2 to generate the beguid from the player uid. Since there is no ingame method, unless you went through the hassle of writing that in SQF Code. Note: player names can't contain : since extDB2 uses it as a seperator character. ;Database Calls [Save] SQL1_1 = INSERT INTO PlayerInfo (UID, Name, BattlEyeGUID) SQL1_2 = VALUES (?, ?, ?); SQL1_INPUTS = 1, 2, 3-BeGUID Number of Inputs = 2 _query = [_uid, _name] joinString ":"; "extDB2" callExtension _query; joinString is better than format, since its not limited by 8k size in length. Looks to be tiny bit slower in testing, but not by any significant margin. I'm still unable to get anything to actually log into my database. I am not sure I understand what joinString does, some explanation would be very helpful :P Here is the scripts after the modifications suggested by you, please tell me if there is anything wrong with it. _unit = player; removeAllItems _unit; removeAllAssignedItems _unit; removeUniform _unit; removeVest _unit; player addweapon "SMG_01_F"; player addPrimaryWeaponItem "muzzle_snds_acp"; player addPrimaryWeaponItem "optic_Holosight"; player addPrimaryWeaponItem "acc_flashlight"; player addMagazine "30Rnd_45ACP_Mag_SMG_01"; player addBackpack "B_AssaultPack_blk"; player forceAddUniform "U_IG_Guerilla2_3"; player addWeapon "hgun_ACPC2_F"; player addMagazine "9Rnd_45ACP_Mag"; player addSecondaryWeaponItem "muzzle_snds_acp"; player addItem "H_Cap_usblack"; player addVest "V_TacVest_blk_POLICE"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "30Rnd_45ACP_Mag_SMG_01"; player addItemToVest "9Rnd_45_ACP_Mag"; player addItemToVest "9Rnd_45_ACP_Mag"; player addItemToVest "9Rnd_45_ACP_Mag"; player addItemToVest "9Rnd_45_ACP_Mag"; player addItemToBackpack "FirstAidKit"; player addItemToBackpack "FirstAidKit"; player addItemToBackpack "FirstAidKit"; _query = [_uid, _name, _beguid] joinString ":"; "extDB2" callExtension _query; [Main] Version = 5 ;Threads = 0 ; Default Value is the number of CPU Cores Detected (max value is 6, min value is 2) Randomize Config File = false ;This is a legacy option to randomize config file for Arma2 Servers. Only for Windows Builds [Rcon] ;; This is functional, should be working fine. Just needs abit of testing on a $ ;; Allow for changing Address for those running server in a VM environment. IP = 127.0.0.1 Port = 2302 ;; Rcon Password i.e Battleye/beserver.cfg Password = password ;; Bad Player Name Checks ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON Bad Playername Enable = false Bad Playername Kick Message = Bad Player Name ;; By default : is a bad character (used as seperator for extDB2 Calls (this is hardcoded in) ;;Bad Playername Strings = (:):{:} ;;Bad Playername Regex_1 = [:alnum:] ;;Bad Playername Regex_2 = [:alnum:] ;;Bad Playername Regex_3 = [:alnum:] ;; Whitelisting / Reserve Slots ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON Whitelist Enable = false Whitelist Kick Message = Only Reserved Slots Left Whitelist Public Slots = 999 ;; Database settings to use (Optional) Whitelist Database = MySQL_Example Whitelist SQL Prepared Statement = SELECT CASE WHEN EXISTS(SELECT UID FROM PlayerInfo WHERE BattlEyeGUID=? AND Whitelisted=1) THEN 1 ELSE 0 END Whitelist Kick on SQL Query Failed = false ;; Hardcoded BEGuids for whitelisted players ;Whitelist BEGuids = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx : yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy [RemoteAccess] ;; Remote TCP Access to extDB2 Enable = true Port = 2300 MaxThreads = 4 MaxQueued = 4 IdleTime = 120 Password = password [Steam] ;; This is for VAC Protocol for VAC Bans + Steam Friends. ;; https://steamcommunity.com/dev/apikey API Key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [VAC] ;; This feature requires Steam + Rcon to be enabled. ;; Also this feature is called via SQF Code atm, i.e it doesn't auto detect players joining server yet.... Auto Ban = true ;; For Player to get banned ( their total VAC Bans => NumberOfVACBans) AND ( Days Since their Last Ban was <= DaysSinceLastBan) ;; This is also used extDB Protocol VAC:VACBanned returned results NumberOfVACBans = 1 DaysSinceLastBan = 999999999 BanDuration = 0 ;; 0 = Forever, otherwise its x Minutes BanMessage = Steam VAC Banned [Log] ;; Flush Logs after each write, more work on Harddrive Flush = true [Test] Type = MySQL Name = Test Username = root Password = ********** IP = ************* Port = 3306 ;minSessions = 2 idleTime = 60 compress = false ; Really should only use this if MySQL server is external. Also only for MySQL Secure Auth = true ; Recommend you turn this on http://dev.mysql.com/doc/refman/5.6/en/mysql-command-options.html#option_mysql_secure-auth ;Database Calls [Save] SQL1_1 = INSERT INTO Test (UID, Name, BattlEyeGUID) SQL1_2 = VALUES (?, ?, ?); SQL1_INPUTS = 1, 2, 3-BeGUID Number of Inputs = 3 Share this post Link to post Share on other sites
torndeco 128 Posted November 3, 2015 Sorry i should have had _query = ["1:TEST:SAVE",_uid, _name] joinString ":"; Its all documented in the wiki, there are also various missions using extDB2 that you can look at.You should also look @ extDB2 logs for debug info etc There is also a console test application where you can type the commands into a window & test if they are working correctly.Before you add it to SQF Code etc Share this post Link to post Share on other sites
torndeco 128 Posted November 14, 2015 Version 67https://github.com/Torndeco/extDB2/releases/tag/67 This is just an updated build of extDB2, compiled against newer versions of various libraries.The biggest change is SQLite compiled updated to 3.9.2 Updated Libraries (etc) also includeIntel TBBSPDLogBoost PocoMySQL 5.7.9 Notes about Battleye WhitelistingBE Whitelisting is completely messed up imo, i really cant be bothered to get the extension whitelisted.Also BE appears to randomly block whitelisted extensions (i assume this happens when BE Master Server failes to respond in time i.e its getting DDOS Attacked).So even if it gets whitelisted, you can depend the extension will work 100%, which can be annoying for an extension used for persistence.If you really need to get extDB2 whitelisted.You can send BE an email after BE blocks extDB2, they will whitelist it (no need to send them dll or sourcecode).Or you can try randomly call the extension daily so BE Blocks it, eventually BE will automatically get whitelist the extension (believe this is still current behaviour for BE).SQF While Loop calling the extension should help speed this up Share this post Link to post Share on other sites
torndeco 128 Posted December 1, 2015 Version 68https://github.com/Torndeco/extDB2/releases/tag/68 Updated to Visual Studio 2015New Time & Date Functions Added, more info on github release info.I will update the wiki later today/tomorrow Share this post Link to post Share on other sites
Guest Posted December 3, 2015 New version frontpaged on the Armaholic homepage. extDB2 v68 Share this post Link to post Share on other sites
Patches 0 Posted December 14, 2015 This is most likely a simple problem, but any help you could provide would help me immensely. Due to the 1.54 ArmA update crashing some life servers often (including ours) we were advised by Dwarden to make sure our extDB2 dll files are up to date. After noticing ours was hanging back at ver 62, I downloaded the latest release, ver 69, and copied the appropriate DLL's over. The server boots up fine,but the DLL is having trouble with the changes from revision 62 to 69. I have seen the changelogs, deciding to use certain protocols instead of others, but I have never really had to tangle with these before. Using revision 69 generates the pretty straightforward error: [03:27:50:849096 --5:00] [Thread 10956] extDB2: Database Type: MySQL [03:27:50:851894 --5:00] [Thread 10956] extDB2: Database Session Pool Started [03:27:50:852121 --5:00] [Thread 10956] extDB2: Failed to Load Unknown Protocol: SQL_RAW [03:27:50:877368 --5:00] [Thread 10956] extDB2: Error Unknown Protocol: 516855 Input String: 2:516855:SELECT list FROM zones WHERE id = '1' [03:27:50:885143 --5:00] [Thread 10956] extDB2: Error: Syntax error: Not a valid integer: Error Unknown Protocol [03:27:50:885179 --5:00] [Thread 10956] extDB2: Error: Input String 4:Error Unknown Protocol [03:30:25:585025 --5:00] [Thread 10956] extDB2: Stopping ... So it seems the issue is our revision 62 copy of extDB2 is using SQL_RAW as the operating protocol. And the 69 revision no longer supports that.Any idea where I would start with getting it compatible again? My current thoughts on the matter were that it would take me going through all the SQL calls in our files and changing them from the SQL_RAW layout to the new few, SQL_CUSTOM_V2 and such. Like I said, any help would be appreciated, I wasn't the one who set this system up for our life server, so I'm just trying to get it put back together again.Cheers! Share this post Link to post Share on other sites
torndeco 128 Posted December 16, 2015 @Patches https://github.com/Torndeco/extDB2/wiki/Calls:-Protocol-SQL_RAWThe last line details the difference between SQL_RAW + SQL_RAW_V2Yes if you switched over to SQL_CUSTOM_V2 & its done properly it will be faster + more secure.But its alot of work todo solo, check out https://github.com/danielstuart14/Altis-Life or goto Altis Life RPG Forums for support. Anyway goodluck Share this post Link to post Share on other sites
torndeco 128 Posted December 18, 2015 Version 70https://github.com/Torndeco/extDB2/releases/tag/70 Fixed: 9:LOCAL_TIME now returns localtime Updated: Poco Library + MySQL + Intel TBB Malloc Updated: extDB2 now build against Windows 10 SDK Known Issues:9:DateAdd Might be off by afew +- afew minutes. Edit: Finally got around to updating the wiki with the new time / date functions https://github.com/Torndeco/extDB2/wiki/Calls:-Setup Share this post Link to post Share on other sites
Guest Posted December 18, 2015 New version frontpaged on the Armaholic homepage. extDB2 v70 Share this post Link to post Share on other sites
tebbbs 33 Posted December 26, 2015 will there be a solution for long values like TEXT, LONG TEXT or something like that? we need at least 3kb in one query so that would be TEXT or SHORTTEXT i think but it doesnt work Share this post Link to post Share on other sites
torndeco 128 Posted December 26, 2015 will there be a solution for long values like TEXT, LONG TEXT or something like that? we need at least 3kb in one query so that would be TEXT or SHORTTEXT i think but it doesnt work TINYTEXT 255 (+1 byte overhead) TEXT 64K - 1 (+2 bytes overhead) MEDIUMTEXT 16M - 1 (+3 bytes overhead) LONGTEXT 4G - 1 (+4 bytes overhead) TINYTEXT + TEXT Work fines and is used by most/all mission/addons using extDB2. MEDIUMTEXT can cause issues, if a query has to many rows&columns that contain MEDIUMTEXT. LONGTEXT will result in crashes, you don't need 4GB Text. Arma couldn't handle that much anyways its only a 32bit application. ------------------------ Short version just use TEXT 64/65k Text is plently. Or use varchar if you know the length of input i.e steamID edit: Give me a shout on discord / skype if you are still having issues Share this post Link to post Share on other sites
tebbbs 33 Posted December 26, 2015 ah okay, have to check again then. we had a TEXT field and it didnt contain the full string that we inserted.. but maybe it was a mistake with the string/escaping/.. thanks for the info, will check it later and report if there is something wrong Share this post Link to post Share on other sites
ozdeadmeat 12 Posted December 28, 2015 Hey guys. I am trying to convert my RPG Persistent code from iniDBi to extDB. Is there a checklist or something i can go through as my connection to my sql-lite DB doesn't appear to be working. I am sure I am missing a config file or something. I have done the ini file with the correct data, I just need a bit of help with all the config points. Thanks in advance :) Share this post Link to post Share on other sites
torndeco 128 Posted December 28, 2015 Check extDB2 log files for error messages...Use the Debug Version of extDB2 & send me the log version if you are still having issues. Share this post Link to post Share on other sites
ozdeadmeat 12 Posted December 28, 2015 Hi, Thanks for taking the 3 minutes to talk to me today on Steam. So here is my installation [Arma3 RooT Folder] tbbmalloc.dll [@extDB] [@extDB2_DEBUG] Arma 3 Initialization is arma3.exe" -window -exThreads=7 -cpuCount=6 -maxVRAM=8192 -skipintro -name=OzDeaDMeaT -showScriptErrors -maxMem=32768 -nosplash -enableHT "-mod=@extDB2_DEBUG" extdb-conf.ini (saved as UTF-8) ////START//// [Main] Version = 5 ;Threads = 0 ; Default Value is the number of CPU Cores Detected (max value is 6, min value is 2) Randomize Config File = false ;This is a legacy option to randomize config file for Arma2 Servers. Only for Windows Builds [Rcon] ;; This is functional, should be working fine. Just needs abit of testing on a $ ;; Allow for changing Address for those running server in a VM environment. ;;IP = 127.0.0.1 ;;Port = 2302 ;; Rcon Password i.e Battleye/beserver.cfg ;;Password = password ;; Bad Player Name Checks ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON ;;Bad Playername Enable = false ;;Bad Playername Kick Message = Bad Player Name ;; By default : is a bad character (used as seperator for extDB2 Calls (this is hardcoded in) ;;Bad Playername Strings = ( :):{:} ;;Bad Playername Regex_1 = [:alnum:] ;;Bad Playername Regex_2 = [:alnum:] ;;Bad Playername Regex_3 = [:alnum:] ;; Whitelisting / Reserve Slots ;; This will only work if your mission / mod has started extDB2 Rcon. i.e 9:START_RCON:RCON Whitelist Enable = false Whitelist Kick Message = Only Reserved Slots Left Whitelist Public Slots = 999 ;; Database settings to use (Optional) ;;Whitelist Database = MySQL_Example ;;Whitelist SQL Prepared Statement = SELECT CASE WHEN EXISTS(SELECT UID FROM PlayerInfo WHERE BattlEyeGUID=? AND Whitelisted=1) THEN 1 ELSE 0 END ;;Whitelist Kick on SQL Query Failed = false ;; Hardcoded BEGuids for whitelisted players ;Whitelist BEGuids = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx : yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy [steam] ;; This is for VAC Protocol for VAC Bans + Steam Friends. ;; https://steamcommunity.com/dev/apikey API Key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [VAC] ;; This feature requires Steam + Rcon to be enabled. ;; Also this feature is called via SQF Code atm, i.e it doesn't auto detect players joining server yet.... Auto Ban = true ;; For Player to get banned ( their total VAC Bans => NumberOfVACBans) AND ( Days Since their Last Ban was <= DaysSinceLastBan) ;; This is also used extDB Protocol VAC:VACBanned returned results NumberOfVACBans = 1 DaysSinceLastBan = 999999999 BanDuration = 0 ;; 0 = Forever, otherwise its x Minutes BanMessage = Steam VAC Banned [Log] ;; Flush Logs after each write, more work on Harddrive Flush = true [Arma3_TESTDB] Type = SQLite Name = g:\SQL-Lite\arma3_test.db minSessions = 1 ; minSession Default Value = 1 ;maxSessions = 4 ; maxSession Default Value = number of Main->Threads ; You really should leave this value alone idleTime = 60 ; idleTime no Default Value yet, needs to be defined. ; idleTime is the time before a database session is stopped if not used. ; If Database Sessions are greater than minSessions ////END//// Questions: 1. Can I have both @extDB and @extDB_DEBUG running at the same time? 2. As I am using SQL-Lite, do I need to have the Database file in the same location folder as the extDB dll's? 3. Do I need to initialize the extension before calling it? The following line is executed from my init.sqf (the only line in the init.sqf file. hint format ["%1", "extDB2" callExtension "9:VERSION"] This returns nothing and does not show a hint at all. I am sure it is something simple. I am just not sure what it is I am missing. Share this post Link to post Share on other sites
torndeco 128 Posted December 28, 2015 hint format ["%1", "extDB2" callExtension "9:VERSION"]That means either extDB2 is blocked or you didn't install the requirements.https://github.com/Torndeco/extDB2/wiki/Setup:-Windows Share this post Link to post Share on other sites