pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/games/prboom-plus games/prboom-plus: Update to 2.6.2



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b6e268fb280c
branches:  trunk
changeset: 373503:b6e268fb280c
user:      micha <micha%pkgsrc.org@localhost>
date:      Fri Feb 11 15:12:42 2022 +0000

description:
games/prboom-plus: Update to 2.6.2

PrBoom-Plus 2.6.2 @ 11 Feb 2022
- added a prospective fix for OpenGL rendering: don't bleed walls
  through sky floors
- account for proper crosshair offsets when locked on to monsters
- relaxed "IWAD tag not present" error to a warning, which allows
  loading REKKR IWAD
- fixed processing of multiple DEHs
- UMAPINFO: fixed error reporting if token == TK_NoToken
- fixed intermission screen for E0Mx
- fixed Alt+Tabbing on Windows, broken in new SDL2 version
- UMAPINFO: fixed using_FMI reset * no more crashes at textscreens
  (e.g. after MAP06, MAP11 or MAP20) after viewing finale picture upon
  finishing a level with UMAPINFO 'endpic' property
- fixed freezing at TITLEPIC while using mousewheel in menus
- fixed looping forever in G_NextWeapon()
- UMAPINFO: fix 'entering' and 'enterpic' shown on exit levels
- GL: adjust sky offsets for non-standard FOVs
- fixed stuttering with uncapped framerate
- added support for widescreen low resolutions
- added REKKR to launcher string list
- let G_GotoNextLevel() close the circle for maps with an endpic
- Launcher: identify IWADs either by IWAD tag, or by PWAD tag and
  matching filename
- Portmidi: fix freeze after song change
- fixed scaled time interpolation when changing game speed
- fixed wrong pitch of SFX when MIDI Player is set to SDL
- v1.2 compat:
   * do not use sfx_getpow for powerups
   * do not render powerups and attacking Spiderdemon fullbright
- UMAPINFO: fixed par times not showing
- fixed demo playback warp consistency
- added SKILL cheat to display current skill level
- fixed calculation of interpolation frac value
- guard against screen buffer underflow
- fixed crash at startup by properly closing IWAD file handle
- added vanilla_keymap option à la Chocolate Doom
- added 'run' as a mouse-settable control (mouseb_speed)

PrBoom-Plus 2.6.1um @ 16 Aug 2021
- fixed MOD playback with DUMB 2.x
- added TNTCLxx cheat, e.g. TNTCL04 sets complevel 4 (Final DOOM)
- draw crosshair before messages, draw crosshair for fist/chainsaw and
  during on-screen messages
- fixed crosshair locking on target for melee weapons
- more consistently check for ammo instead of weapon type
- fixed odd strafe values (vanilla allows even values only)
- added TNTSHORT cheat to toggle shorttics on and off while in game
- fixed typo in ZDoom-style Actor name (Slalagtite -> Stalagtite)
- fixed Windows Alt-Tab
- fixed a memory leak on SDL_Quit()
- preserve automap position/scale when toggling overlay mode
- allow binding weapon selection to mouse buttons
- add a `-pistolstart` command-line parameter
- fixed crashes on WADs with empty music lumps, e.g. Nihility.wad
- enabled loading 16 bit RIFF wavs in WADs
- make low-pass sound filter (introduced by the previous change)
  optional
- if executable directory appears not writable, fall back to `.`
- made pitch-shift range independent of target samplerate
- fixed bogus condition preventing automap lines from being drawn
- fixed saving of mouse button bindings
- fixed interpolated z-coordinate after teleporting
- added a new option "Disable sound cutoffs" to allow removed map
  objects to finish playing their sounds and to make seesounds
  uninterruptible
- allow deleting savegames from menu
- fixed automap crash when `USE_VERTEX_ARRAYS` and `GL_VBO` are
  undefined
- fluidsynth: reset all controllers when looping a song
- fixed hanging notes on exit when using Portmidi
- show current and next levels when typing IDCLEV cheat
- added a config key for "exclusive" i.e. mode-changing fullscreen
- UMAPINFO: if interbackdrop does not specify a valid flat, draw it as
  a patch instead
- appended revision tracker to UMAPINFO spec document
- ALSA sequencer API backend for ALSA MIDI support (Linux only)
- extended range of maps reachable via `-warp` and IDCLEV:
   * from E1M1-E4M9 to E1M0-E9M99 for D1
   * from MAP01-MAP33 to MAP00-MAP99
   * Limitations:
     * E0My doesn't work, since episode must always be > 0
     * `-warp x 0`, because zero passed to `-warp` as map number is used
        to warping to first changed map in PWAD
- evaluate mouse motion only once per tick
- show Time/STS widgets above status bar
- removed lowpass-filter item from menu
- fixed `P_SetMobjState()` stack, fixes crash on
  mayhem18p.wad/m18p31-1509.lmp
- fixed crash in automap on certain maps (e.g. Sunlust MAP01) when using
  GL renderer, Thing Appearance = Icons and 2xIDDT
- fixed menu intermission desync
- fixed crash when leaving menu in Chex Quest
- initialize the map title widget with the generic map lump name
- make "Next Level" key simply increase map number if already outside
  regular level transition range
- check for next level in IDCLEV cheat before announcing it
- make sure "Next Level" key never warps to a non-existent map
- reformatted umapinfo.txt so that it is easier to read in plaintext
- fixed custom episode select for Doom 2
- fixed shifting automap markers
- allow translucent sprites on all complevels
- allow disabling predefined translucency on all complevels
- fixed flood HOM on certain maps (e.g. Plutonia MAP11, HR MAP01) (GL)
- fixed sky walls for cases with sky vs. sky toptextures (e.g. E4M6)
  (GL)
- fixed transparent spites being rendered incorrectly with transparent
  walls in view (GL)
- generate a default save-slot name when saving to an empty slot
- added mouse button binds for turn left/right
- fixed sky scaling for non-standard sky sizes, e.g. Eviternity and
  Ancient Aliens (GL)
- added new advanced HUD layout by Fireb3rt+
- added slice_samplecount config option
- added manifest to declare app as DPI aware, so that Windows will not
  apply DPI virtualization
- added support for widescreen assets
- added ZDoom's names for the new Crispy Doom/DEHEXTRA things to
  ActorNames[], so they can be used with BossAction() if needed
- fixed UMAPINFO music restarting issue
- skip the 'entering level' screen if one of endgame, endpic, endbunny
  or endcast is set (UMAPINFO)
- fixed endbunny and endgame UMAPINFO fields
- reset mlook on demo recording
- added OpenGL sprite fuzz options ("darken", "shadow", "transparent",
  "ghostly")
- properly check for the CreateFileMapping() symbol (build)
- always precache sound lumps
- replace W_SafeGetNumForName() with W_CheckNumForName()
- removed defunct lump locking warnings
- removed obsolete SFX usefulness references
- allow colored blood to get set/overridden by DEHACKED, implemented
  Eternity's coloredblood spec, added three additional color translation
  tables for black, purple and white
- made the Ouch Face fix available on all complevels
- added the autoload directory feature from Chocolate Doom
- implemented custom atexit() sequence, ported over from Chocolate Doom,
  fixing crashes during shutdown e.g. on Linux using Wayland
- fixed switching weapons when reaching zero ammo with
  boom_autoswitch == 0
- made Doom sound quirk fixes available on all complevels
- UMAPINFO: introduced the new 'label' field
- do not cast degenmobj_t as mobj_t, breaks aliasing rules on platforms
  where mobj_t pointers are 64-bit aligned and degenmobj_t pointers are
  only 32-bit aligned
- fixed `-solo-net` for demo restart
- fixed levelstat crash for MAP33 and above
- added autoload per PWAD feature, further enhancing the autoload
  directory feature
- UMAPINFO: fixed 'episode' field parsing, 'label' is single-line
- removed obsolete weapon toggle setting
- added ftell() and fseek() implementations for DEHACKED lumps, allowing
  the DEH parser to roll back to the start of a line following a blank
  line and re-process it with the last valid block code handler
- added mouse look / vertical mouse movement toggle notifications
- fixed forcing aspect ratio correction only for the canonical 16:10
  (i.e. 320x200 and 640x400) modes
- do not even attempt to play DEMO4 if it is not available
- only apply palette changes when inside a level
- fixed 32-bit widescreen pain palette
- added a `-coop_spawns` parameter for using "coop in single-player" mode
- fixed OpenGL effect palettes
- added support for non-latin paths and filenames on Windows
- made sure to always autoload prboom-plus.wad
- introduced a supplemental data directory "PRBOOMDATADIR" to install
  prboom-plus.wad into (build)
- prepared for different autoload base directories, respecting the
  `-noload` parameter
- fixed playback of complevel 11 demo with UMAPINFO
- fixed attempted playback of a UMAPINFO demo without UMAPINFO loaded
- never exceed desktop resolution in fullscreen desktop mode
- UMAPINFO: entries without defined 'levelname' fall back to default
- UMAPINFO: fixed default intermission
- fixed setting 'finaleflat' in FMI_StartFinale (UMAPINFO)
- fixed load game during multiplayer demo playback
- fixed OpenGL backfill

PrBoom-Plus 2.6um @ 09 Feb 2021
- fixed episode selection when playing Doom 2
- fixed Doom 1 level progression
- print a blinking arrow next to the currently highlighted menu item
- print another blinking arrow to the right of the currently selected
  menu setting
- support the DOOMWADPATH environment variable
- add some extra states, sprites and mobjtypes from Doom Retro and
  Crispy Doom
- fullscreen desktop for the software renderer
- improved v1.2 compat:
  - fixed a desync on the internal demo in DTH1.WAD
  - fixed the walkways to the BFG rising a little too high on 1_ON_1.WAD
  - moving floors (except plats) should not make the floor stop sound
- fixed infinite loop in macOS launcher
- added CMake build system
- fixed the mainfest to allow 64 bit builds
- fixed PortMidi support on 64-bit Windows
- disabled the "popping skull player death" easter egg
- do not wait for VSync if running a timedemo
- added -statdump parameter from Chocolate Doom
- added mouse-strafe divisor setting
- removed and/or replace all non-free data lumps
- improved Boom random seed
- added -stroller param
- include secret exit in -levelstat
- added configurable quickstart window
- disallow 180-turn with strafe on
- fixed endianess for 32-bit ZDoom nodes
- show Extended Help screen when pressing the Help key
- made armor color depend on type, not amount
- added Chocolate Doom mouse behavior option
- fixed Boom autoswitch behavior
- reinstated the "WEAPON ATTACK ALIGNMENT" menu option
- changed "SECRET AREAS" menu option to "REPORT REVEALED SECRETS"
- fixed endianess for DeePBSP V4 nodes
- show error message boxes on Windows, except when video-dumping a demo
- unbind game speed changing keys in default config
- fixed heap buffer overflows in UDP multiplayer code
- fixed -longtics having no effect
- changed video capture to an ffmpeg-based approach
- track demo joins for TAS-detection purposes
- fixed some episode transition issues when using UMAPINFO
- added automap rotate and overlay keybindings to menus
- fixed a bug in DeHackEd string replacements with a length of exactly
  four
- added "Dropped Item" menu support
- enabled automap Follow Mode by default
- disabled chorus and reverb for Fluidsynth by default
- fix segfault with -viewangle parameter
- next levels no longer reset if endscreen is disabled in UMAPINFO
- added 200 Sounds for DEHEXTRA
- respawn when using IDDQD while dead
- fixes for empty DeHackEd lumps and entries
- restrict "next level" button usage to in-level only
- added adaptations for fluidsynth 2.0
- added "No Vertical Mouse" setting and keybind
- save / load -complevel 9 friction
- added extensible demo format + "PR+UM" signature
- made canonical resolutions (320x200, 320x240, 640x400 and 640x480)
  always available in menu, regardless of what video driver/SDL report
- fixed aspect ratio for canonical resolutions; be sure to set
  "Aspect Ratio" to "Auto" and "Status Bar and Menu Appearance" to
  "Not Adjusted" for both 320x200 and 640x400
- set minimum windows size to prevent window from shrinking when
  changing video modes
- "Screen Multiple Factor" now functions like a "window size factor"
  (i.e. like "-1", "-2", "-3" in Chocolate Doom) and has no effect in
  fullscreen modes
- added "Integer Screen Scaling" option (à la Crispy Doom), which
  restricts the screen size to integer multiples of the game resolution,
  under Options -> General, page 5
- both executables now share the same config file "prboom-plus.cfg",
  with all config keys always preserved - including the GL-related ones
- switched to the unified executable "prboom-plus" with optional OpenGL
  rendering
- portmidi: pitch bends are now reset when stopping song
- added support for more mouse buttons
- fixed resolution-independent mouse sensitivity
- added demo restart functionality - record a new demo on map restart
- setup menus remember last active item
- fixed the KFA cheat sting not read from .bex patches
- UMAPINFO docs updated re: "bossaction" field
- fixed a crash when running out of space while typing in a file path
  into the autoload fields (Options -> General, page 2)
- fixed the "Garbage lines at the top of weapon sprites" issue (#95)
- add support for named complevels on command line:
  -complevel 1.9      = -complevel 2
  -complevel doom2    = -complevel 2
  -complevel ultimate = -complevel 3
  -complevel udoom    = -complevel 3
  -complevel final    = -complevel 4
  -complevel tnt      = -complevel 4
  -complevel plutonia = -complevel 4
  -complevel boom     = -complevel 9
  -complevel mbf      = -complevel 11
  -complevel vanilla  = complevel autodetected according to IWAD loaded
- allow MBF sky transfers in all complevels
- add support for colored blood and gibs
- fixed key-bindings unusable after mouse-wheel up/down

PrBoom-Plus 2.5.1.7um @ 16 Jun 2019
- adds a special marker to demos recorded with UMAPINFO
- addes support for ZDBSP's compressed node format
- fixes the rendering problems in OpenGL
- fixes TRANMAP caching

PrBoom-Plus 2.5.1.6um @ 11 Jun 2019
This fixes a major bug with the episode selection menu not working and
adds IDCLEV checks for maps outside the standard range.

PrBoom-Plus 2.5.1.5um @ 10 Jun 2019
First official release with UMAPINFO support

2.5.1.4.umapinfo_test @ 22 Apr 2017
Beta version with UMAPINFO support.
Note that this is for testing as the newly added MAPINFO feature has
not seen thorough testing yet.

diffstat:

 games/prboom-plus/DESCR                |   2 +
 games/prboom-plus/Makefile             |  60 ++++++++++++++++++++++++++-------
 games/prboom-plus/PLIST                |  25 ++++++-------
 games/prboom-plus/distinfo             |   8 ++--
 games/prboom-plus/files/INSTALL.pkgsrc |   6 +++
 5 files changed, 71 insertions(+), 30 deletions(-)

diffs (142 lines):

diff -r 1b4e19482f18 -r b6e268fb280c games/prboom-plus/DESCR
--- a/games/prboom-plus/DESCR   Fri Feb 11 14:56:15 2022 +0000
+++ b/games/prboom-plus/DESCR   Fri Feb 11 15:12:42 2022 +0000
@@ -1,3 +1,5 @@
 PrBoom+ is a modified version of id Software's classic game DOOM.  It
 runs on several platforms (including Win32 and Unixes) and features many
 additions to the original game.  It also supports multiplayer games.
+
+This package contains the SDL2 branch with UMAPINFO support.
diff -r 1b4e19482f18 -r b6e268fb280c games/prboom-plus/Makefile
--- a/games/prboom-plus/Makefile        Fri Feb 11 14:56:15 2022 +0000
+++ b/games/prboom-plus/Makefile        Fri Feb 11 15:12:42 2022 +0000
@@ -1,24 +1,58 @@
-# $NetBSD: Makefile,v 1.8 2020/03/20 11:57:43 nia Exp $
+# $NetBSD: Makefile,v 1.9 2022/02/11 15:12:42 micha Exp $
 
-DISTNAME=      prboom-plus-2.5.1.4
+DISTNAME=      prboom-plus-2.6.2
 CATEGORIES=    games
-MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=prboom-plus/}
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=coelckers/}
+GITHUB_TAG=    v${PKGVERSION_NOREV}
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=      http://prboom-plus.sourceforge.net/
+HOMEPAGE=      https://github.com/coelckers/prboom-plus
 COMMENT=       Multiplayer-capable and modified version of DOOM
 LICENSE=       gnu-gpl-v2
 
-GNU_CONFIGURE=         YES
-CONFIGURE_ARGS+=       --with-waddir=${PREFIX}/share/doom
+USE_LANGUAGES= c99 c++
+USE_CMAKE=     yes
+USE_TOOLS+=    gmake pkg-config
+
+WRKSRC=                ${WRKDIR}/prboom-plus-${PKGVERSION_NOREV}/prboom2
+
+# DOOMWADDIR is intentionally shared with other Doom packages
+DOOMWADDIR=    share/doom
+
+CONFIGURE_DIRS=        build
+CMAKE_ARG_PATH=        ..
+CMAKE_ARGS+=   -DCMAKE_BUILD_TYPE=Release
+CMAKE_ARGS+=   -DPRBOOMDATADIR=${PREFIX}/${DOOMWADDIR}
+CMAKE_ARGS+=   -DDOOMWADDIR=${PREFIX}/${DOOMWADDIR}
+CMAKE_ARGS+=   -DWITH_DUMB=OFF
+CMAKE_ARGS+=   -DWITH_FLUIDSYNTH=OFF
+CMAKE_ARGS+=   -DWITH_PORTMIDI=OFF
 
-SUBST_CLASSES+=                gamesdir
-SUBST_STAGE.gamesdir=  pre-configure
-SUBST_MESSAGE.gamesdir=        Fixing hard-coded gamesdir
-SUBST_FILES.gamesdir=  src/Makefile.in
-SUBST_SED.gamesdir+=   -e '/^gamesdir =/ s;/games;/bin;g'
+# Process INSTALL.pkgsrc
+SUBST_CLASSES+=                install
+SUBST_STAGE.install=   do-configure
+SUBST_MESSAGE.install= Preparing INSTALL.pkgsrc file ...
+SUBST_FILES.install=   ${WRKDIR}/INSTALL.pkgsrc
+SUBST_SED.install=     -e 's,DOOMWADDIR,${PREFIX}/${DOOMWADDIR},'
+
+pre-configure:
+       cd ${WRKSRC}; mkdir build
+       ${CP} ${FILESDIR}/INSTALL.pkgsrc ${WRKDIR}
 
-.include "../../audio/SDL_mixer/buildlink3.mk"
-.include "../../net/SDL_net/buildlink3.mk"
+post-install:
+       ${INSTALL_DATA} ${WRKDIR}/INSTALL.pkgsrc \
+               ${DESTDIR}${PREFIX}/share/doc/prboom-plus/INSTALL.pkgsrc
+
+.include "../../audio/SDL2_mixer/buildlink3.mk"
+.include "../../audio/libmad/buildlink3.mk"
+.include "../../audio/libvorbis/buildlink3.mk"
+.include "../../devel/SDL2/buildlink3.mk"
+.include "../../devel/pcre/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../graphics/SDL2_image/buildlink3.mk"
+.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
+.include "../../multimedia/libogg/buildlink3.mk"
+.include "../../net/SDL2_net/buildlink3.mk"
+.include "../../sysutils/desktop-file-utils/desktopdb.mk"
 
 .include "../../mk/bsd.pkg.mk"
diff -r 1b4e19482f18 -r b6e268fb280c games/prboom-plus/PLIST
--- a/games/prboom-plus/PLIST   Fri Feb 11 14:56:15 2022 +0000
+++ b/games/prboom-plus/PLIST   Fri Feb 11 15:12:42 2022 +0000
@@ -1,19 +1,18 @@
-@comment $NetBSD: PLIST,v 1.1 2014/09/13 12:55:06 shattered Exp $
+@comment $NetBSD: PLIST,v 1.2 2022/02/11 15:12:42 micha Exp $
 bin/prboom-plus
 bin/prboom-plus-game-server
 man/man5/prboom-plus.cfg.5
 man/man6/prboom-plus-game-server.6
 man/man6/prboom-plus.6
-share/doc/${PKGNAME}/AUTHORS
-share/doc/${PKGNAME}/COPYING
-share/doc/${PKGNAME}/MBF.txt
-share/doc/${PKGNAME}/MBFFAQ.txt
-share/doc/${PKGNAME}/NEWS
-share/doc/${PKGNAME}/README
-share/doc/${PKGNAME}/README.compat
-share/doc/${PKGNAME}/README.demos
-share/doc/${PKGNAME}/boom.txt
-share/doc/${PKGNAME}/prboom-plus-history.html
-share/doc/${PKGNAME}/prboom-plus-history.txt
-share/doc/${PKGNAME}/prboom-plus-usage.txt
+share/doc/prboom-plus/DeePBSPV4specs.txt
+share/doc/prboom-plus/INSTALL.pkgsrc
+share/doc/prboom-plus/MBF.txt
+share/doc/prboom-plus/MBFFAQ.txt
+share/doc/prboom-plus/NEWS
+share/doc/prboom-plus/README.command-line
+share/doc/prboom-plus/README.compat
+share/doc/prboom-plus/README.demos
+share/doc/prboom-plus/boom.txt
+share/doc/prboom-plus/prboom-plus-usage.txt
+share/doc/prboom-plus/umapinfo.txt
 share/doom/prboom-plus.wad
diff -r 1b4e19482f18 -r b6e268fb280c games/prboom-plus/distinfo
--- a/games/prboom-plus/distinfo        Fri Feb 11 14:56:15 2022 +0000
+++ b/games/prboom-plus/distinfo        Fri Feb 11 15:12:42 2022 +0000
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.5 2021/10/26 10:44:20 nia Exp $
+$NetBSD: distinfo,v 1.6 2022/02/11 15:12:42 micha Exp $
 
-BLAKE2s (prboom-plus-2.5.1.4.tar.gz) = 9e96ed05a522a86efe0da2735a4169f2988ce8ff7f3a285e8152a87aa25dec69
-SHA512 (prboom-plus-2.5.1.4.tar.gz) = ca342bc2eac05458ed9c40aa781badc81416f25e51de23543f037df547d973dcca7522fb942160b7b797d24b6313a0e111afa11ad887199fbaab06240ffeb716
-Size (prboom-plus-2.5.1.4.tar.gz) = 1627558 bytes
+BLAKE2s (prboom-plus-2.6.2.tar.gz) = ab576697a6ea29ed985a512cf8ea61d68f3cc9ff3b38ab04008960720c8bb3a1
+SHA512 (prboom-plus-2.6.2.tar.gz) = 7005fa55bdbfffa1b6b24ff470f5e1962e89367eaa28b23e95ebde0d1385dbe14e1c0f2d67d8ebefb1adfeeca8d551ec2b7b04a23a6af3a0f708b36da09613b3
+Size (prboom-plus-2.6.2.tar.gz) = 1557494 bytes
diff -r 1b4e19482f18 -r b6e268fb280c games/prboom-plus/files/INSTALL.pkgsrc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/games/prboom-plus/files/INSTALL.pkgsrc    Fri Feb 11 15:12:42 2022 +0000
@@ -0,0 +1,6 @@
+The location of the prboom-plus WAD directory has been set to:
+
+   DOOMWADDIR
+
+This is the pkgsrc standard Doom WAD directory location (shared with other
+Doom packages).



Home | Main Index | Thread Index | Old Index