ich würde mir jetzt mal jeden einzelnen Mod vornehmen um die auszuschliessen. Startet doch einfach mal deinen Server ohne mods ausser extDB2 und life_server
Beiträge von moeck
-
-
-
kann es sein, dass deine DB Verbindung nicht funktioniert? Nimm mal eine aktuelle Version der [lexicon]extDB[/lexicon]
-
Hi,
maybe this will help you.
C
Alles anzeigenswitch (playerSide) do { case civilian: { _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN"); _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_CIVILIAN"); if ( call adaclevel > 0) then { _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_Adac"); }; }; case west: { _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP"); _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_COP"); }; case independent: { _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC"); _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_MEDIC"); }; case east: { _buyMultiplier = LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR"); _rentMultiplier = LIFE_SETTINGS(getNumber,"vehicle_rental_multiplier_OPFOR"); }; };
But even the guy has an Adac Level he/she buys the car everytime to the ADAC price.
-
Moin,
hier nochmal das Thema mit den Fehler im extDB2 Log. Bitte verwendet den Datenbank User mit dem ihr die DB angelegt habt indem folgendem Code. Heißt ihr müsst entweder den User `arma3`@`localhost` in der DB anlegen oder den String mit Eurem User ersetzen. Falls ihr keinen User angelegt habt wäre das dann `root`@`localhost`!
SQL: altis.sql
Alles anzeigenSQL-Abfrage -- -- Drop procedures to ensure no conflicts -- DROP PROCEDURE IF EXISTS `resetLifeVehicles`; DROP PROCEDURE IF EXISTS `deleteDeadVehicles`; DROP PROCEDURE IF EXISTS `deleteOldHouses`; DROP PROCEDURE IF EXISTS `deleteOldGangs`; DROP PROCEDURE IF EXISTS `deleteOldContainers`; DROP PROCEDURE IF EXISTS `deleteOldWanted`; DELIMITER $$ -- -- Procedures -- Edit arma3 to match a user in MySQL -- For external databases: Edit localhost to match arma3server IP -- CREATE DEFINER=`arma3`@`localhost` PROCEDURE `resetLifeVehicles`() BEGIN UPDATE `vehicles` SET `active`= 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteDeadVehicles`() BEGIN DELETE FROM `vehicles` WHERE `alive` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldHouses`() BEGIN DELETE FROM `houses` WHERE `owned` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldGangs`() BEGIN DELETE FROM `gangs` WHERE `active` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldContainers`() BEGIN DELETE FROM `containers` WHERE `owned` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldWanted`() BEGIN DELETE FROM `wanted` WHERE `active` = 0; END$$ DELIMITER ; -- --------------------------------------------------------
@nox kannst Du das bitte in das TUT übernehmen?
Gruß,
moeck -
Moin,
also die ersten Fehler lassen sich ganz einfach beheben und wurden hier auch schon mehrfach angesprochen. Bitte ersetzen `arma3`@l`ocalhost` mit deinem tatsächlichem DB User also entweder `root`@`localhost` oder halt mit dem User der Zugriff auf die DB hat.
SQL: altis.sql
Alles anzeigenSQL-Abfrage -- -- Drop procedures to ensure no conflicts -- DROP PROCEDURE IF EXISTS `resetLifeVehicles`; DROP PROCEDURE IF EXISTS `deleteDeadVehicles`; DROP PROCEDURE IF EXISTS `deleteOldHouses`; DROP PROCEDURE IF EXISTS `deleteOldGangs`; DROP PROCEDURE IF EXISTS `deleteOldContainers`; DROP PROCEDURE IF EXISTS `deleteOldWanted`; DELIMITER $$ -- -- Procedures -- Edit arma3 to match a user in MySQL -- For external databases: Edit localhost to match arma3server IP -- CREATE DEFINER=`arma3`@`localhost` PROCEDURE `resetLifeVehicles`() BEGIN UPDATE `vehicles` SET `active`= 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteDeadVehicles`() BEGIN DELETE FROM `vehicles` WHERE `alive` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldHouses`() BEGIN DELETE FROM `houses` WHERE `owned` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldGangs`() BEGIN DELETE FROM `gangs` WHERE `active` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldContainers`() BEGIN DELETE FROM `containers` WHERE `owned` = 0; END$$ CREATE DEFINER=`arma3`@`localhost` PROCEDURE `deleteOldWanted`() BEGIN DELETE FROM `wanted` WHERE `active` = 0; END$$ DELIMITER ; -- --------------------------------------------------------
Bei dem Problem mit dem Insert müssen wir dann nochmal schauen, wenn die ersten Fehler weg sind.
Gruß,
moeck -
Unter Umständen gibt es kein extDB2 log. Hatte das Phänomän auch schon mal und bisher noch keine Lösung.
-
theoretisch könntest du noch ein random reinbringen, dann verschiebt sicher die Ausführung immer mal wieder
-
-
gibt es eine fehlermeldung in server.log? oder extdb2 log? über die bisherigen meldungen hinaus?
-
Hi,
schau mal in den KeyHandler, dort sollte das definiert sein.
Gruß,
moeck -
lol, habe mir mal den spass gemacht und verschiedene Fahrzeuge mit unterschiedlichen "Blaulichtern" auszustatten
-
bzw. hast du das Statement in der DB ausgeführt?
SQL: altis.sql
Alles anzeigenCREATE TABLE IF NOT EXISTS `ah` ( `id` int(11) NOT NULL AUTO_INCREMENT, `type` int(5) NOT NULL DEFAULT '0', `amount` int(5) NOT NULL DEFAULT '0', `item` text NOT NULL, `price` int(100) NOT NULL DEFAULT '0', `seller` varchar(50) NOT NULL, `sellername` varchar(32) NOT NULL, `status` int(5) NOT NULL DEFAULT '0', `time` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=174 DEFAULT CHARSET=latin1;
-
die Tabelle hast du aber schon in der DB angelegt?
-
Ähm der life_server nutzt immer noch die alte abfrage! Wenn du das Statement aktuallisiert hast musst du den life_server tauschen. Am besten die life_server.pbo mit einer neuen version überschreiben
[06:10:42:947 --7:00] [Thread 2392] extDB2: SQL_CUSTOM_V2: Error StatementException: MySQL: [MySQL]: [Comment]: mysql_stmt_prepare error [mysql_stmt_error]: Unknown column 'players.playerid' in 'on clause' [mysql_stmt_errno]: 1054 [mysql_stmt_sqlstate]: 42S22 [statemnt]: SELECT houses.id, houses.pid, houses.pos, players.name FROM houses INNER JOIN players ON houses.pid=players.playerid WHERE houses.owned='1' LIMIT ?,10;
änder mal die fn_housinginit
SQL-Abfrage: life_server/Functions/Housing/fn_initHouses.sqf
- _query = format["SELECT houses.id, houses.pid, houses.pos, players.name FROM houses INNER JOIN players ON houses.pid=players.pid WHERE houses.owned='1' LIMIT %1,10",_x];
- diag_log "------------- Housing Init -------------";
- diag_log format["QUERY: %1",_query];
- diag_log "------------------------------------------------";
-
na du muss das aus dem Zip file init.sqf natürlich so in deine init.sqf übernehmen.
-
na war der Tipp mit den Leerzeichen gar nicht so falsch ;-). Nur dass es sich diesmal um die Schreibweise drehte.
-
jepp so sollte das aussehen.
-
vAH_loaded != vAH_loaded
Sorry mein fehler die schreibweise ist entscheidend bei Variablen
vAH_loaded=false; in die configuration.sqf eintragen
-
vah_loaded=false;