1. Duck Game
  2. News

Duck Game News

Proton Support Patch

This patch is intended to allow Duck Game to run flawlessly through Proton on Linux (this hopefully includes the Steam Deck, I haven't got one to test with yet) with mods and all, and without requiring the '-linux' command line option. Something seems to have broken Proton 6 and below as mods are now unable to load textures properly in those versions and there's unfortunately nothing I can do about it on my end. So if you want to play with mods it seems that you need to upgrade to Proton 7 or higher. Please let me know if you're still having any issues running through Proton, and please include your Linux distro, Proton version and crash log if you've got one!

-Updated Steam SDK version
-Fixed issues with toggling fullscreen in Linux (Proton)
-Added onscreen keyboard support when playing in big picture mode
-Duck Game will now automatically detect if it is being run through Proton, the '-linux' command line is no longer necessary. It can still be used incase automatic detection fails, and the '-nolinux' command line option has been added just incase the auto detect returns a false positive in some situations.
-Usability menu now works through Proton
-Fixed a number of issues with Mod types loading incorrectly through Proton (Dord's Weapons and any other assembly with weird characters in it's name such as ' will benefit from this)
-Fixed some rendering issues on Proton

May 31st Patch (6789227) Bug Fixes, Icy Things

A note about the game updating a million times an hour: Sorry for all the updates in quick succession, I've been debugging the BadFormatException error that has been keeping some people from playing and the only way to iterate on it is to see what it does live. There where also a few other issues related to DInput and NAudio, which both break differently depending on the vast number of configurations that exist out in the wild.

June 12th Hotfix - 6858840(1.1.7717.16375)
-------------------------------------------------------------------
  • F10 no longer enters debug pyramid tile editing mode. If you need this (unfinished!) feature for some reason or another you can now access it by typing 'randomedit' into the dev console.
  • CTRL + S now saves in editor, CTRL + SHIFT + S now saves-as in editor.
  • Editor now shows a star in the top left corner when unsaved changes are present.
  • Fixed an issue with loading level previews
  • Fixed issue with map pack preview generation


June 3rd Hotfix 2- 6809975(1.1.7717.16375)
-------------------------------------------------------------------
  • Fixed issue where same random map would generate every time (whoops..)
  • Fixed bug where mods without a workshopID defined where disabled on startup
  • Fixed a few crashes
  • Reduced mod SFX memory usage a bit to reduce out of memory errors, more work still needs to be done.


June 3rd Hotfix- 6808994(1.1.7717.16375)
-------------------------------------------------------------------
  • Mod data hashes are now calculated per-mod instead of as a single global number, so if 2 players' versions of the same mod are incompatible the game can now notify players of which mod is causing trouble.
  • Fixed a few issues with modhash initialization
  • Fixed a few crashes


June 1st Hotfix- 6794611 (1.1.7717.16372)
-------------------------------------------------------------------
  • Fixed serious memory leak with reskins mod, in particular with Tom Clancy R6 mod which was causing out of memory errors for some players
  • Fixed a number of missing method errors with mods
  • Fixed a number of null reference crashes
  • Duck Game's steam integration DLL is now called "DGSteam.dll" instead of "Steam.dll", as the latter name may have been conflicting with Steam's own DLL with the same name.


May 31st Hotfix- 6790287 and 6790023 (1.1.7717.16372)
-------------------------------------------------------------------
  • Rewrote DInput device enumeration, it's now threaded as it should be. This should solve a ton of framerate spike issues and freezes.
  • Improved logging for BadFormatException


May 31st Patch - 6789227 (1.1.7717.16372)
-------------------------------------------------------------------
  • Objects can now be encased in ice by placing an IceBlock in the editor, and setting it's contained object.
  • NOTICE!! New re-texturing system that was previously called 'Reskins' is now called 'Texpacks' to differentiate it from the existing Reskin mods.
  • Texpacks should now be placed in Mods/Texpacks- instead of in Mods/Reskins
  • Texpacks now look for their texture/music/sfx data in a subfolder called Content, which should mimick the Content folder found in the Duck Game install.
  • The above changes will unfortunately break any existing mods using the official Reskin system. There aren't very many new reskin mods as far as I can tell, but I'm sorry to anyone who this affects. To change your reskin into the new Texturepack format, move all the DG reskin content from the root folder of your mod to a subfolder called Content. If you're testing locally, move the mod out of DuckGame/Mods/Reskins and into DuckGame/Mods/Texpacks.
  • Old Yupdaniel reskin mods from pre-DG 1.5 should still work fine.
  • Fixed a number of issues with Texpacks, retexturing ducks should now work correctly.
  • Added "Show 8 Player" setting in local lobby pause menu that zooms out to show extra slots, to help clear up confusion with how to use 8 player mode.
  • Text to Speech setting now shows "Text To Speech Not Installed..." if the system fails to initialize, or if there are no voices installed on the system.
  • Fixed a large number of level synchronization issues related to MysteryGun and RandomItemBox. This should fix a number of situations where item boxes wouldn't pop anything out.
  • Fixed a number of issues with controls resetting due to device changes (this was a bad one, really sorry to anyone whose been suffering over this)
  • Added "SAVE CHANGES?" dialogue when backing out of profile control editor with unsaved changes.
  • Added warning message for title screen global EDIT CONTROLS setting, which warns you if any active profiles have their own personal control overrides set, which would override the global controls.
  • Binding two UI controls to the same key is no longer allowed
  • Duplicated UI controls will now be detected and reverted to defaults on game startup (These two issues should help prevent Cancel and Accept from being bound to the same key, for example)
  • Running with -moddebug enabled will now throw mod OnPreInitialize exceptions
  • Issues encountered in a mod's OnPreInitialize function will now be displayed in the error output in the mod browser window
  • Text To Speech should now be working again
  • Fixed issue with Never Mined and Books Are Fun achievements not triggering.
  • Fixed issue with odd behavior when placing parallax backgrounds in the editor when a mirror object is present.
  • Pipes no longer use a separate object to render their end pieces, this should fix a number of pipe related issues in the editor.
  • "Show Error" in the mod browser menu now opens the error in a Notepad document, instead of showing it in a crappy ingame window.
  • Added emergency garbage cleanup call for compatibility with old mods that leak textures
  • Fixed bug where backing out after choosing to play online could softlock the lobby
  • Fixed bug where match settings would be reset if Play Online was accidentally chosen
  • Fixed Waffle Cape
  • Added 'xpskip' command to console for players who really don't want to see Vincent and can't stand to wait for him to gift the Voodoo Vincent doll.
  • Improved duck animation sync when playing online
  • Command line option -dinputNoTimeout is no longer neccessary. DInput now initializes asynchronously and can take as long as it wants.
  • The above change should fix '???' control errors with DInput pads, but if DInput is being finnicky it may take a bit of time before your DInput pad is detected.
  • Wall disarms have been re-implemented
  • Hopefully solved a few System.BadFormatException errors, and added better logging to indicate the offending DLL.
  • Added 'savedir' command to console, which opens your current Duck Game save folder in a new window.
  • Added 'userdir' command to console, which opens your current Steam user's Duck Game save sub-folder in a new window.
  • Fixed a few issues with object appearance offsets when netted while playing online
  • 'F' to flip selection in editor on keyboard should now be working properly
  • Fixed a number of disappearing object issues when playing online, related to objects created by references in net messages not being initialized with the correct authority values.
  • Fixed race condition crash in audio engine when connecting to remote play
  • Fixed a few crashes with initializing audio drivers
  • Fixed issue with renderstate pileup when rendering level previews, which caused crashing when uploading some workshop levels
  • Fixed issue where selected duck color could be ignored upon joining a game

February 26th Patch (6302127) Audio Fixes

February 28th Hotfix (6307667)
-------------------------------------------------------------------
  • Changed full moon calculation to use UtcNow, and made detection more lenient (12 AM on the day before or after a full moon should also be detected now)
  • The -debug command line option will now log additional steam related messages to the command console when running as administrator.
  • added 'copy' command to console, which will copy the command consoles current contents to the clipboard


February 26th Patch (6302127)
-------------------------------------------------------------------
  • WAV files in mods bigger than 5MB are now streamed from HDD instead of loaded into memory to prevent out of memory errors when many mods are installed
  • Added Audio Engine selection to audio options menu to help anyone having issues with the default Wasapi API (Some builds with Proton on Linux seem to dislike this API)
  • Starting a remote play session now automatically switches the audio playback API to DirectSound (other APIs cause horrible horrible sounds)
  • More fixes for full moon check
  • Updated link for crash message when XNA framework is not detected
  • Added another check for -debug command line DLL dependency check

February 16 Patch

Hotfix
=================
  • Added -debug command line option for debugging BadFormatException errors.
  • Fixed some new issues caused by target duck change.
  • Fixed issue with collision detection that caused unwanted clipping when jumping horizontally against a wall and a pane of glass at the same time (this was an issue introduced by 1.5's collision detection optimizations)


Main Patch
=================
  • Added checks to prevent crashing when LoopingSound/ConstantSound instances aren't loaded properly/are disposed early.
  • Fixed cape not appearing for waffles hat
  • Removed _holdAction from TargetDuck, as this was only ever meant to be added to TargetDuckNew. This may affect challenges made after the 1.5 update using poweruser to place old TargetDuck objects holding automatic weapons.
  • The above change should fix a number of issues with the Grenade Launcher 102 challenge.
  • Added special check for version == 1 when loading old levels with background frame values == 255
  • Fixed issues with using frame 255 from custom tilesets in 1.5 level format
  • Fixed issue with editor where block nubs would get left over when removing objects and clutter up the editor UI
  • Rewrote mine sync again! Mines should now work online as they do offline. Mines are now client-synchronized similar to Quad Laser bullets, instead of being a mishmash (Mines will only explode when an object moves off of them if that object has isServerForObject == true)

February 4th 2021 Patch (6190465) (The Blocking Update...)

February 7th 2021 Hotfix (6204004) (Does not update version number)
-------------------------------------------------------------------
  • Vincent will now buy things that
  • aren't* Round Tables.
  • Fixed crash caused by blocking the last player in your 'Recently Played With' list.
  • Fixed feathers!


February 5th 2021 Hotfix (6196421) (Does not update version number)
-------------------------------------------------------------------
  • Fixed issue with Vincent giving multiple perimeter defence turrets.


February 4th 2021 Hotfix (6191479) (Does not update version number)
-------------------------------------------------------------------
  • Fixed some index issues with font character fallbacks
  • Ragdolling now resets previous gun pickup delay, allowing quicker gun recovery when ledge grabbing and more (thanks Tater!)
  • Fixed crash with grappling hook
  • Fixed index crash with NMTransferScores
  • ItemBox contents are now included in the initial level data payload, this should help prevent issues with items not popping out of the boxes for clients




  • New Muting/Blocking system. To use, open the pause menu in a multiplayer game, move up to the name you're having trouble with and press GRAB. You can mute chat, hat, room and name seperately and blocking a user will automatically mute chat + hat + room. Additionally the blocked user will be kicked from your game if you are the host. Matchmaking will not join players you have blocked and they will be unable to join games that you host.
  • Fixed crash related to SteamUtils() returning null (the game will now run for the few experiencing this issue, but chat filtering will not function)
  • Removed chat filter toggle from options menu, as it was redundant with Steam's settings. To disable chat filtering go into Steam and click 'View -> Settings -> In-Game' and click 'Change Chat Filtering Preferences'
  • Fixed issue with XML loader where loading a blank file would cause a crash
  • Made a number of changes related to the PS4 porting process (rewrote shaders, optimizations and preprocessor changes). This should have no visible effect if everything was done correctly.
  • Duck Game is now being built in Visual Studio 2017 instead of Visual Studio 2015 due to PS4/Mono build requirements
  • Significant level rendering performance optimizations (AutoBlock/Level tile batches are now cached, need to keep an eye out for layering issues and other oddities)
  • General performance optimization (Level.things._bigList and Layer updates no longer constantly call RemoveWhere)
  • Disabled mods now appear at the end of the mod selection list, instead of at the beginning.
  • Retextures and map packs are now loaded before anything else, which should fix retextures not being applied to ducks
  • Fixed a number of issues related to using higher definition textures in texture packs
  • HD texture packs no longer need to set the isHD variable, larger resolution images will automatically load in properly
  • New system for re-texturing parallax backgrounds, see background/office.txt in DG's content files
  • Fixed bug where spectator's fans where showing up in the crowd
  • Fixed bug with full moon check not taking timezones into account
  • Fixed glitch when holding F1 with chat open (F keys no longer repeat when held down)
  • Fixed bug where taping a taped sword to another sword would eat the sword (taped swords should not be able to be taped to other swords)
  • Characters missing from room fonts will now fall back to the default font
  • Fixed issue with Energy Scimitar where it would get stuck glowing in props
  • Fixed bug with storing gold rocks in purple box where the stored rock would not be gold for clients
  • Fixed issue where input 'down' actions weren't behaving correctly with inputs mapped to mouse buttons (you can now properly throw the energy scimitar with throw bound to the mouse)
  • Killing ducks by hovering gun barrel over them while they are floating in the lobby beam is no longer possible (this was a bug introduced in 1.5 related to changes with armor/prop vs. gun collision checking)
  • Fixed Musket/Blunderbuss collision boxes