Patching doesn't include code changeschange

It seems that when patching the game using project launcher , I’m able to load new changes in packages , but any changes in C++ is ignored. Is this because patches don’t generate a new exe? I see that the Exe in the binary folder remains the same. Also patches don’t include the dll of the newly compiled code change? How do I go about implementing code change to patches?

Hello,

I will continue to investigate this issue in the meantime.

Yes I am using that . except that I am not doing shipping build. Rather development editor build.

After some investigation, it seems that in order to apply code changes on Windows, you will need to roll your own solution much as you must have to install the loose folder that was first produced. That means you rebuild your game all-up, and make an installer that knows what files need to go where. If it is an EXE change but not content, you could just rebuild the game and replace the EXE directly. Ideally, you could build a “patcher” software, similar to say the UE4 launcher that understands what version you have now, and what you need to update to current and performs the install over the internet.

When you build a game in the editor, it cooks content and compiles code. Depending on the target platform, the product of that cook and compile is very different. In Windows, you get a directory with the EXE, DLLS and Content in a classic Windows folder structure. It is then left up to you to build an installer if you need to distribute the fixes to your player base.

Also, some helpful information is that you can run the cook as “Do Not Cook”, which will package the previously cooked content instead of re-creating cooked content. Doing so will ensure the new package is identical (in binary) to the previous package for assets that don’t need to be changed.

Let me know if you have any additional questions.

Have a great day

Sorry a little confused here.

That means you rebuild your game
all-up, and make an installer that
knows what files need to go where. If
it is an EXE change but not content,
you could just rebuild the game and
replace the EXE directly.

When you say rebuild, do you mean by doing the ‘package game’ from the file menu dropdown or running the project launcher profile?
I’m asking because running launcher profile for patching does NOT produce the exe. but doing ‘package game’ does. I’m not sure if it’s safe to just replace the exe from package game to the project launcher method. I tried and it seems to work , but i’m not sure if anything will be missing.

What platform are you attempting to patch for? Windows?

yes windows

After additional conversation with the developers, here is the recommended workflow for Windows patching:

  • Build/Cook/Package game
  • Output is in whatever folder they designate at package time
    say they chose “D:\output”, then the game would be at D:\output\WindowsNoEditor\
  • Use third-party software (such as InstallShield) to package the folder into an “installer”. -OR- create their own installation software
  • Distribute the installer.exe however desired
  • Time to patch, redo the first step: Build/Cook/Package
  • Output is as before
  • Manually determine what files will be part of the “patch”, or just take the whole directory
  • Use third-party (or custom) software (such as InstallShield) to create an patch (that drops the new files in the existing installation folder), or uninstalls the former to install the new version
  • Distribute the newInstaller.exe however desired.