Category: Spells

Spells and Sample Zones Added to ModernMUD

I wasn’t sure whether I’d ever end up working on the ModernMUD project again. Turns out that the answer is yes. Today I added four sample zones, a bunch of spells, and a sample help file to the open source project on GitHub. It’s available here:

Preserving Newlines in XML Serialization

With .NET’s XML serialization, it kills newlines when you serialize XML to disk. More specifically, it converts a CR+LF into just an LF (\r\n becomes just \n). This was causing annoyances with the spell editor, since you can edit source code for spells with it, but the code would appear all on one line after

A Dozen More Spells Working

These spells were made to work today: Water Elementalist * Blending * Minor Blending * Tide of the Seas * Water Bolt * Dispel Magic Air Elementalist * Coldshield Earth Elementalist * Dirt Cloud Fire Elementalist * Fireskin * Fireshield Paladin * Judgement Anti-Paladin * Apocalypse Cleric * Soulshield

A Bunch of Spells

Nearly three dozen spells were made functional today: Air Elementalist * Airy Starshell * Hypnotic Pattern * Telekinesis Cleric * Create Water * Detect Poison * Group Heal * Know Alignment * Silence * Turn Undead Druid * Analyze Balance * Harbor of Balance * Twilight Earth Elementalist * Earthen Starshell * Earthen Tomb *

A Few Spell Fixes

I think I remembered what I was working on — spells. Ten more spells were made functional today: Air Elementalist * Chill of the Windsaber * Hurricane Cleric * Destroy Undead Druid * Sunburst * Sunray Illusionist * Shadow Magic Psionicist * Detonate * Neural Fragmentation Shaman * Greater Mending Water Elementalist * Tidal Wave

A Few More Spells

These spells were made to work today: Cleric * Dispel Evil * Dispel Good * Holy Word * Unholy Word Druid * Gleam of Dawn * Gleam of Dusk * Negate Hex Illusionist * Magnetism Anti-Paladin * Stamina * Greater Stamina

A Dazzling Array of Spell Fixes

I spent much of the day working on spells, and more than 90 of them have been made to work. Anti-Paladin * Fear Sorcerer * Sleep * Minor Paralysis * Faerie Fire * Celestial Sword * Weaken * Melfs Acid Arrow * Prismatic Spray * Immolate * Shield Air Elementalist * Haste * Wall of

More Spells Working

I spent a while pushing spell code around today. The following spells have been made to work: Sorcerer * Strength * Dexterity Cleric * Bless * Armor * Vitality Shaman * Fire Ward * Cold Ward * Wolfspeed * Hawkvision * Pantherspeed * Bearstrength * Snailspeed * Molevision * Lionrage * Elephantstrength * Mousestrength *

Working on Psionicist Abilities

I spent a good part of the past week traveling from the midwest to the west coast and back (5 flights total). During airport layovers I took a look at some of Tiu’s psi reports. Since I hadn’t touched psionicist spells/abilities yet it was no surprise that most of them were pretty borked. I made

A Pile of Bug Fixes — And Help Needed

I came up with a pretty good pile of fixes over the past day or two. Here’s the list: * Fixed a crash bug in checking fall chance for mobs. * Fixed a crash bug with creatures that leave no corpse (undead, elementals). * Fixed a crash bug with decaying/disintegrating containers. * Fixed an intermittent

Working Version of the Spell Editor

Over the past few days the spell editor has evolved into a useful tool for making changes to spells.  Here’s a view of what it looks like now:

More Spells Are Working Now

25 more spells are working today, mostly defensive beneficial sorcerer and cleric spells like ‘fly’, ‘invisibility’, and ‘protection from fire’.  There are quite a lot more to work on, but it’s good progress.

Offensive Spells

I finished up more of the new spell engine and damage spells can be used now.  I’ve only tested magic missile so far, but it worked beautifully. 😛

Changes to Affect Modifiers

Handling a skill or spell with multiple modifiers in code has always been a bit of a nuisance.  I changed that around a bit so that they work they way I want them to. So, here’s what adding three effects looked like in code beforehand: Affect af = new Affect( Affect.AffectType.spell, spell.Name, 12 + level

The Spell Engine

I finally got the spell ‘plugin’ system to work as intended for the first externally-coded spell. Each spell is stored in an XML file outside the MUD engine, i.e “Fireball.xml”.  The file has a bunch of settings for the spell like casting time, target type, modifers, etc.  It also has an optional code section for

Starting on a Spell Editor

Since spells are stored in files and not directly in the code, it’ll be a whole lot easier to edit them with an editor than editing data files by hand.  Today I started building an editor.  It’s probably about 1/3 done so far.  Here’s a look-see:

Continuing Spell Migration

When we last saw our hero, he was working on migrating spells from being hard-coded in 15 different places to being individual XML data files that are loaded at boot time. While this makes it easy to modify, enable, disable, rename, or adjust spells without a recompile, the main reason I’m doing so is because

A Whole New Spell And Skill Engine

Well, maybe not a *whole* engine quite yet, but certainly two thirds of one. I’ve generated about 500 little XML files to hold all of the skill and spell data for dynamic runtime loading.  It’s all pretty neat — skills and spells can be tweaked by hand without having to compile any code (though the