AxelNoir Posted May 18 Share Posted May 18 Hello, I'm wondering if anyone has ever managed to pull any models from the Xbox Buffy the Vampire Slayer videogame? Looks like the models are stored inside .pak containers, there was an old zenhax topic for it years back but it's inaccessible and I can't access it so I'm not sure if anyone here might have any access to it possibly. I've attached a sample pak file for someone to look at. It seems the game uses the old Slayer engine and some old Xentax topics came up regarding it but there's not much info or incomplete research on it as well. res_m01_highschool_1.zip Link to comment Share on other sites More sharing options...
Engineer roocker666 Posted May 18 Engineer Share Posted May 18 Use this quickbms script to extract files from pak: Buffy pak extractor quickbms 2 Link to comment Share on other sites More sharing options...
AxelNoir Posted May 18 Author Share Posted May 18 2 hours ago, roocker666 said: Use this quickbms script to extract files from pak: Buffy pak extractor quickbms Thank you! It worked, so I've got some mesh files and textures if anyone would like to take a look: https://drive.google.com/file/d/1c1xu-Wv47YMiuiibQpHdR8okSH76msIL/view?usp=sharing Link to comment Share on other sites More sharing options...
Engineer roocker666 Posted May 19 Engineer Share Posted May 19 I used Model researcher and this is the model "buffycheer(base).msh" but faces look weird, I Don't know why.. Vertices and Faces count are 4 bytes before vertices and faces offsets. About textures those are DXTs, you can use texture finder Link to comment Share on other sites More sharing options...
AxelNoir Posted May 19 Author Share Posted May 19 Cool thanks for the update! I'll see what i can do with this, let me know if anything else comes up! Link to comment Share on other sites More sharing options...
Engineer h3x3r Posted May 19 Engineer Share Posted May 19 Noesis python script for textures. Covers all provided samples. I believe there will be more than just 2 pixel formats. But so far DXT1/5. from inc_noesis import * import noesis import rapi import os def registerNoesisTypes(): handle = noesis.register("Buffy the Vampire Slayer - Texture(*.mtx)", "mtx") noesis.setHandlerTypeCheck(handle, noepyCheckType) noesis.setHandlerLoadRGBA(handle, noepyLoadRGBA) noesis.logPopup() return 1 def noepyCheckType(data): bs = NoeBitStream(data) if len(data) < 20: return 0 return 1 def noepyLoadRGBA(data, texList): ctx = rapi.rpgCreateContext() bs = NoeBitStream(data) baseName = rapi.getExtensionlessName(rapi.getLocalFileName(rapi.getInputName())) FileName = bs.readString() bs.seek(0, NOESEEK_ABS) bs.read(32) ImgWidth = bs.readUInt() ImgHeight = bs.readUInt() bs.read(8) ImgSize = bs.readUInt() MipMap = bs.readUInt() PixelFormat = bs.readUInt() bs.read(4) data = bs.readBytes(ImgSize) if PixelFormat == 65: texFmt = noesis.NOESISTEX_DXT1 elif PixelFormat == 69: texFmt = noesis.NOESISTEX_DXT5 texList.append(NoeTexture(rapi.getInputName(), ImgWidth, ImgHeight, data, texFmt)) return 1 3 Link to comment Share on other sites More sharing options...
Engineer Solution Durik256 Posted May 19 Engineer Solution Share Posted May 19 I just want to share. I made a plugin "Buffy the Vampire [XBOX] (.mtx/.msh)" for Noesis a long time ago (not for publish) 😀 Mesh, UVs, Skel, Weights, Textures 3 Link to comment Share on other sites More sharing options...
AxelNoir Posted May 19 Author Share Posted May 19 5 hours ago, h3x3r said: Noesis python script for textures. Covers all provided samples. I believe there will be more than just 2 pixel formats. But so far DXT1/5. from inc_noesis import * import noesis import rapi import os def registerNoesisTypes(): handle = noesis.register("Buffy the Vampire Slayer - Texture(*.mtx)", "mtx") noesis.setHandlerTypeCheck(handle, noepyCheckType) noesis.setHandlerLoadRGBA(handle, noepyLoadRGBA) noesis.logPopup() return 1 def noepyCheckType(data): bs = NoeBitStream(data) if len(data) < 20: return 0 return 1 def noepyLoadRGBA(data, texList): ctx = rapi.rpgCreateContext() bs = NoeBitStream(data) baseName = rapi.getExtensionlessName(rapi.getLocalFileName(rapi.getInputName())) FileName = bs.readString() bs.seek(0, NOESEEK_ABS) bs.read(32) ImgWidth = bs.readUInt() ImgHeight = bs.readUInt() bs.read(8) ImgSize = bs.readUInt() MipMap = bs.readUInt() PixelFormat = bs.readUInt() bs.read(4) data = bs.readBytes(ImgSize) if PixelFormat == 65: texFmt = noesis.NOESISTEX_DXT1 elif PixelFormat == 69: texFmt = noesis.NOESISTEX_DXT5 texList.append(NoeTexture(rapi.getInputName(), ImgWidth, ImgHeight, data, texFmt)) return 1 This is great, seems to work for me so thank you very much for this, much appreciated! Link to comment Share on other sites More sharing options...
FreshSoulz Posted May 19 Share Posted May 19 It would be pretty groovy if I could get hold of Buffy's 4 models and Spike and angel as .obj format. I've been trying today but to no avail with the meshes. The script above worked great for the textures. I'll keep trying 🙂 1 Link to comment Share on other sites More sharing options...
FreshSoulz Posted May 20 Share Posted May 20 On 5/19/2024 at 12:35 PM, Durik256 said: I just want to share. I made a plugin "Buffy the Vampire [XBOX] (.mtx/.msh)" for Noesis a long time ago (not for publish) 😀 Mesh, UVs, Skel, Weights, Textures I believe you charge for this plugin? so does your Noesis plugin export all character flawlessly to .obj or is it just Buffy? Link to comment Share on other sites More sharing options...
AxelNoir Posted May 21 Author Share Posted May 21 Second this, I don't mind paying for the plugin if I have to. Otherwise I guess we're back to square one... Link to comment Share on other sites More sharing options...
PRP1986 Posted June 22 Share Posted June 22 (edited) On 5/20/2024 at 10:45 PM, FreshSoulz said: I believe you charge for this plugin? so does your Noesis plugin export all character flawlessly to .obj or is it just Buffy? I have used the plugin and it allows you to export all .msh files that you have extracted from the pak files - fully textured characters (rigged), all skeletal meshes (rigged) and all static meshes. There will be minimal manual work require to clean up the Spike and Angel models as by the nature of the original files their .msh file contains both the human and vamp version (that is of course not the fault of the plugin). You will see the first image below has an overlap of the two head meshes included in that msh file. Its an easy fix and there are no issues with the other meshes. I have always found Durik's plugins to work well and do the job as expected. Edited June 22 by PRP1986 2 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now