fifthmanstanding

Modifying the bambi suit image file?

11 posts in this topic

Hi,

In theory, in my very theoretical theory, I would assume that the bambi orange jumpsuit exists in two parts: the code that makes it spawn on players and the actual .paa file of the suit itself. 

In theory, if one were able to find the .paa file of the item they might be able to modify this image file and change the color, lettering, etc. 

I've done this for vehicle skins and some gear in the past using photoshop so I imagine it follows the same process. But I cannot for the life of me find where the image file that is being used is located. I've spent several days on and off google/exile forum searching. Everyone seems to say that you can't edit the bambi suit itself but they're almost exclusively referring to the coding side of things. It would seem to me that you could just modify the image and keep the same item name and not have to change any coding at all right?

Any thoughts?

Share this post


Link to post
Share on other sites

Well, I can't speak to how you'd do it but I would assume it was contained within the @Exile folder somewhere in a PBO or the likes.

Regarding changing what people wear at spawn-in, I'm sure you can. I've heard plenty of people saying you can't but it's just code to create the new player in the world and I've been on plenty of servers that do provide different outfits upon spawn. I've got mine edited to give a basic weapon & flashlight so I see no reason why it couldn't be done.

Share this post


Link to post
Share on other sites
Advertisement

Well, I had no more than hit the damn "submit" button and five minutes later, and of course after several days of looking for it,  I find it in @exile/addons/exile_assets.pbo/model/Exile_Uniform_BambiOverall_co.paa along with the black custom exile verion.

As far as photoshopping that, I have that covered. 

But my question is if I overwrite the .paa and repack exile_assets.pbo on the server if it will cause a problem client side. Since I'm not changing any code I'm wondering if it causes conflicts anywhere else. I mean...theoretically it seems simple...but if it was that simple I'd imagine I'd've uncovered a whole bunch more posts about it and other servers that have implemented it. We can't possibly be the first exile server that's ever changed out our bambi jumpsuit. 

Share this post


Link to post
Share on other sites

I use this to override the default and set random clothing and loadout.

Spoiler

/**
 * ExileServer_object_player_network_createPlayerRequest
 *
 * Exile Mod
 * www.exilemod.com
 * © 2015 Exile Mod Team
 *
 * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
 * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
 */

private["_sessionID", "_parameters", "_requestingPlayer", "_spawnLocationMarkerName", "_playerUID", "_accountData", "_bambiPlayer", "_cargoType"];
_sessionID = _this select 0;
_parameters = _this select 1;
_requestingPlayer = _sessionID call ExileServer_system_session_getPlayerObject;
_bambiuniforms = ["U_I_C_Soldier_Bandit_4_F", "rds_uniform_citizen2", "rds_uniform_citizen3", "rds_uniform_citizen4", "rds_uniform_priest", "rds_uniform_Profiteer2", "rds_uniform_Profiteer4", "rds_uniform_Rocker1",
 "rds_uniform_Rocker3", "rds_uniform_Rocker2", "rds_uniform_Rocker4", "rds_uniform_schoolteacher", "rds_uniform_Woodlander1", "rds_uniform_Woodlander2", "rds_uniform_Woodlander3", "rds_uniform_Woodlander4", "rds_uniform_Worker4",
 "rds_uniform_Worker3", "rds_uniform_Worker2", "rds_uniform_Worker1"] call BIS_fnc_selectRandom;
_bambiHeadGear = ["rds_worker_cap4", "H_Cap_surfer", "rds_Profiteer_cap1", "Exile_Headgear_SantaHat", "rds_Profiteer_cap2", "rds_Profiteer_cap3", "rds_Profiteer_cap4", "rds_worker_cap2"] call BIS_fnc_selectRandom;
try {
    if (isNull _requestingPlayer) then {
        throw format["Session %1 requested a bambi character, but doesn't have a player object. Hacker or Monday?", _sessionID];
    };
    _spawnLocationMarkerName = _parameters select 0;
    _playerUID = getPlayerUID _requestingPlayer;
    if (_playerUID isEqualTo "") then {
        throw format["Player: '%1' has no player UID. Arma/Steam sucks!.", name _requestingPlayer];
    };
    _accountData = format["getAccountStats:%1", _playerUID] call ExileServer_system_database_query_selectSingle;
    _bambiPlayer = (createGroup independent) createUnit["Exile_Unit_Player", [0, 0, 0], [], 0, "CAN_COLLIDE"];
    _bambiplayer forceadduniform _bambiuniforms;
    _bambiPlayer addHeadgear _bambiHeadGear;
	_bambiPlayer addWeaponGlobal "rds_weap_latarka_janta";
    //removeHeadgear _bambiPlayer;
    {
        _cargoType = _x call ExileClient_util_cargo_getType;
        switch (_cargoType) do {
            case 1:{
                    _bambiPlayer addItem _x;
                };
            case 2:{
                    _bambiPlayer addWeaponGlobal _x;
                };
            case 3:{
                    _bambiPlayer addBackpackGlobal _x;
                };
            case 4:{
                    _bambiPlayer linkItem _x;
                };
            default {
                _bambiPlayer addItem _x;
            };
        };
    }
    forEach getArray(configFile >> "CfgSettings" >> "BambiSettings" >> "loadOut");
    [_sessionID, _requestingPlayer, _spawnLocationMarkerName, _bambiPlayer, _accountData] call ExileServer_object_player_createBambi;
} catch {
    _exception call ExileServer_util_log;
};

 

 

  • Like 1

Share this post


Link to post
Share on other sites

because the paa file is specified within the config.bin file of @exile

I do not see anyway to override the bambi texture unless your players were to download your customized exile mod

Spoiler

class Exile_Unit_Player: Exile_Unit_Abstract
	{
		scope = 2;
		displayName = "Exile Player";
		model = "\A3\characters_F\common\coveralls";
		uniformClass = "Exile_Uniform_BambiOverall";
		hiddenSelectionsTextures[] = {"\exile_assets\model\Exile_Uniform_BambiOverall_co.paa"};

 

but the override will allow them to spawn with custom gear/uniforms

Share this post


Link to post
Share on other sites
6 minutes ago, tinboye said:

because the paa file is specified within the config.bin file of @exile

I do not see anyway to override the bambi texture unless your players were to download your customized exile mod

  Reveal hidden contents


class Exile_Unit_Player: Exile_Unit_Abstract
	{
		scope = 2;
		displayName = "Exile Player";
		model = "\A3\characters_F\common\coveralls";
		uniformClass = "Exile_Uniform_BambiOverall";
		hiddenSelectionsTextures[] = {"\exile_assets\model\Exile_Uniform_BambiOverall_co.paa"};

 

but the override will allow them to spawn with custom gear/uniforms

So you're saying that if I simply open the original uniform .paa located server side at  @exile/addons/exile_assets.pbo/model/Exile_Uniform_BambiOverall_co.paa (on my server) and re-color it in photoshop, save the file, add the modified uniform .paa back to the exile_assets.pbo, repack the .pbo, and overwrite @exile/addons/exile_assets.pbo with the new .pbo that it won't work? Mind you this would be using the exact same filename as the original jumpsuit ("Exile_Uniform_BambiOverall_co.paa")

Would that imply that the player is actually loading the suit from their own local arma3/addons/exile/exile_assets.pbo?

I just want to verify this because it seems simple to alter it server side and I think it'd be nice to have a server branded bambi suit. 

Share this post


Link to post
Share on other sites

You would have to take your suit and put it in the mission file, then overwrite any files that reference that file using the cfgexilecustomcode section in the config.cpp in your mission file. The overwrite files would have to point to the suit in your mission file. 

I have no idea how many files you would have to overwrite, because I have no idea how many files reference that texture file. There could be one, there could be a thousand. 

If you want to distribute anything custom, there is only two ways to do it: Through the mission file, or by distributing your own customized version of the mod. Obviously the first way is better if feasible, because if you take the second route, every player who wants to play on your server has to download your custom mod. Then again, if it is only you and your friends playing, then it would be simple to change the texture file and then distribute the custom exile mod. Either way, you have to get the texture to the player somehow. It cannot simply be changed server side and expect the client to know about it. You have to distribute it to the client somehow. The only ways to do so are through the mission file or custom mod. 

  • Like 1

Share this post


Link to post
Share on other sites
4 minutes ago, papahyooie said:

You would have to take your suit and put it in the mission file, then overwrite any files that reference that file using the cfgexilecustomcode section in the config.cpp in your mission file. The overwrite files would have to point to the suit in your mission file. 

I have no idea how many files you would have to overwrite, because I have no idea how many files reference that texture file. There could be one, there could be a thousand. 

If you want to distribute anything custom, there is only two ways to do it: Through the mission file, or by distributing your own customized version of the mod. Obviously the first way is better if feasible, because if you take the second route, every player who wants to play on your server has to download your custom mod. Then again, if it is only you and your friends playing, then it would be simple to change the texture file and then distribute the custom exile mod. Either way, you have to get the texture to the player somehow. It cannot simply be changed server side and expect the client to know about it. You have to distribute it to the client somehow. The only ways to do so are through the mission file or custom mod. 

..Aaaaand I think we've arrived to the reason why no one tries this. 

Thanks guys. Helpful as always. 

  • Like 1

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.