|07-29-2005, 02:36 PM||#1|
Join Date: Jan 2005
Home MUD: Avendar: the Crucible of Legends
The functionality of progs on the ROM-derivative I build on has really increased as new prog features have been coded. I can do things with progs in my latest area project that I couldn't have dreamed of doing in my first area. This has led me to wonder how different the other MUD prog systems are, and what cool prog toys other builders get to play with.
To get the ball rolling, I'll share a bit about prog tools I like which have been added by our coders. No doubt some of the things I mention are built into different code bases or prog systems in very different ways, and perhaps you do everything I'll describe in some other fashion--but these were nice additions to the basic ROM prog tools we started with.
One useful and novel (to me) thing is a prog type called a data_prog. A data_prog doesn't actually trigger--it just stores lines of information which are retrieved by other progs (via commands which specify which data prog and which line, and by storing that line in a variable). I've used data_progs for lines of a poem/story/monologue delivered by an NPC, a list of n/e/s/w directions a mob follows along a particular route, echoes for a dream sequence delivered to sleeping characters, lists of adjectives and nouns which are combined to make an NPC spout randomized insults, new descriptions to overwrite previous mob or room descriptions, or a pool of jokes a joke-telling NPC can draw from.
Probably the most useful prog type our coders have added , though, is verb_prog, which allows builders to define custom verbs (commands) like "turn", "pull", and "climb", or to alter existing commands like "eat", "say", and "cast". For example, I set a "verb_prog quaff" on a potion, and had the prog execute 'quaff' normally and then load a wizinvis object onto the PC which is progged to make the PC "addicted" to that potion until the appropriate remedy is quaffed.
One of the most extensively progged parts of an area I've made uses the custom commands from verb_progs heavily. I tried to recreate a "fortress assault" situation by making a gate which PCs attack via progs, and which is defended by NPCs on the battlements above. PCs activate verb_progs to make and use battering rams, or to cast elemental damage spells at the gate (a mob named 'the gate' pops in and out of wizinvis when players use the ram or the spells, to handle the damage aspect of the assault). Verb_progs also allow PCs to make and use ladders which can be used to scale the battlements and attack the NPC defenders of the fortress (who shoot arrows, cast bolt spells, and drop things on PCs below).
One nice information storage tool I get to use is "bitset", which serves as a sort of "permanent memory" about what happens to characters. I use the range of unique identifier numbers (vnums) for the rooms, mobs, and objs in my area to also toggle corresponding bit numbers on PCs, which are saved in each PC file. This bit can later be checked ("if isbitset(var) == vnum", and the presence or absence of the bit responded to in different ways. For example, if a player attacks an NPC, a bit can be set. Now the NPC will essentially "never forget" the attack by that PC--other progs (greet_prog, fight_prog, etc) can check for the status of that bit and respond appropriately. This is also used to make things happen only once for a PC (like getting a reward for a quest, or getting a warning before attempting something foolishly dangerous).
I could go on (and might later on), but I'd like to hear about some of the prog toys you all get to play with. Do share...
|Builder Prog Tools - Similar Threads|
|Thread||Thread Starter||Forum||Replies||Last Post|
|Custom MUD Clients/Tools||Hephos||MUD Announcements||1||08-21-2004 08:16 AM|
|Custom MUD Clients/Tools||Hephos||MUD Announcements||0||02-14-2004 01:49 PM|
|Custom Clients/Tools/Websites||Hephos||Advertising for Staff||0||12-29-2003 04:44 AM|
|I need some prog help||Denday_TechMagi||MUD Builders and Areas||3||06-12-2003 06:46 AM|
|A webmaster's tools||Seth||MUD and RPG Webmasters||9||05-09-2002 08:36 AM|