Top Mud Sites Forum Return to TopMudSites.com
Go Back   Top Mud Sites Forum > MUD Promotions and Events > Advertising for Staff
Click here to Register

Reply
 
Thread Tools
Old 02-23-2008, 03:12 PM   #1
Znr4123
New Member
 
Join Date: Feb 2008
Location: Iowa
Posts: 8
Znr4123 is on a distinguished road
Looking for builders and administrators

For the last few years a few of my friends and I have been creating a mud from the ground up. I believe we've got a very configurable and very powerfull code base. It is almost ready for real use. For some of the features

- Trigger system, so intended to be quest based
- A battle stratagy system for mobiles
- Players can select there default attack (weapon or certain spells or even a skill)
- Shapeshifting - mobiles and players able to change shape, enabeling an interesting interplay.
- A very powerull OLC system. Anything you can do off line can be accomplished online. And in some cases you can do a lot more online.
- Along the lines of the OLC system, it has a very powerfull security system. Able to lock any player out of just about anything. Right down to disabeling them from changing there description.

The code is something that myself, or a few of my friends can assist me with. What I need assistance in is the artistic part of the mud. New areas constructed, or old favorites enhanced. We need people to assist in policing the mud as well after it is implemented.

If your wanting to know more, or are interested, you can write me at znr4123@aemail4u.com

Last edited by Znr4123 : 02-23-2008 at 03:22 PM. Reason: Wasn't finished.
Znr4123 is offline   Reply With Quote
Old 02-23-2008, 03:54 PM   #2
Ide
Senior Member
 
Join Date: Feb 2006
Location: Seattle
Posts: 361
Ide will become famous soon enoughIde will become famous soon enough
Re: Looking for builders and administrators

Could you talk a little bit more about the OLC? Is it command based, menu based, what are the options, etcetera. Also, how about an example of the trigger system?
Ide is offline   Reply With Quote
Old 02-23-2008, 05:11 PM   #3
Znr4123
New Member
 
Join Date: Feb 2008
Location: Iowa
Posts: 8
Znr4123 is on a distinguished road
Re: Looking for builders and administrators

Certainly, This is a basic overview. If you want even more specifics... please feel free to email. Again, znr4123@aemail4u.com

About the OLC, it is command based right now. We have plans to make a graphical creation/edit system... but unfortunately that is not complete yet. Though the intention is to have one complete for builders in the near future. We just think that it's nessarry to build that team first. Editors are a simple matter. For now, I've put a great deal of effor to make the command line editor feature as painless as possible (it's my pet project). It is also a permission based system. So, the greater rank you have (newbie, god, creator, etc..) the more capabilities you have. At the command line you can issue quick change commands such as:

"change mobile 3005 level 10"

That will change the mobiles level with the vnum of 3005. However, the editor is a lot more fun (I gave it an attitude). To get into the editor:

"edit mobile 3005"

Now you'll be editing that specific mobile. To create a mobile (creation puts you in an editing state):

"create mobile [some area]"

Then each mobiles properties are basically commands. In this state, no other character can interact with you, except messaging. You remain in the editor until you decide to exit, or you can "boot" a weaker person off the editor if they are causing trouble or are editing something you need to. You can also issue regular commands... but limited.

"level 10"

That will change the mobiles level to level 10. Just issuing "level", as example, will display the current level. There are other commands like "list" in the editor. So you can "list" out all properties you have permission to see or change:

"list change" or "list show" or "list [some property]"

If you list a property it will show things like available flags, or a range of valid values. The system does check valid ranges automatically as well. Just about everything can be changed on the fly in the game... As an implementer, I can create a player from scratch with the OLC, in just a few minutes, and typically in less time then to edit a text file. I can make "quick changes" to players or edit them even if they are NOT online. Editing a characters text is pretty simple to. Maybe you created a mobile, but realized you misspelled something. You can simply just replace the misspelled word instead of retyping the text. As far as improvements.... All the parts are there to do this... we just have to integrate it... but eventually we want this to work:

"change all mobile strength to 1o if (((level > 5 && level < 25) || str < 5) && name != "thief")"

Now about the trigger system.... This is a little less developed... but still very powerful. Several actions are logged, and can trigger a mobile's behavior. Some trigger examples are movement into and out of a room, bribing them, object interaction triggers, talking to the mobile, issuing a social on or near a mobile, and a special "ability" trigger. For the ability trigger, in theory, a mobile could be found and become part of your party once found. If your character issues an "ability" command, the mobile will do it's thing. Maybe cast "cure critical" on you or maybe give you something (as generic examples). This can be usefull for pets as well.

Now the mud programs are a language all there own, and pretty much anything a player can do, a mob can be programmed to do. Almost all of the old ROM/DIKU special_* routines can be redone as mud programs (although we did have difficulty figuring out how to get the mayor in there cleanly. Not saying it can't be done, just less fun).

Some simple examples, A guard could be programed such that if you attempt to enter a room it's guarding, the mobile will stop you. They could either fight you, or just say "your not allowed in there". You could in theory also program scripted seens. Have two mobiles act out a play for a character who pays them money. The banker, changer, and shops are being piped through the mud programs (though the shops are still not quite finished.... but very close).

Let me know if you have any other questions.

Last edited by Znr4123 : 02-23-2008 at 09:22 PM. Reason: commenting on graphical editor
Znr4123 is offline   Reply With Quote
Old 02-23-2008, 11:26 PM   #4
Ide
Senior Member
 
Join Date: Feb 2006
Location: Seattle
Posts: 361
Ide will become famous soon enoughIde will become famous soon enough
Re: Looking for builders and administrators

Quote:
Originally Posted by Znr4123 View Post
Now the mud programs are a language all there own, and pretty much anything a player can do, a mob can be programmed to do. Almost all of the old ROM/DIKU special_* routines can be redone as mud programs (although we did have difficulty figuring out how to get the mayor in there cleanly. Not saying it can't be done, just less fun).

Some simple examples, A guard could be programed such that if you attempt to enter a room it's guarding, the mobile will stop you. They could either fight you, or just say "your not allowed in there". You could in theory also program scripted seens. Have two mobiles act out a play for a character who pays them money. The banker, changer, and shops are being piped through the mud programs (though the shops are still not quite finished.... but very close).

Let me know if you have any other questions.

Thanks, that is exactly the kind of detail I was looking for.

I do have another question. When you say mud programs, this sounds like a scripting language, like LPC. It sounds like your mud uses an interpreted language to create objects at run-time but I'm not sure. Are you saying that the mud uses a scripting language, and if so is this something you created, or is it an embedded language, and so on? What is this language like?
Ide is offline   Reply With Quote
Old 02-24-2008, 11:21 AM   #5
Znr4123
New Member
 
Join Date: Feb 2008
Location: Iowa
Posts: 8
Znr4123 is on a distinguished road
Re: Looking for builders and administrators

Your right. It is a scripted language. But I use the term language loosely, as each command is really just an index into a table. It is something we created. I don't believe it's similar to LPC.... but I have yet to work much with LPC. So my mind is a little shaky on that. Here is a sample from earlier on testing:

SetVic(PC)
If HasVicTarg
Remain 1 to 1
Else
Return Fail
Endif
If affected(Mob)
Ornot awake(Mob)
Orif Fighting(Mob)
Return Fail
Endif
VicLoop
If pc(Victim)
Andif lvstage(Victim) < Hero
Andif visible(Victim)
Andif lvcap(Mob,Vic) >= 5
NextVic
Else
RemoveVic
Endif
EndLoop
Kill(ListMember)

This is a type of aggressive mob routine. It is triggered by any character comming into the room. The first line obtains all PC's in the room. The first if block escapes the behavior routine (BFUNC) if there are no PC's. The second if block does some basic checking on the mob to see if it should be able to attack. The VICLOOP section loops through the list of PC's obtained from the first line of the BFUNC. The loop eliminates PC's the mob isn't interested in. The "kill(ListMember)" line selects a random PC and attacks. Assuming there is one left. Otherwise it just does nothing. The third instruction "remain". That command keeps the BFUNC in active memory. So the mobile will come back to this routine later and "execute" it again. The numbers are time ranges, low/high values. This isn't really my section of code, but I believe it can be used to randomize when the routine will be activated again. In this sample though, we want it to always come back at the same time. And we want a quick reaction.

The neat thing (we think) is that since everything is mostly table lookup, we are really not adding that much to the CPU load then we would if we put in actual code. In a stock ROM/DIKU style mud, if memory serves, each mob in the mud would execute it's special_* routine every time through the MOBACT. This approach pretty much eliminates that overhead. At the time, we were testing on a Linux box. We like to test on older systems occassionally, so it was a P120. Our mud code running with the old ROM/DIKU special_* type system was hitting about 4% CPU time. With this scripted language approach, we had trouble getting the mud code to break 3%. Most of the time it sat on 2% CPU time or less. This was a test with around 10 users, each issuing 4 psudo-random commands/second. And a full complement of 60 areas. We also tested this with similar constrants, but adding 25 mobs into one room with all 10 players. Very similar results. Honestly, it surprised us a little. We thought it would add overhead with typical use (Though in reality it does). We just weren't too worried about it since nowadays computers are so fast.
Znr4123 is offline   Reply With Quote
Old 02-24-2008, 02:15 PM   #6
Ide
Senior Member
 
Join Date: Feb 2006
Location: Seattle
Posts: 361
Ide will become famous soon enoughIde will become famous soon enough
Re: Looking for builders and administrators

Thanks again, interesting stuff. I don't know if you've looked at ROM's MobProgs or Circle's Death Gate scripts (DG scripts) but it would be educational to compare their features with what you have. Scripting is just awesome for building.
Ide is offline   Reply With Quote
Old 02-24-2008, 09:14 PM   #7
Znr4123
New Member
 
Join Date: Feb 2008
Location: Iowa
Posts: 8
Znr4123 is on a distinguished road
Re: Looking for builders and administrators

Yeah, not a problem. We just love talking about these things. It was difficult to keep my reply's so short. I'm the long winded one of the bunch. =) Actually, we did get a chance to evaluate other scripting aproaches shortly there after we first tested ours. There are some similarities with ROMs more so then DG. If memory serves, there were very little "looping" approaches in ROMs mud progs. At least, compared to our approach. Nesting issues are a little different, and we have a lot of commands that can work on a group && individually. We have a few errors and bugs to work out though. Honestly, until recently it was quite cumbersome to write a BFUNC. Either in text format or in the editor. It almost made us abandon the whole thing, or at least wait until the graphical editor was on board. We are currently testing out a fix for that. Which is working nicely so far. Another thing we've got to fix/figure out is that we still allow a possibility for infinate loops, and really when we designed the thing, we didn't handle NULL cases very well. Where as Mobprog seemed to handle those situations better. But it's development process.
Znr4123 is offline   Reply With Quote
Reply


Thread Tools


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off

All times are GMT -4. The time now is 06:07 AM.


Powered by vBulletin® Version 3.6.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Style based on a design by Essilor
Copyright Top Mud Sites.com 2014