

rimblock
Member-
Content Count
92 -
Joined
-
Last visited
-
Medals
Everything posted by rimblock
-
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Getting an interesting return when calling a sql block that does not exist in the custom sql .ini file from Arma3. Running the code through the extDB-test gives what I would expect though. Through extDB-test.exe 9:DATABASE:DominionDB extDB: Database Type: MySQL extDB: Database Session Pool Started extDB: [1] 9:VERSION extDB: 21 9:ADD:DB_CUSTOM_V3:CUSTOM_SQL:testsql extDB: [1] 2:CUSTOM_SQL:GetPlayerCharID:76561197970856120:1 extDB: [2,"1"] extDB: DB_CUSTOM_V3: Trace: GetPlayerCharID:76561197970856120:1 5:1 extDB: [1,[0,"Error No Custom Call Not Found"]] Via Arma 3 Query: 2:CUSTOM_SQL:GetPlayerCharID:76561197970856120:1 Return: [2,"1749605807"] Using parsenumber to try and turn "1749605807" in to a number I end up with 1.74961e+009 Query: 5:1.74961e+009 Return: [0,"Error Invalid Message"] 1. Where is 1749605807 coming from ?. The number is always the same and is the first call to the DB after Arma 3 server restart. 2. Can you take the return key number in as a string and convert in the .dll to a number which would help to avoid the number format change for large numbers. Whilst this issue should never come up usually but I am working on error handling at the moment and would like to be able to manage issues correctly. Update: Sorted out the number conversion. Would still like to know why it is starting so high and if the return key is being sent back as a string then why not accept it back as a string for getting the results. -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Great, just what I wanted to know. Thanks -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Hi, When you say strip and error, does this mean the code with a banned character(s) will not get to the DB (my preference) ?. I am guessing (have not tried myself yet) that you can load multiple custom sql .ini files with different aliases by using multiple DB_CUSTOM_v3 calls ?. So, for example, I could have one custom sql file for player sql calls another for vehicle sql calls and another for generic sql calls etc all loaded at the same time. I am just thinking of the best way to allow others to add-on to our mod using extDB without having to merge in to a single large custom sql .ini file. Thanks -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Hi man, Did you get any further with this. Finally have a bit more time to look at my mod again and have just been upgrading from v18 -> v20. Thanks. -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Thanks for the explaination. The data I needed back from the DB was during server load so SYNC made most sense. Having the new code for ASYNC calls makes more sense as there is less need to check if / or with the type of return (just store the return code and spawn a process to check now and then for the results). I will check the the select *. I did try a while ago and got an error then changed the * to the field names and it worked. It is possible it may have been witht he proc call rather than the custom SQL call though (which we have already discussed). Do you know if the sanity checks are documented anywhere so I may be able to read what is being checked without having to try and work it out from the C++ code ?. THe strip function is a great addition. Any possibility of having the extension reject the request with an error code if the 'strip' characters are found so we can code the game can log the issue / hack attempt in the server logs (i.e. a reject if found' option) ?. Stripping is ok but then you have the possibility of firing unknown code at the DB if stuff is incorrectly stripped out (bad strip config or sql code). Another thought for new feature (if it is not already available). Can you setup connections to multiple DBs on different servers which can be called from a mission ?. Example use case. I have a prod db used for the game which I do not want exposed to the world. I have another DB which I would like to dump basic data in to (player kills, number of players on the server etc) which is not used by the game. Can extDB currently be used to update both DBs on different servers from the same mission ?. I am aware there are other possible solutions like DB replication, triggers etc that can achieve the same thing but being able to do it from the extDB extention may be easier for people without so much SQL and DB server knowledge. -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Nice to see you decided to add the space between the SQL lines in the ini after all. Will make the code in the ini files a bit more readable and less prone to issues with splitting it up. When I fire queries with v18, I ether get a return of [1,[[results]]] or [1,<Unique ID>] if the results are too big. Not sure what the advantage of a '4' call is. Welcome to extDB Test Application : OutputSize is set to 80 for Test Application, to be readable OutputSize for Arma3 is more like 10k in size To exit type 'quit' 9:DATABASE:dominiondb extDB: [1] 9:ADD:DB_CUSTOM_V2:custom_sql:testsql extDB: [1] 0:custom_sql:GetcharacterData:10:1 extDB: [1, [1,[[0]]]] I am also a little confused why there are so many [] around the results rather than just [1,[result set]]. I don't see any explanation on the Wiki (may well have missed it). The banned char list is very nice. I had presumed that these would be taken care of by the sanatize option but this allows me to make doubly sure. Would be nice to be able to do a select * from in the customSQL.ini file rather than having to list all the fields one by one. Would make the SQL a lot shorter for queries where you need to pull a lot of fields back (character / object load for example). I am guessing views do not cause an issue. I am just about to try reading from one so I guess I will find out shortly. Thanks for the great work on this. It is so much better than the very limited (deliberately so) hiveext.dll used on the Dayz mods. -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Thanks for the info. I will wait for an updated version as I have no urgent need at this time. Have a couple of other mods to complete before I start working on the project this would be used for. -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
:confused: I downloaded the zip from Github (stable branch) on the 7th Sept. Welcome to extDB Test Application : This application has 4096 char limited input. Extension doesn't have this problem To exit type 'quit' extDB: Found extdb-conf.ini extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Creating Worker Thread +1 extDB: Loading Log Settings 9:DATABASE:Database2 extDB: Database Type: MySQL extDB: Database Session Pool Started extDB: [1] 9:ADD:DB_CUSTOM_V2:DB:testsql extDB: [0,"Failed to Load Protocol"] The file with the canned sql is called testsql.ini and I have placed it in both extDB\db_custom_conf and extDB\db_custom. I am also getting returns from my SP 9:ADD:DB_PROCEDURE_V2:PROC extDB: [1] 0:PROC:1|"GetObjectID"|1207271266730206292|1 extDB: DB_PROCEDURE_V2: Trace: 1|"GetObjectID"|1207271266730206292|1 extDB: DB_PROCEDURE_V2: Trace: Result: 1|"GetObjectID"|1207271266730206292|1 extDB: [1, [1, [ [789]]]] The 789 is the DB ObjectID for that object. The sql is very simple in the SP. DELIMITER $$ CREATE DEFINER=`root`@`localhost` PROCEDURE `GetObjectID`( IN inpObjectUID bigint(24), OUT retObjectID int(11)) BEGIN SELECT od.objectID into retObjectID FROM object_data od WHERE od.objectUID = inpObjectUID; END$$ DELIMITER ; The SP fails with multi-line returns though :). Oh and version info 9:VERSION extDB: 17 RB -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Thanks, that is really my area of interest with this DB connector. I want to run canned sql against the DB, predefined in a text file. I see that the DB_CUSTOM_V2 is not available in the stable branch though. How 'DEV' is that functionality in the dev branch and is it likely to make it to stable anytime soon ?. I have been doing a couple of basic tests with stored procedures, which was the other way I wanted open execution on the DB with Server owner control, and it seems to work fine. Saying that my testing has been very simplistic (supply an objectUID, get an objectID back). -
extDB (arma3 extension linux/windows)
rimblock replied to torndeco's topic in ARMA 3 - ADDONS & MODS: COMPLETE
Hi, So glad I came across this. Have no big love for the HiveExt.dll at the moment. Do you have information available for which queries are run against which tables for the basic_v2 commands please. -
ARMA 2: OA Beta build 125548 - Steam Mp Lobby (1.63 build, Steam only)
rimblock replied to Dwarden's topic in ARMA 2 & OA - BETA PATCH TESTING
How will it return your previous playerUID ?. How was the PlayerUID originally calculated and what requirements were needed to generate it ?. The problem is that we can come up with what we think it should do or could do but no-one has yet stated what it does do either after testing or because they are part of the OA dev team. I developed a mod around one of the OA DayZ mods which now does not work with the SteamID and this command may help to get it working again but I don't want to rebuild my mod based on what the command "can possibly" or "should most likely" do only to find out it doesn't :). -
ARMA 2: OA Beta build 125548 - Steam Mp Lobby (1.63 build, Steam only)
rimblock replied to Dwarden's topic in ARMA 2 & OA - BETA PATCH TESTING
Any info on GetPlayerUIDOld, how it works and, more importantly, how it handles new players who purchase OA after the switch to SteamID (i.e. players who may not have legacy PlayerUIDs) ?. Thanks -
Thanks for all the replies. Finished it after the first reply here and have to agree it is an easy mission. All I did was grab 3 charges and got my men to get one mine each. After the UAZ had gone I got everyone to run down to where there are two rocks after the position marked as hold and got them to place mines all around the two rocks. Ran every one back to restock with rpg rockets whilst placing the charges. if you run back in the direction th convoy comes from then there is a small rock just where the mountain U start on turns from grass to rock (other side of the road). Place one charge by the path there, one by the next tree on the other side of the road and one by the tree on the same side as the rock further towards the convoys staring point. Ran back and got some rpg rockets and then back to an overhang in the rock area so I can see the road and the rock that marks the first charge. Just as the tanks find the mines, the convoy should be between the rock and the last tree with the charge. As they start to turn around (and thus stop) detonate the charges and you take out the entire convoy. Use the rpg to take out any missed armour U want to. When escaping I first just headed for the waypoint, came off the side of the mountain in the tank straight into the water. Second time I followed a route by the map rather than direct by waypoints. Good fun overall. Cheers Rims.
-
Ok, The mission after Fireworks (The pass I believe). How do you stop the convoy turning back (or are you not able too) I have dodged the UAZ and layed mines after it has gone. 1 T80, 1 T72 and a BMP come to check the area, none come close to the mines and my men are well hidden (no fire from the enemy) but I still get the 'Convoy is turning back' message). Have taken out the T80, T72 and 2 BMPs after the message but got hammered by the Shulka (all that running back for rpg's). Played this with only 5 men (dont ask, Fireworks, got to town with all enemy dead then counterattack took out the two tanks and 5 of my men). Replayed Fireworks and now have 8 men for 'The Pass'. Any help most welcome. Cheer Rims
-
I have found the 9k32 Strela (listed as an AT4) As I understand it the AT denotes Anti Tank rather then SA whick is Surface to air. There seems to be no info in the game for this weapon and when I pick ip the ammo I get a missing image error. Anyone else noticed this ? Rims
-
Ok, will have to keep on trying then. Just wanted to make sure the convoy isn't meant to turn around. Usually if you are spotted then they open fire but they didn't this time, mid you the BMP got stuck trying to go up the mountain towards my base. Cheers Rims
-
I managed this part of the mission the same as Iepers but stood by the back of the church waiting for the BMP to arrive as more times than not it will drive around by the UAZ and you can take it out before it tells anyone about your attack. Unfortunatly this time it decided to continue along the road and got stuch in the hole in the wall where you go into the garden to rescue the hostages. Shot it with the RPG but not before it alerted the base. Gave all the hostages the mount truck command and got one of my men to drive over to them (as they just run off to the exit point when freed). Brought them back, armed them and placed 2 (plus me) with RPG's at the start of the road on the side of the town you start on as the T72 and BMP come down this road. Lost one man but took out both and then got the rest to kill the squad coming up behind. Loaded up the truck and went to the exit point and onto the second part of the mission. I found it alot easier to take out the BMP and T72 in the village rather than on the hill after the second base (they both always seemed to turn up and take out my loaded up truck first after the camp was cleared). Also I think one of the guards was a little jumpy as one of the hostages was already dead before any of the guards saw me or started shooting. Cheers Rims