Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

[SOLVED] DUNE .VOC Files (Lips Data)

Featured Replies

  • Author
  • Localization

Tgames, posted Fri Apr 12, 2019 6:50 pm (46853)


Hi everyone !

I just would like to know exactly what properties have this sample .VOC file (english voice) ?
It's a speech audio for the game Dune (PC)

If i try to convert it to WAV then back to .VOC i lose the lips movement on the game.
If i reimport the .VOC untouched i keep the lips movements.

If i import another .VOC untouched i keep also the lips movements.

It's seems this .VOC is a bit < special >.
We already have every WAV (french voices) ready to be converted to .VOC. (Thanks to the hard work of aLuigi with the Mega CD version)
It's works perfectly on the PC game, at only one details = No lips movements anymore.

Can someone look into it ? And maybe add a modification on the script to extract the lips data and reinject it in new files ?

VOC Sample File :

https://we.tl/t-74fun7s8NY

This is the original DUNE.DAT (PC version) extractor scripts :

and the DUNE.DAT = https://we.tl/t-FTaOBaXBhS

Note: The DUNE.DAT of the PC version is completely different from the Mega CD.
This one on the PC version has a header for easy extraction.


Code:
idstring \x3D\x0A

get FOLDER basename
get FSIZE asize
goto 2

do
    savepos START
   goto 16 0 SEEK_CUR
    get SIZE long
    get OFFSET long
   goto START
   getdstring NAME1 12
   goto 12 0 SEEK_CUR
   get TEST long
   
   if NAME1 == "xxxxxxxx.xxx"
       string NAME p "x" OFFSET
   else if TEST == 0   
      CleanExit
   else
       goto START
       get NAME string
   endif 
   
   string NAME2 p "OUTPUT%s\%s" FOLDER NAME
   
   log NAME2 OFFSET SIZE      
   math START 25
   goto START
while OFFSET <= FSIZE | BREAK_0 == 1


Best Regards !
  • Author
  • Localization

Tgames, posted Fri Apr 12, 2019 7:31 pm (46854)


I found the lips data !

It's start at adress 1A with "05" and finish when you encounter "FF".

Then after the VOC data start.

I was extract/reinjected the lips data it's works fine.
It was easy to do this myself.

So i have coded myself a tool to extract/reinject all lips data to all .VOC files ;)

Code:
Unofficial DUNE CD (PC VERSION) LipsExtractor and LipsInjector V1.0
Coded by Tgames (c) 2019

LipsExtractor Instructions
--------------------------

Usage: LipsExtractor.exe path_folderVOCFiles

It will extract every LIP files (lips movements file) from each .VOC
Note: Some .VOC doesn't have any LIP file.
It will also make a log file of each actions.


LipsInjector Instructions
--------------------------

Usage: LipsInjector.exe path_folderVOCFiles path_folderLIPSFiles

It will inject every LIP files (lips movements file) into each .VOC
Note: It will only inject LIP data if a .LIP data is already present.
It also prevent the possibility to inject a LIP data twice.
All files will be sorted in corresponding folders after the injection.
It will also make a log file of each actions.


DOWNLOAD:

http://tgames.fr/tgames/PC/Tgames_LipsManagerV1.0.zip
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.