Aller au contenu

Photo

Why won't my mods take?


  • Veuillez vous connecter pour répondre
7 réponses à ce sujet

#1
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
I'm attempting to create a fixpack for many bugged quests and scripts in the game, so obviously this is supposed to extend the single player game.  I followed all the steps in the tutorial, but for some reason my changes just aren't taking. 

1.  This is on Win 7 64 bit.

2.  My module is showing up in my Downloadable Content tab and it is enabled.

3.  All my changes are to *existing* files from the single player game, I have created no new resources.

4.  In the properties of the files I've changed, it doesn't seem to work whether I leave Module and Owner Module as Single Player (this is what they remain by default, actually) or change them to my module.

5.  Yes, I exported the files.

6.  However, looking in my Users/XXXX/My Documents/Bioware/Dragon Age/Addins/qwinn_fixpack_v1 folder, there's simply not a lot showing up there.  A couple of 1k and one 10k file, and that's it.  I've modded much larger files than that.

7.  One note of concern is that the export log claims the files are going to C:/Users/XXXX/Documents/Bioware/Dragon Age/Addins/qwinn_fixpack_v1/core/override/toolsetexport, but that exact directory doesn't exist on my system... the problem is that it's "My Documents", not just "Documents".  There is no Users/XXXX/Documents folder in my system, that I can see in Explorer anyway.  It doesn't appear to be creating it.

8.  If that *is* the problem, I can't seem to find anywhere to modify that path.  That is where it installed to automatically, by the way, I didn't change anything either when installing my operating system or the toolset.


Halp?  I can promise a fixpack full of goodies if anyone can help me get through this.

Qwinn

Modifié par Qwinn1234, 19 février 2010 - 02:05 .


#2
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
Never mind, they are showing up now. It seems that changing the Module and Owner Module properties on the files I was changing *did* make a difference.

I'm still a bit fuzzy on what I *should* change those to. The tutorial says, when creating *new* resources, change them to either Core Game Resources or my own module, but what would be the proper setting when modifying existing files for a fixpack? As noted, leaving them as single player doesn't work. Annoying having to remember to change them after every single modification (not to mention exporting)... is there no way to tell it to change ownership automatically when I'm working on my own module?

Qwinn

Modifié par Qwinn1234, 19 février 2010 - 02:31 .


#3
anakin5

anakin5
  • Members
  • 258 messages
The "module" property is the loading group of your module. This property is used to know when the file is loaded. This property remain the same if you are editing files.
The loading order is Core -> Main Module -> Add-ins

The "Owner Module" property is the module the file belongs to. Deactivating this owner module will result the file not being loaded. This property is also responsible of the export directory.
You cannot deactivate Core so if you choose that, your file will be loaded and used in all game of the player.
This property is important and need to be the name of your module to let the player deactivate your file if they want.

So to resume :
Module : Do not change
Owner Module : Your module name

Modifié par anakin5, 19 février 2010 - 02:52 .


#4
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
Thanks lots :)

I had a bit frustrating problem here, but never mind.  Figured it out.  nResult = TRUE, not nResult == TRUE.  Sigh.

Qwinn

Modifié par Qwinn1234, 19 février 2010 - 04:01 .


#5
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
Urf. No. That wasn't the problem. Grrrr, now I have to type that all out again.



I've got an even worse problem now. This is what kept making me think nothing was working:



The bug I'm trying to fix is this: In the human noble origin, when you first find Ser Gilmore fighting in the main hall, there's a few seconds where you can click him to initiate dialog. If you do so, he prematurely starts the dialog that's not supposed to happen until after the fight is over, and you wind up with the main hall never being unsealed, forcing a reload.



So my solution was to add a top-level dialog line that would fire on the condition that the main hall battle was underway, which would just have him voice lines like "Don't let any of them get through!". And it *should* work.



If I don't attach any condition at all to that top-level line, then it always comes up. I can test this easily by starting a new game, escaping through the initial conversation and running over to where Gilmore initiates conversation to start the fetch-the-dog quest. If I have *no* condition on that top level dialog line, then instead of that dialog he says the "Don't let them get through!" voiced line. So that appears to be working right.



But if I put a defined condition on there, even if I simply always return a true value, then it never fires.



Here's what I did:



1. In the plot file bhn100pt_gilmore.plo, I added the defined flag BHN_GILMORE_MAIN_HALL_DURING_BATTLE.



2. In the dialog, I add that flag being true as my condition for the "Don't let them get through!" voiced line.



3. In the script corresponding to that plot, bhn100pt_gilmore.nss, I added the following block. Note that I commented out the conditions I eventually want just trying to get this to work at ALL, and it still doesn't:



else // EVENT_TYPE_GET_PLOT -> defined conditions only

{

switch(nFlag)

{

// Qwinn: To prevent Gilmore's final full talk from being started prematurely by clicking on him at beginning of main hall fight

case BHN_GILMORE_MAIN_HALL_DURING_BATTLE:

{

// int nBattleEnded = WR_GetPlotFlag(PLT_BHN100PT_GILMORE,BHN_GILMORE_GUARDS_RUN_IN);

// int nBattleBegun = WR_GetPlotFlag(PLT_BHN000PT_MAIN,BHN_MAIN_BATTLE_BEGUN);



// if ((nBattleBegun == TRUE) && (nBattleEnded == FALSE))

// {

nResult = TRUE;

// }

break;

}




What the heck am I doing wrong?



Note, btw, that I saw in the tutorials something about setting up a script in the module properties, but I don't do that in this case, right? I'm not adding any new scripts.



Qwinn

#6
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
This is so freakin' bizarre.



I changed the Owner of the script back to being my mod... and suddenly, he's giving his voiced line. Yay, I think. That was the issue.



So I reactivate all the conditional lines, test it out again... and he's still giving his voiced line.



So I comment them all back out, and tell the script to always return FALSE... and he's still always giving his voiced line.



Gaaaaah. The only thing I can think of is that *something* is making my changes only take effect intermittently. But I can't figure out what it is. Sometimes I go into downloadable content and uncheck and recheck the mod, but that isn't working now. Nor is generating the module or manifest files. I'm exporting between each and every change, but I can't figure out why sometimes my changes seem to take and sometimes they don't :(



Qwinn


#7
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
Ok, a bit of additional info that might be relevant.

While I've been working on this, a couple of times (out of many dozens), when I'd go to test something out in game, I'd get an odd message about how I wasn't logged into my account and for some time, all my DLC's would be deactivated until I logged into a valid account. Of course, I *was* logged in. It may be that I did this by somehow clicking on New Game *very* fast after the screen came up, before the login process could finish. Anyway, it *seems* like, when I've had that message, *then* my module changes would take effect. It did this last time, and thinking back, it may account for the last time my changes took too.

I don't know how to force that situation again though, I can't duplicate it voluntarily. (Logging out and in of the server doesn't help).  But whatever was going on there, it seemed to reset all my DLC's including my own module. Without that, nothing changes. Any tips would *really* be aprpeciated, I'm tearing my hair out here.

Qwinn

P.S.  The Force Load technique isn't helping either.

Modifié par Qwinn1234, 19 février 2010 - 06:46 .


#8
Qwinn1234

Qwinn1234
  • Members
  • 144 messages
Okay... I think I've resolved some issues with my changes not taking. I am at least now making sure that when I export, the files in the Addins/module/override directory are getting updated. They weren't for a while there, which was only confusing matters. At the very least, I can now make changes to the dialogue file and they always show up in game (adding and removing the condition on the line always gives the expected result).

But I am still stuck on the same problem as before. I have the defined flag in the plot, I have the dialog file checking the condition of that flag. But even if I have the script do something this simple:

else // EVENT_TYPE_GET_PLOT -> defined conditions only
{
switch(nFlag)
{
case BHN_GILMORE_MAIN_HALL_DURING_BATTLE:
{
nResult = TRUE;
break;
}

It always fails the check.  Actually it fails it whether I do nResult = TRUE or nResult = FALSE, so it's not just a matter of it getting reversed somehow.

What am I doing wrong here?  The time stamp on the script in the override/toolsetexport directory (both the .ncs and .nss) *are* updating when I export it.  So if it's a matter of my changes to this script file not "taking", I don't know what else I can do.

For the record, the only Owner/Module Owner settings that have gotten me this far are these.  Any other settings either cause compile failures or the files in that directory don't update their time stamp.

Plot file:   Module = Single Player, Module Owner = my mod.  (if both my mod, then the script fails to compile)
Script:  Module = my mod, Module Owner = my mod  (if I set Module to Single Player, file in addins directory doesn't update)
Dialogue:  Module = my mod, Module Owner = my mod.  This is the only file I'm sure I can modify and see the result in game.

At this point I have no evidence that ANY changes I've made to any script are working in any way.

Qwinn

Modifié par Qwinn1234, 19 février 2010 - 09:46 .