Jump to content

HAWX Modding inicache


bBurn

Recommended Posts

For those who don't know the inicache.bin file in the HAWX game folder contains a number of ini files (894 in total) that control some parts of the game. I will give a brief overview of some of the changes you can make.

Stock Ini Cache No Changes

Ini Cache with Extra Camera Mode

Mod to Allow Plane Select on all Missiosn *Weapons are unrestricted and splash screens are skipped, trying to fix!

Mission Any Plane Select *Works better than the version above, get splash screens, weapon pack locks apply

You can get the extracted inicache.bin file Here. There is a README included in the download

Config\UnlockInfo.ini

With this file you can adjust the planes/skins/weapon packs that are unlocked after completing a certain mission or reaching a certain level. You will notice that there are some extra planes listed in this file under DLC.

Config\MissionsInfo_pc.ini

In this file you can tweak some of the mission parameters, for example Mission 1 you can get rid of MissionImposedPlane and MissionImposedWPack to enable you to select any plane you like.

Config\rumble.ini

Make changes to the values in this file to tweak rumble settings on your gamepad.

Config\PC\config.ini

[Camera]

FreeCamera = false

MarketingCamera = false

Mode = 'TvCamera'

TvCamera = true

This change adds an additional camera view to the Assistance On Mode, you dont get all the hud or anything but its an extra at least

There are loads of files, so if anyone else finds anything that is worth tweaking post it here.

Edited by bBurn
Link to comment
Share on other sites

  • Replies 52
  • Created
  • Last Reply

Top Posters In This Topic

Hey there, Bburn!

Nice progress, you're making ill check the hosted mod soon.

edit:when removing the plane restriction from the 1st mission, it causes the game to crash when loading that mission. i think its hardcoded.

Edited by Mig-29
Link to comment
Share on other sites

Data\Menus2\mainmenu.lua

function DifficultyPage_NextPage()

	UpdateClientStatusStr(eStatus_ControlsPage, nil)

	if (currentMissionIdx == 0) and (SelectMissionMode ~= SM_FREE_FLIGHT)then

		--Menu_OpenWait("Splash01", "", true)

		Menu_Open("PlaneSelect", "")

	elseif (GetImposedPlaneModel() ~= "") and (SelectMissionMode ~= SM_FREE_FLIGHT) then

		--SetupForImposedPlane( )

		--StartGame(object)

		Menu_Open("PlaneSelect", "")

	else

		Menu_Open("PlaneSelect", "")

	end

end


function RefreshPlaneSelectList(crtMode, showLockedPlanes)

	ShouldSkipRestrictions = true

		....


function select_weapon_pack(id)

		...

   	LastWeaponPackStatus = weaponPackStatus

	----------------------------	

	WeaponPackIsAvailable = true

	ShowWeaponPackSelection_A(WeaponPackIsAvailable)

		....

I get the plane select screen but the hangar isn't actually visible, you can scroll through and pick a plane/weapons and a different plane will appear in game. Just need to get the hangar to show. This change is without adjusting the ini values.

#Update. Get the Hangar just got to enable the plane selection now

#Update. Get the Hanger, can select planes, just need to be able to select weapons now

#Update. Hangar is shown you can select a plane, all weapon packs are selectable even though they may show the locked symbol

Edited by bBurn
Link to comment
Share on other sites

Hey there, Bburn!

Nice progress, you're making ill check the hosted mod soon.

edit:when removing the plane restriction from the 1st mission, it causes the game to crash when loading that mission. i think its hardcoded.

For some reason, people from Ubi forums end up here. Welcome to the forums Mig-29.

Link to comment
Share on other sites

Hey there, Bburn!

Nice progress, you're making ill check the hosted mod soon.

edit:when removing the plane restriction from the 1st mission, it causes the game to crash when loading that mission. i think its hardcoded.

For some reason, people from Ubi forums end up here. Welcome to the forums Mig-29.

Hey there!, I've seen you before also. ;)

btw It was bBurn who redirected me here.

You can download the mod file here that allows any plane selection. Any probs let me know.

Thanks I'll check this out right now.

btw, Can you host an unaltered version of the mod files. We need a stock version hosted.

Edit:do we still need to remove the "missionimposedplane" line from the missioninfo_pc file? When we use this mod?

Edit2:Can you make a version that keeps locked weapon packs unusable?

Edited by Mig-29
Link to comment
Share on other sites

Ok i made a version that allows you to choose which plane you want but restricts locked weapon packs. It also keeps the splash screen. The problem im facing now is that the recommended plane for the mission isn't set as default in the hanger.

note:this involves editing both the mainmenu.lua and the missioninfo_pc files.

EDIT:Nvr mind the recommended plane is set. I swapped planes in the default_planes.lua file a long time ago but forgot to swap it back. but now it works.

ill do some more testing b4 i host anything.

note i was referring to the 1st mission only.

Edited by Mig-29
Link to comment
Share on other sites

Mig-29 thanks for the feedback, I will add a stock inicache

Can you post the changes you had to make to the mainmenu.lua file to get the locks/splash to stay in place.

Ok, I first made these changes like you did.

function DifficultyPage_NextPage()

UpdateClientStatusStr(eStatus_ControlsPage, nil)

if (currentMissionIdx == 0) and (SelectMissionMode ~= SM_FREE_FLIGHT)then

Menu_OpenWait("Splash01", "", true)

elseif (GetImposedPlaneModel() ~= "") and (SelectMissionMode ~= SM_FREE_FLIGHT) then

Menu_Open("PlaneSelect", "")

else

Menu_Open("PlaneSelect", "")

end

end

I then made an CTRL+F search for "Splash01" and I found this line which I then made changes too.

function Splash01_OnOk(object)

if Item_IsVisible("Splash01_AContinue") then

--SetupForImposedPlane()

--StartGame(object)

Menu_CloseWait("Splash01", true)

Menu_Open("PlaneSelect", "")

end

end

EDIT: I think we should find a way to enable all planes for every mission without making any changes to the inichache. What we need to do, is find a way to keep locked weapon packs unusable.

We will probably need to make changes to the RefreshPlaneSelectList line.

Edited by Mig-29
Link to comment
Share on other sites

Stock inicache Inis

I tried making the changes under select_weapon_pack() , the variable I was using was WeaponPackIsAvailable but no matter what I tried the packs didn't lock.

The if statements under the weaponpack status blades update comment, I tried setting a value for WeaponPackIsAvailable to the false/true

Edited by bBurn
Link to comment
Share on other sites

Stock inicache Inis

I tried making the changes under select_weapon_pack() , the variable I was using was WeaponPackIsAvailable but no matter what I tried the packs didn't lock.

The if statements under the weaponpack status blades update comment, I tried setting a value for WeaponPackIsAvailable to the false/true

One thing we should take note of.

I tested the menu lua file with the changes i made but without using a modded inicache. I used the stock inichache.bin file.

I tried the 1st mission. The unlocked weapon packs for the "imposed plane" for that mission (in this case the F/A-18C) were selectable while the weapon packs for the other planes were not.

Edited by Mig-29
Link to comment
Share on other sites

I don't think the RefreshPlaneSelectList() function has an influence on the weapon packs

#update, just testing something now, think I might have got it working

#update, got it working, but had to tweak the ini files

#update, doh! recommended plane not working

Edited by bBurn
Link to comment
Share on other sites

Mission Any Plane Select

Right, you get the splash screen, locked plane restrictions still apply, weapon pack restrictions apply ... recommened plane doesn't work on Mission 1 (assume for other imposed missions as well)

so close...

I just tested your mod and I think you came to the same conclusion that I did. The INIs need to be modded.

Also the recommended plane does work. I think you just haven't unlocked the F/A-18 yet. You might have the Super Hornet or the Recon Hornet but not the C variant.

Ill host my version later after some more testing.

We need to make a unofficial patch that fixes other problems with the game.

Edited by Mig-29
Link to comment
Share on other sites

I am just working on adding secondary skins to all planes. I have managed to re-combine the entities.mdl file. Just trying to get 2nd skins to appear on the planes so far I have the following that need to be changed

default_planes.lua

Name = "MIG33",

Pack = "MainMenu",

Model = "dem_Mig-33_Fulcrum_player",

Dat = "Data/Models/plane_playable/menu_Mig-33_SuperFulcrum.dat",

Skin2 = 1,

Skin2Model="dem_Mig-33_Fulcrum_skin2_player",

Skin2Dat="Data/Models/plane_playable/menu_skin2_Mig-33_SuperFulcrum.dat",

Add relevant .dat files

Add skin2 reference to entities.mdl

Link to comment
Share on other sites

The entities.mdl can now be modified, I added a dem_Mig-33_Fulcrum_skin2_player to it and the game can read the model. Can't seem to get the extra skin to work though, must be a setting I am missing

I have added skin2 .dat and .ini files must be something locked in another file any ideas?

Link to comment
Share on other sites

:D some success

I have managed to add a secondary plane skin for the EA-6B Plane. Had to manually add it using a hex-editor as can't get the entities.mdl to compile properly using my code. I had to then make the following adjustments to mainmenu.lua


function PlaneSelect_OnAction3(object)

	local locked = InterCom_GetInt( "Config.Menus.LockMissPlanesItems" )

	--if IsSkinAvailable( PlaneModel ) or locked == 0 then

	--if IsSkinAvailable( PlaneModel ) then

		UseAlternateSkin = not UseAlternateSkin


		--keep current selection, refresh the plane

		RefreshingPlane = true

		select_plane_model(ItemList_GetElemID("PlaneSelect_PlanesList", ItemList_GetSelectedItem("PlaneSelect_PlanesList")))

		RefreshingPlane = false


		if GetPlaneHasSkins(ItemList_GetElemID("PlaneSelect_PlanesList", ItemList_GetSelectedItem("PlaneSelect_PlanesList"))) then

			Play2DSound("menu_change_plane_skin")

		end

	--end

end


function select_plane_model(id)

		...

	--if GetPlaneHasSkins(id) and ( IsSkinAvailable( plModel ) or itemLockedStatus == 0 )then

	if GetPlaneHasSkins(id) then

		Item_SetVisible("PlaneSelect_ChangeSkin", 1)

	else

		Item_SetVisible("PlaneSelect_ChangeSkin", 0)

	end

	   ...


This gets rid of skin restrictions but at least the skins change, which is a start :)

I don't think there is an easy way to look at the isSkinAvailable function, as it is part of the EXE

Its not hard to add the 2nd skins for planes to the entities.bin manually I will try a few more out then release a Mod for it assuming the game doesn't crash :)

Link to comment
Share on other sites

..Just to show that it does work

Hawx 2nd Skins

Hmm, maybe there are settings in the mainmenu lua file which keeps the hidden planes like the FB-22 or Saab-35 Hidden? Maybe we can make them appear in the hangar?

Should have a Mod out for this later on, I have all the planes listed now, just got to get rid of the lock on them

#Update; will be able to filter out the DLC/VIP planes to sort out the locking etc

Edited by bBurn
Link to comment
Share on other sites

..Just to show that it does work

Hawx 2nd Skins

Hmm, maybe there are settings in the mainmenu lua file which keeps the hidden planes like the FB-22 or Saab-35 Hidden? Maybe we can make them appear in the hangar?

Should have a Mod out for this later on, I have all the planes listed now, just got to get rid of the lock on them

#Update; will be able to filter out the DLC/VIP planes to sort out the locking etc

What files did you edit in order to get this? Also did use a hex editor to edit the entities files or did u recompile it?

Link to comment
Share on other sites

..Just to show that it does work

Hawx 2nd Skins

Hmm, maybe there are settings in the mainmenu lua file which keeps the hidden planes like the FB-22 or Saab-35 Hidden? Maybe we can make them appear in the hangar?

Should have a Mod out for this later on, I have all the planes listed now, just got to get rid of the lock on them

#Update; will be able to filter out the DLC/VIP planes to sort out the locking etc

What files did you edit in order to get this? Also did use a hex editor to edit the entities files or did u recompile it?

I used to a hex editor to append to the end of the entities.mdl file. I will add the rest of the planes in, think it will work .. just working on the extra planes at the moment.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...