View previous topic :: View next topic |
Author |
Message |
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
Posted: Sun Dec 14, 2008 12:12 Post subject: NWNCX |
|
|
I've started a project named NWNCX - NWN client extender.
It does not bring NWNX plugins to SP yet - I've decided to take a different approach and extend the visible GUI and client-server interaction.
It will be modular, like NWNX, although the core<->plugins interface is not complete yet.
Adding a button to the radial menu:
http://data.virusman.ru/nwn/nwncx/nwncx_radial.jpg |
|
Back to top |
|
|
dougnoel
Joined: 21 Mar 2005 Posts: 27 Location: VA
|
Posted: Wed Jan 07, 2009 7:38 Post subject: |
|
|
Sweet. Where is the button stored? Just as a client-side image file? Is this checked into the repository yet?
Doug |
|
Back to top |
|
|
ShaDoOoW
Joined: 20 Aug 2005 Posts: 584
|
Posted: Mon Feb 02, 2009 12:29 Post subject: |
|
|
I can imagine this with something like BG 2 SP module. So such module would have special NWNCX lancher which would run with given folder as top override so when game is loaded, GUI would be like BG II although, player have different GUI in override.
Also, this could be very usefull as way to load haks when join to server which needs them allowing to take new classes etc. _________________ Community Patch / NWNX Patch / NWNX Files / NWNX Connect |
|
Back to top |
|
|
TormentedBlood
Joined: 22 Jul 2008 Posts: 14
|
Posted: Mon Apr 06, 2009 15:02 Post subject: |
|
|
will this client extender be setup to allow custom races and classes to be more redily useable at the character creation gui? |
|
Back to top |
|
|
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
Posted: Sat Jan 30, 2010 10:16 Post subject: |
|
|
I've just made a NWNCX plugin that attaches NWNX2 to the client.
The plugins can't find signatures, though, as they search a different address space. They must be recompiled to support both nwserver and nwmain. _________________ In Soviet Russia, NWN plays you! |
|
Back to top |
|
|
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
|
Back to top |
|
|
the.gray.fox
Joined: 11 Dec 2009 Posts: 21
|
Posted: Mon Feb 01, 2010 13:53 Post subject: |
|
|
Sweet indeed!
Thank you virusman.
(Open...
You talk of using F9 to test the Module.
Some NWN things do not seem to work properly when in F9 mode.
Can something be done for it?
... closed)
-fox |
|
Back to top |
|
|
Goddard
Joined: 23 Nov 2009 Posts: 22
|
Posted: Mon Feb 01, 2010 23:05 Post subject: |
|
|
Cool. |
|
Back to top |
|
|
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
Posted: Tue Feb 02, 2010 12:38 Post subject: |
|
|
the.gray.fox wrote: | You talk of using F9 to test the Module.
Some NWN things do not seem to work properly when in F9 mode.
Can something be done for it? | What exactly does not work in Test Module mode? _________________ In Soviet Russia, NWN plays you! |
|
Back to top |
|
|
the.gray.fox
Joined: 11 Dec 2009 Posts: 21
|
Posted: Tue Feb 02, 2010 23:06 Post subject: |
|
|
virusman wrote: | the.gray.fox wrote: | You talk of using F9 to test the Module.
Some NWN things do not seem to work properly when in F9 mode.
Can something be done for it? | What exactly does not work in Test Module mode? |
I know of DelayCommand() -- I use it often to debug.
For example you place this OnModuleLoad, and it fires *without* delay:
DelayCommand (30.0f, SendMessageToPC (GetFirstPC (), "DBG: Message"));
Same if you chain or nest several DelayCommand(). They all fire right away.
But at some point after the first player is in, DelayCommand() returns to work properly.
When that happens, precisely, I am unable to tell -- sorry.
Personally I have not noticed more things.
But I did read some time ago of people claiming that more things are wrong in F9 mode.
They failed to say _which_ things, though.
-fox |
|
Back to top |
|
|
Inayity
Joined: 20 Jul 2008 Posts: 2
|
Posted: Thu Feb 11, 2010 21:19 Post subject: Nice! Thanks! |
|
|
As always, top-notch work. Thanks so much! |
|
Back to top |
|
|
Fireboar
Joined: 17 Feb 2008 Posts: 323
|
Posted: Thu Feb 11, 2010 22:37 Post subject: |
|
|
the.gray.fox wrote: | virusman wrote: | the.gray.fox wrote: | You talk of using F9 to test the Module.
Some NWN things do not seem to work properly when in F9 mode.
Can something be done for it? | What exactly does not work in Test Module mode? |
I know of DelayCommand() -- I use it often to debug.
For example you place this OnModuleLoad, and it fires *without* delay:
DelayCommand (30.0f, SendMessageToPC (GetFirstPC (), "DBG: Message"));
Same if you chain or nest several DelayCommand(). They all fire right away.
But at some point after the first player is in, DelayCommand() returns to work properly.
When that happens, precisely, I am unable to tell -- sorry.
Personally I have not noticed more things.
But I did read some time ago of people claiming that more things are wrong in F9 mode.
They failed to say _which_ things, though.
-fox |
That's a bug in your code, not a bug in the DelayCommand/F9 combo. If you have...
Code: | void main()
{
DelayCommand(30.0, SendMessageToPC(GetFirstPC(), "DBG: Message"));
} |
In OnModuleLoad, it's not going to do anything because GetFirstPC returns OBJECT_INVALID at the time when it is called (as part of OnModuleLoad, not 30 seconds later). Instead, you should try:
Code: | void message()
{
SendMessageToPC(GetFirstPC(), "DBG: Message");
}
void main()
{
DelayCommand(30.0, message());
} |
This, you'll find, does work, as GetFirstPC is now being called after the delay has elapsed.
What doesn't work is anything NWNX, for obvious reasons: NWNX is never actually loaded. Pressing F9 is like starting the module single player with the first character on your character list. |
|
Back to top |
|
|
virusman
Joined: 30 Jan 2005 Posts: 1020 Location: Russia
|
Posted: Thu Feb 11, 2010 22:40 Post subject: |
|
|
Fireboar wrote: | What doesn't work is anything NWNX, for obvious reasons: NWNX is never actually loaded. Pressing F9 is like starting the module single player with the first character on your character list. | This is no longer true.
Please read my previous posts in this topic. _________________ In Soviet Russia, NWN plays you! |
|
Back to top |
|
|
Fireboar
Joined: 17 Feb 2008 Posts: 323
|
Posted: Fri Feb 12, 2010 23:00 Post subject: |
|
|
virusman wrote: | Fireboar wrote: | What doesn't work is anything NWNX, for obvious reasons: NWNX is never actually loaded. Pressing F9 is like starting the module single player with the first character on your character list. | This is no longer true.
Please read my previous posts in this topic. |
Touché, sir, I had completely forgotten what the topic was about when I posted that, and now I feel a right numpty. Correction then: if you're using NWNCX, then the supported NWNX extensions do also work. |
|
Back to top |
|
|
the.gray.fox
Joined: 11 Dec 2009 Posts: 21
|
Posted: Sat Feb 13, 2010 13:01 Post subject: |
|
|
Fireboar wrote: |
That's a bug in your code, not a bug in the DelayCommand/F9 combo. If you have...
Code: | void main()
{
DelayCommand(30.0, SendMessageToPC(GetFirstPC(), "DBG: Message"));
} |
In OnModuleLoad, it's not going to do anything because GetFirstPC returns OBJECT_INVALID at the time when it is called (as part of OnModuleLoad, not 30 seconds later). Instead, you should try:
Code: | void message()
{
SendMessageToPC(GetFirstPC(), "DBG: Message");
}
void main()
{
DelayCommand(30.0, message());
} |
This, you'll find, does work, as GetFirstPC is now being called after the delay has elapsed. |
Incorrect.
Please do not focus on the command I used.
If you change the line to this:
DelayCommand (30.0f, SignalEvent (GetModule (), EventUserDefined (n)));
it does not delay -- all the same.
Also, should the delay fail because I call GetFirstPC() when no PC is there, it is no bug of mine.
At best it is a NWN bug, for the GetFirstPC() should be called *after* the 30 seconds regardless of the command being delayed.
Thanks.
-fox |
|
Back to top |
|
|
|