1. nastys

    OP nastys ナースティス
    Member

    Joined:
    Aug 5, 2014
    Messages:
    1,715
    Country:
    Italy

    Note: I've already fixed the scrolling issue seen in this video.

    I'm working on a mod to remove as much censorship as possible. Unfortunately there's no tool for editing CAFF files, and the version used by the game hasn't been reverse-engineered yet (as far as I know), so for now I've edited a couple of scripts as a proof of concept, using a hex editor. Some scripts don't like being edited like this, so proper reverse engineering of this version of CAFF may be necessary. It should also be possible to restore the original (uncensored) audio by taking parts from Rare's uncensored¹ MP3s² if there's a way to repack the audio.

    GitHub repository: https://github.com/nastys/conker-live-and-reloaded-decensor

    UPDATE: somewhatlurker has reverse engineered how the script is stored in the CAFF files. A proper tool that doesn't break anything should be possible now!

    UPDATE 2: I've written a simple string editor: https://github.com/nastys/CAFFTextEditor/releases
    If you all want to help, you can compare the Xbox version's text to the N64 version's (and try to guess the rest e.g. by listening closely to the first and the last consonants), edit the files, then fork the repository of the mod, add your modified files, and open a pull request.

    UPDATE 3: I have succesfully decensored the poo boss battle:
     
    Last edited by nastys, Sep 14, 2020
    Memoir, CORE, Dodain47 and 2 others like this.
  2. MrCokeacola

    MrCokeacola The Xbox Guy
    Member

    Joined:
    Feb 26, 2018
    Messages:
    777
    Country:
    Canada
    Very cool. I had a friend working on this and he got proof of concept working and put the uncensored great mighty poo song back in the game. He didn't know of the higher quality MP3s you found and was just using the N64 audio. He posted the files on the old isozone and they are long deleted now. I don't remember 100% but he was editing all the files in some Microsoft game maker program. I'll try and get in contact with them again but they have not been on Xbox live in awhile.
     
  3. Daggot

    Daggot GBAtemp Advanced Fan
    Member

    Joined:
    Aug 3, 2015
    Messages:
    646
    Country:
    United States
    This is awesome. Live&Reloaded would be hands down the best version of the game if it was uncensored.
     
  4. nastys

    OP nastys ナースティス
    Member

    Joined:
    Aug 5, 2014
    Messages:
    1,715
    Country:
    Italy
    The game uses uncompressed (?) multi-channel audio, so my idea is to only replace the beeped parts to preserve the quality (the "echo" channels are not censored).
     
  5. oblivioncth

    oblivioncth Newbie
    Newcomer

    Joined:
    Feb 12, 2020
    Messages:
    1
    Country:
    United States
    I'm potentially interested in helping with this, namely working on an editor. Are his notes on the format publicly available? I wasn't able to find anything from a quick search.
     
  6. nastys

    OP nastys ナースティス
    Member

    Joined:
    Aug 5, 2014
    Messages:
    1,715
    Country:
    Italy
    Code:
    text data:
    0x20: "LSBL" pointer
    0x28: number of trigger names(?)
    0x2c: start trigger name(?) pointer structs
    
    trigger name pointers (size 8):
    +0x00: address
    +0x04: some kind of id?
    +0x06: definitely an id (I guess identifies script.. not sure but it's used a lot)
    
    
    
    LSBL (script lines?):
    +0x10: LSBL length?
    +0x20: number of lines?
    +0x24: start line pointer structs
    ...
    [after structs]: 0xFF
    [after structs]+0x02: text length
    [after structs]+0x06: text start (utf16?)
    
    line pointers (size 6):
    +0x00: id?
    +0x02: characters offset into text (not bytes)
    
    
    cutscene list?? (acually part of LSBL? idk -- located at LSBL address + LSBL length):
    +0x00: length
    +0x04: number of scenes
    +0x08: start scene pointer structs
    
    scene pointers (size 8):
    +0x00: some kind of id?
    +0x02: some kind of id?
    +0x04: name offset (from end of pointers)
    
    
    movie/sound list (acually part of LSBL? idk -- located at cutscene list address + cutscene list length):
    +0x00: length
    +0x04: number of entries
    +0x08: start media pointer structs
    
    media pointers (size 8):
    +0x00: some kind of id?
    +0x04: offset (from end of pointers)
    
    media info (ssems to be a string?):
    ; cutscene***.; Mpeg = ???: ???.wav.
    (can have multiple Mpeg+wav sections
    The text is obviously wstring. There is a checksum (https://gist.github.com/x1nixmzeng/c55c248c384bf1c9df2a), but it doesn't seem to affect the text itself. Terminating the wstrings with '\0' seems to work somewhat, but of course I've had issues with this approach and I haven't worked on it in a while because I had to stay away from home for a while and I couldn't use my Xbox, and XQEMU barely runs it.
     
    Last edited by nastys, Feb 12, 2020
    MrCokeacola likes this.
  7. thewolftakeover

    Newcomer

    Joined:
    Feb 18, 2020
    Messages:
    5
    Country:
    United States
    What can I do to help?
     
  8. nastys

    OP nastys ナースティス
    Member

    Joined:
    Aug 5, 2014
    Messages:
    1,715
    Country:
    Italy
    I know I've been away for quite some time, but I haven't given up on this project yet ;)

    I've written a simple string editor:
    https://github.com/nastys/CAFFTextEditor/releases

    If you all want to help, you can compare the Xbox version's text to the N64 version's (and try to guess the rest e.g. by listening closely to the first and the last consonants), edit the files, then fork the repository of the mod, add your modified files, and open a pull request.

    I'll take care of the audio later. I know there are some deepfake/AI voice synthesizers that might help.
     
    Last edited by nastys, Sep 14, 2020
    MrCokeacola likes this.
  9. nastys

    OP nastys ナースティス
    Member

    Joined:
    Aug 5, 2014
    Messages:
    1,715
    Country:
    Italy
    Here's the poo boss battle, fully decensored:
     
    Rocky5, MrCokeacola and Memoir like this.
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Reloaded, Decensor, Conker