EGM / SP controller compatibility

Discuss Mass Effect 3 mods and modding tools here. This includes multiplayer mods.
kinkojiro
Posts: 45
Joined: Tue Feb 09, 2016 1:47 am

EGM / SP controller compatibility

Post by kinkojiro »

As way of background I am the author of Expanded Galaxy Mod, a SP mod that allows customisation of the Normandy, new weapons, armors and lots of RPG style improvements.

A couple of players are very keen for me to create a patch to allow then to use a controller and I wanted some advice on how to do this.

There are going to be quite a few conflicts: EGM mods a lot of the Normandy so there are many GUI aspects like galaxy map, war asset terminal, mail terminal. EGM also has slightly customised GUI elements.

I see you have created an GUI injector which could be incredibly useful in swapping in compatible parts.

So what would be the best way to go about creating a patch?

Do I need to do anything else other than edit GUI elements?

The SP controller mod - it overwrites all changes to tlks? Or just the particular buttons it uses?

Anybody's input would be greatly appreciated.
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: EGM / SP controller compatibility

Post by Mgamerz »

As far as I am aware there is no actual pcc modifications beyond gfx files. You can automate it pretty quickly using the source for the GUI extractor or using just a batch file to extract and transplant.

I plan on putting it into mod manager which can find the conflict files between mods and automatically transplant gfx files from the controller mod into the other one (and then lower the controller mount priority). I have quite a few things to do still though, trying to create the ME3 feckless SDK again that WV used, because it has none of the MP stuff, or DLC stuff either.

And yes, it rewrites the whole TLK unfortunately. That's how it was with moonshine's mod. I have some code to automatically replace them so we can have only a diff for the TLK, but it's not really been stress tested. I can look into that for you if you want.
kinkojiro
Posts: 45
Joined: Tue Feb 09, 2016 1:47 am

Re: EGM / SP controller compatibility

Post by kinkojiro »

Ok thanks very much that sounds useful. I will look at the GUI transporter as soon as I can.

On the tlk so basically any mod that edits vanilla tlks via a DLC is incompatible? This includes EGM, MEHEM, CEM, Thanemod, Backoff and ME3Re??

Is there a technical reason that the mod has to use the entire tlk? Is the tlk mounted in the dlc folder. I would think basically the only reason would be to modify button A from key A etc. If I was to run a text scan to find what actually is changed would you be willing to update the dlc to reflect only the things that changed, not the entire tlk?

FYI. The tlks work like this: the game scans the highest mount tlk looking for the number say 10000, as soon as it sees 10,001 it moves to the next highest mounted tlk repeat etc. So by mounting very high the entire tlk it basically nullifies any tlk mod below it.
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: EGM / SP controller compatibility

Post by Mgamerz »

Yeah I know how tlk works. It's how moonshine did it, not me. I can minify it but it'll take some time. I have a program that should auto generated it. Need to do its coalesced as well.

For GUI swaps use the cli version, it is much more powerful than GUI version.
kinkojiro
Posts: 45
Joined: Tue Feb 09, 2016 1:47 am

Re: EGM / SP controller compatibility

Post by kinkojiro »

Noted re CLI. I will give it a go ASAP. I have found somebody who can test it.

On tlks I am not trying to blame you or moonshine anybody. If I was building the SP mod a couple of years ago like moonshine I probably would have done the same, just wholesale replace the PC tlks with the Xbox ones. All I really want is to find a solution that helps everybody.

Rather than create a program isn't one of the following easier:

(A). Unpack the tlk run a text comparison via a word processor and delete all this strings that are not changed.

(b) even easier why not move the mounting level permanently down to just above the dlc? Then the issue is solved you have no worries and it makes life easier for any modders who want to swap using your CLI to allow compatibility.

If I can do anything to help this progress I am happy to do so.
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: EGM / SP controller compatibility

Post by Mgamerz »

The issue with lowering the mount priority means that you'll get to an area where you entirely lose control of the game if using another mod. You can open a menu and have absolutely no way out. I think being able to control the game is a higher importance to the user than another mod installed, regardless of what mod it is. In fact this is the most common issue people have with this mod is not using a DLC authorizer and then getting stuck in one of the menus. My youtube video about this mod is quite full of people commenting on it <_<

I certainly wouldn't want to be in a game where I had no idea how to exit it (alt f4 does not work for controller mod). Regardless it will cause a problem for one (or both) developers of the mods.

As for TLK, deleting all non-conflicting lines is actually a pretty good idea. I'll need to look into it a bit more because I am not sure if moonshine hardcoded the icons or used input aliases ([SharedAction]) vs ([XboxTypeS_Dpad_Up]). Due to how some input aliases seem hardcoded I will have to make sure all instances of aliases are removed.

I'm going to move coalesced to testpatch and work on the TLK. It'll be a couple of days because I have to do a bunch of type 4's for testpatch.
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: EGM / SP controller compatibility

Post by Mgamerz »

An issue I see is moonshine uses only the Xbox INT TLK. The others are the same as pc.

I'll probably use a diff on INT and then a scanner/replacer on the others, since I don't know those languages. It won't be perfect but itll be better thna nothing I guess.

I'll try to add the DLC ones as well.
kinkojiro
Posts: 45
Joined: Tue Feb 09, 2016 1:47 am

Re: EGM / SP controller compatibility

Post by kinkojiro »

That makes sense.

On localised tlks 2 thoughts:

The strings that vary between the different languages will be identical. So once you know what changes in the INT version then you know them all.

If moonshine kept the PC tlks then the localized text is wrong anyway (press key A instead of press button A etc). Assuming 99% of players with localised versions will get "press A" in English given it is simple (not speech) and lots of games are not localized - then all you need to do is make a copy of the INT tlk and rename it _RUS etc.

Final thing I found: by a fluke both XBX and EGM use the 5000 mount. So any patch will have to move one by a digit.

Can I put the patch on mod manager?
User avatar
Mgamerz
Site Admin
Posts: 571
Joined: Wed Jan 06, 2016 1:13 am

Re: EGM / SP controller compatibility

Post by Mgamerz »

@compatability shim
Sure. If you update EGM you can use Mod Manager's update service too to distribute updated files (compatability shim) to users as well. I can show you how to generate a server manifest (tells clients there's an update) and I can also grant you FTP access if you need to (to your files only of course). I can show you how to make a mod manager mod if you don't know how (it's pretty easy). You can find documentation at http://me3tweaks.com/modmanager/documentation/moddesc and also look at any other mod's moddesc.ini files which will give you examples.

===========
I've been working on the TLK stuff today. Here's the situation right now:

1. Only the INT BASEGAME was ever used, as his DLC TLKs. IDK if he used xbox's TLK or just converted the existing strings with a diff. The other's in the basegame are the same as their PC versions, which I assume is so the mod would load for those users.

2. DLC TLK are not included. This isn't an issue because only one of the DLC's I believe has changes (citadel), and that won't be much work.

3. I have tools that automatically scan TLKs and find items in [ ], which signify a UI token. I have them automatically extract into another XML in tankmaster's format. This will work for the most part, however, for a string such as "Press [LB] to open wheel and [A] to select wheel" kinda of doesn't work... because on PC, it's "Press [Q] to use singularity", which is a single token. Not a big deal, but less than perfect I suppose.

4. Some languages seem to have different text compared to the same one in another language. For example, in INT, one of the strings is something like "Press [PC_MOVE_UP] and [SHARED_ACTION] to enter cover", while another language is "fadfhkdasdf [PC_MOVE_UP]dfasdfadf"... so IDK what I'm really supposed to do there.



So here's what I'm doing for the TLKs:
1. I'm obviously going to use diffed items in the TLK, which is strings with [ ] that correspond to Xbox control tokens. Things like [laughs] can probably be left behind.

2. DLC will be included this time around which should fix some of citadel's stuff. Due to this, it *may* be possible that some files in moonshine's DLC_CON_XBX folder can be deleted. Maybe. IDK if he only injected swf GUI files or if he also attempted to change some string references to point to "xbox specific" strings, but I can just make both PC and Xbox strings the same so it won't matter... I have no idea how much work that would be to test though, as there's like 20000 strings in citadel.

3. I don't now if I had a number 3, but 3 items makes a list, so here's a 3rd bullet point.

It will take me some time to get these TLKs all worked out as there's about 40/50 TLK files it seems across all of the DLCs. Also, Have you seen the JPN versions in DLC? I don't have a JPN basegame one, but in DLC there is a JPN TLK. Is there's a JPN version of this game?


Edit:
Noticed your EGM requires some compatability shims if the DLC is not present. Part of why I moved controller mod to mod manager is because it can automatically detect if shims are needed and inject them (as well as testpatch). It does this through DLC injection (rather than additional DLC mods). If you're interested in having a mod manager mod (as an alternative) that can automatically install these compatability fixes during install time I can show you how it looks for the controller mod and genesis2 to the user.
kinkojiro
Posts: 45
Joined: Tue Feb 09, 2016 1:47 am

Re: EGM / SP controller compatibility

Post by kinkojiro »

Great looks like real progress on the Tlk front. At the moment the main mod is up on nexus and I don't really have to move it. However the patch with SP mod means they already will have mod manager and it would be easy to put it up there.

There is a JPN version of ME3 but as a local I believe it didn't do that well. The community that plays AAA foreign games is quite small. I wouldn't bother if I was you.

On sp controller mod I don't have a controller, but would like to run very basic tests - ie just go into the custom GUIs to check it appears on screen correctly. Doesn't need to play the game just click in and out of GUIs. Is this possible with K&M?
Post Reply