Quick Links
|
This page is more like a list of additions to the MUD over
the past year or so. Visit here if you want to know how DalekenMUD is
evolving. Just to clear things up, there have been a number of bugs squashed
in this time, however I feel that minor matters such as bugs (except of
course major ones) can be passed over. Rest assured that plenty of bugs are
found and fixed at every opportunity.
- (11/00)
- Events now use the same system for index as skills
(gsn system of pointers to global ints). This system is far
more extensible than the previous system.
- (11/00)
- Added a new secure trading interface. This code
will be available as a snippet very soon.
- (11/00)
- Added the ability to bind to a single IP.
- (10/00)
- Squashed a particularly insidious bug that would
cause regular crashes by adjusting the race of the target of
the dirty fighting skill negative.
- (10/00)
- Adjusted training costs for magic.
- (10/00)
- Shadow door skill for ninjas. This is a spell
which allows them to move through the shadows several rooms,
even through closed doors! The number of rooms that they are
able to move is equal to level/50, high level characters can
move several rooms at once. In order to move through these
rooms no door must have no_shadow and the rooms that they pass
through shouldn't have too much light (ie they should have
some shadow).
- (06/00)
- Added a system of large output buffers that can be
recycled so that those large buffers created for one-off commands
can be freed up (at least to be used by other people).
- (06/00)
- ident support for the windows version of the server.
- (06/00)
- Several minor fixes in mud programs, changes to the
internal workings, bugfixes.
- (06/00)
- Optional support for the Mud Client Compression
Protocol. This means less bandwidth usage at the cost of memory and
speed. I have also hacked the TinyFugue client to include support
for MCCP. Much thanks to
Oliver Jowett for his work on
this.
- (06/00)
- Bug-fix-o-Rama: parsing error in mud programs, buffer
overflow in alias expansion, math error in changing alignment.
Several entries in the new db tables fixed, missing entries added.
Several typos located and squashed.
- (06/00)
- Added counting of data that is sent and received. This
allows for better accounting.
- (06/00)
- DalekenMUD 1.12 is here. A new data file format,
works perfectly and it is much more readable to me (it's in C style
format and I might be a little prejudiced in that respect). Tests
show that the new format is not only nicer, but more efficient - an
unexpected bonus! Area files are smaller and they load quicker!
- (06/00)
- Small improvements made: fixing of const string
references, deletion of objects and the dig command.
- (06/00)
- Added support for unique id numbers in mud programs.
- (05/00)
- Added a type of mud program that is loaded with an area
and can be associated with multiple mobs.
- (05/00)
- The regeneration spell allows clerics to heal over a
period of time. This uses events to heal a little every second,
if no healing is required the amount of healing is only reduced
by a little.
- (05/00)
- Created a global socials file, socials can be loaded
with an area, but are now always stored here.
- (05/00)
- The become command allows players to switch to another
character without having to actually disconnect.
- (05/00)
- Added code that will kill the mud if it starts using
excessive amounts of CPU time.
- (05/00)
- Taunt, Rescue, Berserk. Now people can target taunt
to distract a mob to attack them and so rescue someone. This will
make the mob berserk. Any mob with berserk on, cannot be taunted
or rescued from.
- (05/00)
- A complete revamp of the damage spells, standardised the
damage and reviewed the costs and levels of spells. Virtually all
spells have been affected.
- (04/00)
- Added a view of a skill for the slookup command that shows
levels and a small amount of info about the skill/spell.
- (04/00)
- A complete code workover to enable use with Borland C++
Builder means that it compiles easily, it no longer requires
Cygwin1.dll to run under Windoze.
- (04/00)
- Fixed the initiative/speed calculations to take the
amount of weight carried into consideration.
- (04/00)
- A new skill: Sense Life, allows players to detect the
presence of invisible creatures and players, only gives a number of
life forces detected.
- (04/00)
- Added a full restore to the level gain functions.
- (04/00)
- Added a confiscate command for immortals.
- (04/00)
- Removed the pipe command for security reasons. Removed
scriptsave, moved this to a separate .c file.
- (03/00)
- Added terminal velocity to character falling. Objects
have no such limit.
- (02/00)
- Added a mob commands that allow safe open, close, lock
and unlock for doors and containers. These commands give out no
messages and no traps are triggered.
- (02/00)
- Added a new mud_prog command that allows the mobile to
run a regular command with the visibility of a regular command. This
in particular applies to mob commands that don't trigger other
programs. In order to interpret a regular command, use the
command "cmd".
- (02/00)
- New position: sitting.
- (02/00)
- Some of the mud programs now return values through the
use of the retval and return builtin commands. These are integers,
but for a large number of applications these are treated as C style
booleans: 1 (or nonzero) - true, 0 - false. The changes are:
- General
- COMMAND_PROG - returns true if a pseudo command was fun.
- Object programs
- GIVE_PROG, DROP_PROG, LOOT_PROG, SAC_PROG, WEAR_PROG,
REMOVE_PROG - on a return of false, they prevent whatever was
going to happen.
- Room programs
- *GREET_PROG - a return of false prevents a character from
entering.
- DROP_PROG - a return of false prevents a character from
dropping the object. *NEW PROGRAM*
- SLEEP_PROG, REST_PROG - a return of zero prevents rest.
Also added a protection against triggering the same program while it
is running (eg. forcing the player to sleep in a sleep_prog).
- (02/00)
- Prettied up the highest command, it's now framed like
score and who.
- (02/00)
- Added a wait command to mud programs, this required a
complete revamp of the parsing functions and use of the new event
system. Several new commands can be used:
eval, halt, return, retval, wait, regmatch
there are some differences, but these will have no effect on current
programs as they only affect the more complex programs.
- (01/00)
- 'clan consider' command to show information on other
clans.
- (01/00)
- Resting and sleeping on furniture, as in ROM.
- (01/00)
- KARMA for orders
add some for:
- holding an area (+nplayer, capped at 5 per time)
- sacrificing corpses (+1)
- winning a holy war (+250)
- player donations (+1 per quest point, +1 per (clevel * 100) coins)
- only the two higher ranks can donate for exploitation
reasons.
remove some for:
- killing same alignment mobs ( -3 )
- taking areas (-50)
- declaring a holy war (-100)
- buying favours from immortals (add a religious skill)
at the moment this is a manual thing.
buying a religious skill takes
skill_level * ( 6 - clan level to use it ) * 1000
- losing a member to alignment changes.
- (12/99)
- Corpse and containers decay and the objects from inside
are left in the room, or an enclosing container.
- (12/99)
- 'group all' and 'group self' (disband) command added
(aka LEXIMUD).
- (12/99)
- Added ident code, mostly copied and pasted from a
patch by Dark@Igor for Dutch Mountains.
- (11/99)
- Changed fighting pulses to run from event system,
fighting is now slightly different. Bonus attacks still exist.
- (11/99)
- Added events that would take care of ALL mob autonomous
action. mobile_update(), the function that took 25% of CPU time on
the old envy system, has been cut up and parcelled out, it no
longer exists, all the parts probably take less CPU time now too.
- (11/99)
- Added regular expression matching to mudprog triggers.
- (11/99)
- Fixed the bug with deleting exits where they gave
BUG messages.
- (11/99)
- Fixed a bug with time_prog checking, it now works.
- (11/99)
- More events:
- Random mudprograms are on events now, as are time_progs.
- object_update() has been totally removed from the code! All the
parts of the function have been farmed out to events.
- Changed mp_delay to use events
- Removed the need for smash_update, mobs stand up on an event after
being smashed of tripped
- Falling and sinking of characters
- (11/99)
- Began addition of Event system.
- Events are based on a system of delayed callback functions
which are given a small amount of information.
- Pick lock and object timers moved into the new system.
- Special mobile timers for mercenaries and gate demons.
- Timer for swan song.
- Growing plants.
- (9/99)
- Double pass on dispel magic.
- first to remove totally
- second to remove duration
- long durations are harder to remove totally
- critical chance of striking it lucky and removing everything
- level saved on affects
- (8/99)
- Added planes, a new structure that contains a small
amount of general information on the areas it contains, each plane
has its own weather system.
- (8/99)
- Added a command prog trigger, every command that is run is
checked against room, mobs and objects in room and inventory
as a trigger, if the trigger is run, the normal command is not
run.
- (8/99)
- Added the requirement that bandages be used to repair
damaged body parts. To balance this, added a skill that allows people
to not require bandages (all classes).
- (8/99)
- greet_prog/all_greet_prog/leave_prog. Added an extra
optional argument which is the directions that are valid for the
prog. leave_prog now triggers on all, not just on mobiles.
- (8/99)
- Added a new function to pick a target to fight in a
standard way. Reduced the size of most of the offensive skill
commands.
- (8/99)
- Removed the MURDER command.
- (8/99)
- Fixed a crash/hang bug with disconnect.
- (8/99)
- Damaged Body parts
- (8/99)
- Added a quote command, only accessible by immortals through the
normal command interpreter. The command uses 'fortune' to
produce a random quote when someone quits.
- (8/99)
- Added the CAST_PROG trigger which goes off when a spell
is cast on a mob.
- (8/99)
- Added flag so that mobs running programs can see
anything/anyone.
- (8/99)
- Added descriptions for areas, can be seen in 'where'
and 'look area'
- (7/99)
- ITEM_GEM which can store mana
- first value how much
- second value maximum possible
- third value, which sort of mana it holds
- players have to hold the gem to use it, if they use it up it
goes BANG
- a recharge spell can add mana to the gem.
- (7/99)
- Added ispell interface as described by Erwin Andreasen.
- The 'ispell' command has the facility to add words to a local
mud ditionary.
- the string editor has access to the ispell checker.
- (7/99)
- Changed functions that used static char arrays to so
they now return char * and require the passing of an extra argument,
to reduce the huge static data segment (and to help make the program
thread safe as if it is ever going to be threaded!)
- (7/99)
- Changed all calls to do_* and olc (as well as a fair
number more) functions require a const char * argument, fixed all
potential crash bugs revealed by this, where it was possible to try
to change static strings.
- (7/99)
- Changed edit_mpadd to be in the format:
mpadd <#num> <%type> <$args>
- (7/99)
- An extra mana slot for spells.
- MAGIC_GENERIC, you can use any type of mana to cast the spell.
- a function which can take any type of mana.
- (7/99)
- Juggle skill for Jesters
- Allows a character to juggle several weapons at once.
- Up to 3 additional weapons juggled.
- Each extra weapon gives a chance at an extra attack.
- The more weapons you juggle the more likely you are to drop
them all, causing damage to yourself.
- Each hit is caused by a random weapon, weapons are also
shuffled every tick, this shuffle is where the drop check is
made.
- Dropping can be recovered but it gives the juggler lag.
- (6/99)
- Spells and Skills
- cyclone: area effect air damage.
- flood: flood an entire area.
- catfall: fall from heights with less pain.
- feast: feed and water all.
- cream pie: fun damage spell with a chance at blind.
- faith shield: group armour spell with bonuses for larger groups.
- tangleweed: web by another name.
- blink: dodge for sorcerors with mana cost per blink.
- hellfire: area effect damage for warlocks.
- (6/99)
- Poses for all classes.
- stored in system/poses/ with a list of act messages
for character and room.
- editor allows some editing of poses although it's hard to find the
one you want. (command 'poseset').
- (6/99)
- Added bounty for player killers so people can set bounty
on the heads of enemies.
- mobs which take the bounty, aggressive with a trigger on when they
kill someone, also hunt down players within a certain range to take
the bounty.
- players with bounty are tagged on 'who'
- (6/99)
- fix the 'hire' command, base costs on the pet shops,
- instead of killing themselves mobs go back to the place they
repopped at and lick their wounds.
- mercenaries wont takes hires if they are hurt (unless you
crank up the price)
- same basic idea but a few little checks and some extra code.
- (6/99)
- Added extra stuff to the mercenary code.
- You can hire same as always but mobs will cost more if they
are hurt.
- Mercenary mobs will recall back to their repop room when they have
finished their hire.
- Mercenary mobs will autoloot corpses and then compare all the gear
with what they own, wearing all the best stuff, thus mercenaries
can have a large amount of decent gear, making them harder to kill.
BUT they have all the money they autolooted as well, not the hire
money though, that's a bit much.
- (6/99)
- Security checks have been added to all mudprog commands.
- No mobile with a descriptor can used the 'mpcomm' command.
- Mp_force temporarily removes the descriptor from a player/mobile
so that they can force someone to do anything.
- (6/99)
- The TOAD command can turn a player into anything (until slain).
- (6/99)
- Names that cannot be used for new players are stored in
a file and this can be edited online.
- (6/99)
- Players can now learn languages.
- (6/99)
- Added colour to OLC displays.
- (6/99)
- Fun slay messages for mucking about immortals.
- (6/99)
- All port numbers are 12345.
- (6/99)
- Pload/Punload
- Allows loading of characters without needing a password.
- Switch into a ploaded character at any time, no more need for force.
- (5/99)
- Character creation allows 'help' and 'back' commands.
- (5/99)
- Cygwin32 support (Makefile and startup scripts).
- (5/99)
- Fire/Earth/Water/Air/Spirit Spells
- Each character has a stat in each of the spheres as well as
a mana for each of the spheres. On character creation
players get 2 on all the stats as well as a few free points
to distribute thief 1, mar 5, cle 9, mag 10 these add to the
stats and the player's initial mana is 5 times the stat
value.
- Spell costs in each sphere and mana for each sphere.
- Each spell has a mana cost for each of the spheres, the player will
need the mana required for each sphere to cast the spell.
- New functions to determine mana costs for spells and check that
sufficient mana exists.
- Channel skill to allow redirection of mana.
- Magic stat on each sphere which starts low and can be trained for
increasing cost.
- Training each of the stats will cost 100 times the current value in
pracs which also means a mana increase for that sphere.
- Magic stat determines spell damage (compare with victim) there
should be a function which determines damage mods, as well as a
function which checks on save vs fire/earth etc...
- Spheres have a colour associated:
fire - red, earth - brown (yellow), air - cyan,
water - blue, spirit - white.
- New functions in the prompt to display mana.
- New additions to the nanny set of functions to allow modification
of base magic stats upon creation.
- Change old applies to allow all the new applies.
- 'magic_resist' in race_table is changed, make it so it adds to the
magic_resist value for the character.
- race_info, race_tnl, save_spell, sphere_damage_mod
- PRAC_AIR, PRAC_FIRE... flags for mobiles.
- (5/99)
- Room and Object Programs
- Centralised prog_driver to allow passing the info struct.
- Typedef the info struct, it is used way too much now.
- Add all the new triggers for objects and rooms.
|