The code editor allows immortals or those wanting to code lpc files using a graphical editor
See Area designer for area designer docs
The session system allows you to save current opened tabs as a session file to allow restoring them at a later time. You may open a session and merge it with current opened files or you may attempt to replace the current session with another. If the current session has open files it will attempt to save them, if you cancel them it will prevent them from closing as normal and they will be merged with the new session
New area
allows creation of a new area with standard folder layout and all standard files with basic info and set dates/creator name if possibleSave path
the local path where all files will be createdRemote path
optional remote path to be used in code to set default path definesName
the area name, will be created as folder under save path with all standard folders and files for an area
New virtual area
allows creation of a new virtual area for a current area or create an entire area using the optional area create settingGeneral
Basic required options for a virtual areaSave path
the local path where all files will be createdRemote path
optional remote path to be used in code to set default path definesArea
create an entire area with this name, if not enabled will create just a virtual server under save pathWidth
the width of the virtual area, min 2, max 100Height
the height of the virtual area, min 2, max 100Depth
the height of the virtual area, min 1, max 100
Advanced
optional advanced featuresCoordinates
Enable coordinate system and assign x,y,z coords to each roomRoom cache
the # of rooms the area caches before it starts removing old rooms, default: 200Default exits
the default exits each room will start with, note edge rooms will have all exits leading out of the area stripped out, Note up and down are disabled if depth is only 1Default states
the default states for each roomNo attack
do not allow combatNo magic
do not allow magicCouncil
council flag enabled, allows player killingOutdoors
rooms are all outdoorIndoors
rooms are indoorWater
rooms are under waterHot
room temperature is set to 200Cold
room temperature is set to -200Sinking Down
rooms will sink down to room below if possible, only works if base room inherits SINK_ROOM, or has custom set_down(room below path), Note disabled if depth is only 1Sinking Up
rooms will float up to the room above if possible, only works if base room inherits SINK_ROOM, or has custom set_up(room above path), Note disabled if depth is only 1None
turn off all states
New area design
allows you to create a new area design that can be later used to create all the required code for an areaWidth
the width of the new area, min 2, max 100, can be resized laterHeight
the height of the new area, min 2, max 100, can be resized laterDepth
the height of the new area, min 1, max 100, can be resized later
General properties
general room propertiesType
the room typeTerrain
the room's terrainShort
the short descriptionLight
the amount of light in the roomNight light adjustment
the amount to adjust light when nighPrevent peer all direction
a message, true/false or a function to prevent peering any exit
Description
The long description, with link to open advanced editor to allow editing in editor for easy colorizingProperties
Miscellaneous propertiesIndoors
is the room indoorsNo magic
disable all magic in the roomNo scry
prevent scrying people while in roomNo teleport
prevent teleport in and outExplored marker
set an explored marker when player enters roomNo map send
do not send map data to clientHide exits
hide the exit line from the playerNo forage
can not forage for foodForage
the amount of food returned each forage, -1 default to random amount of Max forageMax forage
the max amount player can forage per resetSecret exit
provide a hint that there is a secret exit in this roomTemperature
set the room Temperature, every 100 or -100 triggers damage done by heat or cold
Combat properties
properties related to combatNo attack
disable all combat in the roomCouncil
allow players to kill each other using council rooms, good for arenasMelee as ability
all basic melee combat will be considered an ability for protection calculationEnable pk
allow players to kill each otherNo dirt
can not throw dirtDirt type
custom dirt type, if empty it will be based on terrain and weather
Custom properties
custom properties you may want to set for a room, AdvancedItems
the items you can look at in the room, there should be one for each noun from the descriptionItem
the item nameDescription
the item description, you should also add any looks for nouns in descriptions of other items
Reads
things can be read in the room, Note they must be included as an item to be readable, AdvancedRead
the id to matchDescription
the description to display to the userLanguage
the language the description is in
Exits
Exits from the room, can be standard, doors, or climbs, Note climbs are only supported with standard, base (see area if supported), and climb types.Exit
the exit name, a list predefined list of standard exits is provided to pick from or you can enter a custom oneDoor
is this exit a doorKey ID
a unique key id to use to lock or unlock if the exit is a doorHidden
is the exit hiddenBlocker
a comma delimited list of monster ids that block the exitPrevent peer
a message, true/false or a function to prevent peering this exitDestination door
optional destination door id, defaults to door if emptyLocked
does the door lock or unlock every resetClosed
is the door closed or open every resetClimb
is this exit a climbs, Note climbs are only supported with standard, base (see area if supported), and climb types.Climbing difficulty
how hard the climb is if this exit is a climb
Smells
the smells for the roomSmell
the smell, usedefault
to have the smell set as default room smellDescription
the smell description
Sounds
the sounds for the roomSound
the sound, usedefault
to have the smell set as default room smellDescription
the sound description
Searches
the searches for the room, AdvancedSearch
the search/searches, you can supply a comma delimited list to assign all searches the same descriptionMessage
the message to display or a function to execute
Finish
A final summary of selected options and properties, some properties and options will always be set even if empty: terrain, short, long, exits, items, Note climbs are only supported with standard, base (see area if supported), and climb types and will prevent you from finishing until you pick a supported type or remove climbs.
Create a new monster using a wizard for easy option selection
General properties
general monster propertiesType
the monster typeLevel
the levelAlignment
The alignment, can pick from preselected list or use -1000 to 1000 raw number values, defaults to neutral if emptyRace
pick from predefined list or supply a custom race, defaults to human if emptyClass
pick from predefined list of classes and subclasses or supply your ownLanguage
pick primary language from predefined list, custom language or leave blank to determine based on raceRidable
is monster ridableFlying
can the monster flyGetable
can the monster be picked upUndead
is the monster undead, Note some monster races are automatically undead and setting this will not matterWater breathing
can monster breathe under waterRequires water
requires water to live, if out of water it will suffocateNo bleeding
monster will not bleed
Description
Basic description propertiesName
the monster's nameShort
the monster's short, normal proper cased name or name prefixed with a/a/theNouns
a list of comma delimited nouns used to build an id listAdjectives
a list of comma delimited adjectives use to build an id list with nouns
Long description
The long description, with link to open advanced editor to allow editing in editor for easy colorizingPhysical properties
properties related to physical attributesMass
the monsters mass, 0 will default to internal formula based on several factorsHeight
the height of the monster in inches from 1 to infinityEye color
monster's eye color, pick from predefined list or supply any color you wishHair color
monster's hair color, pick from predefined list or supply any color you wishGender
the monster's gender, male, female, or noneBody type
allows you to pick a body type to set the initial limbs for monster, if not set will be determined based on race
Resistances
Monster damage resistances, AdvancedType
The type of resistance to protect againstAmount
The amount to protect, should be in a -100 to 100 range
Ask
Control if monster can be asked about questions, AdvancedCan be asked questions
Enable ask systemAsk no topic reply
Message to display when topic is not foundAsk response type
How a monster will responses when asked a questionSay
reply using the say commandTell
send a tell to asking playerSpeak
reply using speak commandWhisper
reply using whisper commandCustom
use a custom system to control, will require advanced coding after code created
Ask Topics
The topics that the monster can be questioned about, AdvancedTopic
The topic to ask aboutMessage
The message to display
Advanced properties
Advanced options that while useful are not always needed, AdvancedNo corpse
will the monster leave a corpse, string will be displayed to player and no corpse left, if "" no message and no corpse, $N/$n replaced with monster's nameNo limbs
will the limbs be dropped on the ground, if "" no limbs and no message, else message displayed to player, $L/$l will be replaced with limb name, $N/$n replaced with monster's name
Custom properties
custom properties you may want to set for a monster, AdvancedType
The type of propertyTemporary
lost when monster is saved using auto save systemNormal
will be saved if monster is autosaved
Name
The name of the propertyValue
The value of the property
Reputation
The monsters reputation, AdvancedDefault group
The default reputationType
The type of reputationAttack
Applied if attackedDie
Applied when dies
Group
The reputation group that is effectedAmount
The amount of reputation to apply
Movement
determine if the monster will wander randomly or a set list of direction, AdvancedSpeed
he speed the monster moves in heartbeats, must be set to enable movementPatrol route
a set list of exits the monster will attempt to followNo walk rooms
a list of room file names that the monster can no enter, allows containment of monster to a general area, Note filenames should always include the trailing.c
Emotes and speaks
random emote or speak when players are in the room, AdvancedEmote chance
the chance a normal emote will displayEmote combat
the chance a combat emote will display during combatSpeak chance
the chance a monster will speakSpeak combat
the chance a monster will speak during combatEmotes and Speaks
Type
the type of emote or Speakemote
a normal emoteemote combat
an emote during combatSpeak
a normal speakSpeak combat
speak during combat
message
the emote to display or Speak to saylanguage
the language to speak in, Note for Speak or Speak combat only
Combat
combat related optionsAttack commands
a list of comma delimited abilities or commands the monster will randomly do during combatAttack command chance
the chance a command will be used, from 0 to 101, 0 never, 100/101 alwaysAttack initiators
list of comma delimited commands or abilities to randomly picked from when the monster starts combat
Tracking
Monster tracking system, AdvancedEnable attacker tracking
Will cause monster to track those that it is attackingTrack aggressively only
Constantly follower attackerEnter message
Message to display when monster enters a room by tracking someoneEnter message action
How the enter messages is displayed
Aggressive
monsters aggressiveness, can be a simple number or a complex mapping of values to determine how different races, classes and others options effects auto attacking, see /doc/build/monster/haggle on mud for full list and detailsActions
actions or reactions to different things, AdvancedAuto drop
drop items after a delay of secondsOpen storage
open storage items that have been given and how long to waitAuto wield
wield any weapon given or looted after a delay of secondsAuto loot
loot the room of items after a delay of secondsAuto wear
wear any armor given or looted after a delay of secondsWimpy
wimpy after percent of damage is reachedDrop encumbered
drop extra inventory when 50% or higher encumberedDrop encumbered combat
drop extra inventory when 50% or higher encumbered if in combatAuto stand
stand backup when lying on the ground during combat
Reactions
Determine how your monster reactions to different effects, AdvancedType
The type of reaction, see /doc/build/monster/reactionsNormal
a normal reaction that happens out side of combatParty
a normal reaction that happens outside of combat but only effects party membersCombat
a reaction during combatCombat party
a reaction during combat that effects party members
Reaction
the reaction that causes monsters to reactlow health
fired when < 10% hphalf health
fired when < 50% hphurt
fired when hp < max hpfull health
fired when 100% hppoisoned
fired when poisonedbleeding
fired when bleedingsevered limb
fired if has severed limbsmagic protection
fired if no magical protection (buffer/skins)faith protection
fired if no faith protection (fortify)cursed
fired if cursedheld
fired being held but somethingcloaked
fired if cloakedno cloak
fired if not cloaked0 minions
fired if no minions1 minions
fired if 1 minion2 minions
fired if 2 minions3 minions
fired if 3 minions4 minions
fired if 4 minionsencumbered 90
fired if encumbered 90% or higherencumbered 50
fired if encumbered 50% or higherencumbered 10
fired if encumbered 10% or higherpresent
a special reaction to reaction to objects in the room format of command is an array ({"id", "command to fire"})not present
opposite of presentenhance
a special reaction that will fire if the command enhancement system is used and able to use it, format of command:- ({"command", "command 2", ... }) or
- ({ ({"command", "syntax to fire"}), ({"command 2", "syntax to fire"}), ... })
- ({ ({"command", "syntax to fire", target}), ({"command 2", "syntax to fire", target}), ... })
- target can be an object or a string, if string will look for an object with matching id in room of monster
enhance self
a special reaction that will fire if the command enhancement system is used and able to use it and target yourself, format of command:- ({"command", "command 2", ... }) or
- ({ ({"command", "syntax to fire"}), ({"command 2", "syntax to fire"}), ... })
temp property
special reaction that will fire a property matches a value, it requires a more advanced command format:- format of command is an array
- ({"property name", value to match, "command to fire"}) or
- ({"property name", value to match, function test, "command to fire"})
temp properties
special reaction that will fire a property matches a value, it requires a more advanced command format- format of command is an array of arrays from temp property
- ({ ({"property name", value to match, "command to fire"}), ... })
Action
the action to do, see docs for full formatting for more advanced reactions
Finish
A final summary of selected options and properties, some properties and options will always be set even if empty: name, level, race, short, long
Visible when monster type is a vendor
Vendor type
the type of vendorUse default storage
Weather to use global default storage roomDo not clean storage
Do not clean storage on room resetStorage room
The path to the room that contains objects the vendor sellsList item(s)
A comma delimited list of items that a user can read to see vendor syntaxesList type
Used to build dynamic sign textAppend display list long to room
Will append the list long to the rooms descriptionList item long
The long description of the item when it appears in the room
More advanced vendor properties, most of these should be left alone unless you know what they do
Max number of each item
The max number of items to keep in storage, all over this amount will be removedPermanent Percent
The percent to adjust permanent inventory as more are soldPermanent offset
The number of items to sell at base valueCurrency type
The type of currency the vendor takes, only used ifOnly except currency type
enabledOnly except currency type
Only allow currency type when items are bought/soldTranslate
Translate all items to the vendor's primary languageTranslate list
Translate the displayed signTranslate commands
Translate the command wordsEnable price tracking
Enable price tracking to offer supply and demand adjustmentsPrice tracking weight
How much to weight tracked itemsPrice tracking max
The max amount to weight tracked items
The menu a barkeep sells
Short
The item's short name, normal the name with a/an prependedName
The item's nameStrength
How strong the item is when a person drinks/eats itType
The type of itemalcoholic
Item is alcoholic drinkcaffeine
Item is caffeinedrink
Item is a generic drink that does not get drinker drunkfood
Item is food
Long
The long description of item when looked atNouns
The item nouns that are used to build the item's id, should aim no more then 2 or 3Adjectives
The item's adjectives used to build item's id, should be no more then 2 or 3Category
The item's category when displayed on menu, drinks should all be in the drink categoryMy Message
The message displays to the person who eats/drinks itemYour Message
The message displayed to the room when person eats/drinks tiem
Menu title
The menus titleRead item(s)
The items used to display menu when read/lookedNo money message
The message displayed when buyer does not have enough moneyPre menu text
The text before the menuPost menu test
The text after the menuCan refill
Can the barkeep refill drink containersCan buy empty
Can barkeep buy empty bottles
- Syntax highlighting
- Code folding
- Templates to quickly create basic objects, rooms, monsters, weapons and armors
- Formatting and indention system for making code easier and more standard
- Side by side file views for up to 3 files, just drag and drop to layout how how you want to view files, with restore state on reopen if
Remember opened files on reload
turned on - Diff file with original file if changed or local file
- Diff file with remote file, does not cache to allow you to test against any file as needed
- Remote testing, allows you to test a local file in its remote location, if no remote data it will allow you to browse to the remote file location
- Remote caching, will cache remote file data in %appdata%\jiMUD\editor to allow local files to be linked to remote files
- Clear remote data in code preference dialog or deleting the files in %appdata%\jiMUD\editor
- Remote editing, allows you to edit files directly on server using local temp files and using IED to download/upload on open/save.
- Upload/Upload as to directly upload file to mud using IED
- Basic spell checking, See known issues
- Can add words to custom editor dictionary or OS dictionary if supported
- Can ignore words until next time editor is opened
Note: You must be connected to the mud and logged in as an immortal to use remote features
Allows you to edit a virtual map easily with out having to know all file formats
- Edit room exits for all basic directions plus up and down
- Set states for each room
- Set terrain and edit terrain for room and changes effect all rooms that have same indexes
- Open/create external room files by double clicking a room or open from room editor
- Edit external exits for any room
- Edit list of room items for room with changes effecting all rooms with matching index
- Room preview to show how the room will possibly look to a player, with underline marking for matching items, includes preview of external rooms
- View all terrain descriptions in a list editor to easily remove, add or copy terrains
- View all items in a list editor easily remove, add, or copy items
- View all external exits in a list editor to easily remove, add, or copy external exits
- View all raw data files that exist and are related to the current map.
- Resize map allowing you to anchor top or bottom / left or right / up or down to determine how the rooms will be shifted when resized Warning when resized smaller, old rooms are lost and any dangling exits are removed
- Show colors, create a color scale map based on terrain indexes
- Show terrains, show terrain numbers for each room
- Allow walk exits, allows you to create exits by walking the map using num pad
- Allow walk resize, allows you to resize the map by walking off the edge of the map
The room editor allows you to edit the currently selected rooms, if rooms have different property values, that property will remain blank until edited. Pressing escape inside any active property editor will cancel the editor and not modify the value, pressing enter or clicking outside of the editor will confirm the change and update the value.
Description
the properties of a room related to descriptionShort
the room shortLong
the room long descriptionItems
the items that can be looked at in a roomTerrain
the terrain type for a room, can be anything or pick from a preselected dropdownLight
how much light the room hasSmell
the default smell for the roomSound
the default sound for the room
Location
The coordinates of the room as read only values, will display z value if multi level mapMisc
miscellaneous properties of selected roomTerrain Index
the terrain index to use from the database, when you edit Description properties it uses this to determine where to save the data, if item index matches terrain index, it will be changed to match when terrain index is changedItem Index
the index of the items for the room from the item database, most of the time it should be the same as Terrain indexState
different states the room can applyExits
the exits the rooms hasClimbs
a read only options that displays if an external room has climbsExternal Exits
exits that link to outside areasExternal File
the name of the file if it is an external room with option to open it
Allows you to edit, add or delete terrain descriptions. Pressing escape inside any active property editor will cancel the editor and not modify the value, pressing enter or clicking outside of the editor will confirm the change and update the value.
Index
read-only index of the description, used to tie terrains to rooms, unused descriptions will have red indexesShort
The rooms short description which is a single line of textLight
The amount of light for a roomTerrain
The terrain for the room, 0 or empty value is considered no terrain setLong
The long detailed room descriptionSound
The default sound for the roomSmell
The default smell for the room
Notes When cutting or deleting the associated items from the item database are removed as well, When copying, associated items will be copied along with terrain, when pasting associated items will be pasted but will ask if you want to replace any existing ones
Allows editing of all items in one location. Pressing escape inside any active property editor will cancel the editor and not modify the value, pressing enter or clicking outside of the editor will confirm the change and update the value.
Index
The item index, most of the time this matches to the terrain indexItem
The item nameDescription
The item description
Allows you to edit all external exits in one location Pressing escape inside any active property editor will cancel the editor and not modify the value, pressing enter or clicking outside of the editor will confirm the change and update the value.
Enabled
is exit enabledX
,Y
,Z
the coordinates of the room the exit will be added to, Z is only shown/required if using multi level areaExit
the exit used, can be anything or you can pick from a pre suggested listDestination
the full remote path to destination file, include the .c
These all you to directly edit any raw files linked to the map, see /doc/build/virtual/generic_virtual on mud for formatting details for each file
Map
the raw map fileTerrain
the raw terrain map, this is to assign indexes too rooms, this is an optional file as terrain indexes can be stored in map raw as well, if not available terrain indexes are stored in main map dataDescriptions
this is the raw descriptions file containing a list of all the room dataItems
the items databaseState
state data map, optional, if not available states are stored in main map dataExits
the external exits list
Editor preferences are stored in their own file independent of client or character settings and saved to {data}/editor.json
, this allows the editor to not be required to reload every time settings are changed for each character and reduce load times
Max recent items
max number of items to store in recent listHide open files on recent menu
Do not display the open files on the open recent menuRemember opened files on reload
remember opened files when editor was last closed and reopen themUse native icons in tabs
use the native icon associated with file type set in OSEnable spellchecking when possible
detect spelling errors when possible Requires restartEnable remote caching
cache remote file names linked to local files in {data}/editor/ folder, each local file will have a file linked to it to store remote data associated with local fileEnable view state
cache file view states to remember folding and other states to restoreEnable debug
enable debugging output to the dev tool console
Enable auto closing brackets
Whether or not to close brackets when open one enteredEnable auto indentation adjustment
Indent next line based on previous lineEnable empty selection copying
Copy current line when nothing is selectedEnable folding
enable or disable code foldingEnable detecting links
enable detectionEnable highlighting of matching brackets
highlight the matching end bracketEnable bracket colorization
enable or disable matching bracket colorizationSelect line when line number clicked
select line when line number clickedTrim whitespace
trim whitespaceScroll beyond last line
allows you to scroll up to one screen past last lineLine numbers
display line numbersShow Folding Controls
how to show folding controlsTab size
how many spaces equal a tabTheme
set the main editor as dark or light theme
Font
the editor fontFont weight
the editor font weightFont size
the editor font size
Move to next editor or next row when editing data grid
when editing a data grid, move to next editor on enterMove back to first on enter in last row when editing data grid
when editing a data grid, move to first row if on last on enterAdd new row on enter if last row when editing data grid
Add new row on enter if last rowRaw Font
font used for raw editorsRaw Font weight
font weight for raw editorsRaw Font size
font size for raw editorsEnable or disable spellcheck on raw text editors
Enable or disable spellchecking on raw editors Note: When enabled it could cause performance issues due to the large amount of textRoom terrain index on delete
Select what to do when a room has a matching index to a deleted or cut descriptionLeave
Leave it as isEnd
Set it to last descriptionEnd + 1
Set it to last description + 1Start
Set to first description
Preview Font
font for room previewPreview Font size
font size for room preview
Move to next editor or next row when editing data grid
when editing a data grid, move to next editor on enterMove back to first on enter in last row when editing data grid
when editing a data grid, move to first row if on last on enterAdd new row on enter if last row when editing data grid
Add new row on enter if last rowPreview Font
font for room previewPreview Font size
font size for room preview
Always on top of parent
causes window to remain on top of main client, Requires restart on windows, Note: if set enabled, main window will warn if open to prevent lose of data, if off code editor will remain open independent of main window closingAlways on top of all
causes window to be on top of all windowsPersistent
will attempt to reload tools when client is loaded
Cursor style
how to display the cursorCursor animation style
how to animate the cursorAccept suggestions on ENTER
accept suggested text when hitting enterSeed find with selected text
fill in find input with selected textEnable quick suggestions
enable quick suggestionsEnable rendering of control characters
render control characters in editorRender the editor selection with rounded borders
add rounded corners to selection boxRender whitespace
how to render whitespaceEnable snippet suggestions
enable snippetsInserting and deleting whitespace follows tab stops
use tab stopsEnable the rendering of the minimap
show minimapLimit the width of the minimap
how many columns to display in minimapShow Minimap Slider
when to display minimap sliderRender the actual text on a line in minimap
show text or blocks in minimapMinimap location
where minimap is placed in editorInsert spaces
prefer spaces over tabsEnable Background Throttling
disable or enable throttling when a window is in the background or hidden
Slow performance
Make sure you are not using --disable-gpu, with out the gpu it can cause slow performance from maps taking 10 to 100 times longer to load- Missing context menus, will be addressed in future releases
- You can not edit remote virtual maps in virtual map editor, as most virtual maps require multiple files and at the moment it is impossible to know all the remote files
- Pasting virtual area rooms into other maps does not copy descriptions or items
- Spell checking is disabled for lines longer then 1000 characters
- Spell checking is limited to only displaying 100 misspelled words