# CoffeeMud 5.2 Features
General Features Areas and Rooms Player and MOB features Armor, Weapon, and Item features Application Information | ## General Features ANSI colour support, MSP sound support, MXP tag support, MCCP compression support Stable, all original code base that's extendable through INI options, Java, and JavaScript, even at run-time Built in web server for performing maintenance, administration, working on areas, and accessing information Built in SMTP server for anonymous player emails, mailing lists, announcements, and sending passwords Use a full blown JDBC/ODBC database, or the built in flat file database On-line boards (journals) for public and private messaging 7 base classes, 38 subclasses, 6 player races, and over 1200 spells, prayers, songs, skills, and abilities Customizable races and classes, with level based racial and class skill systems Over 700 socials, with real-time addition abilities. Several builder scripting possibilities, including both standard MOBPROG and Javascript Abbreviate commands, items, mobs, and abilities. Reference all or some Web-based visual on-line area editing tool available Customizable security system. Assign privileges on a player-by-player basis Ability to import CoffeeMud area files, as well as those from ROM, Circle, Smaug, Icey, and others Mud wide quest support, including automated, time-based, and event based triggering! Descriptive combat system with race-based natural weapons, ranged weapons and spells, and mounted combat Contagions and diseases built into the engine. Catch a cold when naked, or poison ivy in the forest Player lieges and vassals, area Conquest engine, and Legal systems available Player banking and postal systems available, serving players or clans or both Full Deity support, with automated blessings to the faithful and curses to the wicked Full Clan support, including politics, alliances, and automated membership management ## Areas and Rooms On-line area creation. (mobs, areas, exits and items). Never wait for a reboot to publish an area! Area based climates, seasons, and weather changes that affect game play Numerous terrain types, including underwater areas requiring spells to breathe Water rooms requiring swimming abilities Air rooms with gravity, so items and mobs can fall! Pits you can fall into, and other deadly traps Cliffs requiring climbing ability Cardinal exit directions and many types of doors and exit types, including drawbridges, gates, panels, grates, portals, ladders, curtains, etc.. Customizable system of crime and punishment available for each of your cities. Mud wide skies and oceans! Homes and property real-estate system for players and clans. Customizable system of crime and punishment available for each of your cities! Customizable conquest system to allow players to conquer and control your areas ## Player and MOB features Wimpy mobs, aggressive mobs, race/alignment protecting mobs, healer mobs, teaching mobs, shopkeeper mobs, swallowing mobs, money changer mobs, chatting mobs, rideable mobs, dragon mobs, guarding mobs, scavenger mobs, thief mobs, mending mobs, etc, etc.. Scripting capabilities to add custom MOB behaviors Players can customize their character by training their stats, gaining new skills, and practicing ones they know Fighter, Mage, Cleric, Thief, Bard, and Druid base classes. Customizable class system available online! Traditional and meaningful race list, including Human, Elf, Dwarf, Halfling, Gnome, and Half Elf. Races are customizable! Mobiles can chat with players and behave according to your wishes Fantasy race-based language support with real language-based translations! Players and MOBs can teach each other their skills or even their language Usage of abilities and spells dependent on proficiency, practice to learn! The most unique and powerful common skill system available for ANY mud! Mage skills include brewing, scribing scrolls, recharging wands, revoking, plus 300 spells to learn and cast! Fighters can fight two handed, sweep, cleave, trip, blind fight, kick, roll with blows, break weapons, dodge, parry, disarm, kick dirt, whomp, and more! Thieves steal, pilfer, detect, disarm traps, bribe, backstab, poison, sneak, observe, bind, sap, shadow, lay new traps, listen, and much more... Clerics can turn undead, command, heal, protect, animate, lay hands, cast over 200 different prayers, and suffer the wrath of their god when they fail Bards have lots of unique skills, plus 150+ songs and dances with group wide, or all-enemy effects for all who hear! Druids control and use weather, polymorph themselves and others, and have access to over 200 unique chants Player killing is optional for the two fighting players, or other PK systems are settable via the INI file Saves against poison, undead, fire, cold, gas, and much more.. ## Armor, Weapon, and Item features Item/Armor/Weapon material types and weights Armor condition/damage, sizing, and repair Multi-spell scrolls, and wands with secret invoke words Weapon sharpness and condition Wands, Staffs, Traps, wearable pouches, boats, horses, and much more Beds you can lie in, chairs you can sit in, etc.. Weapon specializations based on class Skills and trades for players to make their own mundane items! ## Application Information: CoffeeMud is written in 100% Java, listening as a telnet server on any specified port. Two web servers can be activated to listen on specified ports. CoffeeMud supports any JDBC/ODBC database and has been successfully tested using MySQL, HSQLDB, and Derby over JDBC, and Access/SQL Server over ODBC. The package also includes a flat-file JDBC system for beginners. The system includes an API that allows MOBs, Items, Weapons, Armor, Room types, Exit types, and Magic Items to be coded in less than a hundred lines using a template. The new class can then be dropped into the package structure, allowing it to be used after the next server re-boot. This is in addition to the extensive online customization capabilities. CoffeeMud utilizes a smart threading model that spawns threads only when necessary. It will balance the objects needs for threads versus the systems need to keep thread spawning low. An advanced message passing system lies at the systems core. Messages are customized for the message source, message target, and how that message appears to everyone else in the room. Each message is coded with basic sensory information so that only the blind miss visual messages, while they don't miss the auditory ones. Messages can also be previewed and modified by every object involved, lending even more environmental realism to coding!