+  Preferences:
   -  sector_render_default
   -  headroom button values
   -  ability to change mouse move/turn speed in 3D view
   -  floor_bump_xxx values

+  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)"

+  Proper system to specify which ports can be used with each game.

   Perhaps it would group games into classes (e.g. most of the current
   games would be "doom" class).  Then each port can specify which
   classes of games it supports.


+  a tutorial for the basics

   - describe what a wad file is, PWAD vs IWAD, how to play it,
     what nodes are, how wad files can contain more than maps,
     different games and source ports

   - describe basic elements of a map: Lines, Vertices, Sectors, Things, SideDefs

   - describe the four modes V/L/S/T, and their panels

   - hilighting stuff, selecting stuff, dragging stuff

   - drawing lines in VERTEX mode

   - using the browser

   - common pitfalls

+  information on each binding command, parameters etc..


+  automatically build nodes on save (only for that map)
   (need to more tightly integrate a node builder into the code)

+  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)

3D View


+  when opened by a click, jump to the texture/thing/etc clicked on




+  Large font mode, more readable on 1920x1080 monitors

+  sprite rendering in the 2D canvas

+  ability to hide the right-side panel

?  a toolbar

-  a key to copy properties TO defaults (e.g. shift-C)

-  View/Place Camera command, cursor turns into +

+  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: integrate Visplane Explorer

IDEA: MMB on sidedef/sector tex : open RECENT browser

WISH: support Windows 95/98/ME

      [running on Windows 98SE requires KernelEx]

WISH: can import DWD (DoomEd) format maps

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

-  tag checking: check for valid usage of special 666 / 667 tags.

-  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

-  make sure Load/Export wad filename not already in master_dir

-  PRINT key to make a screenshot of map or 3D view

?  config system: OPT_KEY values

?  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: for generalized lines, show more info in tooltip of desc

IDEA: after inserting a new object, allow moving another object
      (i.e. set edit.did_a_move = true).  Perhaps config item.

IDEA: "fix" missing coop starts, place them near player #1

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 >= XP

-  document texture browser (RIGHT click etc)

-  make a manpage for the debian package, list cmdline options

-  command line arguments page


-  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
   that merging.

-  a proper "curve" tool for making a circle arc or bezier curve,
   and new vertices would be constrained to that curve, and you can
   move existing vertices onto the curve.

-  assume texture names beginning with '#' are special
   (The texture checker ignores them -- what else is needed ??)

?  quantization function: prevent linedefs from overlapping / crossing

?  Multi-select : if CTRL is pressed, don't clear selection after drag

-  more port-specific line/thing flags

Q/ how to handle self-referencing linedefs in auto create/split sector ??

Q/  disconnect sectors : include islands (perhaps with 'D')

IDEA:  in Find/Replace panel, can filter things by CATEGORY

IDEA: for quantizing a group of objects, try about 9 delta
      positions (x+0, x+step/4, x-step/4 etc...) and choose the
      "best" quantization.

3D View

+  draw the sky (optionally)

-  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:
   - things
   - floors
   - ceilings
   - sidedef textures

-  moving up/down with RMB should not disable gravity when change
   is small

-  able to drag things around
   - raise floors?
   - move vertices?
   + shift textures?

-  rotated sprites

+  slopes

-  BOOM colormaps

-  BOOM deep water

?  extrafloors

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


+  ability to shrink categories, i.e. say that for things the
   'b' (bonus) and 'k' categories should become a single one

-  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

+  support Harmony

+  a ZDoom configuration

-  support Doom-in-Hexen mapping

-  conversion between Hexen <--> DOOM formats

-  game-def setting: view_height

-  FreeDOOM : categorize all the new textures

-  HacX : categorize the textures

IDEA: for DOOM have "Switch", "Grating", "Door" categories

WISH: conversion from Boom --> vanilla DOOM

Possible user config

render_forward_speed  (16)
render_turn_speed     (16)
render_updown_speed   (16)

paste_reselects  (true)



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:  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

NO:  exchange object numbers

NO:  check that current pwad has been externally modified

NO:  when highlighting a sector, draw the things in the same color
     but diimer, to show sector operators will affect things too

NO:  support Chex Quest 1 and 2

NO:  ability to "remove line 271" (etc) in port definitions

NO:  "USED" category for the browser

NO:  speed up grid drawing when step is small and zoomed out

Recent Changes   Page last modified on January 26, 2016, at 02:26 AM