Login
User Name:

Password:



Register
Forgot your password?
Vote for Us!
auth_update crash
Dec 23, 2017, 10:15 pm
By Remcon
check_tumble
Dec 18, 2017, 7:21 pm
By Remcon
parse description bug
Dec 15, 2017, 10:08 pm
By Remcon
Couple bugs
Dec 12, 2017, 5:42 pm
By Remcon
Bug in disarm( )
Nov 12, 2017, 6:54 pm
By GatewaySysop
LoP 1.46
Author: Remcon
Submitted by: Remcon
LOP 1.45
Author: Remcon
Submitted by: Remcon
LOP Heroes Edition
Author: Vladaar
Submitted by: Vladaar
Heroes sound extras
Author: Vladaar
Submitted by: Vladaar
6Dragons 4.3
Author: Vladaar
Submitted by: Vladaar
Users Online
CommonCrawl, Yandex

Members: 0
Guests: 8
Stats
Files
Topics
Posts
Members
Newest Member
478
3,708
19,242
612
Jacki72H
Today's Birthdays
There are no member birthdays today.
Related Links
» SmaugMuds.org » General » General Discussions » Add dynamic command support t...
Forum Rules | Mark all | Recent Posts
Add dynamic command support to FUSS? (13 Votes)
Yes  69.23% - 9 votes

No  30.77% - 4 votes

Add dynamic command support to FUSS?
< Newer Topic :: Older Topic >

Pages:<< prev 1, 2, 3 next >>
Post is unread #21 Dec 3, 2005, 6:12 pm
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts367
JoinedMar 7, 2005

Stan said:

I would love to see dynamic command support added.
I usually play with a different codebase every 2 weeks, and I do not even run the game til I have dynamic command support installed.


Seems like a rather limiting thing to do, but to each his own. :wink:
       
Post is unread #22 Dec 3, 2005, 7:06 pm
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,868
JoinedJul 26, 2005

Don't think conner has had a chance to work on it again yet. I do know that he tried the download of smaugfuss with it already installed and it worked fine for him.
       
Post is unread #23 Dec 3, 2005, 10:05 pm
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts367
JoinedMar 7, 2005

Remcon said:

Don't think conner has had a chance to work on it again yet. I do know that he tried the download of smaugfuss with it already installed and it worked fine for him.


Hmm. Maybe this means there's something omitted or incorrect in the snippet somehow? That or maybe a reliance on something that was changed in FUSS along the lines but the snippet is assuming all users have in place? Just an idea.

       
Post is unread #24 Dec 3, 2005, 11:27 pm
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

As far as I know Remcon followed the directions as specified in the current snippet file. This may have arrived at a point where examining your source code would be the only way we could figure out what happened.
       
Post is unread #25 Dec 4, 2005, 12:19 am
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

GatewaySysop said:

I'm still wondering what the problem was. Both Conner and I seem to have had an almost identical situation going on and that makes me wonder if its not just something on my end. Did he ever figure this problem out? Whatever his issue is, its probably related to mine.

As I said, installed it twice, no dice. Haven't had time to go back to do it again (still don't) but there must be something afoot here, no? I'm obviously not the only person with the same problem.

Anyway, whatever happens to the base package really doesn't matter to me since I've been modifying mine for ages and will continue to do so (at least I hope to). If/when the issue is resolved and we know what the problem is/was I would certainly like to get back into alignment with the stock package and upgrade, and hopefully at that time it'll all work out.

Do whatever you think is best Samson. The community owes you big time for all the work you've put into the FUSS packages and either way you go I'm sure we're all behind you.

Keep up the good work, wherever it leads.


Just to respond to your pondering, ope, I never did resolve it for much the same reasons, just haven't had the time to try it again, but eventually will, and if I figure out what was wrong (I'll have Remcon help me through the next go around) I'll be sure to post for your benefit (and that of anyone else who happens to run into that issue).

Overall, I share this sentiment, Samson, if you decide to do it, I'll prolly add it to mine too to keep closer in sync, but either way is really your call because ultimately this is more your baby than any one elses.. and my code is so modified at this point that I can't really see what goes into the official package or not impacting my mud more than as a guideline of what sort of fixes I need to double check my own code for. Regardless of the desicion you reach on this, as GatewaySysop so well stated, I'm sure we're all behind you. :)
       
Post is unread #26 Dec 4, 2005, 12:22 am
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

Samson said:

As far as I know Remcon followed the directions as specified in the current snippet file. This may have arrived at a point where examining your source code would be the only way we could figure out what happened.


As I just posted, Remcon is correct, I haven't had a chance to try it again, but I did try the package that already had it installed and it worked fine. On the other hand, I think Remcon sort of ad-libbed is way through the Makefile in that package, but I couldn't address any of the rest of the snippet directions.. point is, to the best of my knowledge, yes, he followed the snippet instructions, but maybe not quite exactly. *shrug*
       
Post is unread #27 Dec 4, 2005, 6:58 am
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,868
JoinedJul 26, 2005

Followed every insturction in the snippet to a "t" except the Makefile part. Not sure why/if the makefile would have made much of a difference I went with I think more like how AFKmud has its Makefile for dsylm.
       
Post is unread #28 Dec 4, 2005, 1:36 pm
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

Remcon said:

Followed every insturction in the snippet to a "t" except the Makefile part. Not sure why/if the makefile would have made much of a difference I went with I think more like how AFKmud has its Makefile for dsylm.


Hmm, in that case, I guess I'll just have to try it again to see if the code gods will smile upon me this time through. *shrug*

But I really don't know that I'm ready to hit it right now, I've got a trip coming up in a week and would hate to leave my codebase in an unstable state for the ten days I'm going to be gone.. I'll try this one again after xmas when I'm back and can afford to go sleepless to work through things if need be, but I'll definately have Remcon on standby when I do try it..

Who knows, maybe the problem was something in the makefile if that's the only variation from the snippet, afterall, the predone package did work, and following the snippet I had a couple of compiler errors/warnings that Samson helped me clean up so that it compiled cleanly but still got a log full of commands not found in the symbols table...
       
Post is unread #29 Dec 4, 2005, 6:55 pm
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts367
JoinedMar 7, 2005

Remcon said:

Followed every insturction in the snippet to a "t" except the Makefile part. Not sure why/if the makefile would have made much of a difference I went with I think more like how AFKmud has its Makefile for dsylm.


For what it's worth, I've tried using exactly the makefile setup used in the FUSS "test" package that already has dlsym reportedly working in it. No difference made at all. Again, this leads me to believe something is missing in the snippet, or incorrect in my version of FUSS because the snippet is assuming a more recent base code than I have.

I really do doubt that its the makefile at this point. Unfortunately I'm in the same boat as you and not in a position to burn a few hours re-installing this right now. I barely have time for the small things, too much RL crap right now. :thinking:

       
Post is unread #30 Dec 4, 2005, 7:49 pm
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

So the differences in the makefile didn't do it. *sigh* ...I was really kind of hoping that would be the answer, mainly because it's the quick easy solution, but when I do get back from my trip and try it again, maybe having Remcon at my back will get it resolved, or maybe I'll get lucky and it'll just work and we'll never know what the problem actually was. *shrug*
       
Post is unread #31 Dec 12, 2005, 2:20 pm
Go to the top of the page
Go to the bottom of the page

Noplex
Apprentice
GroupMembers
Posts62
JoinedAug 30, 2005

You could always have a typedef for Windows boxes, I'll post up some code when I get home, but I have a few macros defined for use with Linux DLL systems. You would use the Windows method, GetProcAddress to look up for the function address and then return the handle. The only difference is that you may need to write a wrapper function to use because of Windows use of the specalized HINSTANCE objects.

I was able to get the same wrapper working for both Windows and Unix for use with DLLs and .SO (Unix DLLs). Not too hard, and it would break your incompadibility issues.
       
Post is unread #32 Dec 12, 2005, 5:10 pm
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

But, in my case at least, I'm running on Fedora Core 3, not Windows.
       
Post is unread #33 Dec 13, 2005, 5:54 am
Go to the top of the page
Go to the bottom of the page

Noplex
Apprentice
GroupMembers
Posts62
JoinedAug 30, 2005

I thought you already had it working? Didn't Samson have that done awhile ago in AFK, shouldn't be that hard to move over, but probably just more tedious than anything.
       
Post is unread #34 Dec 13, 2005, 6:23 am
Go to the top of the page
Go to the bottom of the page

Conner
Sorcerer
GroupMembers
Posts870
JoinedMay 8, 2005

Yes, I believe that Samson oes already have it in AFK, but I'm running SmaugFUSS. Nope, I don't have dynamic command support installed yet, though I'm planning on trying to install it again with Remcon's assistance in about two weeks (I'm leaving in about an hour for a trip and will be gone most of the next two weeks) and will hopefully be able to then post what we found worked/didn't work so that the issue can be resolved for others.. course, I can easily see it being a case of third try being the charm and never really knowing what had gone wrong the first two times. *shrug*

Anyway, happy holidays to one and all, I may check in, but more likely, I'll see you guys in about two weeks.
       
Post is unread #35 Jan 15, 2006, 10:45 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

Dormant topic, but I am planning to go ahead and incorporate the dlsym support in the FUSS packages, starting with the SmaugFUSS package. There are enough downloads of the snippet and enough email requests now since this topic began that I feel it warrants being part of the standard packages.
       
Post is unread #36 Jan 15, 2006, 11:07 am
Go to the top of the page
Go to the bottom of the page

Noplex
Apprentice
GroupMembers
Posts62
JoinedAug 30, 2005

I think someone mentioned somewhere about a problem doing this in C++? When you export the symbols you need to use:
extern "C" __declspec(dllexport)

I think the similar should work for GCC as well (extern "C' that is). It should force the symbols to be exported in the C fashion rather than the jumbled C++ symbols.
       
Post is unread #37 Jan 15, 2006, 11:16 am
Go to the top of the page
Go to the bottom of the page

Samson
Black Hand
GroupAdministrators
Posts3,639
JoinedJan 1, 2002

SmaugFUSS is not compiled as C++ but that extern statement looks interesting. Where would I stick that in order to keep things from breaking should someone want to compile as C++?
       
Post is unread #38 Jan 15, 2006, 6:15 pm   Last edited Jan 15, 2006, 6:24 pm by Noplex
Go to the top of the page
Go to the bottom of the page

Noplex
Apprentice
GroupMembers
Posts62
JoinedAug 30, 2005

I haven't looked into the actual code, but in Windows that is placed before the function that you're going to be exporting. I believe it is probably the same, if not similar, using dlsym is it not? Here is an example:
extern "C" __declspec(dllexport) void MainThread( void );
extern "C" __declspec(dllexport) void MainThread( void )
{
    // ...
}


But you could do the following to only happen when using C++:
#ifdef _cplusplus
extern "C" {
#endif
// block of code
#ifdef _cplusplus
}
#endif
       
Post is unread #39 Jan 15, 2006, 6:27 pm
Go to the top of the page
Go to the bottom of the page

Noplex
Apprentice
GroupMembers
Posts62
JoinedAug 30, 2005

Just to stir something up though, if you wanted to be really sneaky, you could implement a plugin system that utilizes the dlopen, dlclose, dlsym and perform little blocks of code by the same fashion as above. Basically creating yourself a nifty little LP-like C/C++ scripting system.
       
Post is unread #40 Feb 15, 2006, 3:43 am
Go to the top of the page
Go to the bottom of the page

enderandrew

GroupMembers
Posts8
JoinedFeb 8, 2006

Was this added to the FUSS codebases and if so, which version?

There are several different versions/types of dynamic command snippets.
       
Pages:<< prev 1, 2, 3 next >>