Welcome
Ladies and Gents:

These forums are now closed and registration disabled.

Please join us at our new forum on Proboards. Our hope is that these new forums are more stable, provide more and better features, and allow continuation of the project forums in a safer, more secure, long term environment.

me3explorer.proboards.com

--The ME3Explorer Team

Tutorial : Modding the Galaxy Map

Made by modders for modders. Step-by-step instructions on how to achieve specific modding goals with ME3Explorer. We *strongly* encourage you to post new tutorials on the wiki.

Tutorial : Modding the Galaxy Map

Postby Kinkojiro » 22 Sep 2014, 05:41

The Galaxy Map is moddable, you can add/remove clusters and planets, add war assets and search and rescue items. Hopefully this will explain some of the basics.

The map is actually duplicated within ME3. 99% of the time the game seems to use BioD_Nor_203CIC.pcc - this is the only file you need to mod. Confusingly the assets are also within BioD_Nor_203aGalaxyMap.pcc but the game only seems to fall back on this rarely. Usually a reload will fix it if you find yourself in the wrong map. Each of the SP game DLC has their own map so you need to mod the latest one (Citadel). The object numbers used here refer only to the Citadel BioD_Nor_203CIC.pcc file – every other file has completely different internal numbering.

The good news is Bioware left a whole lot of the ME2 map in the ME3 file, so it is relatively easy to mod, the bad news is the file is sensitive to cloning and therefore you need to replace assets rather than create new ones. As things currently stand it doesn’t like ME3Creator so you need to use PCCEd2 when saving.

Map Structure
The map is built of Clusters, Systems and Planets which relate to each other and attributes like this:

Image

Every System is part of Cluster and every Planet is linked to a system. This is coded both ways – the child (e.g. Planet) is linked via its metadata to a certain parent (e.g. System). Similarly the parent system has an arrayproperty containing the list of children assets. The map will regularly crash if the link is not correctly stored in both places. The best place to view the map is in PccEd2’s export Tree.

Note the file refers to all the objects as numbers – you have to go to the properties, description/name number, do a TLK search and find what object it is. I have uploaded a file here which has all the cluster & system names/numbers for the citadel pcc as a reference point.

Changing properties – visibility, reaper control, description, name, position
Each of the Clusters/Systems/Planet objects has multiple properties you can change. Keep a clean backup of BioD_Nor_203CIC.pcc - before modding. Load the file in PccED2 and find the object. You can then change the conditional, TLK description number or position. Attributes are similar across the objects:

VisibilityConditional - determines whether the object is visible and can be visited (eg a planet to scan or a cluster to fly to. Usually refers to a time state – which missions are complete etc. Note default is most clusters stop being visible at Chronos (10185 != 0).
UsableConditional – Similar to visibility, most objects will be the same – however this also means the cluster can be flown through – after Chronos usability need to be switched on for clusters between Horsehead and the Local Cluster otherwise you can’t reach earth for the final mission.
Position X/Y - determines the location of the object. X is across, Y is down, (0,0) is top left corner.
ReaperControlCondition – conditional determining when the cluster turns red and a reaper appears on it. GalaxyMapReapers are still appear in clusters without reaper control though. Note it is found on the system with the relay in it – not the cluster.
Appearance – various parameters for controlling planets appearance.
DisplayName/Description - links to TLK files for a planets description, name on the map. Note sometimes there are leftover references from ME2 – such things as MissionBriefing etc.

Adding a new search and rescue GAW asset
To do this you will need some experience of Hex editing. The editing is best done via a 3rd party hex editor (like HxD), along with using ME3Cr and PccEd2. In this example I made a “Batarian Special Intervention Unit” GAWAsset in Batarian Space. Firstly make a copy of the CIC pcc you are going to edit. Call it CIC1 for example. Open CIC1 copy in ME3Cr and the actual file you want to change in PccEd2.

(1) Finding the objects– (A) the planet you want the new GAW asset to appear (here Camala, a Batarian world in the Kites Nest 874), (B) an existing object to overwrite (for this example we will use a planet feature left over from ME2 (4759)), (C) the number of the parent of the object being overwritten (604 – Taitus in Caleston Rift) and (D) an existing GAWAsset to copy (going to use 4803).

(2) Changing the metadata – in PCCEd2 find the object you are going to copy (4803). Click on the metadata tab. You will see the the numbers for the export details (for GAWAsset will be 2349 and 238 both reading “SFXPlanetFeatureGAWAsset”). Now go to the overwritten object (4759) and the same tab. Change the top two and change to 2349 / 238. The final box set to the target planet number (874) PLUS 1. So 875. Click Save Changes.

Image

(3) Creating the new GAWAsset Go to ME3Cr. Click Content View / Export Object Data Tabs. Find the number of the existing GAWAsset you are copying (4803). Click Export Hex and save a backup bin file. Click on properties and memorise the last few lines. In the text in the hex editor, change the name of the GAWAsset to something new. Make sure that the new name is exactly the same length as the old one (add 123456etc to use up space if necessary, it is only an internal name so makes no difference in game) and that every letter has a dot between it (00 on the hex). Click save hex. Go to File/save and then click reload. Go back to the object, click on properties. If all the data is there correctly then export hex again. Save it as a new binary file e.g. GAWAsset_New.bin.

Image

(4) Overwrite the old data – in PCCed2 find the object being overwritten (4759) – click edit menu then “Replace with BIN”. Using the binary GAWAsset_New.bin replace the object you are changing. Save the pcc file. If you look at the hex you should see the GAWAsset name.

(5) Switching parents – this is the most difficult part. Go to MC3Cr. Export the hex for both the new parent planet (874) and the old one (604). Open the bin files in HXD. Keep ME3Cr open. Look under properties in ME3Cr and you will find an array property called “Children”. Note the starting point for the array and the end point. In 604 it is 01DB to 01FB. You can now find it in the respective HxD files. The array is a set of hex numbers saying how many numbers and how long it is, and then a list of 4 hex numbers each pointing to a different child.
a. The old parent 604 has 1 child, value size of 8. As we are removing the child entirely we can delete the entire section, select in HXD – and press delete. Save the new file (making sure extension remains .bin).
b. For Camala 874 find the children array (01A8-01C8). Camala already has 1 child so we need to insert the number of the new child and increase the size of the array. In HXD go the last digit of the array and INSERT the little endian hex of the new GAWAsset PLUS 1. So 4759 + 1 = 4760. ME3Cr has a useful Hex Conversion tool just for this.
c. To change the array size we add 1 to the count in Hex (01 to 02) and the Size (08 + 4 more hex digits = 12). These have to be applied in Hex – 12 is 0c.
d. Import both new parent and old parent in ME3Cr. Check the data is all correct.

Image Image Image


(6) Replace the Parents - In PCCEd2 import the new and old parent .bin files via “Replace with BIN”. Save the CIC file and copy to ME3 or DLC directory. You can trash the CIC1 file.

(7) Mod Coalesced Finally in the Coalesced Bioui/sfxgame/sfxgawassetshandler/allassets add a line, unique number and details for your new asset. Note the name has to be identical to the name written name in GAWAsset object file. For more details on creating assets in the coalesced see Giftfish’s detailed tutorial here.

Spoiler:
(ID=415,AssetName="GAWAsset_BatarianSIU1",Type=GAWAssetType_Military,StartingStrength=25,GUIName=945361,GUIDescription=945362,bIsExploration=True,UnlockPlotStates[0]=0,GUICategoryID=12,DebugConditionalDescription="",bShowNotificationOnAward=true,ImagePath="gui_codex_images.galaxyAtWar.GM_Balak_512x256",NotificationImagePath="")

(8) Tocbin update and test in game. :D
Image

NB- the game doesn't really like places where there are two GAWAssets on the same planet, unless one asset is not visible. Camala is just such a place (the other being a "Find Dr Garneau" flag) - unless you mod other parameters the SIU asset won't appear until Leviathan Mahavid is finished (mind you neither will the system).

Note on Planet Features
Be very careful when overwriting planet features that you are sure they are definitely not current. Many are tied into launching ME3 missions. Overwriting a mission start (e.g. Rannoch or Tuchanka) will result in the game being stuck.

Hope this is useful. Any questions/confusion pls post or PM.

KK

Kinkojiro has been thanked by:
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

Re: Tutorial : Modding the Galaxy Map

Postby giftfish » 24 Sep 2014, 00:00

This looks really, really cool :D

The only issue I really see is players won't necessary have any/all DLC. So, for a modder to do this, they have to make all their changes to all 4 versions of the file: base, Omega, Leviathan, and Citadel. It's a bit like the Nor CIC file. Which I've found out is pain in the ***, lol.

EDIT: Btw, I was super tired after returning from an extended weekend camping trip when I wrote this and at first missed the actual mention of the Nor CIC file, seeing only the mention of the galaxymap file. Doh.

giftfish has been thanked by:
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: Tutorial : Modding the Galaxy Map

Postby AVPen » 24 Sep 2014, 03:53

[quote="giftfish"]The only issue I really see is players won't necessary have any/all DLC. So, for a modder to do this, they have to make all their changes to all 4 versions of the file: base, Omega, Leviathan, and Citadel. It's a bit like the Nor CIC file. Which I've found out is pain in the ***, lol.

Something else to keep in mind is whether or not modifying the Leviathan, Omega, and Citadel versions of the Map file/s will work or not, since modifying DLC files has shown to be FUBAR'd 95% out of the time (especially if using ME3Creator to create the new objects).
User avatar
AVPen
Modder
 
Posts: 458
Joined: 03 Feb 2013, 19:41
Has thanked: 21 time
Have thanks: 116 time

Re: Tutorial : Modding the Galaxy Map

Postby Kinkojiro » 24 Sep 2014, 11:09

Something else to keep in mind is whether or not modifying the Leviathan, Omega, and Citadel versions of the Map file/s will work or not, since modifying DLC files has shown to be FUBAR'd 95% out of the time (especially if using ME3Creator to create the new objects).


This is done with the Citadel DLC map file. The DLC map files are fine to be modified as long as 2 rules are kept - (a) Only use PCCed2 to save the file - so create/import/export bins in ME3Cr, but then replace in PCCEd2; (b) don't clone or create new objects - overwrite spares instead..

As you say ME3Cr is a bit touchy on this file, but the very latest version WV might have progressed things towards a fix. The good news is that because they kept so much of the ME2 stuff inside the map pcc, there are plenty of objects that can be overwritten. :)

The only issue I really see is players won't necessary have any/all DLC. So, for a modder to do this, they have to make all their changes to all 4 versions of the file: base, Omega, Leviathan, and Citadel. It's a bit like the Nor CIC file. Which I've found out is pain in the ***, lol.


I have tested the game under various DLC combinations. The Citadel map works fine as long as one of Citadel, Leviathan or Omega is loaded. You need to include the AFC file from Citadel_Base (otherwise some sounds in the map are missing) if you are not using Citadel, but it works fine. I think this is because the map is additive (i.e. Citadel includes all the Leviathan and Omega objects, Omega includes Leviathan etc). It has to be robust enough to install Citadel with none or some or all the other dlc.

The CIC pcc also controls a lot of sequences around Traynor mentioning stuff (LI, emails, EDI, Chakwas/Adams mission, Tali/Ashley being drunk, recent missions) and her conversations. Obviously I cannot guarantee playing with the Citadel pcc with omega won't break something, but all are driven by timing conditionals, and the file just ignores that sequence where there are missing conditionals and the dlc didn't change much there. Having tested through a few sequences in the middle of the game it seems to work without problem.

The real issue is a no DLC situation it chucks you into the spare map instead. The problem is that when Leviathan came out they changed the way the map tree was structured. The original game had 1 map in BioD_203aGalaxyMap - Leviathan added the map into the CIC file which was updated in the other packs. So with the vanilla game it automatically switches back to that file.

So the short answer is you need make an object at least twice, but if you want 100% guarantees 4 times. :roll:
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time

Re: Tutorial : Modding the Galaxy Map

Postby giftfish » 24 Sep 2014, 14:04

[quote="Kinkojiro"]
The only issue I really see is players won't necessary have any/all DLC. So, for a modder to do this, they have to make all their changes to all 4 versions of the file: base, Omega, Leviathan, and Citadel. It's a bit like the Nor CIC file. Which I've found out is pain in the ***, lol.


I have tested the game under various DLC combinations. The Citadel map works fine as long as one of Citadel, Leviathan or Omega is loaded. You need to include the AFC file from Citadel_Base (otherwise some sounds in the map are missing) if you are not using Citadel, but it works fine. I think this is because the map is additive (i.e. Citadel includes all the Leviathan and Omega objects, Omega includes Leviathan etc). It has to be robust enough to install Citadel with none or some or all the other dlc.

The CIC pcc also controls a lot of sequences around Traynor mentioning stuff (LI, emails, EDI, Chakwas/Adams mission, Tali/Ashley being drunk, recent missions) and her conversations. Obviously I cannot guarantee playing with the Citadel pcc with omega won't break something, but all are driven by timing conditionals, and the file just ignores that sequence where there are missing conditionals and the dlc didn't change much there. Having tested through a few sequences in the middle of the game it seems to work without problem.

The real issue is a no DLC situation it chucks you into the spare map instead. The problem is that when Leviathan came out they changed the way the map tree was structured. The original game had 1 map in BioD_203aGalaxyMap - Leviathan added the map into the CIC file which was updated in the other packs. So with the vanilla game it automatically switches back to that file.

So the short answer is you need make an object at least twice, but if you want 100% guarantees 4 times. :roll:

That's a bit funny with the sound file, ha. So, if you also want to avoid having to include that, the changes have to be modded for each DLC + main game, as well. How big is the Citadel AFC, btw?
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: Tutorial : Modding the Galaxy Map

Postby Kinkojiro » 24 Sep 2014, 14:34

50MB. Yep. The sounds are duplicated in each DLC so the map would always work no matter which dlc you had.

Thinking about it though it is not as bad as all that. The numbering is different of the planets/systems/clusters but the ordering is the same. The objects are identical, so once you have a bin template shouldn't be too hard. Just have to be methodical.
User avatar
Kinkojiro
Modder
 
Posts: 578
Joined: 02 Dec 2013, 04:14
Has thanked: 233 time
Have thanks: 249 time


Return to Modders' Tutorials

Who is online

Users browsing this forum: No registered users and 0 guests

suspicion-preferred