Difference between revisions of "Version history"

From 3DGE Wiki
Jump to: navigation, search
m (yikes...insomnia sux)
(removed most of article - time to start over)
Line 17: Line 17:
 
|}
 
|}
 
__NOTOC__
 
__NOTOC__
'''Test Version'''
 
  
Test versions are builds usually designated with the prefix RC, for Release Candidate, TESTx, for TEST (x = number), or by Version Numberx (where x = version number).
+
More coming soon (removed the old Version History for something closer to the ZDoom Wiki)!
 
 
'''Stable Version'''
 
 
 
Stable releases are usually the last in lineage (for instance, 1.36A-F, with F being "Final" and thus reaching "Stable"). These are the ones that are guaranteed to work as intended.
 
 
 
<div style="background: #f2e0ce; border: 2px solid #bfb1a3; padding: 0.6em; margin-top: 0.8em;">
 
note: This article assumes releases in order: [[DosDOOM]], [[EDGE]], and finally [[3DGE]].</div>
 
 
 
=DOSDOOM VERSION HISTORY (1997-1999)=
 
DosDOOM is relevant here because unlike the others, DosDOOM continued directly as EDGE and not as a fork.
 
Many staples of EDGE, like [[DDF]] and [[RTS]] came directly from DOSDoom.
 
<div style="background: #99EBFF; border: 2px solid #bfb1a3; padding: 0.6em; margin-top: 0.8em;">
 
'''Trivia:''' The status bar stayed the same since DOSDoom and was only recently changed in 2014, with 3DGE 1.36F.</div>
 
 
 
== 1997 ==
 
'''DOSDOOM 0.1 (December 23, 1997)'''
 
* Type: DOS release, adapted from Linux Doom
 
<div style="background: #cfc; border: 2px solid #bfb1a3; padding: 0.6em; margin-top: 0.8em;">
 
*What's implemented:
 
  -mouse
 
  -keyboard
 
  -graphics
 
 
 
*What's not implemented:
 
  -sound
 
  -networking
 
 
*Programming Notes:
 
  -since this is a port of the unix version, it probably still looks for config
 
  data in .doomrc, not in default.cfg.  Actually, i havent tried, so i
 
  dunno for sure.
 
  -it took me 4-5 hours to port, half that time was spent tracking an
 
  incredibly stupid little bug (on my part).  Simply put, the program was
 
  printing to stdout (i.e.: printf) while in graphics mode and i couldnt
 
  figure out why the screen was scrolling
 
  -timer resolution is still only to 1/18.2 of a second, that may or may not
 
  make a difference.
 
  -almost all changes were made to i_*.c, but minor tweaks had to be made
 
  to other files.  Most of the new code was just ripped from other programs
 
  i wrote, except the scancode-to-ascii table which was from wolfenstein :)
 
</div>
 
 
 
{more to come}
 
 
 
=EDGE VERSION HISTORY (2000-2011)=
 
Since EDGE is the direct descendant (unlike [[BOOM]] or [[Doom Legacy]]) of DOSDoom, much of the features in EDGE derive from DosDOOM 0.653.
 
 
 
The following marks EDGE's version history, and download/source links as available. Changelogs were directly adapted from the old EDGE website.
 
 
 
== 2000 ==
 
'''EDGE 1.9 (March 8, 2000)'''
 
* Type: Internal version, never released.
 
<div style="background: #cfc; border: 2px solid #bfb1a3; padding: 0.6em; margin-top: 0.8em;">
 
'''New Features:'''
 
* Able to accelerate the text stage of the final final.
 
* Able to have no weapon at all, you just run around with nothing in front of you.
 
* Flats drawn in OpenGL version.
 
* SPIT_SPOT= field for things.ddf, which defines the thing type where the SHOOT_TO_SPOT attack shoots to (for the MAP30 brain shooter).</div>
 
 
 
<div style="background: #fcc; border: 2px solid #bfb1a3; padding: 0.6em; margin-top: 0.8em;">
 
'''Features Removed / Changed:'''
 
 
 
* removed NO_BRIGHT special in colmap.ddf.
 
* removed LUMPEXISTS in lines.ddf and sectors.ddf.
 
* removed LINK field in sounds.ddf.
 
* COLOURMAP= and COLOURMAPLUMP= in lines.ddf and sectors.ddf are gone (use USE_COLOURMAP=[colmap-name] instead).
 
 
 
* All weapon code pointers lost their "WEAPON_" prefix.
 
* WEAPON_SPAWN() code pointer has become EJECT().
 
* EJECT_ATTACK= in weapons.ddf sets default attack for EJECT func.
 
* The -andymagic cmdline option is currently broken.
 
 
* The [] headers in lines.ddf, sectors.ddf and playlist.ddf no longer need the colon `:', just the number, e.g. [123].
 
 
 
* States in attacks.ddf, things.ddf and weapons.ddf have changed. Instead of SPAWN_STATES=XXX, the new syntax is STATES(SPAWN)=XXX. Thus "CHASING_STATES" becomes "STATES(CHASE)", PAINSTATES becomes STATES(PAIN), UPSTATE in weapons.ddf becomes STATES(UP), etc...
 
 
 
* Extrafloors have changed.  There are now three types: THICK, THIN, and LIQUID.  The first two are solid, and cannot exist anywhere else that is also solid.  LIQUID is just that, non-solid and can exist anywhere (e.g. below the real sectors floor). In keeping with that, the "FALL_THROUGH" special was removed, now you can only fall through LIQUID types (unless WATERWALKER comes into play).
 
 
 
* The LDF file was renamed from "default.ldf" to "language.ldf", and the [DEFAULT] entry was renamed to [ENGLISH].
 
 
* The DDF file "mission.ddf" was renamed to "games.ddf".
 
 
 
* The DDF lump DDFMOBJ has been renamed to DDFTHING, and support the other names (DDFCNRY, DDFCRTR and DDITEM) have been removed.
 
 
 
* All DDF files and lumps now need a "tag" near the top, before any entries beginning with [].  This tag determines the type of the entries.  For now, the tag must coincide with the filename.  These are the supported tags:
 
 
 
      <ANIMATIONS>  <ATTACKS>  <COLOURMAPS>  <GAMES>
 
      <LANGUAGES>    <LEVELS>    <LINES>      <THINGS>
 
      <PLAYLISTS>    <SECTORS>  <SOUNDS>      <SWITCHES>
 
      <WEAPONS>
 
 
 
* New benefit/backpack system.  See the DDF docs for the full details, but in summary: the old fields (BENEFIT_TYPE, BENEFIT_AMOUNT, BENEFIT_LIMIT, BACKPACK_XXXX) have been replaced by a single field "PICKUP_BENEFIT" which contains a comma separated list of benefits to give to the player.
 
 
* There are now four levels of armour: GREEN, BLUE, YELLOW and RED (from weakest to strongest).  Green saves 33% of damage, as before, Blue saves 50% of damage, no change there either.  The new ones well I need feedback on what their semantics should be.  For now it is this: Yellow saves 75% of damage, and Red saves 90% of damage.
 
 
* The format of the GIVEARMOUR RTS primitive has changed, it is now:
 
 
 
      GIVEARMOUR  [type]  [amount]
 
  or
 
      GIVEARMOUR  [type]  [amount]  [limit]
 
 
The [type] is one of GREEN, BLUE, YELLOW or RED.  The limit is now optional, it defaults to 200 when absent.
 
 
 
* For the HEALPLAYERS RTS primitive, like above the [limit] is optional and defaults to 200 health points.  BTW, let me know if 100 would be a better default limit.
 
 
* The SECTORV primitive in RTS has changed, but only when used on ceilings.  The old way would subtract the value from the ceiling height.  The new way adds the value to the ceiling height, it is now consistent with floors.
 
 
* The initial ammo and ammo-limits for players is not longer fixed, the new method works just like the PICKUP_BENEFIT field, like this:
 
 
 
      INITIAL_BENEFIT = [benefit] , [benefit] , ... ;
 
 
You can give ammo and set ammo limits this way (used in things.ddf for the player things), but it is not limited to just ammo stuff (e.g. keys, powerups, more health/armour could be given too).
 
 
* The initial weapon of a player is no longer hard-coded to "PISTOL". It will be the weapon with FREE=TRUE in weapons.ddf, and which has the highest priority.  If there are no free weapons, you begin the game with no weapon at all.
 
 
* The PALETTE_REMAP field of things.ddf has changed, it is no longer a number, now it is a colourmap name within colmap.ddf.
 
 
* The VOLUME= field in sounds.ddf used to only be used with the now-defunct LINK feature.  But now VOLUME= controls how much softer than normal the sound is played.  255 is normal value, 128 is half as quiet, and 1 would be barely audible.  Values greater than 255 will make the sound louder than normal, but only upto a point. (Totally untested, no sound support in Linux yet).
 
 
* In lines.ddf and ceilings.ddf, the fields that begin with "FLOOR_" and "CEILING_" (e.g. FLOOR_TYPE) now must begin with "FLOOR." and "CEILING." (e.g. FLOOR.TYPE).  The dot is a separator, for example "FLOOR.TYPE" means the field `FLOOR' and the _subfield_ `TYPE'. It's hard to explain, the main benefit is to make our code smaller and more robust.
 
 
 
* In levels.ddf, the fields that begin with "END" or "PRE" (e.g. PRETEXT) now have a dot after the END/PRE (e.g. PRE.TEXT).  Same reason as above.
 
 
* The following DDF fields have been renamed:
 
 
 
  anims.ddf:
 
    TICS -> SPEED
 
    ISTEXTURE=0 -> TYPE=FLAT
 
    ISTEXTURE=1 -> TYPE=TEXTURE
 
 
 
  switches.ddf:
 
    SWITCHON -> ON_TEXTURE
 
    SWITCHOFF -> OFF_TEXTURE
 
    SWITCHSOUND -> SOUND
 
 
 
  games.ddf:
 
    BACKGROUND -> INTERMISSION_GRAPHIC
 
    BACKGROUND_CAMERA -> INTERMISSION_CAMERA
 
    MUSIC -> INTERMISSION_MUSIC
 
    SPLAT -> SPLAT_GRAPHIC
 
    YAH# -> YAH#_GRAPHIC
 
    TITLE_PIC -> TITLE_GRAPHIC
 
    GRAPHIC_NAME -> NAME_GRAPHIC
 
 
 
  levels.ddf:
 
    GRAPHIC_NAME -> NAME_GRAPHIC
 
    ENDPIC -> END.GRAPHIC
 
    PREPIC -> PRE.GRAPHIC
 
    ENDPICWAIT -> END.GRAPHIC_WAIT
 
    PREPICWAIT -> PRE.GRAPHIC_WAIT
 
 
 
* Default RTS scripts are now in the `edge.scr' file in the same directory as the DDF files.  (i.e. no longer in edge.wad).
 
</div>
 
{more to come here}
 
 
 
=3DGE VERSION HISTORY (2011-)=
 
3DGE is the current iteration of DOSDoom and contains many features, changes, and improvements that wholly separate it from EDGE.
 
 
 
The following marks 3DGE's version history, and download/source links as available.
 
== 2011 ==
 
'''3DGE 1.35D (April 11, 2011)'''
 
* Type: Almost an exact copy of EDGE 1.35 with minor differences.
 

Revision as of 00:11, 11 October 2014

This page tracks the evolution of DOSDoom, EDGE, and finally 3DGE by listing the main features of each version. Next to each is CHANGELOG, which shows the general changelog history in more detail.

By year 1997 · 1998 · 1999 · 2000 · 2001 · 2004 · 2007 · 2008 · 2009 · 2011 · 2013 · 2014
DOSDoom 0.10 · 0.20 · 0.30 · 0.301 · 0.40 · 0.41 · 0.45 · 0.46 · 0.47 · 0.50 · 0.61 · 0.64 · 0.65 · 0.653
EDGE 1.19 · 1.20 · 1.21 · 1.22 · 1.23 · 1.24 · 1.25-WIP · 1.26 · 1.27 · 1.28 · 1.28A · 1.29 Beta #1 · 1.29RC3 · 1.29RC4 · 1.29RC5 · 1.29RC6 · 1.29 · #1.31-Alpha1 · 1.31-Beta1 · 1.31-Beta2c · 1.31-RC1 · 1.31 · 1.32a · 1.32b · 1.32c · 1.34a-TEST · 1.34d-Hubby · 1.34-RC1c · 1.34 · 1.35rc1 · 1.35
3DGE (1.X) 1.35D · pre1.36 · 1.36A · 1.36B · 1.36C · 1.36D · 1.36E · 1.36F · 1.4A
Modern (2.0) Next version


More coming soon (removed the old Version History for something closer to the ZDoom Wiki)!