A list of feature and bug fix suggestions for project contributors to consider implementing. See the Development Process page for more information.
- Enable "(semi-)lossless" upload. Don't cull subtle movements.
- Extended animation priority range (higher numbers).
- Per-joint priority levels.
- Preview animations on actual avatar before upload
- Fix the first frame upload bug (VWR-3783)
- Fix the Play in World / Stop button getting stuck. (VWR-3804)
- Ease and Loop values specified in animation frames, not percentage.
- Head clothing layer
- Local wardrobe
- Other avatar texture baking hacks
- Improved avatar mesh (more polygons around nose)
- Better skinning (weighting of mesh to skeleton)
- Hi-poly meshes for photo sessions.
- Animation Override (AO) built into the client. (VWR-386)
- Breast physics? ^^; (Emerald has it.) [Already implemented? Look in debug settings for breast settings with Emerald prefix]
- Better texturing / texture alignment tools
- Align, snap, and distribute tools
- Mirror tool
- Increased precision of numeric input -maybe debug setting to setup/down arrow amount?
- Investigate square and triangle prim paths - can they be stored server-side and used by regular clients?
- Fix scaling of linked parts
- Remove culling of small movements (0.0005m limit)
- Preview texture in-world before paying for upload (cache injection / temp assets?)
- Remove as many building limits as possible
- Show sculpt shape preview instead of sculpt map texture in build tools (VWR-4774)
- Smaller Build floater that doesn't get in the way as much
- Building hotkeys to select next/previous prim in a link set (VWR-9287)
- User-settable default permissions on creation of objects, clothing, scripts, notecards, etc. (VWR-8049)
- "View permissions as foreign": could be an object flag that when enabled, allows the builder to see perms on that object as they would be from a foreign user POV
- Split out contacts and group lists from chat / IM
- Text search in chat history / IM
- Search chat and IM logs from within the UI.
- Prefix notices in the chat window with a distinguishing string like ">>". (Notifications means online/offline notices, inventory offers, and other things that aren't actually chat.)
- Add a convenient keyboard shortcut or inline string replacement for the newline character in local and IM windows. This newline character usually appears as a backwards 'P' symbol and can only be copy-pasted or by doing alt + 0182 on the numpad. Try somethign like ctrl-enter or for inline '&\n' or another easy replacement macro.
- Add multiline display for the typing field for chat windows so you can see more of your message for long posts, just like most instant messaging clients.
- Add ability to 'close and mute' or just close group chats to avoid keeping them always open
Contacts / Friends List
- Contacts list tags
- Custom lists (tabs) for contacts
- Add "favorite" profiles, as a pseudo-friends list
- Ability to decide which friends cause online/offline notifications to appear.
- Ability to sort Friends list into different categories. (VWR-890)
- Easier inventory filters
- Inventory tags
- Custom tabs in inventory
- Filter by creator
- End date for inventory filter by date
- Split-view inventory window (side by side or one above the other)
- "Cut" (as in Cut & Paste) menu item
- Copy SLURL menu item for landmarks
- Right click > Copy to Inventory option for items in notecards.
- Duplicate inventory item checker. 
- Count all files in a sub-directory
- Count inventory search results
Saving / Loading
- Export / import avatar shape to XML
- Save / load / reload script or notecard from disk. (VWR-5206)
- Image sequence export (AKA bmp/png video) (WIki Link)
- Tabbed script editor
- Tooltips for user-defined functions
- #include statement (insert code from another script before upload)
- Fold / collapse code blocks
- Autoinsertion of default parameters for events e.g. listen
- Intellisense style auto-complete for llFunctions(). Fills in the function it thinks you're typing as highlighted text.
- Auto-generate listen event on typing an llListen() code. Auto generate a sensor() and no_sensor block on llSensor or llSensorRepeat() code. Auto generate control() on llTakeControls(). Auto generate run_time_permissions() event on llRequestPermisisons(). Auto generate changed() event code for finding the avatar's key on llSitTarget (BIG MAYBE). Auto generate at_rot_target or at_target for llTargetRot and llTargetPos. Auto generate collision event for llVolumeDetect(TRUE) call.
CHECK for prexisting events before auto-generating events. Make auto-generation of events togglable per event type. An hero.
- Drag & Drop texture/sound files from inventory to script window, automatically applying the UUID.
- Autohide (optional)
- Collapsible toolbar
- Customizable toolbar (add/remove buttons)
- Flyout buttons for Search and Build for specific actions.
- Automatically rename "Build" label to reflect whatever tool is in use (and remember setting?)
UI Widgets / Tools
- Scrollable panels
- Generic hierarchy view class
- Dynamically-resizable UI elements (to fit bigger text)
- Unify notecard and script editor code. (Inherit from general text editor class)
- Context menus for selected text - copy, paste, cut
- Dockable widgets
- Tear-Off Pallets
- Tabbed browsing
- History. (Already kept, but no easy access)
- A new, original skin to distinguish Imprudence
- High contrast and low-contrast skins for accessibility
- Automatic detection of installed skins (auto-generated list of skins in preferences panel)
- Skin installation package format (e.g. skins in a zip file, just download into the skins directory)
- Support for specifying custom fonts and sounds (button clicks, etc.) in skins
Misc / Unsorted
- Toggle hiding small objects (Wiki Link)
- Pen/Touchscreen compatility (Wiki Link)
- HTTP Textures (VWR-8833)
- UI in Preferences for changing font
- "Recently emailed" list for Snapshot postcards
- Profiles for multiple preference settings, e.g. "photography", "building".
- Custom busy mode functionality 
- Low bandwidth mode. Ability to disable texture downloads, object updates, and/or avatar attachments.
- Ability to start conference IM with arbitrary list of people, possibly even non-friends. (VWR-10386)
- Disable trying to detect system language at first run, instead just let the user choose. Perhaps add a drop-down list of languages to the login panel.
- Option to turn off requests for calling card statuses, to reduce needless bandwidth wastage and network load.
- Save custom windlight presets to a persistent directory, so they stay available even after new viewer upgrades.
- Revamp Preferences > Popups. Or at least add a button to disable a single popup.
- Fix inability to upload any files or bulk upload after a bulk upload image failure.
- "Secure IMs", an obfuscation/encryption scheme for IMs. (Already in the Emerald Viewer -- ensure cross-compatibility.)