Annotation of doom/todo, revision 1.1.1.1

1.1       root        1: 
                      2: - create Web repository for sources, patches,
                      3:   news, and pointer to doom-editing mailing
                      4:   list.
                      5: 
                      6: - get DOOM Public License from id
                      7: 
                      8: -----------------------------------------------
                      9: 
                     10: - remove m_fixed, switch to floating point
                     11:   More stable, and prolly even faster.
                     12: 
                     13: - make SCREENWIDTH/HEIGHT work at startup?
                     14:   Well, the HUD/STBar stuff is tied to the
                     15:   scales implied by the graphics. Rather do
                     16:   GLDOOM and use texture mapping.
                     17: 
                     18: - fix aspect ratio?
                     19:   320x200 is nothing viable nowadays.
                     20:   A 320x240 base (4:3) would be a lot better.
                     21:   See above on width/height.
                     22:  
                     23: - limited look up/down by y-shearing?
                     24:   Prolly not worth it, rather switch to GLDOOM.
                     25: 
                     26: - switch to C++?
                     27:   The action function pointers have varying
                     28:   argument lists (no parameter, one, etc.).
                     29:   C++ doesn't like that much. A major rewrite.
                     30: 
                     31: - switch to doommain.c plus libdoom? Have 
                     32:   libref, libgame etc.?
                     33:   Another major rewrite.
                     34: 
                     35: - use XFree86 DGA, prolly not that much faster
                     36:   than MIT SHM, but allows for directly sampled
                     37:   mouse (and even freelook). Recommended for
                     38:   GLDOOM.
                     39: 
                     40: - put together an accompanying developer toolkit
                     41:   source distribution: DEU, RMB, BSP for Linux/X.
                     42: 
                     43: - move info.h, info.c, sounds.h, sounds.c and
                     44:   other data to a separate lump in the WAD,
                     45:   or into a libgame.so, to separate the 
                     46:   generic stuff (refresh, I/O) from the
                     47:   DOOM specifics.
                     48: 
                     49: - decide whether precaching all sounds is
                     50:   better than retrieving and releasing
                     51:   every so often. DOOM seems to do that
                     52:   frequently (8bit stuff, originally for
                     53:   DOS), and the Linux sound is 16bit
                     54:   (conversion in the mixing, requires
                     55:   some padding) - we prolly got the memory
                     56:   to spare.
                     57: 
                     58: - 16bpp CLUT. The lightmaps and the
                     59:   framebuffer could be changed to switch
                     60:   to 64K colors. Prolly better to do
                     61:   GLDOOM right away.
                     62: 
                     63: - remove checks for commercial etc., in
                     64:    non-essential issues (enabling PWAD's).
                     65: 
                     66: - change (simplify) determination of
                     67:    sky texture (done by game version).
                     68:    Explicit?
                     69: 
                     70: - remove all game version checks
                     71: 
                     72: - different handling of Demo - don't
                     73:    exit on "different game version"
                     74: 
                     75: - how about shareware/retail "You are here"
                     76:    intermission animation? Wasn't in
                     77:    commercial (DOOM 2).
                     78: 
                     79: - double shotgun in DOOM1, all weapons with
                     80:    shareware
                     81: 
                     82: - checks for required lumps. We need fallbacks
                     83:    for lumps that are not present, that is,
                     84:    default sounds etc. to be used instead,
                     85:    or removing THINGS w/o sprites etc.
                     86: 
                     87: - client/server? I'd suggest ripping off some stuff
                     88:    from the abandoned IBM WebView project
                     89: 
                     90: - Blockmap
                     91:    The BLOCKMAP lump might be (partly) redundant,
                     92:    as the BSP allows for clipping (except certain
                     93:    LineDefs that will not spawn Segs).
                     94: 
                     95: - LOS
                     96:    REJECT and intersection based LOS checking could be
                     97:    done using the BSP. In case of REJECT, certain
                     98:    monster AI special effects would be lost, though.
                     99: 
                    100: - correct handling of height in collision. This is
                    101:    not done, and the checks are scattered around in
                    102:    many places. It does require handling of "player
                    103:    on top of monster" situations, too - we have to 
                    104:    make sure the players falls off far enough to
                    105:    avoid getting "stuck in monster".
                    106: 
                    107: - remove obsolete menus (Detail. Music Volume?)
                    108: 
                    109: - clip explosion range damage (and sprites) using
                    110:    REJECT? That is, if one Sector/SSector not
                    111:    visible from the other, do not apply damage,
                    112:    not render sprite if player in other sector.
                    113:    Hmmm - explosion behind small pillar might not be
                    114:    visible at all, but do we care?
                    115: 
                    116: 
                    117: - Ungraceful and untimely demise of Linuxdoom (core
                    118:    instead of I_Error) will leave idle sndserver
                    119:    processes in your system, blocking /dev/bsp.
                    120:   A timeout on lack of input for "sndserver"?
                    121: 
                    122: - threaded sndserver? SHM mixing buffer?
                    123:    Or internal, timer-based?

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.