Jump to content

Home

GUI Modding? (Erasing it specifically)


SplashKhat

Recommended Posts

I'm putting together a music video using fraps to take in-game footage (TSL). So far I've been extensivly editing using the KoTor tool and Savegame editor to get the footage I want. But the one thing that erk's me is the combat GUI since it sits in the center of all the action unless you setup your combat actions and target something off to the side. (a bothersome chore when its a 1vs1 battle)

 

A few elements I could remove editing graphics and using the in-game settings. But I'd like to get rid of other overlay graphics alltogether rather then edit all the images associated. Sure.. scripting is an option but my needs are not that specific, and I'm not an advanced coder.

 

I ran into the Gui.bif folder in the KotoR tool but how do you edit them? double clicking only gives an error launching GFFEditor/cannot find.

I tried running K-GFF but its completley non-userfriendly in getting started and doesn't even seem to open .gui files.

 

I'm still doing my homework and scouring the net/forums. but some specific help would be nice ^^

Link to comment
Share on other sites

Both K-gff (just select "all files" in the drop down menu) and any gff editor can open gui files. To open gff files directly with Kotor tool, you need to drop Bioware's Gff editor in the KT folder (you'll find the link in the Tools tutorial in the General tutorials forums at the top of the page :) but I am not sure you'll fiind it more "user friendly" thant k-gff... I find that K-gff is more user friendly)

 

I didn't check the files however and I don't know to what extent you'll be able to do what you want...

Link to comment
Share on other sites

I tried running K-GFF but its completley non-userfriendly in getting started and doesn't even seem to open .gui files.

 

:crybaby: completely non-userfriendly ... harsh! Remember what a GFF-editor is for... rudimentary editing of GFF files.

 

I'll add .gui to the internal extension list for the Open File dialog. If there's something more I can do to improve K-GFF, please let me know in the K-GFF thread. http://www.lucasforums.com/showthread.php?s=&threadid=149407

 

Edit:

not entirely useless anymore
Oh that is a high compliment! Thank you! :lol::D
Link to comment
Share on other sites

I could be wrong, but I believe that most of TSL's GUI icons have textures in the ERF folders somewhere. I'm also pretty sure that each one uses an alpha channel to make them semi-transparent, as they appeare ingame. If you boost the alpha channels on each icon, they may become transparent ingame. But that'd take a long time.

Link to comment
Share on other sites

Well the Combat reticule was my start. ERF's >TexturePacks >swpc_tex_gui >C >combat reticule.tpc ,saved as a targa, opened in photoshop. It has full image transparency(not color select alpha) so the alpha might be straight from the source image.

It would be a mess to do all the elements like that. especially when it would come down to trying to find those little border images and keep the other game menu's still intact and playable!

 

I started browing through the BIF >Gui elements last night through K-GFF(liking it) but havent made any leads as on whats doing what and where. But if there is an alpha setting It would make things great.

Link to comment
Share on other sites

Changing the gui, making place for new party members is one thing but the no. of party members slots is hardcoded.

 

 

That's what we used to think or were limited by. However we all know with K2 they gave us 12 possible partymembers but only 10 partyselection slots correct. So that would defy the hardcoded way of thinking and open up a scripting/2da thought process.

 

Now there seems to be about 8 seperate scripts that handle the checks using a "switch" programming command. Now these "switch" commands are linked with NPC.2da. The party select gui is also linked with NPC.2da. Through these "switch" commands and scripting to set a global variable the game handles you having the choice of 12 characters to divide into 10 possible slots.

 

I'll start a seperate thread for this seperate discussion later as I think we can soon derail this threads motive. However I am going to be heading down this path of research just out pure need to overcome a previously imposed barrier.

Link to comment
Share on other sites

That's what we used to think or were limited by. However we all know with K2 they gave us 12 possible partymembers but only 10 partyselection slots correct.

 

Are you 100% sure they didn't handle that the same way we would handle a modded recruit, minus a unique tag? Theoretically, we could add additional party members to existing slots and give them unique tags too. You'd just have to check every point the original tag was used ingame and make sure you don't break anything. (Which the Devs did. That's one thing right for them.) Or maybe the handled it a different way, and I'm wrong.

Link to comment
Share on other sites

That's what we used to think or were limited by. However we all know with K2 they gave us 12 possible partymembers but only 10 partyselection slots correct. So that would defy the hardcoded way of thinking and open up a scripting/2da thought process.

 

Not entirely correct. There are actually 12 party selection screen slots too, one for each party table slot. It's just that Hanharr's and Mira's, and Handmaiden's and Disciples, occupy the same position on the GUI.They are still separate GUI elements. When one of them joins your group the game will hide the portrait element of the other on the screen.

 

You can for example change the coordinates so that the Disciple's and Handmaiden's portraits don't show up in the same place in the GUI screen, but the game will only ever display one of them at a time. I changed the coordinates to the Disciple showed up in the center of the "ring" of portraits, while the Handmaiden's portrait remained in the normal position.

 

You can actually have both Handmaiden and the Disciple in your party at the same time (as in, they are both saved in the party table), you just can't get both to show up on the party selection screen. It's possible to add&remove the non-listed one in the active party with scripts though.

 

I was looking into this a few months ago when I made a Handmaiden Choice mod, but I never found any way to make the game display the portraits for both at the same time on the selection screen, and eventually gave up on that idea.

 

I highly suspect that is hardcoded in the game engine, as some other aspects of partymembers are (like Kreia's alignment for example).

Link to comment
Share on other sites

The elements that handle alot of it are handled with scripting and global variable from what I can tell.

 

@Mono--If you look at the generic scripts the game has in scripts source.bif you'll find all of them use the AddAvailableNPC function which makes a call to there Tag. Each partymember for the core game has there own seperate TAG. Mira is NPC_MIRA & Hanharr is NPC_HANHARR as well Handmaiden is NPC_HANDMAIDEN & Disciple is NPC_DISCIPLE.

 

Also as I said there are around 8 core script files that handle definitions for all 12 partymembers and a few of them have paramater checks.

Link to comment
Share on other sites

The elements that handle alot of it are handled with scripting and global variable from what I can tell.

 

@Mono--If you look at the generic scripts the game has in scripts source.bif you'll find all of them use the AddAvailableNPC function which makes a call to there Tag. Each partymember for the core game has there own seperate TAG. Mira is NPC_MIRA & Hanharr is NPC_HANHARR as well Handmaiden is NPC_HANDMAIDEN & Disciple is NPC_DISCIPLE.

 

From what I've been able to tell the 000_*_Joined variables have nothing to do with the party selection screen, they are used for other things.

 

The NPC_* are not tags, they are integer constant indexes that point to the slot in the party table to add, remove or retrieve a creature from. They are declared in the constant list in nwscript.nss.

 

Thus AddAvailableNPCByObject(NPC_MIRA, oCreature) and AddAvailableNPCByObject(7, oCreature) do exactly the same thing, that is to add the creature referenced by the oCreature variable to Party Table slot number 7, the one the game normally puts Mira in.

 

There are only 12 slots in the Party Table, indexed from 0 (NPC_ATTON) to 11 (NPC_DISCIPLE), this is unfortunately hardcoded in the game engine. If you try to do...

void main() {
   AddAvailableNPCByTemplate(12, "SomeNPC");   
   object oNPC = SpawnAvailableNPC(12, GetLocation(OBJECT_SELF));
   AddPartyMember(12, oNPC);
}

...you will find that it won't work, the creature won't be spawned and won't be added to your active party. While...

void main() {
   AddAvailableNPCByTemplate(11, "SomeNPC");   
   object oNPC = SpawnAvailableNPC(11, GetLocation(OBJECT_SELF));
   AddPartyMember(11, oNPC);
}

...will add the creature to the Disciple's party slot, spawn it and add it to the active party.

 

 

The problem with Handmaiden/Disciple and Mira/Hanharr is that they are mutually exclusive on the party selection screen, even if they technically can exist at the same time in the game since they have their own slots in the party table. This party screen behavior is not scripted but handled internally by the game AFAIK.

 

For example, whenever a creature is added to the Disciple's party table slot, the game automatically hides the Handmaiden's portrait on the party selection screen, even if it is moved so they are not located in the same position. As long as party slot 11 is occupied, the Handmaiden's portrait is removed.

 

Like:

Before Disciple joins

After Disciple joins

Link to comment
Share on other sites

From what I am gethering is that:

1. Modders cannot add new party members to the scouting team. Other words you are limited to three.

2. Modders cannot add new characters to the party members, but can alter a party member to a new character by hijacking the character's .utc.

3. CNPCs are hard coded into the main source code, which would make it impossible to add more party members.

 

Did I get all of that right?

 

Now, if someone were to make alterations to all the files we can get into, is it possible that we can trick the game, so you could have a four party scouting team? Or, is this what we are debating?

Link to comment
Share on other sites

In fact, while the 12 members party limit cannot be modified as the no. of slots is hard coded, there is an alternate possible tweak to increase the number of npcs to chose from to make your party. It's a bit artificial but it works:

 

This is something I started to do for K1 but never finished the mod: instead of replacing t3 when recruiting my custom npcs (Dustil and Bandon), I spawned them in the Ebon Hawk as if they were party members and then made an armband that I can use in place of the party selection screen so I could add and remove them from my party. When I come back to the Ebon Hawk, they were automatically removed from my party to avoid a mess.

 

And no, we can't have a four member party as it is hardcoded too but we can add puppets (2 available slots). Or you can use a tweak similar to the lighsaber floating powers to make an extra custom npc follow you but area transition is problematic..

 

...but all this has nothing to do with the GUI...even if you make it pink with yellow dots and add 100 little squares, you won't get more party members...

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...