View previous topic :: View next topic |
Author |
Message |
Lanthar D'Alton
Joined: 10 Feb 2005 Posts: 100
|
Posted: Thu Feb 10, 2005 10:47 Post subject: dmfi 1.07 |
|
|
*shrug* Haven't even looked at that. I began work on dmfi 1.06, but it was such a mess (and I was feeling lazy), that I scrapped that work and reverted...
As for your problem, Jeroen, did you make sure that the string is getting encoded for 's in what people say? Dgunter, check if that causes it... say something with 's in it, and see if it causes the error to appear again.
-Lanthar |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Thu Feb 10, 2005 12:28 Post subject: Re: dmfi 1.07 |
|
|
Lanthar D'Alton wrote: | *shrug* Haven't even looked at that. I began work on dmfi 1.06, but it was such a mess (and I was feeling lazy), that I scrapped that work and reverted... |
Actually, I have finally gotten most of DMFI 1.07 to play nicely with it, but I'm still fine-tuning. The .buff commands work, but I can't seem to get the .appearance commands to do so. Yet. I'll figure it out eventually.
Quote: |
As for your problem, Jeroen, did you make sure that the string is getting encoded for 's in what people say? Dgunter, check if that causes it... say something with 's in it, and see if it causes the error to appear again. |
There's two n's in my name, BTW... No, a single quote doesn't seem to be what's triggering that weird error. I already tried saying something with a ' in it, but didn't get the error. I haven't caught it in the act yet, so I'm not sure what triggers it. I'll just switch to the screen page that has the server startup in it, and the error message will be sitting there as shown in my earlier message. It doesn't happen a lot, fortunately.
--Dave |
|
Back to top |
|
|
JeroenB
Joined: 31 Dec 2004 Posts: 228 Location: Netherlands
|
Posted: Thu Feb 10, 2005 20:32 Post subject: |
|
|
Lanthar, that should not be the problem. But I have another question. Does the other guy solves the 'root' problem? In my version I use the pcap libraries which need root permissions to run correctly. If he has a better way, I would be very interested |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Thu Feb 10, 2005 21:20 Post subject: |
|
|
As would I.
I was thinking that the way he did it in the Windows version might actually be a better thing for this - run a seperate application "service" that does the listening on the port (*that* could be run as root) and then have the nwnx_speech.so plugin talk to that application. But that's just a thought.
In any case, I eagerly await the release of a version that doesn't have to use the database to communicate with the module.
--Dave |
|
Back to top |
|
|
Lanthar D'Alton
Joined: 10 Feb 2005 Posts: 100
|
Posted: Fri Feb 11, 2005 3:13 Post subject: spelling |
|
|
sorry about that dguntner... If it's any consolation, Jeroen spelled my name with an E when he credited me for writing the system...
I don't know if his solves that... but I do think it runs on it's own.
Oh, and I have my own SetApp command in my scripts... but I just use numbers... no sense using inefficient string compares when I can just check the list... plus it allows use of cep and stuff too.
-Lanthar |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Fri Feb 11, 2005 3:39 Post subject: Re: spelling |
|
|
Lanthar D'Alton wrote: | sorry about that dguntner... If it's any consolation, Jeroen spelled my name with an E when he credited me for writing the system... |
Not a problem.
Quote: |
I don't know if his solves that... but I do think it runs on it's own. |
Not entirely sure what you're referring to there. If you're talking about the Linux nwnx_speech.so plugin for NWNX, no it doesn't run as a seperate process. It's a shared object library that's running as a plugin, but for it to access the network card, it has to run with root privileges. Because of the way NWNX hooks into the nwserver application, that means that IT needs to run as root as well. I know your Windows version of Talus runs as a seperate listener program, with a NWNX plugin that talks to the listener. But that isn't an option for us Linux-lovers.
Quote: |
Oh, and I have my own SetApp command in my scripts... but I just use numbers... no sense using inefficient string compares when I can just check the list... plus it allows use of cep and stuff too. |
By that, you mean set appearance? How do you use them? And where does one get a list of what numbers mean what things?
--Dave |
|
Back to top |
|
|
Lanthar D'Alton
Joined: 10 Feb 2005 Posts: 100
|
Posted: Fri Feb 11, 2005 6:50 Post subject: SetAppearance |
|
|
uhmm...
http://lanthar.dyndsl.com/appearances.html
http://lanthar.dyndsl.com/cep_appearances.html
tada!
That's cep1.0 though... I need to add in the new ones. Oh well.
To get the value of any bioware constant, edit nwn\data\x2_scripts.bif in notepad, and do a search for ITEM_PROPERTY...
that will jump you into the middle of them.
-Lanthar
(note : feel free to add me on icq or aim to ask things any time... this goes for anyone) |
|
Back to top |
|
|
JeroenB
Joined: 31 Dec 2004 Posts: 228 Location: Netherlands
|
Posted: Fri Feb 11, 2005 10:11 Post subject: Re: spelling |
|
|
Lanthar D'Alton wrote: | sorry about that dguntner... If it's any consolation, Jeroen spelled my name with an E when he credited me for writing the system... |
Sorry about that Where exactly was this? Then I will rectify it immediately.
Further I will put my developments on the speech plugin on hold and will wait for you to finish your project. |
|
Back to top |
|
|
Lanthar D'Alton
Joined: 10 Feb 2005 Posts: 100
|
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Fri Feb 11, 2005 23:31 Post subject: Re: SetAppearance |
|
|
Thanks. Although I'm still not sure how one goes about invoking your set appearance stuff. Guess I'll have to dig through the scripts more....
Quote: |
To get the value of any bioware constant, edit nwn\data\x2_scripts.bif in notepad, and do a search for ITEM_PROPERTY...
that will jump you into the middle of them. |
When I try to edit with notepad, it just seems to hang and I have to kill it with the task manager. When I try to edit it with wordpad, all I get is a bunch of binary looking jibberish....
--Dave |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Fri Feb 11, 2005 23:34 Post subject: Re: spelling |
|
|
JeroenB wrote: | Further I will put my developments on the speech plugin on hold and will wait for you to finish your project. |
If this is the case, then I have to ask Lanthar: Can you find out from the person who you said was doing the Linux port work for you when he's going to be releasing it? I'm interested in it, particularly if it's going to get rid of the need for a MySQL table to communicate between the plugin and the module, and especially if it's going to be something that doesn't require you to run the nwserver application as root in order to make the plugin work.
--Dave |
|
Back to top |
|
|
Grinning Fool
Joined: 12 Feb 2005 Posts: 264
|
Posted: Sat Feb 12, 2005 8:38 Post subject: |
|
|
Quote: |
To get the value of any bioware constant, edit nwn\data\x2_scripts.bif in notepad, and do a search for ITEM_PROPERTY...
that will jump you into the middle of them. |
If you open up the bioware script file 'nwscript' in-game, all of the constants and function prototypes are in there.
Quote: | If this is the case, then I have to ask Lanthar: Can you find out from the person who you said was doing the Linux port work for you when he's going to be releasing it? I'm interested in it, particularly if it's going to get rid of the need for a MySQL table to communicate between the plugin and the module, and especially if it's going to be something that doesn't require you to run the nwserver application as root in order to make the plugin work. |
Well. Um. I guess that's me. Hi. Currently, I have it working as a standalone executable. Uses the nwn_speech table, with enhancements that Lanthar may have referenced earlier. (Bear with me, haven't actually read the full thread yet).
The executable must be started as root, but then switches over to a 'safe' userid once it begins listening.
Gave it some thought, and what I figure to do is this:
- Keep the listener separate, but allow a 'nwnx mode' parameter.
- Create an nwnx plugin that 'talks' to the executable via pipe or other IPC.
- If running in 'nwnx mode', the executable will cache speech in a stack, and allow the plugin to 'pop' entries from off the stack.
This will allow it to work with NWNX, not require the database access, and not require NW server to run as root. Thoughts? |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Sat Feb 12, 2005 8:51 Post subject: |
|
|
[quote="Grinning Fool"] Quote: | Well. Um. I guess that's me. Hi. |
Hi, nice to meet ya.
Quote: |
Currently, I have it working as a standalone executable. Uses the nwn_speech table, with enhancements that Lanthar may have referenced earlier. (Bear with me, haven't actually read the full thread yet).
The executable must be started as root, but then switches over to a 'safe' userid once it begins listening.
Gave it some thought, and what I figure to do is this:
- Keep the listener separate, but allow a 'nwnx mode' parameter.
- Create an nwnx plugin that 'talks' to the executable via pipe or other IPC.
- If running in 'nwnx mode', the executable will cache speech in a stack, and allow the plugin to 'pop' entries from off the stack.
This will allow it to work with NWNX, not require the database access, and not require NW server to run as root. Thoughts? |
For myself, my thoughts are that I like it. What enhancements that Lanthar may have referenced earlier are you speaking of?
Here's to hoping that it will be ready soon!
--Dave |
|
Back to top |
|
|
Grinning Fool
Joined: 12 Feb 2005 Posts: 264
|
Posted: Sat Feb 12, 2005 9:00 Post subject: |
|
|
Quote: | hat enhancements that Lanthar may have referenced earlier are you speaking of? |
Actually, looks like he mentioned them in the thread for the windows version.
Using the self-tell (/o) command to parse emotes, commands, languages, speaking through famliars, npcs, etc. As he mentioned, it's running on his server (65.68.156.73:5121) for a preview. The linux version runs on mine, (athanasia.dragonwell.org:5121) but I have haks required, and the new stuff works the same on both platforms.
Oh! Right, as far as when... let's see what the weekend brings. No guarantees, depends on my schedule -- and the backlog of stuff I've got to get done for my server. |
|
Back to top |
|
|
dguntner
Joined: 31 Dec 2004 Posts: 116
|
Posted: Sat Feb 12, 2005 19:00 Post subject: |
|
|
Grinning Fool wrote: | The executable must be started as root, but then switches over to a 'safe' userid once it begins listening.
Gave it some thought, and what I figure to do is this:
- Keep the listener separate, but allow a 'nwnx mode' parameter.
- Create an nwnx plugin that 'talks' to the executable via pipe or other IPC.
- If running in 'nwnx mode', the executable will cache speech in a stack, and allow the plugin to 'pop' entries from off the stack.
This will allow it to work with NWNX, not require the database access, and not require NW server to run as root. Thoughts? |
Actually, I've had a few thoughts on this, and figured it couldn't hurt to make the suggestion here.
What I'd like to see, if it's doable (I think it should be), is to have the executable drop back to the user id that started it in the first place. I have a seperate "nwuser" user on my machine that the server application runs as (well, it used to until the current plugin which requires root, but you get the idea). What would be nice would be to have it somehow detect which user started it (being a SUID root program so it's starting as root), it could then bind to the network and drop back to "nwuser" (in this case).
If it drops back to the same user id as the user that started it initially, that would make it easy to kill when not needed by that user. Have it write its pid to a file in the current directory to make this even easier. If these things can be done, then all you really need in your startup script would be something vaguely like:
./taluslistener
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/mysql
export LD_PRELOAD=./nwnx2.so
./nwserver -module "$mod" "$@"
unset LD_PRELOAD
kill `cat taluslistener.pid`
(The reason I have a unset LD_PRELOAD there is because it's actually inside of a while loop to restart nwserver if it crashes, and I found that not unsetting it was causing me problems, in case you were wondering.)
Anyway, you get the idea. If something like that can be done, it would be great!
Looking forward to it, in whatever form it takes.
--Dave |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|