Eureka TODO / WISH-LIST
+ Hexen support
- ability to change mouse move/turn speed in 3D view
+ BOOM Generalized line types / sectors
+ Key binding system for mouse buttons
- convert MIDDLE button (insert/resize/rotate) for KEY system
- convert RIGHT BUTTON (scroll) to use KEY system
- convert LEFT BUTTON (select, insert-line, drag, selbox) for KEY system
- convert button stuff in 3D render to use KEY system
- preference for "bindable mouse wheel (disable normal behavior)"
+ a tutorial for the basics
- especially drawing lines in VERTEX mode
+ information on each binding command, parameters etc..
+ ENTER key pops up an "operation" menu, which provides all the
commands that can be done via the keyboard (e.g. flip linedefs)
(could also be bound to right mouse button)
+ an 'X' close button for Default Props and Find/Replace panels
+ change 'aspect ratio' setting, it should be a pixel aspect ratio
instead of a screen or monitor aspect ratio.
+ when opened by a click, jump to the texture/thing/etc clicked on
+ ability to hide the right-side panel
? a toolbar
+ shift-C to copy properties from defaults, META-C copy TO defaults
- View/Place Camera command, cursor turns into +
- ability to build nodes only in current map
- SHIFT + move mouse = keep current highlight
(issue: SHIFT + mouse press could be bound to something different)
IDEA: a key to "hold" the current highlight [yet another mode though]
IDEA 2: if multiple objects selected, can cycle through which is shown in panel
also useful if another modifier could disable all highlighting
(Hmmm : mainly useful to drag-select : have a binding/flag for it)
? check that current pwad has been externally modified
+ Preferences window:
+ add backup_max_files / backup_max_space
- implement the scrolling sizes
- add more stuff (see USER CONFIG NEEDED, below)
+ a dialog to view / load / prune backups.
IDEA: edit.last_Sel : saves previous non-empty selection when current
selection is cleared, can bring back with CTRL-L or menu
WISH: support Windows 95/98/ME
[running on Windows 98SE requires KernelEx]
WISH: can import UDMF format maps
- File / Test Map
+ make filenames absolute
+ configurable stuff [ for each PORT ]
- directory to 'cd' into
- program to invoke
- arguments to use (-iwad, -file, -merge, -warp) ===> PORT .UGH
- support resource wads
- make sure the user built the nodes
(option to invoke it automatically, or not check at all)
- each map (via .dat?) can specify _override_ config
? GUI buttons for NewTag / LastTag commands
- vertex/linedef mode: '[' and ']' to adjust length of current line
- binding functions for all menu stuff (NewMap, OpenMap, etc....)
(perhaps prefix with MENU_xxx)
- improve Key binding preferences:
+ "Grab" button in UI_EditKey
- "Find" or "Match" button for function in UI_EditKey
- reverse ordering of KCTX_XXX values
? config system: OPT_KEY values
- make sure Load/Export wad filename not already in master_dir
- PRINT key to make a screenshot of map or 3D view
- ability to view (perhaps edit) a map header lump
(for FraggleScript etc...)
- ability to create / view / edit / import arbitrary lumps
(e.g. MAPINFO, DECORATE, etc...)
? a way to slow down fake mouse wheels?
IDEA: a dialog to specify directories to find wads.
Initially populate it with the currently hard-coded places
and $DOOMWADDIR and $DOOMWADPATH. Perhaps add places where
the user opened a wad automatically (or ask?).
IDEA: after inserting a new object, allow moving another object
(i.e. set edit.did_a_move = true). Perhaps config item.
WISH: flat drawing in the 2D editing modes
WISH: support ZDoom PK3 for textures (etc)
WISH: support DDF as (or in) a resource file
WISH: support DECORATE as (or in) a resource file
+ cannot Undo after building nodes
- happens because we reload the map (because the current WAD file
has been replaced by a new one)
+ add supported OSes -- e.g. Windows >= 2000
- make a manpage for the debian package, list cmdline options
- document texture browser (RIGHT click etc)
? command line arguments page
- have XXX_NotifyNewMap() functions
- replace usage(s) of fl_input
[ currently just the 'JumpToObject' command ]
+ for the "Edit -> Paste" menu, turn the cursor into crosshairs
and wait until the user selects a spot to paste to.
+ support PNG (etc?) image formats [enabled by a port definition]
--> feature png
- support TX_START / TX_END namespace for textures
--> feature tx_start
+ when dragging a shape next to existing geometry, highlight
vertices and linedefs which would get merged, and implement
Q/ how to handle self-referencing linedefs in auto create/split sector ??
- grid drawing too slow when small step and zoomed out
(since we render a huge number of dots)
--> create an in-memory image (e.g. 64x64) of the dotty grid
and blast it repeatedly to the window
- assume texture names beginning with '#' are special
(The texture checker ignores them -- what else is needed ??)
? when highlighting a sector, draw the things in the same color as
the sector is highlighted, but not as bright. Because many sector
functions will affect things too -- make it obvious to the user.
- disallow insert of new linedef if it would overlap or cross
an existing linedef (or touch an existing vertex).
[overridden when SHIFT is pressed, but no auto sectoring then]
THIS --> if new linedef would cross an existing one, then just
create a new vertex at the intersection point.
AND: similarly if a new linedef passes through an
existing vertex -- create two instead.
- quantization function: prevent linedefs from overlapping / crossing
- Multi-select : if CTRL is pressed, don't clear selection after drag
- exchange object numbers
- some port-specific line/thing flags
IDEA: in Find/Replace panel, can filter things by CATEGORY
? disconnect sectors : include islands (perhaps with 'D')
IDEA: for quantizing a group of objects, try about 9 delta
positions (x+0, x+step/4, x-step/4 etc...) and choose the
- option to reverse mouse movement
+ smooth movement via keyboard
- call a function in Main_Loop
- if did a move, Fl::wait(0) instead of 0.2
- handle key up/down events in UI_Canvas::handle()
- closed sectors have a see-through gap (gets bigger further away)
+ being able to select stuff to modify:
- sidedef uppers and lowers
- moving up/down with RMB should not disable gravity when change
- able to drag things around
- raise floors?
- move vertices?
+ shift textures?
- rotated sprites
- BOOM colormaps
- BOOM deep water
IDEA: a key (or mouse button) to toggle "grab mouse" mode
IDEA: animation mode, render continuously and show any lighting
effects and animated / scrolling textures and sprites
- "USED" category
[ cannot be a SORT method, nor a new check-button ]
+ ability to shrink categories, i.e. say that for things the
'b' (bonus) and 'k' categories should become a single one
- don't show categories which are empty
- can change the [max] size of the texture/flat previews
- scroll speed (i.e. linesize) is configurable
- search box: ',' for OR
- preference for # of RECENT items
? command to clear the recent lists
Game / Port Definitions
- game-def setting: view_height
- ability to "remove line 271" (etc)
- finish HacX support -- categorize the textures
+ support Harmony
? support Chex Quest 1 and 2
- FreeDOOM: categorize the new textures
- a new category for BOOM's "property transfer" linetypes
- make player things bright ??
NO: Restore last window position and maximized state
NO: un-hard-code menu shortcuts?
NO: Scripting language
NO: ability to use an external node builder
NO: if a given pwad (from command line) does not exist, ask to create it
perhaps: --create or --new option?
NO: built-in cheat sheet for mouse buttons and common keys
NO: document the config file syntax
NO: when one vertex of a linedef is moved (and not the other)
update the X offset on the appropriate side (right side for start,
left side for end vertex).
NO: support SPACE/INSERT in linedef mode (and line is highlighted or selected)
split the line and put vertex where mouse is
[ can do this in vertex mode easily enough ]
NO: SHIFT + SPACE = no auto create/split sectors
NO: merge vertex and linedef modes
NO: nicer way to select map, render a small 2D version of each map
and present them in a scrolling list.
NO: ability to drag the camera (on 2D viewport)
NO: when moving a sector and the camera is inside it, move camera too
NO: ability to edit Lua code for OBLIGE prefabs
NO: 3D view: handle very tall/thin window, letter box with black
NO: an auto-save feature (e.g. save every N minutes unless no
changes occurred in the last N minutes).
NO: no-pic mode for textures and flats
MISCELLANEOUS / IDEAS
USER CONFIG NEEDED