Français Solved Problème avec BattlEye, besoin d'aide

20/11/20
243
4
6
1 100
Bonjour j'ai tester de re-mettre BattlEye sur mon serveur en repassent mon: BattlEye = 0; en BattlEye = 1; dans mon server.cfg mais quand je me connecte cela me kick mais ne fonctionne pas voir image joint. Pouvez vous m'aider merci
 

Fichiers joints

  • 20210523201358_1.jpg
    20210523201358_1.jpg
    363.5 KB · Affichages: 80
Solution
Salut, Battleye est déjà actif, en gros c'est plus un problème d'exécution de fonction ou un baille dans le genre qui n'est pas whitelist dans les filtres BE.

Alors, je n'ai pas de serveur sous la main, donc je me rappelle pas du chemin exacte, mais il doivent se trouver dans la racine de ton serveur, sûrement dans le dossier Battleye, tu dois avoir ces fichiers :

1627584814290.png

Je ne saurais pas vraiment régler le problème PROPREMENT, car j'ai jamais pris le temps de m'y intéresser, cependant tu peux régler le problème en étant bourrin, et en supprimant tous ces fichiers. Normalement, tu ne devrais plus avoir de problème. Mais, c'est pas la meilleure des façon, mais personnellement, j'ai jamais eu de problème à faire ca.
Il faut régler les restrictions de BattlEye dans le dossier battleye à la racine du serveur.
Pour le cas ici, c'est le mpeventhandler.txt
Pour ma part, j'ai mit ceci :
Code:
//new
1 ""
7 "" !="_this call fn_whoDoneIt"
 
Pour trouver tes logs tu peux regarder ce tutoriel : https://forum.the-programmer.com/post/comment-trouver-ses-logs.1012/
Il n'y a pas d'informations concernant les kicks battleye dans les logs serveur.

Par contre tu as plusieurs erreurs dans tes fichiers (qui n'ont pas de rapport mais c'est mieux de les corriger) :
Code:
9:15:56 Error in expression <], "Side Channel", "%UNIT_NAME", []];


fed_bank setVariable ["safe",count playa>
9:15:56   Error position: <fed_bank setVariable ["safe",count playa>
9:15:56   Error Undefined variable in expression: fed_bank
9:15:56 File life_server\init.sqf..., line 142
Code:
9:15:56 Warning Message: Script \life_server\FSM\timeModule.fsm not found
9:15:56 Warning Message: Script \life_server\FSM\cleanup.fsm not found
Code:
{
_hs = createVehicl>
9:15:56   Error position: <bank_obj,[0,0,0]];

{
_hs = createVehicl>
9:15:56   Error Undefined variable in expression: bank_obj
9:15:56 File life_server\init.sqf..., line 89
Code:
9:15:48 Error in expression <alse;};

if (playerSide isEqualTo "west","guer") then {
_Btn2 ctrlSetText locali>
9:15:48   Error position: <,"guer") then {
_Btn2 ctrlSetText locali>
9:15:48   Error Missing )
9:15:48 File mpmissions\Arzlife.LeBourg\core\vehicle\fn_vInteractionMenu.sqf..., line 47
Code:
9:15:47 Error in expression <eColor = "Default";};
_immatriculation

_vehicleInfo = [_className] call life_fn>
9:15:47   Error position: <_vehicleInfo = [_className] call life_fn>
9:15:47   Error Missing ;
9:15:47 File mpmissions\Arzlife.LeBourg\dialog\function\fn_garageLBChange.sqf..., line 29
Code:
9:15:47 Error in expression <?té retiré par la Police !";
};
};
};
};
>
9:15:47   Error position: <};
>
9:15:47   Error Missing {
9:15:47 File mpmissions\Arzlife.LeBourg\core\civilian\fn_removeLicenses.sqf..., line 70
 
ton fn_removeLicenses.sqf essaye et regarde tes logs normalement j'ai corriger

C++:
#include "..\..\script_macros.hpp"
/*
    File: fn_removeLicenses.sqf
    Author: Bryan "Tonic" Boardwine

    Description:
    Used for stripping certain licenses off of civilians as punishment.
*/
private "_state";
_state = param [0,1,[0]];

switch (_state) do {
    case 0: {
        missionNamespace setVariable [LICENSE_VARNAME("rebel","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("driver","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("heroin","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("marijuana","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("cocaine","civ"),false];
    };

    case 1: {
        missionNamespace setVariable [LICENSE_VARNAME("gun","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("driver","civ"),false];
        missionNamespace setVariable [LICENSE_VARNAME("rebel","civ"),false];
    };

    case 2: {
    };

    case 3: {
    if (missionNamespace getVariable LICENSE_VARNAME("gun","civ")) then {
             missionNamespace setVariable [LICENSE_VARNAME("gun","civ"),false];
            hint localize "STR_Civ_LicenseRemove_2";
        };
    };

    case 4: {
        missionNamespace setVariable [LICENSE_VARNAME("driver","civ"), false];
        hint parseText "<t>Votre permis de conduire vous à été retiré par la Police !</t>";
    };

    case 5: {
        missionNamespace setVariable [LICENSE_VARNAME("trucking","civ"), false];
        hint parseText "<t>Votre permis Poids-Lourd vous à été retiré par la Police !</t>";
    };

    case 6: {
        missionNamespace setVariable [LICENSE_VARNAME("bike","civ"), false];
        hint parseText "<t>Votre permis Moto A2 vous à été retiré par la Police !</t>";
    };

    case 7: {
        missionNamespace setVariable [LICENSE_VARNAME("pilot","civ"), false];
        hint parseText "<t>Votre brevet de pilote vous à été retiré par la Police !</t>";
    };

    case 8: {
        missionNamespace setVariable [LICENSE_VARNAME("boat","civ"), false];
        hint parseText "<t>Votre permis bateau vous à été retiré par la Police !</t>";
    };

    case 9: {
        missionNamespace setVariable [LICENSE_VARNAME("gun","civ"), false];
        hint parseText "<t>Votre permis port-d'armes vous à été retiré par la Police !</t>";
    };
};
 
  • Like
Les réactions: Maxence
ton fn_vInteractionMenu.sqf essaye aussi

C++:
#include "..\..\script_macros.hpp"
/*
    File: fn_vInteractionMenu.sqf
    Author: Bryan "Tonic" Boardwine

    Description:
    Replaces the mass add actions for various vehicle actions.
*/
#define Btn1 37450
#define Btn2 37451
#define Btn3 37452
#define Btn4 37453
#define Btn5 37454
#define Btn6 37455
#define Btn7 37456
#define Btn8 37457
#define Title 37401
private ["_display","_curTarget","_Btn1","_Btn2","_Btn3","_Btn4","_Btn5","_Btn6","_id"];
if (!dialog) then {
    createDialog "vInteraction_Menu";
};
disableSerialization;

_curTarget = param [0,objNull,[objNull]];
if (isNull _curTarget) exitWith {closeDialog 0;}; //Bad target
_isVehicle = if ((_curTarget isKindOf "landVehicle") || (_curTarget isKindOf "Ship") || (_curTarget isKindOf "Air")) then {true} else {false};
if (!_isVehicle) exitWith {closeDialog 0;};

_display = findDisplay 37400;
_Btn1 = _display displayCtrl Btn1;
_Btn2 = _display displayCtrl Btn2;
_Btn3 = _display displayCtrl Btn3;
_Btn4 = _display displayCtrl Btn4;
_Btn5 = _display displayCtrl Btn5;
_Btn6 = _display displayCtrl Btn6;
_Btn7 = _display displayCtrl Btn7;
_Btn8 = _display displayCtrl Btn8;
life_vInact_curTarget = _curTarget;
_id = getObjectDLC _curTarget;

//Set Repair Action
_Btn1 ctrlSetText localize "STR_vInAct_Repair";
_Btn1 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_repairTruck; closeDialog 0;";

if ((life_inv_toolkit >= 1) && {alive life_vInact_curTarget} && {([life_vInact_curTarget] call life_fnc_isDamaged)}) then {_Btn1 ctrlEnable true;} else {_Btn1 ctrlEnable false;};

if (playerSide isEqualTo west && independent) then {
    _Btn2 ctrlSetText localize "STR_vInAct_Registration";
    _Btn2 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_searchVehAction; closeDialog 0;";

    _Btn3 ctrlSetText localize "STR_vInAct_SearchVehicle";
    _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_vehInvSearch; closeDialog 0;";

    _Btn4 ctrlSetText localize "STR_vInAct_PullOut";
    _Btn4 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_pulloutAction; closeDialog 0;";
    if (crew _curTarget isEqualTo []) then {_Btn4 ctrlEnable false;};

    _Btn5 ctrlSetText localize "STR_vInAct_Impound";
    _Btn5 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_impoundAction; closeDialog 0;";
    
    _Btn12 ctrlSetText "Supprimer le véhicule";
    _Btn12 buttonSetAction "_dbInfo = life_vInact_curTarget getVariable [""dbInfo"",[]]; if ((count _dbInfo) > 0) then {_dbInfo remoteExec [""Life_fnc_medDeleteVehicle"",2];}; deleteVehicle life_vInact_curTarget; closeDialog 0;";

    if (_curTarget isKindOf "Ship") then {
        _Btn6 ctrlSetText localize "STR_vInAct_PushBoat";
        _Btn6 buttonSetAction "[] spawn life_fnc_pushObject; closeDialog 0;";
        if (_curTarget isKindOf "Ship" && {local _curTarget} && {crew _curTarget isEqualTo []}) then { _Btn6 ctrlEnable true;} else {_Btn6 ctrlEnable false};
    } else {
        if (!isNil "_id") then {
            if !(_id in getDLCs 1) then {
                _Btn6 ctrlSetText localize "STR_vInAct_GetInVehicle";
                _Btn6 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;";
                if (crew _curTarget isEqualTo [] && {canMove _curTarget} && {locked _curTarget isEqualTo 0}) then {_Btn6 ctrlEnable true;} else {_Btn6 ctrlEnable false};
            };
        } else {
            _Btn6 ctrlSetText localize "STR_vInAct_Unflip";
            _Btn6 buttonSetAction "life_vInact_curTarget setPos [getPos life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1, (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;";
            if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn6 ctrlEnable false;} else {_Btn6 ctrlEnable true;};
        };
    };

} else {

    if (_curTarget isKindOf "Ship") then {
        _Btn2 ctrlSetText localize "STR_vInAct_PushBoat";
        _Btn2 buttonSetAction "[] spawn life_fnc_pushObject; closeDialog 0;";
        if (alive _curTarget && {_curTarget isKindOf "Ship"} && {local _curTarget} && {crew _curTarget isEqualTo []}) then { _Btn2 ctrlEnable true;} else {_Btn2 ctrlEnable false};
    } else {
        if (!isNil "_id") then {
            if !(_id in getDLCs 1) then {
                _Btn2 ctrlSetText localize "STR_vInAct_GetInVehicle";
                _Btn2 buttonSetAction "player moveInDriver life_vInact_curTarget; closeDialog 0;";
                if (crew _curTarget isEqualTo [] && {canMove _curTarget} && {locked _curTarget isEqualTo 0}) then {_Btn2 ctrlEnable true;} else {_Btn2 ctrlEnable false};
            };
        } else {
            _Btn2 ctrlSetText localize "STR_vInAct_Unflip";
            _Btn2 buttonSetAction "life_vInact_curTarget setPos [getPos life_vInact_curTarget select 0, getPos life_vInact_curTarget select 1, (getPos life_vInact_curTarget select 2)+0.5]; closeDialog 0;";
            if (alive _curTarget && {crew _curTarget isEqualTo []} && {canMove _curTarget}) then { _Btn2 ctrlEnable false;} else {_Btn2 ctrlEnable true;};
        };
    };
    if (typeOf _curTarget == "O_Truck_03_device_F") then {
        _Btn3 ctrlSetText localize "STR_vInAct_DeviceMine";
        _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_deviceMine";
        if (!isNil {(_curTarget getVariable "mining")} || !local _curTarget && {_curTarget in life_vehicles}) then {
            _Btn3 ctrlEnable false;
        } else {
            _Btn3 ctrlEnable true;
        };
    } else {
        _Btn3 ctrlShow false;
        if (typeOf (_curTarget) in ["C_Van_01_fuel_F","I_Truck_02_fuel_F","B_Truck_01_fuel_F"] && _curTarget in life_vehicles) then {
            if (!isNil {_curTarget getVariable "fuelTankWork"}) then {
                _Btn3 ctrlSetText localize "STR_FuelTank_Stop";
                _Btn3 buttonSetAction "life_vInact_curTarget setVariable [""fuelTankWork"",nil,true]; closeDialog 0;";
                _Btn3 ctrlShow true;
            } else {
                if (count (nearestObjects [_curTarget, ["Land_FuelStation_Feed_F","Land_fs_feed_F"], 15]) > 0) then {
                    _Btn3 ctrlSetText localize "STR_FuelTank_Supply";
                    _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelSupply";
                    _Btn3 ctrlShow true;
                }else{
                    {
                        if (player distance (getMarkerPos _x) < 20) exitWith {
                            _Btn3 ctrlSetText localize "STR_FuelTank_Store";
                            _Btn3 buttonSetAction "[life_vInact_curTarget] spawn life_fnc_fuelStore";
                            _Btn3 ctrlShow true;
                        };
                    } forEach ["fuel_storage_1","fuel_storage_2"];
                };
            };
        };
    };

    _Btn4 ctrlShow true;
    _Btn5 ctrlShow true;
    _Btn6 ctrlShow true;
    _Btn7 ctrlShow true;
    _Btn8 ctrlShow true;
};
 
J jokerdw Pour le fn_vInteractionMenu.sqf ce n'est pas bon, pour la ligne 47 tu peux le faire comme ça plutôt :
if ((playerSide isEqualTo west) OR (playerSide isEqualTo independent)) then {
Sinon comme ça :
Code:
if ((str playerSide) in ["WEST","GUER"]) then {

Pour le fn_garageLbChange.sqf, voici le fichier corrigé :
Code:
#include "..\..\script_macros.hpp"
/*
    File: fn_garageLBChange.sqf
    Author: Bryan "Tonic" Boardwine

    Description:
    Can't be bothered to answer it.. Already deleted it by accident..
*/
disableSerialization;
private ["_control","_index","_className","_classNameLife","_dataArr","_vehicleColor","_vehicleInfo","_trunkSpace","_sellPrice","_retrievePrice","_sellMultiplier","_price","_storageFee","_purchasePrice"];
_control = _this select 0;
_index = _this select 1;

//Fetch some information.
_dataArr = CONTROL_DATAI(_control,_index);
_dataArr = call compile format ["%1",_dataArr];
_className = (_dataArr select 0);
_classNameLife = _className;

if (!isClass (missionConfigFile >> "LifeCfgVehicles" >> _classNameLife)) then {
    _classNameLife = "Default"; //Use Default class if it doesn't exist
    diag_log format ["%1: LifeCfgVehicles class doesn't exist",_className];
};

_vehicleColor = ((M_CONFIG(getArray,"LifeCfgVehicles",_classNameLife,"textures") select (_dataArr select 1)) select 0);
if (isNil "_vehicleColor") then {_vehicleColor = "Default";};

_vehicleInfo = [_className] call life_fnc_fetchVehInfo;
_trunkSpace = [_className] call life_fnc_vehicleWeightCfg;

_price = M_CONFIG(getNumber,"LifeCfgVehicles",_classNameLife,"price");
_storageFee = LIFE_SETTINGS(getNumber,"vehicle_storage_fee_multiplier");

switch (playerSide) do {
    case civilian: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_CIVILIAN");
    };
    case west: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_COP");
    };
    case independent: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_MEDIC");
    };
    case east: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_OPFOR");
    };
};
_retrievePrice =20;
_sellPrice = _purchasePrice * _sellMultiplier;

if (!(_sellPrice isEqualType 0) || _sellPrice < 1) then {_sellPrice = 500;};
if (!(_retrievePrice isEqualType 0) || _retrievePrice < 1) then {_retrievePrice = 500;};
_immatriculation = (_dataArr select 2); if (_immatriculation == "0") then {_immatriculation = "Aucune"};

(CONTROL(2800,2803)) ctrlSetStructuredText parseText format [
    (localize "STR_Shop_Veh_UI_RetrievalP")+ " <t color='#8cff9b'>$%1</t><br/>
    " +(localize "STR_Shop_Veh_UI_SellP")+ " <t color='#8cff9b'>$%2</t><br/>
    Plaque d'immatriculation : %9<br/>
    " +(localize "STR_Shop_Veh_UI_Color")+ " %8<br/>
    " +(localize "STR_Shop_Veh_UI_MaxSpeed")+ " %3 km/h<br/>
    " +(localize "STR_Shop_Veh_UI_HPower")+ " %4<br/>
    " +(localize "STR_Shop_Veh_UI_PSeats")+ " %5<br/>
    " +(localize "STR_Shop_Veh_UI_Trunk")+ " %6<br/>
    " +(localize "STR_Shop_Veh_UI_Fuel")+ " %7
    ",
[_retrievePrice] call life_fnc_numberText,
[_sellPrice] call life_fnc_numberText,
(_vehicleInfo select 8),
(_vehicleInfo select 11),
(_vehicleInfo select 10),
if (_trunkSpace isEqualTo -1) then {"None"} else {_trunkSpace},
(_vehicleInfo select 12),
_vehicleColor,
_immatriculation
];

ctrlShow [2803,true];
ctrlShow [2830,true];

Pour le life_server/init.sqf, c'est bon, en fait il maque sur ton mapping les objets ayant pour variable : bank_obj et fed_bank

--

Pour le kick de Battleye il nous faudrait tes logs client après avoir été kické
 
  • Like
Les réactions: jokerdw
J jokerdw Pour le fn_vInteractionMenu.sqf ce n'est pas bon, pour la ligne 47 tu peux le faire comme ça plutôt :
if ((playerSide isEqualTo west) OR (playerSide isEqualTo independent)) then {
Sinon comme ça :
Code:
if ((str playerSide) in ["WEST","GUER"]) then {

Pour le fn_garageLbChange.sqf, voici le fichier corrigé :
Code:
#include "..\..\script_macros.hpp"
/*
    File: fn_garageLBChange.sqf
    Author: Bryan "Tonic" Boardwine

    Description:
    Can't be bothered to answer it.. Already deleted it by accident..
*/
disableSerialization;
private ["_control","_index","_className","_classNameLife","_dataArr","_vehicleColor","_vehicleInfo","_trunkSpace","_sellPrice","_retrievePrice","_sellMultiplier","_price","_storageFee","_purchasePrice"];
_control = _this select 0;
_index = _this select 1;

//Fetch some information.
_dataArr = CONTROL_DATAI(_control,_index);
_dataArr = call compile format ["%1",_dataArr];
_className = (_dataArr select 0);
_classNameLife = _className;

if (!isClass (missionConfigFile >> "LifeCfgVehicles" >> _classNameLife)) then {
    _classNameLife = "Default"; //Use Default class if it doesn't exist
    diag_log format ["%1: LifeCfgVehicles class doesn't exist",_className];
};

_vehicleColor = ((M_CONFIG(getArray,"LifeCfgVehicles",_classNameLife,"textures") select (_dataArr select 1)) select 0);
if (isNil "_vehicleColor") then {_vehicleColor = "Default";};

_vehicleInfo = [_className] call life_fnc_fetchVehInfo;
_trunkSpace = [_className] call life_fnc_vehicleWeightCfg;

_price = M_CONFIG(getNumber,"LifeCfgVehicles",_classNameLife,"price");
_storageFee = LIFE_SETTINGS(getNumber,"vehicle_storage_fee_multiplier");

switch (playerSide) do {
    case civilian: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_CIVILIAN");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_CIVILIAN");
    };
    case west: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_COP");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_COP");
    };
    case independent: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_MEDIC");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_MEDIC");
    };
    case east: {
        _purchasePrice = _price * LIFE_SETTINGS(getNumber,"vehicle_purchase_multiplier_OPFOR");
        _sellMultiplier = LIFE_SETTINGS(getNumber,"vehicle_sell_multiplier_OPFOR");
    };
};
_retrievePrice =20;
_sellPrice = _purchasePrice * _sellMultiplier;

if (!(_sellPrice isEqualType 0) || _sellPrice < 1) then {_sellPrice = 500;};
if (!(_retrievePrice isEqualType 0) || _retrievePrice < 1) then {_retrievePrice = 500;};
_immatriculation = (_dataArr select 2); if (_immatriculation == "0") then {_immatriculation = "Aucune"};

(CONTROL(2800,2803)) ctrlSetStructuredText parseText format [
    (localize "STR_Shop_Veh_UI_RetrievalP")+ " <t color='#8cff9b'>$%1</t><br/>
    " +(localize "STR_Shop_Veh_UI_SellP")+ " <t color='#8cff9b'>$%2</t><br/>
    Plaque d'immatriculation : %9<br/>
    " +(localize "STR_Shop_Veh_UI_Color")+ " %8<br/>
    " +(localize "STR_Shop_Veh_UI_MaxSpeed")+ " %3 km/h<br/>
    " +(localize "STR_Shop_Veh_UI_HPower")+ " %4<br/>
    " +(localize "STR_Shop_Veh_UI_PSeats")+ " %5<br/>
    " +(localize "STR_Shop_Veh_UI_Trunk")+ " %6<br/>
    " +(localize "STR_Shop_Veh_UI_Fuel")+ " %7
    ",
[_retrievePrice] call life_fnc_numberText,
[_sellPrice] call life_fnc_numberText,
(_vehicleInfo select 8),
(_vehicleInfo select 11),
(_vehicleInfo select 10),
if (_trunkSpace isEqualTo -1) then {"None"} else {_trunkSpace},
(_vehicleInfo select 12),
_vehicleColor,
_immatriculation
];

ctrlShow [2803,true];
ctrlShow [2830,true];

Pour le life_server/init.sqf, c'est bon, en fait il maque sur ton mapping les objets ayant pour variable : bank_obj et fed_bank

--

Pour le kick de Battleye il nous faudrait tes logs client après avoir été kické
d'accord ah bas merci ducoup
 
Bonjour désoler pour la réponse tardive...
j'attends de faire un test avec un autre joueur autre que moi pour avoir deux versions du logs clients
 
"Pour le life_server/init.sqf, c'est bon, en fait il maque sur ton mapping les objets ayant pour variable : bank_obj et fed_bank"
j'ai bien les objets sur mon mapping comportant les variable 20210626090559_1.jpg 20210626090608_1.jpg