Join also our Discord channel! Click here.

The Witcher 2

The Original Forum. Game archives, full of resources. How to open them? Get help here.
User avatar
Tosyk
double-veteran
double-veteran
Posts: 953
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 227 times
Been thanked: 120 times
Contact:

Re: The Witcher 2

Post by Tosyk » Sat May 28, 2011 6:04 pm

latest compiled version here
Thank you for all you do here
my blog | my forum

Arxel
n00b
Posts: 18
Joined: Wed May 25, 2011 11:32 pm

Re: The Witcher 2

Post by Arxel » Sat May 28, 2011 6:23 pm

Thank you! Works great, have all items names! Hell yeah!

In Opera I have problem with "invalid character reference" http://www.w3.org/TR/REC-xml/#NT-CharRef
Think 'cos of polish language ;)
Last edited by Arxel on Sat May 28, 2011 8:44 pm, edited 1 time in total.

hhrhhr
advanced
Posts: 61
Joined: Thu Mar 18, 2010 7:02 am
Has thanked: 1 time
Been thanked: 18 times

Re: The Witcher 2

Post by hhrhhr » Sat May 28, 2011 8:37 pm

i'm ask Rick in PM, but he is not aviable ;)

to unpack a ru0.w2strings (Russian) must be added one line in the file \Gibbed.RED.FileFormats\StringsFile.cs:

Code: Select all

        private static uint GetRealKey(uint fileKey)
        {
            switch (fileKey)
            {
                // ------------------------------- skipped
                case 0x63481486: return 0x42386347; //RU ver 1.1
                case 0x77932179: return 0x54932186; //RU ver 1.0-1.0.0.3
            }
            return 0;
        }
Last edited by hhrhhr on Sat May 28, 2011 9:36 pm, edited 1 time in total.

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: The Witcher 2

Post by Rick » Sat May 28, 2011 9:15 pm

Interesting since my Steam copy of the game doesn't have those values. Thanks.
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

Arxel
n00b
Posts: 18
Joined: Wed May 25, 2011 11:32 pm

Re: The Witcher 2

Post by Arxel » Sat May 28, 2011 9:19 pm

As far as I know, steam versions is a little different that retail versions ;)

hhrhhr
advanced
Posts: 61
Joined: Thu Mar 18, 2010 7:02 am
Has thanked: 1 time
Been thanked: 18 times

Re: The Witcher 2

Post by hhrhhr » Sat May 28, 2011 9:41 pm

just in the Steam are not the Russian version, but on 17 June she will appear.

p.s.
update message with a old keypair for initial russian version (before the path 1.1)

Arxel
n00b
Posts: 18
Joined: Wed May 25, 2011 11:32 pm

Re: The Witcher 2

Post by Arxel » Sun May 29, 2011 10:20 am

Which exactly files does Gibbed.RED.ResourceEdit can unpack?
Anyone know where I can find locations of items? Some coordinates or something? I know that some of them we can find in shops, but I would like to make for example a maps with all herbs on them :)

Rick
Moderator
Posts: 388
Joined: Tue Aug 09, 2005 10:10 pm
Location: California
Been thanked: 84 times
Contact:

Re: The Witcher 2

Post by Rick » Sun May 29, 2011 12:09 pm

ResourceEdit is still very early in development and can't actually edit anything yet, and its support for resources is very minimal at this point.
http://blog.gib.me/

Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.

Dimmell
ultra-n00b
Posts: 2
Joined: Fri May 27, 2011 5:25 pm

Re: The Witcher 2

Post by Dimmell » Sun May 29, 2011 7:14 pm

hhrhhr wrote:i'm ask Rick in PM, but he is not aviable ;)

to unpack a ru0.w2strings (Russian) must be added one line in the file \Gibbed.RED.FileFormats\StringsFile.cs:

Code: Select all

        private static uint GetRealKey(uint fileKey)
        {
            switch (fileKey)
            {
                // ------------------------------- skipped
                case 0x63481486: return 0x42386347; //RU ver 1.1
                case 0x77932179: return 0x54932186; //RU ver 1.0-1.0.0.3
            }
            return 0;
        }
Is it possible to add these changes to witcher2-gibbed-tools?

User avatar
Tosyk
double-veteran
double-veteran
Posts: 953
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 227 times
Been thanked: 120 times
Contact:

Re: The Witcher 2

Post by Tosyk » Sun May 29, 2011 8:17 pm

new version is here, Gibbed.RED.ResourceEdit not included.
Thank you for all you do here
my blog | my forum

Dimmell
ultra-n00b
Posts: 2
Joined: Fri May 27, 2011 5:25 pm

Re: The Witcher 2

Post by Dimmell » Sun May 29, 2011 10:24 pm

Tosyk wrote:new version is here, Gibbed.RED.ResourceEdit not included.
Thank you! Excellent work - decodes ru0.w2strings and encodes without problems. Image

Image Thanks Rick! Image
Last edited by Dimmell on Sun May 29, 2011 10:32 pm, edited 1 time in total.

User avatar
Tosyk
double-veteran
double-veteran
Posts: 953
Joined: Thu Oct 22, 2009 10:24 am
Location: Russia, Siberia
Has thanked: 227 times
Been thanked: 120 times
Contact:

Re: The Witcher 2

Post by Tosyk » Sun May 29, 2011 10:27 pm

Dimmell wrote:
Tosyk wrote:new version is here, Gibbed.RED.ResourceEdit not included.
Thank you! Excellent work - decodes ru0.w2strings and encodes without problems. Image
all thanks to Rick, please
Thank you for all you do here
my blog | my forum

chalon
n00b
Posts: 16
Joined: Sat May 21, 2011 8:20 pm
Been thanked: 1 time

Re: The Witcher 2

Post by chalon » Mon May 30, 2011 11:11 am

Arxel wrote:Anyone know where I can find locations of items? Some coordinates or something? I know that some of them we can find in shops, but I would like to make for example a maps with all herbs on them :)
You won't be able to do something like this with the current available tools.

The locations of the herbs are most likely in all the herbs.w2l files that are in various directories under levels. But those files are binary data, so it will be a while before it's figured out.

dubh
n00b
Posts: 13
Joined: Mon May 23, 2011 9:34 am
Been thanked: 1 time

Re: The Witcher 2

Post by dubh » Wed Jun 01, 2011 4:54 am

FYI: I'm maintaining the project page for Rick's tools at Witcher Nexus. There's a setup file for easy/familiar installation, and a readme on the project page that has basic usage instructions and answers to frequently asked questions. (ResourceEdit is currently not included per Rick's request.) Feel free to send anyone who needs only the binaries there. Oh, and if you're registered on Nexus, please endorse the file to show Rick some love. ;)

JPulowski
beginner
Posts: 30
Joined: Sat Aug 28, 2010 10:39 pm
Has thanked: 3 times

Re: The Witcher 2

Post by JPulowski » Sat Jun 04, 2011 2:55 am

For the .USM files, it seems the game using ui_video.swf in global folder for playing them. I don't know much about coding stuff, but I've found this actionscript inside the .swf file. Maybe it helps somebody, who knows?

Code: Select all

// Action script...

// [Action in Frame 1]
stop ();

function PlayVideo(vName, vLoop)
{
    video.attachVideo(ns);
    ns.loop = vLoop;
    ns.setOpenTimeout(0);
    if (_global.gfxVersion != undefined)
    {
        vName = vName + ".usm";
    }
    else
    {
        vName = vName + ".flv";
    } // end else if
    ns.play(vName);
    subLine.subtitleTxt.text = "";
    SetStatusText("Play: " + vName + "\n");
    blackscreen.gotoAndPlay(2);
} // End of the function
function StopVideo()
{
    movieInfo = undefined;
    ns.close();
    flash.external.ExternalInterface.call("MovieStopped");
} // End of the function
function PauseVideo(vLoop)
{
    ns.pause(vLoop);
} // End of the function
function GetSubtitleLanguage()
{
    return (subtitleLanguage);
} // End of the function
function GetAudioLanguage()
{
    return (audioLanguage);
} // End of the function
function SetAudioLanguage(vLang)
{
    audioLanguage = vLang;
    setupLanguage();
} // End of the function
function SetSubtitleLanguage(vLang)
{
    subtitleLanguage = vLang;
    setupLanguage();
} // End of the function
function GetDuration()
{
    if (movieInfo == undefined)
    {
        return (0);
    } // end if
    return (movieInfo.duration);
} // End of the function
function GetMovieInfo()
{
    return (movieInfo);
} // End of the function
function setupLanguage()
{
    if (movieInfo == undefined || movieInfo.audioTracks == undefined)
    {
        return;
    }
    else
    {
        ns.audioTrack = 0;
        ns.subAudioTrack = audioLanguage;
        ns.subtitleTrack = subtitleLanguage;
    } // end else if
} // End of the function
function ShowStatus(enable)
{
    if (enable)
    {
        statusTxt._visible = true;
        statusTxt.text = "";
        statusTxt.scroll = statusTxt.maxscroll;
    }
    else
    {
        statusTxt._visible = false;
    } // end else if
} // End of the function
function onKeyDown()
{
    if (Key.getCode() == 3)
    {
        StopVideo();
    } // end if
} // End of the function
_global.gfxExtensions = 1;
Stage.scaleMode = "Scale";
ShowStatus(false);
var nc = new NetConnection();
nc.connect(null);
var ns = new NetStream(nc);
var movieInfo;
var audioLanguage = 0;
var subtitleLanguage = 0;
Key.addListener(this);
SetStatusText = function (msg)
{
    if (statusTxt._visible)
    {
        statusTxt.text = statusTxt.text + (msg + "\n");
        statusTxt.scroll = statusTxt.maxscroll;
    } // end if
};
ns.onMetaData = function (infoObject)
{
    movieInfo = infoObject;
    for (var _loc1 in movieInfo)
    {
        SetStatusText(_loc1 + ":" + movieInfo[_loc1]);
    } // end of for...in
    if (movieInfo.audioTracks != undefined)
    {
        SetStatusText("Audio tracks:" + movieInfo.audioTracks.length);
    }
    else
    {
        SetStatusText("No audio tracks!");
    } // end else if
    if (movieInfo.audioTracks != undefined)
    {
        SetStatusText("Subtitles tracks:" + movieInfo.subtitleTracksNumber);
    }
    else
    {
        SetStatusText("No subtitles tracks!");
    } // end else if
    setupLanguage();
};
ns.onCuePoint = function (infoObject)
{
    flash.external.ExternalInterface.call("CuePoint", infoObject.name);
};
ns.onSubtitle = function (line)
{
    subLine.subtitleTxt.text = line;
    gotoAndPlay("playSubtitle");
};
ns.onStatus = function (infoObject)
{
    SetStatusText("STATUS: " + infoObject.code);
    switch (infoObject.code)
    {
        case "NetStream.Play.Start":
        {
            flash.external.ExternalInterface.call("MovieStarted");
            break;
        } 
        case "NetStream.Play.Stop":
        {
            flash.external.ExternalInterface.call("MovieStopped");
            break;
        } 
    } // End of switch
    gotoAndPlay(playSubtitle);
};
if (_global.gfxVersion == undefined)
{
    PlayVideo("movie", false);
    gotoAndPlay("playSubtitle");
    ShowStatus(true);
} // end if

// [Action in Frame 2]
trace ("go");

// [Action in Frame 134]
trace ("stop");
stop ();

Post Reply