Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - parham

Pages: [1]
General / Help on choosing a mudlib
« on: June 03, 2010, 10:55:48 AM »
Hi there,

As some of you might know (those who pay attention to the DS channel and such), I have been popping in and out of LPC development again and again. After a good deal of thinking, I have found what the problem is. It is a question that might be too complicated, or might be just asking for too much, so I'll ask, and leave you to judge and to be so kind as to help me along.

I and a friend are planning on starting to program a mud. However, what we have done that has stopped us from going further every time, is that we try to dig too deep (E.G. add new  commands while just learning the LPC language, trying to change skills, remove all races so you can be only a human, trying to change sign up questions, etc). Noting that we are both blind (yes, we can't see), you can imagine that we have no love for writing descriptions that are mainly visual. So, I have two questions.

1. Since we really love creating a mud, what do you suggest we do; start our own, or join the staff of another mud?

2. If you answered "start a mud of your own", what mudlib do you suggest? I find DS wonderful, both in terms of support and examples and such, and I do not feel that bad about verbs these days (due to having learned TADS, Text Adventure Development System which offers a similar system). However, what bothers me is the large set of stuff I might never even use at all (E.G. spells, skills, classes, or races), or would probably change (E.G. add new skills, remove existing ones, change the casting system so that, say, there is a 3-second delay between closing your eyes and the spell working, etc). Therefore, seeing that I need a mudlib with the support DS offers, what do you suggest? I am not that good in LPC yet to say whether or not DS allows these stuff being changed, so I do not offer an opinion. I just am trying not to be bogged down by all these features and get to things when I need to change them. That reminds me of the third question (I said two, but an exception? Please?):

3. In case you answered "start a mud of your own" to the first question, where do you suggest we start? Add commands? Modify mud-related stuff (E.G. skills, races, combat, spells)? Since as I said, we have no liking towards descriptions, we're planning on doing the kind of things I talked about above (I know, it requires much more learning and hard work, but we're willing to put the effort into it).

Thank you, everyone. And I hope finally we can contribute something to the wonderful LPMud community.

Dead Souls Support / QCS
« on: September 13, 2008, 10:38:53 AM »
Hi everyone,
Since I'm using Skylib, I was wondering if it's possible to integrate QCS into it? I don't know how much different things it is using from Skylib, but I was wondering if it's even possible so I would go and play with it and see what I can do. Hehe.
Thanks very much!

General / What are classes?
« on: September 10, 2008, 01:49:28 AM »
I'm sorry to have been posting it in the general forum, but I'm really not sure which part it should go to. I'm not sure if the class datatype is an LPC thing or not, but I seem to recall seeing it in some code somewhere and just got reminded to ask. I searched in the LPC manual and found nothing mentioned about classes, but yet again, I remember reading something somewhere about classes that I didn't understand at the time.
So can someone please tell me what this mysterious thing is, or if even it exists or it's some part of a fantasy woven by my mind in a night of disturbing dreams? :D

Skylib Stuff / A command overriding the socials?
« on: September 09, 2008, 03:31:17 AM »
I'm on a mud with the skylib library, and the driver is FluffOS, so the method of adding a command is:
Code: [Select]
add_command(pick", "<direct:object> {with|using} <indirect:me>");Now, that's not important, but what I was wondering is that how I can make the commands override socials. Like let's say we have an agree command. On this mud if I add that command, both that command and the social would get executed.
Is there a way to prevent the happening of the social?

General / $ Sign Prefixed Stuff
« on: September 08, 2008, 05:48:01 AM »
Hi again,
I was wondering if there is a list of things you can put after a $ sign (like $s, and etc), or what is their true technical name? I'm not even sure if it's an LPC feature, since I don't remember seeing it in the LPC manual.
And, would someone please tell me, how many times this function would run if the A array and the B array both have four elements, or would this even work?
string *C = (A, (: aFunction($1, $2) :), B);
If not, can someone please explain what gets assigned to $2, $3, and $4? I have asked someone, and I know that $1 refers (in functions that do something with arrays) to the array element. Another person has said that there are four $# thinggies, so that makes it $1 to $4. So what are the rest used for?

Skylib Stuff / How Many People Use Skylib Here?
« on: September 06, 2008, 11:22:17 PM »
Hi there!
I was just playing with some libraries and this one seems to be stable too. I was wondering how many people here use it?

Dead Souls Support / A few questions about verbs.
« on: September 05, 2008, 12:01:26 AM »
Hi again,
Here I come with another set of newbie questions hehe.

1) What's the difference between do_whatever and eventWhatever? (I have seen something about it in the manual on the website, but I didn't understand it)

2) For something to happen when something is pushed, we can add an eventPress() function. But how can we tell the driver that this thing can be pushed? In other words, we do have a can_press() check, but how can we also have a can_be_pressed check?

Thanks in advance (so I wouldn't have to waste forum resources by posting a "thanks!" post)

General / Add_action Question
« on: September 03, 2008, 09:16:46 AM »
Hi again!
Since I'm getting great answers to my questions, here is another one! I put this code in a room:
void init(){
add_action("test", "testing");
int test(){
call_out("say", 10, this_player()->getName() + " is testing!", this_player);
call_out("write", 10, "Testing successful!");

What I'm trying to test, along with whether I can make a simple command in a specific room or not, is whether the message can be given to a specific player or not, when it's different from what the rest of the people in the room see.
Thanks, and sorry for taking some forum space and precious time -- couldn't help it!

General / A Problem With Verbs
« on: September 03, 2008, 08:13:13 AM »
Hi again!
Well, I'm using the DS mudlib and I was trying to decipher some verb code, and I got to this part. Verb rules. Now, looking at, let's say, the CAST verb, I get:

SetRules("STR", "STR on OBJ", "STR on STR", "STR on STR of OBJ",
      "STR against STR");
    SetErrorMessage("Cast what spell? On whom?");
Now if I just type CAST, I get:
"Such a command exists, but no default syntax is known."
while I should be getting the message specified. Now, looking at the give verb:
SetRules("LIV WRD WRD", "WRD WRD to LIV", "OBS LIV", "LIV OBS", "OBS to LIV" );
    SetErrorMessage("Give what to whom?");

It all works when I type GIVE. I get the error message specified. Now, these two verbs have no difference when I look at them... is there something small that I'm missing?

Also, let's say I type: "give test to me". I get:
"There is no Test here."

Now if I type CAST TEST:
*Bad argument 1 to call_other()
Expected: string or array or object Got: 0.
Object: /secure/save/creators/p/parham (/lib/magic.c) at line 86
'<fake>' at /secure/save/creators/p/parham (/<driver>) at line 0
'cmdAll' at /secure/save/creators/p/parham (/lib/command.c) at line 141
'do_cast_str' at /verbs/players/cast at line 59
'eventPrepareCast' at /secure/save/creators/p/parham (/lib/magic.c) at line 86
Trace written to /log/runtime

Why does this happen?


General / LPC Tutorial?
« on: July 26, 2008, 04:10:49 AM »
I was wondering if an LPC tutorial exists. The thing is, the manual is nice, but it is not much practical. It tends to discuss the programming concept of LPC, rather than how-to's. For example, a tutorial that I've seen for another code-base would take you, step by step, with explaination of each step, on a tutorial to create an interactive object, and keep adding new things to the object just for demenstration purposes.
Oh and before I get replies like, (No, the LPC manual has a lot of examples)... yes, it does, but not enough. I mean, it's all good to have all this information about the programming, but I'd rather have a tutorial and referense to this manual when I get to programming issues.
So, is there a tutorial somewhere, or does anyone care about mentoring someone like me throughout the first stages of learning?
Thank you very much.

Dead Souls Support / A Few Questions!
« on: June 08, 2008, 02:49:35 AM »
I am a new member to this forum, and wanted to say hi first before I plunged into my string of questions... it's more of an array, really. :D
Well I'm sorry if these sound stupid, but I have made a guard for testing, and want to make you able to push it. So, in the init() function, I put,
add_action("push_guard", ({ "push", "press", "move" }));

No problem with this. But here,

int push_guard() {
write("Some message.\n");
say("Some message.\n");
return 1;

This doesn't work. I mean it gets compiled fine, but it wouldn't deduct the player's health.

My second question is,  where are player files located? Like I don't find a parham.c file...

The third is, should I put eventPush() instead of push_guard()?

The fourth question, why don't we have an environment()->setEnter here, instead?:

        exterior = file_name(environment());
    SetEnter( file_name(this_object()));
    SetExits( (["out": exterior ]) );

The fifth question, how can I make a vehicle with more than one room? For example, suppose we want to have a ship that has a shop in it north of the room you enter. Should I make this ship an area which moves? If yes, how can I group these two rooms together? In other words, how can I have a region of rooms?

The sixth and last question, how can I make an infinite loop? Suppose   we have a train/ship or anything which travels from place to place every N seconds. I would want to have,

(beginning of the loop)
if this object is in this room,
wait N seconds and call the function which takes care of transporting
else, wait N seconds and call another function which takes care of getting back to the first place
(End of the loop)

Thanks a bunch.

Pages: [1]