FemShep's Modding Notes

Discuss Mass Effect 3 mods and modding tools here. This includes multiplayer mods.
Post Reply
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

FemShep's Modding Notes

Post by Mgamerz »

I make a lot of notes while I mod this game. I think it could help someone if I decided to post some of them as I go, so I'll kind of use this thread as a modding notepad.

DLC MOUNT PRIORITIES
<TESTPATCH>
2040 COLLECTORS EDITION SP
2300 MP1
2500 MP2
2700 MP3
2900 EXTENDED CUT SP
2950 GUN01 SP
2999 LEVIATHAN SP
3025 Patch1 MP
3050 MP4
3100 GUN02 SP
3200 OMEGA SP
3210 APP01
3220 Patch2 MP
3225 MP5
3249 CIT_BASE SP
3250 CIT SP
3300 DH1 (Genesis 2) SP

(Using Mod Manager Mount.dlc editor to scan)

Current Tasks:
NBC Mod
MP(6) Mod
SP Controller Support 16:10
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: FemShep's Modding Notes

Post by Mgamerz »

I am working on an Xbox xxx file to ME3 PCC converter. This was present in old versions of me3explorer but only worked with I think the startup.xxx file. I am making a newer version that works with other files (but not startup.xxx at the moment).

xxx files are PCC files on Cooked Xenon, which is Xbox 360. This may allow us to port things that work on Xbox to PC.

Progress is good. I believe I have achieved a basegame decompressor that uses the games LZX compression. I also have a semi working pcceditor2 that works with both endian values.
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: FemShep's Modding Notes

Post by Mgamerz »

So I have dabbling in pathfinding and slight map modifications in MP. Here's what I've learned and how I'm doing it.

I've coded up a data dump parser into Mod Manager (not accessible right now) that parses data from my SCRIPT DUMP 4 (output from ME3 GUI TRANSPLANTER's pcc data dumping, gen 4). It reads path nodes, boost nodes, covernodes, coverlink nodes, and enemy spawn points. It also reads all reach specs. It draws a graph of the input file file (BioD...txt most times) and draws a grid like this.

Here's it with the reach spec lines off (Goddess map shown)
Image

Here's it with the reach spec lines on (Goddess again)
Image

Numbers are the export indexes and colors are:
Red - Path Node (just a node)
Cyan - Boost Node
Yellow - CoverLink and Cover nodes
Green - Enemy Spawnpoint nodes

It doesn't cover all of them. I am considering implementing this into ME3Explorer at this time. I would likely spin it off into its own tool as I don't want to mess with the 3D stuff from Level Explorers tools. I may not end up doing it at all either as I don't know how the GDI for C# works.

As you can see, the pathfinding interface is very complicated. This is why UE3 makes the auto link generation part of UE3 and not UDK, as manually doing linking is very time consuming.

Each line is a 'reach spec'. Reach spec is information about the link. How far it is, what is required to use this link, the beginning and end nodes, etc. AI uses this info in its pathfinding algorithm. For example, enemies that cannot boost up to a new area (like trooper rocket boost) will be unable to reach those nodes because the link to that node says it requires SFXBoostReachSpec (vs standard ReachSpec). Enemy spawn points have a list of required reach specs to spawn at as well, as some spawnpoints only have a single node to spawn at, followed by a boost node. Enemies have supportedcustomreachspecs as an arraylist in their SFXPawn definitions, as well as custom actions in certain slots. For example, custom action slot 48 and 49 are boost up/boost down, and will be called when an enemy is attempting to activate a boost node.

All nodes have a location attribute. This is the location on the level. You can use "showlocation" to find your location (center of players mesh) which will help greatly if you are re-positioning nodes.

Pathfinding is done on-host. Clients will be replicated the direction and speed of a pawn so pathfinding changes will work with clients. Interestingly, more static items are also replicated, such as location of ammo containers (not the box but the capsule) and grenades as well. I am unaware of what does not sync to clients in terms of level modifications. Obviously new content won't be synced.
Post Reply