<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Khang Nguyen</title>
    <description>The latest articles on Forem by Khang Nguyen (@khang5687).</description>
    <link>https://forem.com/khang5687</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3609848%2F3bea415b-f8bc-4b12-ad7b-b6bea40f1316.jpeg</url>
      <title>Forem: Khang Nguyen</title>
      <link>https://forem.com/khang5687</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/khang5687"/>
    <language>en</language>
    <item>
      <title>Guide - Audio Modding of "Arena of Valor"</title>
      <dc:creator>Khang Nguyen</dc:creator>
      <pubDate>Fri, 05 Dec 2025 08:31:52 +0000</pubDate>
      <link>https://forem.com/khang5687/guide-audio-modding-of-arena-of-valor-3c2f</link>
      <guid>https://forem.com/khang5687/guide-audio-modding-of-arena-of-valor-3c2f</guid>
      <description>&lt;p&gt;I created this documentation first in Vietnamese, and published it on &lt;a href="https://www.notion.so/wikicat/Mod-nh-c-Li-n-Qu-n-Full-Guide-2d3f143580dc4d14920209e442af51a2" rel="noopener noreferrer"&gt;Notion&lt;/a&gt;. The mentioned game: "Arena of Valor" is a &lt;a href="https://sensortower.com/blog/arena-of-valor-100-million-downloads" rel="noopener noreferrer"&gt;well-known&lt;/a&gt; MOBA game mostly in Southeast and East Asia, especially Vietnam, Thailand, and Taiwan.&lt;/p&gt;

&lt;p&gt;I have done thorough research on how the audio system worked in this game, and I have successfully modified the background music in the main menu. I have posted several videos on Youtube as demonstration:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mod nhạc Yorn Long Thần Soái&lt;/th&gt;
&lt;th&gt;Mod nhạc nền SAOxAOV v1&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://www.youtube.com/watch?v=qgqGH0dwkUI" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxf6yg6op29y3h81ph3hu.jpg" alt="Yorn Long Thần Soái" width="320" height="180"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.youtube.com/watch?v=m6eHMN_BMSU" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxd6oy7ogfii1j8vyjjmn.jpg" alt="SAOxAOV v1" width="320" height="180"&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;This Guide Will Cover&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Changing the background music in the Arena of Valor lobby with any music that you want.&lt;/li&gt;
&lt;li&gt;Modifying loop points (the timing of music repetition) to ensure the game replays your music at the correct timestamp.&lt;/li&gt;
&lt;li&gt;Changing the background video.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;This Guide Will Not Cover&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Changing the game's login screen background music&lt;/li&gt;
&lt;li&gt;Changing static images in the game. &lt;em&gt;On lower-end systems, the lobby may display a static image instead of the background video&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Prerequisites&lt;/strong&gt;
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Hardware Requirements
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;A Windows 64-bit computer - the Wwise software does &lt;strong&gt;not&lt;/strong&gt; support 32-bit operating systems&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Software Requirements
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Python: &lt;a href="https://www.python.org/downloads/" rel="noopener noreferrer"&gt;https://www.python.org/downloads/&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;When opening the installer, remember to check this box:&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedciabps7o3y365ncwe9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fedciabps7o3y365ncwe9.png" alt=" " width="800" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Wwise: &lt;a href="https://www.audiokinetic.com/en/products/wwise/" rel="noopener noreferrer"&gt;https://www.audiokinetic.com/en/products/wwise/&lt;/a&gt;

&lt;ul&gt;
&lt;li&gt;You will need to create an account and install the &lt;em&gt;Wwise Launcher&lt;/em&gt; from AudioKinetic&lt;/li&gt;
&lt;li&gt;I use version 2018.1.11 as it is the most stable&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxrdt1z1sb2h6gsm0h2p4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxrdt1z1sb2h6gsm0h2p4.png" alt=" " width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;You can scroll down to the &lt;strong&gt;References&lt;/strong&gt; section to download individual tools then organize them into the following file structure:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;AOV-AudioModdingTools
├───1 - Change audio
│   │   extract.bat
│   │   wwiseutil-gui.exe
│   │
│   ├───resources
│   │       bnkextr.exe
│   │       packed_codebooks_aoTuV_603.bin
│   │       revorb.exe
│   │       ww2ogg.exe
│   │
│   └───wav-to-wem
│       │   convert.bat
│       │   WsourcesMaker.exe
│       │
│       ├───input
│       └───output
└───2 - Edit loop point
        wwiser.pyz
        wwnames.db3
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Implementation&lt;/strong&gt;
&lt;/h1&gt;

&lt;h2&gt;
  
  
  I - Modifying Background Music
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Obtaining Required Files
&lt;/h3&gt;

&lt;p&gt;Navigate to the following path on your mobile device with Arena of Valor installed &lt;em&gt;(this guide uses Vietnam version)&lt;/em&gt; and ensure you have downloaded all necessary resources: &lt;code&gt;./Android/data/com.garena.game.kgvn/files/Extra/2019.V2/Sound_DLC/Android&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;Note&lt;/strong&gt;: the folder &lt;code&gt;2019.V2&lt;/code&gt; will likely have its name changed because of game updates.&lt;/p&gt;

&lt;p&gt;Retrieve these two files:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Holidayxx.bnk&lt;/code&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;xx&lt;/em&gt; represents the highest number among all "Holiday" files. This file contains the music; after each season, the game updates the music by adding a new "Holiday" file rather than replacing the old one. Currently, the game uses &lt;code&gt;Holiday103.bnk&lt;/code&gt;, but this may change in future updates.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Music_Login.bnk&lt;/code&gt;

&lt;ul&gt;
&lt;li&gt;This file will be modified to adjust the loop point. Refer to section &lt;strong&gt;II - Adjusting Loop Points&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftmujitlnzjhzkb6l0o02.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftmujitlnzjhzkb6l0o02.jpg" alt=" " width="800" height="1343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Transfer these two files to your computer: drag the &lt;code&gt;Holidayxx.bnk&lt;/code&gt; file into the 📁 1 - &lt;code&gt;Change Audio&lt;/code&gt; folder, and similarly place the &lt;code&gt;Music_Login.bnk&lt;/code&gt; file into the 📁 &lt;code&gt;2 - Edit Loop Point&lt;/code&gt; folder:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftljn3x8raux1zkg7cswe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftljn3x8raux1zkg7cswe.png" alt=" " width="800" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For this section (I - Modifying Background Music), we will focus exclusively on the 📁 &lt;code&gt;1 - Change audio&lt;/code&gt; folder&lt;/p&gt;
&lt;h3&gt;
  
  
  2. Extracting Audio (Optional)
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;We will extract audio from the &lt;code&gt;Holidayxx.bnk&lt;/code&gt; file to verify that we have selected the correct file for modification&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Open the 📁 &lt;code&gt;1 - Change audio&lt;/code&gt; folder and ensure the folder structure matches the following:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qoicn53pqsl5p4smh4n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qoicn53pqsl5p4smh4n.png" alt=" " width="800" height="864"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explanation&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The 📁 resources folder contains tools for extracting audio from &lt;code&gt;Holidayxx.bnk&lt;/code&gt;. The image shows the contents of this folder&lt;/li&gt;
&lt;li&gt;The 📁 wav-to-wem folder is a helper utility to convert &lt;code&gt;.wav&lt;/code&gt; files to &lt;code&gt;.wem&lt;/code&gt; format

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;This guide does not include instructions for this tool, but I will link to the original thread which contains detailed usage instructions. It will be more convenient than the manual method I describe below. Please refer to the&lt;/em&gt; 📖 &lt;em&gt;References section at the end of this guide.&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;extract.bat&lt;/code&gt; is a script I created for convenient extraction of &lt;code&gt;.bnk&lt;/code&gt; files - You can right-click the file → &lt;em&gt;Edit&lt;/em&gt; to view the source code&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;wwiseutil-gui.exe&lt;/code&gt; is the application we will use to modify audio&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;The image on the right shows the contents of the 📁 resources folder. You can download these files from the 📖 References section if the tool link is unavailable.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyhab1uhi6xy0ef5xe6q5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyhab1uhi6xy0ef5xe6q5.png" alt=" " width="307" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ To extract audio, drag the &lt;code&gt;Holidayxx.bnk&lt;/code&gt; file onto the &lt;code&gt;extract.bat&lt;/code&gt; script. A file with &lt;code&gt;.ogg&lt;/code&gt; extension will automatically appear. Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8qayfq3qrkzn3lnziekr.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8qayfq3qrkzn3lnziekr.gif" alt=" " width="890" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Play the &lt;code&gt;.ogg&lt;/code&gt; file and verify that it matches the current game music. If it does, use this "Holiday" file for modification; otherwise, try another file.&lt;/p&gt;
&lt;h3&gt;
  
  
  3. Converting Your Music to the Correct Format
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;To import audio into the game, we must convert it to &lt;code&gt;.wem&lt;/code&gt; format, which is not a standard audio format but rather Audiokinetic's Wwise proprietary audio format (WEM stands for Wwise Encoded Media). To replace audio in a &lt;code&gt;.bnk&lt;/code&gt; file, we can only use &lt;code&gt;.wem&lt;/code&gt; files&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Assuming you have an &lt;code&gt;.mp3&lt;/code&gt; audio file and want to modify it into the game.&lt;/p&gt;

&lt;p&gt;→ The steps you need to follow are to convert the file to &lt;code&gt;.wav&lt;/code&gt; format and then to &lt;code&gt;.wem&lt;/code&gt; format (see the illustration below)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fye6986lnmi7ffolgecif.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fye6986lnmi7ffolgecif.png" alt=" " width="394" height="178"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To convert &lt;code&gt;.mp3&lt;/code&gt; and other audio formats to &lt;code&gt;.wav&lt;/code&gt;, you can use this website by &lt;a href="https://github.com/AlexIII" rel="noopener noreferrer"&gt;Alexander Blk&lt;/a&gt;: &lt;a href="https://alexiii.github.io/web-wav-converter/" rel="noopener noreferrer"&gt;https://alexiii.github.io/web-wav-converter/&lt;/a&gt; or search for other alternatives&lt;/p&gt;

&lt;p&gt;→ After converting to &lt;code&gt;.wav&lt;/code&gt; format, we will now convert to &lt;code&gt;.wem&lt;/code&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Converting &lt;code&gt;.wav&lt;/code&gt; to &lt;code&gt;.wem&lt;/code&gt;:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;1. Open Wwise through Wwise Launcher&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Install the &lt;strong&gt;Wwise Launcher&lt;/strong&gt; and log in with your Audiokinetic account. Go to the "Wwise" tab in the left sidebar and install your desired Wwise version. I use version &lt;strong&gt;2018.1.11&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once installation is complete, click the "Launch Wwise" button to open Wwise&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F06m6q1o566ba096pnxx8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F06m6q1o566ba096pnxx8.png" alt=" " width="800" height="318"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;2. Create a New Project (project name is not important)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5ql3iaz4tjuss09wfuw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5ql3iaz4tjuss09wfuw.png" alt=" " width="800" height="563"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1q6k876ogsfjqnvp4hqy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1q6k876ogsfjqnvp4hqy.png" alt=" " width="703" height="620"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;3. Modify Conversion Settings to Vorbis High Quality&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l5hotirsyw73l14oqfv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l5hotirsyw73l14oqfv.png" alt=" " width="800" height="558"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmb30r4zzy386suq2jg6d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmb30r4zzy386suq2jg6d.png" alt=" " width="693" height="871"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi1lm31d12ukdi0mcmbfp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi1lm31d12ukdi0mcmbfp.png" alt=" " width="547" height="671"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;4. Add &lt;code&gt;.wav&lt;/code&gt; File to Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnxct01ea6kbnho8pi8xu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnxct01ea6kbnho8pi8xu.png" alt=" " width="800" height="566"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fagmo9u5amsmvys2eknd5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fagmo9u5amsmvys2eknd5.png" alt=" " width="800" height="567"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6lv6idn2toxfvqba3l3r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6lv6idn2toxfvqba3l3r.png" alt=" " width="800" height="519"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyqrvd80r5ybr61uusgnm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyqrvd80r5ybr61uusgnm.png" alt=" " width="800" height="523"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;5. Convert File to &lt;code&gt;.wem&lt;/code&gt; Format&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjnje7c9vaehwer5nx559.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjnje7c9vaehwer5nx559.png" alt=" " width="722" height="715"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk6t0qn532jqxsoooaz3g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk6t0qn532jqxsoooaz3g.png" alt=" " width="800" height="567"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ Wait a moment for the conversion to complete&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;6. Retrieve the Converted &lt;code&gt;.wem&lt;/code&gt; File&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fps8mryake4j4m03qfkqi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fps8mryake4j4m03qfkqi.png" alt=" " width="800" height="587"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqzaym8rae010nlh92fjp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqzaym8rae010nlh92fjp.png" alt=" " width="800" height="276"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After clicking "&lt;em&gt;Open Containing Folder&lt;/em&gt;", Windows File Explorer will open to the project directory. Navigate to the following path to locate the &lt;code&gt;.wem&lt;/code&gt; file: &lt;code&gt;.cache/Windows/SFX&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fct8huun3hwvynpljrmwe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fct8huun3hwvynpljrmwe.png" alt=" " width="800" height="173"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
  
  
  4. Modifying the Holiday File
&lt;/h3&gt;

&lt;p&gt;Return to the 📁 &lt;code&gt;1 - Change audio&lt;/code&gt; folder:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Rename the &lt;code&gt;Holidayxx.bnk&lt;/code&gt; file and add the &lt;code&gt;_bak&lt;/code&gt; suffix as shown:

&lt;ul&gt;
&lt;li&gt;This prevents conflicts when saving the modified file with the original name&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn7ggeg4nnosnzl040k3f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn7ggeg4nnosnzl040k3f.png" alt=" " width="205" height="36"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open &lt;code&gt;wwiseutil-gui.exe&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Click "Open" and load the &lt;code&gt;Holidayxx_bak.bnk&lt;/code&gt; file&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwntzi13986w7rcw5ftsr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwntzi13986w7rcw5ftsr.png" alt=" " width="800" height="475"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the existing audio file and click "Replace"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgrsiyrfs0uikh0rkd77.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvgrsiyrfs0uikh0rkd77.png" alt=" " width="800" height="475"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Replace it with the &lt;code&gt;.wem&lt;/code&gt; file we just converted&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7bpshdiq0hp0k8hk88b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7bpshdiq0hp0k8hk88b.png" alt=" " width="800" height="410"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Save the file with the original Holiday filename&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi9n6hj6emilb1o5fueua.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi9n6hj6emilb1o5fueua.png" alt=" " width="800" height="481"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo74f2c0hpmnkpyhdhoao.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo74f2c0hpmnkpyhdhoao.png" alt=" " width="800" height="475"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Completion
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Holiday103_bak.bnk&lt;/code&gt; is the original unmodified file&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Holiday103.bnk&lt;/code&gt; is the file with modified audio (the modded file)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7yrl2l3bwbadn7wnlt0n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7yrl2l3bwbadn7wnlt0n.png" alt=" " width="800" height="265"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ You can now replace the original Holiday file in the game directory with this modified version, and the game will use your audio. Give it a try ;)&lt;/p&gt;
&lt;h2&gt;
  
  
  II - Adjusting Loop Points
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;If you have successfully completed the audio modification, congratulations 🎉, but we are not quite finished. If your replacement audio file has a different duration than the original game audio, you will notice that the game will repeat the audio at an incorrect time. Instead of the game looping immediately after your audio ends, it will loop after the &lt;strong&gt;original audio duration.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The game relies on a value stored in the &lt;code&gt;Music_Login.bnk&lt;/code&gt; file. This file contains values related to playback management for certain game audio files (such as &lt;code&gt;playlist config&lt;/code&gt;, &lt;code&gt;flags &amp;amp; controls&lt;/code&gt;, etc., and importantly for this guide, the &lt;code&gt;playback duration&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;We will now modify the &lt;code&gt;Playback Duration&lt;/code&gt; value in this file so the game loops your audio at the precise moment you desire.&lt;/p&gt;
&lt;h3&gt;
  
  
  1. Obtaining Required Files
&lt;/h3&gt;

&lt;p&gt;Return to the 📁 1 - Audio Replacement folder and copy the &lt;code&gt;Holidayxx_bak.bnk&lt;/code&gt; file into the 📁 2 - Edit Loop Point folder&lt;/p&gt;

&lt;p&gt;→ Open the 📁 2 - Edit Loop Point folder and ensure it matches the following image:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7mqvuhhjwj333fki29ln.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7mqvuhhjwj333fki29ln.png" alt=" " width="202" height="224"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Holiday103_bak.bnk&lt;/code&gt; is the original Holiday file (unmodified) that we just copied; we will use this file to identify the information we need to change&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Music_Login.bnk&lt;/code&gt; as I explained above&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;wwiser.pyz&lt;/code&gt; is the tool we will use to extract information from the &lt;code&gt;Music_Login.bnk&lt;/code&gt; file&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;If it does not match or files are missing, please review section **I - Modifying Background Music&lt;/em&gt;**&lt;/p&gt;
&lt;h3&gt;
  
  
  2. Extracting Information from the Holiday File
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Ensure that your machine has &lt;a href="https://www.python.org/downloads/" rel="noopener noreferrer"&gt;Python&lt;/a&gt; installed&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Make sure you are in the 📁 2 - Edit Loop Point folder, click on the address bar and type &lt;code&gt;cmd&lt;/code&gt; then press Enter. See the GIF below for reference:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e7vtknsoey1ljs56t0a.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1e7vtknsoey1ljs56t0a.gif" alt=" " width="760" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once the Command Prompt window appears, type the following command: &lt;code&gt;python wwiser.pyz Holidayxx_bak.bnk&lt;/code&gt;. See the GIF below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4juofkqd7r6nul5flx5.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq4juofkqd7r6nul5flx5.gif" alt=" " width="1074" height="728"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You will notice a new file appears with the &lt;code&gt;.xml&lt;/code&gt; extension&lt;/p&gt;

&lt;p&gt;→ Use any text editor and open this &lt;code&gt;.xml&lt;/code&gt; file. I use &lt;a href="https://notepad-plus-plus.org/downloads/" rel="noopener noreferrer"&gt;Notepad++&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Search for the keyword &lt;code&gt;fSrcDuration&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2elynrailj1u160hnocb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2elynrailj1u160hnocb.png" alt=" " width="676" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ Copy this value. In the case of my &lt;code&gt;Holiday103&lt;/code&gt; file, the value is &lt;code&gt;258000&lt;/code&gt; (we do not include decimal places). This value represents the audio duration in milliseconds; 258000 milliseconds equals 4 minutes and 13 seconds.&lt;/p&gt;
&lt;h3&gt;
  
  
  3. Modifying Loop Points Using Hex Editor
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Now we understand that the game will loop the audio in the lobby after every 258000 milliseconds (4 minutes and 13 seconds), regardless of what audio the game is currently playing. We will now edit this value in the &lt;code&gt;Music_Login.bnk&lt;/code&gt; file, because this file contains the information that helps the game handle playback for certain game audio.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;3.1. Calculate Duration for Your Music&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We need to calculate the duration of your music and convert it to milliseconds. Suppose my music file is: &lt;a href="https://www.youtube.com/watch?v=SG90tHM1twQ" rel="noopener noreferrer"&gt;&lt;strong&gt;JJBA Stone Ocean: Jolyne Theme (Full Version) | EPIC HQ COVER&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The music is exactly 4 minutes long. I want the game to play the music until the end and pause for 2 seconds before playing again. That is 240000 milliseconds (4 minutes of music) + 2000 milliseconds (2 seconds of delay) = &lt;strong&gt;242000&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I will change the original value &lt;strong&gt;258000&lt;/strong&gt; (4 minutes 13 seconds) to &lt;strong&gt;242000&lt;/strong&gt; (4 minutes 2 seconds) as an example.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.2. Implementation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ensure you have a Hex Editor. I use &lt;a href="https://mh-nexus.de/en/hxd/" rel="noopener noreferrer"&gt;HxD&lt;/a&gt; (free), or alternatively &lt;a href="https://www.sweetscape.com/download/010editor/" rel="noopener noreferrer"&gt;010 Editor&lt;/a&gt; (paid).&lt;/p&gt;

&lt;p&gt;Open the &lt;code&gt;Music_Login.bnk&lt;/code&gt; file in your Hex Editor.&lt;/p&gt;

&lt;p&gt;→ You will need to replace all values of type Double because this value is stored by the game as a floating-point number. See the image for reference:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select "Floating point number"&lt;/li&gt;
&lt;li&gt;In "Search for", enter the &lt;code&gt;fSrcDuration&lt;/code&gt; value from the Holiday file we just found; in "Replace with", enter the value you calculated&lt;/li&gt;
&lt;li&gt;Select type as Double&lt;/li&gt;
&lt;li&gt;Check "Replace All"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz55exumaleknejjbyuy4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz55exumaleknejjbyuy4.png" alt=" " width="647" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;→ After completing the replacement, simply save the file and copy it back to the &lt;code&gt;./Android/data/com.garena.game.kgvn/files/Extra/2019.V2/Sound_DLC/Android&lt;/code&gt; folder on your phone. &lt;em&gt;It is recommended to backup the original file&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  III - Changing Background Video
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;The audio part is done! If you want, you can change the background video as well!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can do this by navigating to the following path on your phone: &lt;code&gt;./Android/data/com.garena.game.kgvn/files/Extra/2019.V2/ISPDiff/LobbyMovie&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;And find the &lt;code&gt;.mp4&lt;/code&gt; file that matches the background video the game is currently using. Then replace that mp4 file with any video of your choice!&lt;/p&gt;
&lt;h1&gt;
  
  
  📖 References
&lt;/h1&gt;
&lt;h3&gt;
  
  
  Tools
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;extract.bat&lt;/code&gt; source code:&lt;br&gt;
&lt;/p&gt;

&lt;pre class="highlight shell"&gt;&lt;code&gt;@echo off
setlocal enabledelayedexpansion

rem Get the name of the dragged file
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"draggedFile=%~1"&lt;/span&gt;

rem Check &lt;span class="k"&gt;for &lt;/span&gt;existence
&lt;span class="k"&gt;if &lt;/span&gt;not exist &lt;span class="s2"&gt;"%draggedFile%"&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;
    &lt;span class="nb"&gt;echo &lt;/span&gt;File does not exist.
    pause
    &lt;span class="nb"&gt;exit&lt;/span&gt; /b
&lt;span class="o"&gt;)&lt;/span&gt;

rem Set path
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"resourcesFolder=resources"&lt;/span&gt;

rem Set the name of bnkextr.exe
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"bnkextr=bnkextr.exe"&lt;/span&gt;

rem Set the names of the other tools
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"ww2ogg=ww2ogg.exe"&lt;/span&gt;
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"packedCodebooks=packed_codebooks_aoTuV_603.bin"&lt;/span&gt;
&lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"revorb=revorb.exe"&lt;/span&gt;

rem Get parent folder
&lt;span class="k"&gt;for&lt;/span&gt; %%A &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%draggedFile%"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;
    &lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"parentFolder=%%~dpA"&lt;/span&gt;
    &lt;span class="nb"&gt;set&lt;/span&gt; &lt;span class="s2"&gt;"draggedFileName=%%~nxA"&lt;/span&gt;
&lt;span class="o"&gt;)&lt;/span&gt;

rem Run bnkextr.exe with /nodir flag
&lt;span class="s2"&gt;"%resourcesFolder%&lt;/span&gt;&lt;span class="se"&gt;\%&lt;/span&gt;&lt;span class="s2"&gt;bnkextr%"&lt;/span&gt; &lt;span class="s2"&gt;"%draggedFile%"&lt;/span&gt; /nodir

rem Process .wem files using ww2ogg.exe
&lt;span class="k"&gt;for&lt;/span&gt; %%F &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%parentFolder%&lt;/span&gt;&lt;span class="se"&gt;\*&lt;/span&gt;&lt;span class="s2"&gt;.wem"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;
    &lt;span class="s2"&gt;"%resourcesFolder%&lt;/span&gt;&lt;span class="se"&gt;\%&lt;/span&gt;&lt;span class="s2"&gt;ww2ogg%"&lt;/span&gt; &lt;span class="s2"&gt;"%%~F"&lt;/span&gt; &lt;span class="nt"&gt;--pcb&lt;/span&gt; &lt;span class="s2"&gt;"%resourcesFolder%&lt;/span&gt;&lt;span class="se"&gt;\%&lt;/span&gt;&lt;span class="s2"&gt;packedCodebooks%"&lt;/span&gt;
&lt;span class="o"&gt;)&lt;/span&gt;

rem Process .ogg files using revorb.exe
&lt;span class="k"&gt;for&lt;/span&gt; %%F &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%parentFolder%&lt;/span&gt;&lt;span class="se"&gt;\*&lt;/span&gt;&lt;span class="s2"&gt;.ogg"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;
    &lt;span class="s2"&gt;"%resourcesFolder%&lt;/span&gt;&lt;span class="se"&gt;\%&lt;/span&gt;&lt;span class="s2"&gt;revorb%"&lt;/span&gt; &lt;span class="s2"&gt;"%%~F"&lt;/span&gt;
&lt;span class="o"&gt;)&lt;/span&gt;

rem Delete the original .wem files
&lt;span class="k"&gt;for&lt;/span&gt; %%F &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"%parentFolder%&lt;/span&gt;&lt;span class="se"&gt;\*&lt;/span&gt;&lt;span class="s2"&gt;.wem"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="k"&gt;do&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;
    del &lt;span class="s2"&gt;"%%~F"&lt;/span&gt;
&lt;span class="o"&gt;)&lt;/span&gt;

&lt;span class="nb"&gt;echo &lt;/span&gt;Processing complete.
&lt;span class="nb"&gt;exit&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;




&lt;/li&gt;

&lt;li&gt;&lt;p&gt;eXpl0it3r. (2023, February 13). bnkextr. &lt;a href="https://github.com/eXpl0it3r/bnkextr" rel="noopener noreferrer"&gt;&lt;/a&gt;&lt;a href="https://github.com/eXpl0it3r/bnkextr" rel="noopener noreferrer"&gt;https://github.com/eXpl0it3r/bnkextr&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkrv9dqpty5ven4tisj6l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkrv9dqpty5ven4tisj6l.png" alt=" " width="120" height="38"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;hcs64. (2020, November 27). ww2ogg. &lt;a href="https://github.com/hcs64/ww2ogg" rel="noopener noreferrer"&gt;https://github.com/hcs64/ww2ogg&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F52diqvt01ne3z0axmg05.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F52diqvt01ne3z0axmg05.png" alt=" " width="285" height="62"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;gibbed. (2012, April 11). &lt;a href="https://github.com/gibbed/Gibbed.MassEffect3" rel="noopener noreferrer"&gt;&lt;strong&gt;Gibbed.MassEffect3&lt;/strong&gt;&lt;/a&gt;. &lt;a href="https://github.com/gibbed/Gibbed.MassEffect3/blob/master/Gibbed.MassEffect3.AudioExtract/revorb.exe" rel="noopener noreferrer"&gt;revorb.exe&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F637t2tc2kuvxukca3lxd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F637t2tc2kuvxukca3lxd.png" alt=" " width="124" height="34"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;FluffyQuack. (2020, December 17). Automated WAV &amp;gt; WEM conversion. Resident Evil Modding Boards. &lt;a href="https://residentevilmodding.boards.net/thread/11099/automated-wav-wem-conversion" rel="noopener noreferrer"&gt;https://residentevilmodding.boards.net/thread/11099/automated-wav-wem-conversion&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewnbfcqy54wrewxzy7we.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fewnbfcqy54wrewxzy7we.png" alt=" " width="188" height="222"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;hpxro7. (2018, October 17). wwiseutil. &lt;a href="https://github.com/hpxro7/wwiseutil" rel="noopener noreferrer"&gt;https://github.com/hpxro7/wwiseutil&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9p6dgwk1vwgw46c1jnkn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9p6dgwk1vwgw46c1jnkn.png" alt=" " width="167" height="35"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;bnnm. (2023, August 12). wwiser. &lt;a href="https://github.com/bnnm/wwiser" rel="noopener noreferrer"&gt;https://github.com/bnnm/wwiser&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fml12426gyvdgfwsxyqxb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fml12426gyvdgfwsxyqxb.png" alt=" " width="156" height="72"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Software
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Python Software Foundation. Python Programming Language. &lt;a href="https://www.python.org/" rel="noopener noreferrer"&gt;https://www.python.org/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Audiokinetic Inc. Wwise Audio Middleware. &lt;a href="https://www.audiokinetic.com/products/wwise/" rel="noopener noreferrer"&gt;https://www.audiokinetic.com/products/wwise/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Mael Horz. HxD Hex Editor. &lt;a href="https://mh-nexus.de/en/hxd/" rel="noopener noreferrer"&gt;https://mh-nexus.de/en/hxd/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;SweetScape Software Inc. 010 Editor. &lt;a href="https://www.sweetscape.com/010editor/" rel="noopener noreferrer"&gt;https://www.sweetscape.com/010editor/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;ZDevs. ZArchiver. &lt;a href="https://play.google.com/store/apps/details?id=ru.zdevs.zarchiver" rel="noopener noreferrer"&gt;https://play.google.com/store/apps/details?id=ru.zdevs.zarchiver&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Relevant Resources
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Lugas [@goeuldi]. (2016, October 19). [TUTORIAL][Windows] How to rip sounds from BNK files [Video]. YouTube. &lt;a href="https://www.youtube.com/watch?v=fWXyN7qdrqw" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=fWXyN7qdrqw&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Hp Xro [@hpxro4980]. (2018, October 2). Converting Wav to Wem with WWise [Video]. YouTube. &lt;a href="https://www.youtube.com/watch?v=39Oeb4GvxEc" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=39Oeb4GvxEc&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;archerpz. (2019, March 3). Audio modding; changing loop points / adding longer tracks. Resident Evil Modding Boards. &lt;a href="https://residentevilmodding.boards.net/thread/10415/modding-changing-points-adding-longer" rel="noopener noreferrer"&gt;https://residentevilmodding.boards.net/thread/10415/modding-changing-points-adding-longer&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>modding</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
