Author Topic: Anyone modified the character creation GUI to be dynamic?  (Read 1361 times)

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« on: August 10, 2011, 06:33:54 pm »


               Has anyone ever tried this?

At character creation, the number of buttons and what reads on them is fixed. But it would be very nice if there was a modification to NWN to get these buttons to take the string from a 2DA and render it as text on a button rather than use those static images.

Another thing that is bothering me,  the package file names usable for each class are static. Would be very nice if we could create new packages with different file names.


I know there are work arounds for multiplayer with NWNX and a special character creation area. But it would be much better for single player to be free of NWNX, and use the actual character creation process.
               
               

               
            

Legacy_virusman

  • Sr. Member
  • ****
  • Posts: 448
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #1 on: August 11, 2011, 09:14:04 am »


               It is possible to change the GUI layout. Depends on what exactly you want to do.
               
               

               


                     Modifié par virusman, 11 août 2011 - 08:14 .
                     
                  


            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #2 on: August 12, 2011, 04:36:20 am »


               I am under the impression that this would be a modified executable. If that is the case, then I would like a modification that enables the character creation GUI to be dynamic, reading from the 2DA files.

Example:
the Race buttons would read from a 2DA so instead of "Human", "Half-Orc" etc.... You'd get whatever text values your racialtypes.2da points to.

I'm actually surprised that the Race buttons are not presently dynamic because the class buttons are so obviously NWN can render text.
               
               

               
            

Legacy_Axe_Murderer

  • Full Member
  • ***
  • Posts: 199
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #3 on: August 12, 2011, 11:46:01 am »


               Well all the text in the game interface is taken from the tlk table (dialog.tlk & dialogf.txt) which is how multi language support is easily accomplished...so they aren't completely static per se, tho its true not as independent as other strings that use 2das. Still you might be able to change the tlk table on the fly. I kinda doubt if the game will notice it cuz I'm reasonably certain it caches that table when the game loads...but maybe not. Worth a try.

Of course, it could very well be the case that even if doing that works, some of those strings are being shared by other elements of the game to avoid duplications in the tlk table for commonly required strings (like race names)...in which case you would not be only affecting just the GUI for char creation. Like for the race buttons...it might say Human in the character GUI and if you are able to change it to make it say Martian, then there is the potential that when you look at a human character's sheet during play it will say Martian there as well. Or a weapon property that says Only useable by Martian.
               
               

               
            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #4 on: August 12, 2011, 02:52:44 pm »


               I'm not sure it works that way, Axe. The following is how single player character creation is working for me with a custom tlk table and custom 2DAs in a HAK:

I have a HAK with a custom racialtypes.2da that points to my custom tlk table. The right side of the character creation GUI's Race screen is populated with the custom text as directed by the 2da. The buttons on the left side however have the default text. The character sheet also uses the custom text after character creation.

So if you are correct, the Race Buttons use dialog.tlk while everything else related to race is reading from my custom tlk table. That would be a weird way for the game to behave. I suspect instead that those buttons are hardcoded. Another reason for this suspicion is their layout. They aren't in a list like the GUI's class screen. NWN doesn't seem to be equipped with a dynamic GUI that would enable for these Race buttons to layout on the fly like that.

Ultimately I would like this Race screen to function exactly like the class screen does. And I suspect that you'd have to hack the executable to make it happen.
               
               

               
            

Legacy_Epitaffio

  • Jr. Member
  • **
  • Posts: 70
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #5 on: August 12, 2011, 06:17:44 pm »


               override for text
               
               

               


                     Modifié par Epitaffio, 12 août 2011 - 05:18 .
                     
                  


            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #6 on: August 12, 2011, 06:44:31 pm »


               Thats an interesting option, but the problem with overrides is that they apply to all modules. I can't see using them unless I was making a PW, and my player base didn't play anything else. Nevertheless I'll check this out when I have time.
               
               

               
            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #7 on: August 16, 2011, 02:36:56 am »


               Hmm with NWNCX this is not strictly necessary is it? Sorry I didn't know about NWNCX before, Virusman.

I am wondering if these changes would be possible with NWNCX though as follows:

- change the race screen GUI to work like the GUI for class selection. A list of buttons which reads from a custom 2DA and TLK
- enable all of the character creation gui to read 2DAs from HAKs and custom TLK even in multiplayer (this may be asking alot but would be very cool)
               
               

               


                     Modifié par henesua, 16 août 2011 - 01:51 .
                     
                  


            

Legacy_ShadowM

  • Hero Member
  • *****
  • Posts: 1373
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #8 on: August 16, 2011, 03:43:27 am »


               I have played around with the race GUI some and had it pretty much the same as the class screen, just like you said if we could get a modified .exe to make it point to the race.2da then I sure we be set. I was hoping ElgarL was going to do that, but I heard he moved on to mod minecraft. I can understand that my newphew and family been bugging me to do the same since I started a server for them. Even if you did this though you might get some problems with multi-player servers systems not loading the custom race.2da
               
               

               
            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #9 on: August 16, 2011, 04:39:24 am »


               How'd you do this? I'd like to see the gui modification.
               
               

               
            

Legacy_ShadowM

  • Hero Member
  • *****
  • Posts: 1373
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #10 on: August 16, 2011, 10:50:36 pm »


               Open nwn explorer export cg_class.gui and rename it cg_race pop this into a hak and connect it to a module. Load the module select premade character then create a character you notice that now the race gui is like the class one. It will not have the list of races (because it not pointing at the race.2da) The top is like look like the class gui but this can be fix with some gff editing. If you hit the recommended button you notice that the proper race info loads into the side. I think I did some gff editing and got the top to talk about race, but I stop playing with it there because I knew that it would not matter until we got it to point to the race.2da '<img'> but some of the more technical people around here could add more information or maybe even get it to point to the race.2da with a gff editor.  '<img'>
               
               

               
            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #11 on: August 16, 2011, 11:45:42 pm »


               Interesting. I've never looked at the .gui files. Didn't realize they were there.

I think you are right however in your assumption that we need more help to get that to work. Nevertheless I'll check it out and see what I can do with it. Maybe I'll custom modify the original race.gui so that the buttons have different names on them. That would solve my immediate problem.
               
               

               
            

Legacy_virusman

  • Sr. Member
  • ****
  • Posts: 448
  • Karma: +0/-0
Anyone modified the character creation GUI to be dynamic?
« Reply #12 on: August 17, 2011, 08:39:34 pm »


               .gui and .mdl files only contain the layout of the GUI. The controls and interactivity is in the code.