Log on:
Powered by Elgg

Darwin :: Blog

December 19, 2007

When it comes to coding in new features to our mud, I've pretty much stopped doing that. Instead, I've been working with Lua and scripting a lot of things or extending the mud's functions and variables into the Lua environment so they can be accessed via scripts.

 The way Lua works in the C code seemed a bit weird to me at first, but I think I've gotten my mind wrapped around it well enough now.

Using a modified version of the call_va function from the Programming in Lua book, I've been able to strip out some hard-coded things from our random equipment code and placed it into Lua scripts. This has made it much eaiser to add in new varieties of names and affects for random equipment.

I've also extended the functionality of several of the item and mob invoking functions that were provided with Nick Gammon's Lua code for SmaugFUSS. (I had to do some slight modifications to this before I started since my code was based in Smaug 1.4a.) The extended versions allow scripts to generate new items instead of copies of indexed items and new mobs in the same manner. The scripts allow for adding of flags and various other settings assciated with item or npc. I plan to use these to create more robust tasks (again, using Nick Gammon's Lua task system, which is a questing system.)

Also added was the ability to award skills to, or remove from,  a character. Compensation is given to the character in the form of practices if the skill is removed. The number of practices depends on how well that skill was learned by that character.

I've been planning to replace the whole newbie training area with a set of tutorial-like tasks to teach new players the ropes. The goal is to make a new character's experience fun as well as teach them necessary things and reward them with items, equipment or skills designed for their class (or class combinations), race and/or gender.

My next projects with Lua is to create a generic skill handler similar to the smaug_spell function, saving and loading of items and mobs, and to create virtual rooms with linked exits.

Well, I think I better get back to it. 

Keywords: Lua, Smaug

Posted by Darwin | 2 comment(s)

October 24, 2007

I use Google as my homepage, customized with several of their little gadgets, one of which is a set of news articles related to science and technology. So last week an article appeared that caught my eye. I don't remember what it said, but it was about Ubuntu's Gutsy Gibbon (7.10). After I read the article, I followed the links to the main Ubuntu site and downloaded the live cd suited for my cpu.

I had tried out a few Linux distros before. They mostly seemed about the same and most of them had a few pieces of hardware that weren't supported at the time for one reason or another. 

I continued to read the features that were available, looked over several screenshots and decided to burn the cd and check it out for myself.

I rebooted the computer and the self-boot disc took over and booted straight into Ubuntu. Since there wasn't any users set up, it booted right into the OS. It had a nice clean look to it. It comes with Firefox installed with quite a few extentions available from the disc. Installing new components, thankfully, doesn't require a reboot, which is a nice change from Windows. 

There are a few visual effects that are available to machines that are Vista-capable. Having a Vista-capable machine, I decided to activate these effects. Some of these effects included sticky windows, which are windows that stick to the edges of the screen and stretch and bend when you drag them away, various transparencies, animation effects on popup texts that kind of *boing* into place, alt+tab live window previews, and my favorite, the windows-key+tab window switching, which shows the open windows in a 3D view and flip as you tab through them.

I installed Wine and copied over my MUSHclient directory from the Windows partition and it started up as expected. The fonts had to be reset as the default fonts through Wine didn't quite look as good as what I was used to seeing. After fixing up a few other settings, MUSHclient works just as well in Wine as it does in Windows. There are some oddities with it though; the command line is black and text typed into it appears in an Arial-like font despite resetting the font settings and is written in black but highlighted in white. The built-in notepad also has a black background. I haven't tried using the notepad so I'm not certain if it has the same font settings as the command line does.

Also installed is the Pigeon instant messenger which makes a fine replacement for Trillian. Although, if you have multiple accounts on the same messenger service, it will import all contacts for each account multiple times (once for each account.) So if you have three AIM accounts, like I do, then each AIM contact will appear 3 times in your buddy list. A little pruning and this is fine too. It also allowed me to get rid of all those AIM bots that the AIM network insists I have on my buddy list.

The only real problems I've had with Ubuntu 7.10 is that it has completely locked up on me twice, both times while using Firefox. I'm not certain if that's related to the lockup or not, but that's what I was using at the time of the lockup.

Other than that, I've been pleasantly surprised with the way Ubuntu operates, its appearance and ease of use of most of the applications.

It's funny though, but the Linux distros are the only OSes I've been able to find good versions of Majong to play. 

Keywords: AIM, Gutsy Gibbon, Linux, MUSHclient, Pigeon, Trillian, Ubuntu, Wine

Posted by Darwin | 5 comment(s)

September 13, 2007

I've been using zMUD for 10 years or so now, admittedly not to its fullest potential. I've been keeping up with the news on cMUD's progress. It has a list of features yet to be coded that I'm waiting on, but with it being in a constant beta state now with a bunch of new bugs with each revision, I'm not planning to buy it any time soon. I'm really waiting for the full SSH support, some of which it has now in the cMUD Pro version, but it again still has bugs.

I'm not a bit bothered by the fact that there are no more planned versions of zMUD. I figure I paid about $20 for some software nearly 10 years ago and I've used it daily ever since then I've gotten my money's worth out of it. I don't think I've used any other piece of software as much or as long that cost so little. 

I have, however, gotten a bit curious about other MUD clients. One that I'm fiddling with now is MUSHClient written by Nick Gammon. This program makes me with I had known about Lua and MUSHClient years ago. I'm not saying that I would use it over zMUD, but that I would have had seperate uses for both programs. The native ability to use Lua in MUSHClient seems to have been there for several versions now. I don't know how long ago this began, but with the list of "plugins" and other scripts posted on Nick's site, it would appear that it has been quite a while.

There are so many built-in functions and different terms and syntax for MUSHClient that I feel a little overwhelmed by it. I think I felt the same way about zMUD when I first got it and was looking through the zScript functions in the help file. It'll just take some getting used to and experiment with the code. I'm not even sure I actually have a use for it yet, but it does look like something I want to learn how to use effectively. I've already found out that a few of our players use MUSHClient. A few also use zMUD too. For now, the zMUD users are really the only ones I'm able to help with scripts.

Other clients that some of our players use are WinTin95 and Portal. I've never used Portal, but WinTin95 is rather bland. It does the job, but I wasn't impressed with it. I've only used it when I really had no other option. Now I have lots of options and time to experiment with them all.

Keywords: cMUD, Lua, MUSHClient, scripting, zMUD

Posted by Darwin | 8 comment(s)

September 07, 2007

I was thinkin the other day about what would be the easiest way to add holiday mobs, such as Cupids, Christmas elves, Santa, black cats, jack-o-lanterns, etc... to the mud world during certain months without having to edit the area files or set up a different area.lst file for each holiday. Then I realized that I had the Lua area reset scripting (thanks to Nick Gammon) installed and available. I would have to extend the mob invoking functions to accomodate certain things but that wouldn't be too much work.

Actually, now that I think about it, the hard part would be to design all the mobs for each of the holidays.

Keywords: lua, resets, smaug

Posted by Darwin | 0 comment(s)

September 04, 2007

Started out by getting up unusually early (for a day off, that is) around 10:30-ish. Got on the road about an hour later and headed towards Pigeon Forge. We stopped by an "As Seen on TV" store just to check it out and see what was really on the inside. Come to find out, it was stuff we had seen on tv and didn't need to see in the store. The big deal with that store was the convenience of being able to buy the items and not pay for shipping. Woo! Ok, so, we found out not to go there again.

Next stop was at Wonder Works. It's an upside-down museum. There was a ton of things inside to check out.  We spent about 4 or 5 hours inside there. There was this crazy bathroom in the upstairs section that had a glass door and a window into the hallway in front of it. You'd think this wasn't a good place to go, but once you go inside and lock the door, the glass gets all frosty-lookin so you can't see through it at all. Makes me wish houses had that kind of glass.

After we left there, it was time to go to Gatlinburg to spend our Hard Rock Cafe gift certificates. I think we spent a couple hours in there. Had an awesome dinner. She had a pork chop that tasted like an awesome steak. It was pretty tastey. I had what was called an S.O.B. burger. It had a lot of stuff that I wouldn't normally eat on a burger, like guacamole and some chipotle sauce. We each got a drink in a souveneir glass so we had something to take home with us. Total bill: $71.20 ... for 2 people. We ended up paying just over $30 after the gift certificates, including the $10 tip.

At this point it was a little before 9pm so we left from there and went back through Pigeon Forge to do some mini golf at Ripley's. We did the medium course, 18 holes. She did better than I did by 2 strokes. We would have tied, but I messed up pretty bad on one of the last holes. 

By 10:15 we were on our way back home. It was a really good day and I'd have to say we should do it again sometime, with the exception of the $70 dinner bill. 

Posted by Darwin | 1 comment(s)

September 03, 2007

I've been toying with the idea of adding in, for lack of a better word, pawn shops. This would allow players to sell some of their items via a special shoppie. I'm sure there are already snippets for this kind of thing but I would rather not use someone else's code when adding in new stuff. The fewer people I have to credit for new features and stuff like that the better. Maybe it's just me, I don't know. That's always the way I've worked.

 Don't get me wrong, I have installed stuff that are works of others. Come to think of it, I have only installed one, well, one collection, of others work and that was the Lua scripting stuff done by Nick Gammon. All the previous snippets that were added were done by the previous implementor, Drazuk.

 Anyway, back to the pawn shop... the idea is to let players sell items they have for whatever price they want. This would be a (probably) better alternative to the live auction as there isn't always a lot of players on to bid on items. This way, a player can put up an item for sell and others will be able to look through these items and purchase any that they want. The money gained from the sell will go to the seller once they log back in to collect any money from sold items.

 The basics are easy enough to do. I'm now trying to figure out the best way to store the data to files and what format to use. Lua would make it pretty easy to write and read all the data back, but I think that would require some additional work done so that the spell affects on items can be stored as well 'cause I'm not certain if they are or not. I guess I could find out first...

Posted by Darwin | 3 comment(s)