raze/polymer/eduke32/ChangeLog

258 lines
12 KiB
Text

=EDuke32 ChangeLog=
==1.3.1-1==
- Game: fixed issue with multiplayer switches
==1.3.1==
- Core: sync with JFBuild SVN
- Core: on-disk compressed texture cache for greatly improved level load times (JF)
- Core: virtual game file system similar to Quake (JF)
- Core: re-tooled screen tinting and gamma correction in OpenGL (JF)
- Game: sync with JFDuke3D SVN
- Game: added option to disable automatic weapon switching (JF)
- Game: mouse input smoothing (JF)
- Game: pre-caching of HUD sprites (JF)
- Game: redesigned game settings menu with several new options
- Game: menus are now drawn over the status bar rather than under it and have a tinted background in OpenGL
- Game: FPS counter color now changes when frame rate is under 40
- Game: added -z# command line parameter to set CON compiler verbosity level
- Game: added parsing of autoexec.cfg on startup
- Game: adjusted default tripbomb plant delay to match Duke3D 1.5
- CON: added getinput/setinput commands to read/write to/from sync[] in conjunction with EVENT_PROCESSINPUT
- CON: completely rewritten compiler error handling
- CON: findnearactor/findnearsprite and variants now exponentially faster
- CON: better handling of duplicate event errors
- CON: improvements to switch/case commands, fixes several bugs
- CON: added per-actor flags for controlling shade, shadow, NVG presence, et cetera
- CON: added EVENT_USE and EVENT_PROCESSINPUT
- Console: added "exec", "cmenu", "gamma", "give" and "sensitivity" console commands
- Mapster32 changes:
- General: mouse input smoothing (JF)
- General: informational messages now logged to console and mapster32.log
- General: improved mass palette change function
- General: improved mass visibility change function
- 2D mode: improved search function
- 2D mode: added shift-G key combination to increase grid size
- 2D mode: added guide lines to the top and left side of the screen; hold shift for full guide
- 3D mode: added + and - shortcut keys for incrementing/decrementing tile number
- 3D mode: added mouse control for commonly used functions
- 3D mode: refined various status messages
- 3D mode: mouse cursor now fades from white to black to increase visibility
==1.3.0==
- Added EVENT_PRESSEDFIRE
- Minor fixes to getwall/setwall
- Engine updated to newest snapshot
==1.3.0rc0==
- Updated to current developmental JFDuke3D and engine, including precaching system.
- New projectile definition syntax, uses labels like setprojectile
- Cheat redefinition allowing both the "D" and "N" keys as well as the actual cheats to be changed.
- Gametype customization via definegametype command
- Logo and title screen customization via LOGO_FLAGS gamevar
- All defined labels are now marked as a specific type, guaranteeing more stability and fixing some broken mods.
- Potential multiplayer sync problems are now reported on startup
- Con commenting system rewritten to be more error free and allow comments in the middle of commands
- New quote manipulation abilities, allowing the user to:
- Redefine quotes mid-game
- Plug the values of gamevars into quotes
- Concatenate the contents of one quote onto the end of another
- Copy one quote to another quote position
- All event names are now internally defined and no longer need definitions in the CONs.
- Added EVENT_LOGO, EVENT_EGS and EVENT_DOFIRE.
- Modified variable system to allow constants in place of read only gamevars and to allow prefixing a variable name with
a minus to use the negative of the var's value
- Pitch and roll control for models, accessed via get/setactor[].pitch and .roll. Also see .mdxoff, .mdyoff and .mdzoff.
- All hard coded tile definitions are now changeable from defs.con (note: enable dynamic remapping via dynamicremap command)
- The values of gamevars can be saved to and read from the .cfg
- Weapon control enhancement: all weapons now have a WEAPONx_RELOADSOUND1 and a WEAPONx_RELOADSOUND2 which control which
sounds are played when the magazine is inserted or removed.
- Added WEAPON_FLAG_RELOAD_TIMING (defined as 32768) hack for special reload sound timing on things like the pistol
- Added the following primitives:
- definecheat
- cheatkeys
- userquote
- precache
- projectile
- redefinequote
- dynquote
- getpname
- qstrcat
- qstrcpy
- setsprite
- rotatepoint
- dragpoint
- getzrange
- changespritestat
- getceilzofslope
- getflorzofslope
- neartag
- definegametype
- changespritesect
- spriteflags
- savegamevar
- readgamevar
- findnearsprite
- findnearsprite3d
- findnearspritevar
- findnearsprite3dvar
- dynamicremap
- Miscellaneous cleanups all over the code (the diff is 36,000+ lines!)
==1.2.3==
- Updated to current developmental JFDuke3D and engine
- Added the following primitives:
- displayrandvar
- displayrandvarvar
- checkavailinven
- globalsoundvar
- guniqhudid
- getprojectile
- getthisprojectile
- setthisprojectile
- Modified projectile system as follows:
- Each projectile in flight now has its own properties which can be set using
get/setthisprojectile in event 64
- setprojectile sets the default for all projectiles of that type, whereas
setthisprojectile only affects the specific projectile
- Fixed range property not working on RPG type projectiles
- Upped max sounds to 1500
- Added support for more/less than 4 episodes. The number of episodes is defined by
the last definevolumename instance found upon compilation. Max is 8.
- Added EVENT_GETMENUTILE: RETURN value sets background for main menu, set MENU_TILE
var to 1 for tiled, leave set to 0 for an image that fills the screen.
- Added EVENT_SPAWN: called every time an actor is spawned, use this to set properties
on actors at spawn time.
- Logo animation and splash screens disabled during multiplayer
- Out of sync fix for event 64
- Added support for setting the loogiex and loogiey members of the player struct
- Minor internal changes, bug and compiler warning fixes
- Added setvar console command for debugging
- Modified WEAPKEY events; support weapon key remapping (set RETURN to desired weapon num)
- Mapster32 changes:
- Fixed bug which disabled creating masked walls
- Added ' D 2D mode key combination to delete all sprites of a specific picnum
- Added ' N key combination to enable/disable noclip
- Fixed a few compiler warnings
==1.2.2==
- Updated to current JFDuke3D and engine, which brings the following:
- MD3 support
- fixed network sync issues
- minor renderer fixes
- Player movement events now work in multiplayer (thanks JonoF)
- Added sound_pitch member to player struct
- Added EVENT_NEXTWEAPON, EVENT_PREVIOUSWEAPON, EVENT_SWIMUP and EVENT_SWIMDOWN
- Added multi-purpose event "64" which runs on all sprites in the game, allowing for
manipulation of virtually everything in the game world
- Added user-definable colored fog: simply add lines similar to the following to your duke3d.def:
fogpal <palette number> <red intensity> <green intensity> <blue intensity>
Intensities range from 0-63, and palettes 26, 27, 28 and 29 are pre-defined for you as
white, red, green and blue respectively. Sector visibility controls fog density.
- Added movement_lock[] member to player struct. Functionality will be explained upon request
until the wiki is updated. As can be guessed, this is used to lock player movement.
- Fixed a couple of reload bugs
- Projectile system internally optimized and improved (ripped out remnants of variable based
system as well as modified the system to restore projectile defaults on game restart)
- Added the following primitives:
- movesprite
- checkavailweapon
- updatesectorz
- ssp
- stopallsounds
- soundoncevar
- stopsoundvar
Movesprite, checkavailweapon, updatesectorz and ssp work exactly as their
internal counterparts do. The sound commands are self-explanatory.
- Minor fixes to the error handling system -- it is now impossible to redefine internal
pointer gamevars. Some error messages also made more descriptive.
- Fixed handling of bad CON files
- Added "-condebug" command line parameter which prints one line to the init window per line
compiled. This is useful in cases where you've encountered a bug in the CON parser which
throws you into an infinite loop on compile, as you can see where the problem happened.
- Fixed "DNITEMS" cheat not triggering item cheat events
- CON commands "addlog" and "addlogvar" now print to console and log to eduke32.log
with all of the other log information rather than log.log
- Fixed multiplayer menu problem
- Added PROJECTILE_FLAG_RPG_IMPACT (defined as 32768) to projectile flags. This flag causes
an RPG type projectile to directly damage whatever it hits rather than do radius damage.
- By request, changed how Duke moves when submerging into and emerging from underwater sectors
- Various minor code clean-ups and fixes
- Mapster32 changes:
- Added ' 5 2D mode key combination for changing the shade of every parallaxed ceiling
on the map at once
- Added ' 6 2D mode key combination for changing the height of every parallaxed ceiling
on the map at once
- Added ' Z 2D mode key combination for offsetting an entire map on the Z plane. This
is useful for merging sections of maps into other maps.
- Added Left ALT ' 7 2D mode key combination for scaling the entire map (multiply)
- Added Left ALT ' 8 2D mode key combination for scaling the entire map (divide)
- Added ' M key combination for setting .extra member (this is the SW middle tag)
- Help menus re-organized to be more useful
- Added ' P 3D mode key combination to set palette on all sectors selected in 2D mode
- Added ; V 3D mode key combination to set visibility on all sectors selected in 2D mode
- Added support for running without lookup.dat (obviously, this will disable alt pals)
==1.2.1==
- Updated to current JFDuke3D and JFBuild release, see releasenotes.html for details
- Mapster32 updated to 1.0.1, hit F1 in 2D mode for new feature rundown
- Added "spritenoshade" command. This command works just like spritenvg and spriteshadow, and does
exactly what it claims to do.
- Fixed 1.2.0 bug which made the player's APLAYER sprite's position shift across the map each time a
bullet hole was left on a wall.
==1.2.0==
- Updated to current JFDuke3D and JFBuild release, see releasenotes.html for details
- Introduction of Mapster32, the enhanced Build editor version 1.0.0
- Lots of miscellaneous code clean-ups and bug fixes
- Fixed pre-placed tripbomb bug from EDuke32 1.0.0
- Increased MAXCYCLERS to 1024
- Renumbered EVENT_AIMDOWN to be event 63
- Ripped out unused NAM and WW2GI-specific code
- Ripped out unused code specific to foreign, demo and beta versions of Duke
- Added several new primitives, as follows:
- whilevarn
- switch
- case
- default
- endswitch
- shootvar
- soundvar
- findplayer
- findotherplayer
- activatebysector
- operatesectors
- operateactivators
- operatemasterswitches
- checkactivatormotion
- zshoot
- dist
- ldist
- shiftvarl
- shitvarr
- spritenvg
- getangle
- whilevarvarn
- hitscan
- getplayervar
- setplayervar
- mulscale
- setaspect
Descriptions of these commands will be available soon on EDukeWiki
- Added "reloading" member to player struct (1 when reloading, 0 when not, weapon changes blocked while 1)
- Fixed setuserdef
- Fixed eventloadactor
- Added ud.statusbarscale to get/setuserdef
- Restricted all screen drawing commands to events
- Fixed issues with several events
- SHOTSPARK1 now sets temp_data[6-8] to hitwall, hitsect and hitspr, in that order
- Tweaked the operation of weapons to allow identical operation to Duke3D 1.5 (may cause issues with some existing mods)
- All effector sprites now made non-blockable non-hitscan-sensitive on map start
- Added "range" field to custom projectile system