mil84 Posted March 3, 2023 Report Share Posted March 3, 2023 (edited) I am trying to add photos to some existing players in NHL 2002 (for example national teams do have real players, but some are without photos...). I played around EA editor and tried editing bphoto.viv and sphoto.viv, but it caused the app crash. Is there a some tutorial how to do this? Or links to NHL 2002 facepacks? PS: At the very minimum, if I could see the players photos in the EDIT LINES screen, it would be enough. I don't necessarily need to create the whole cyberface for the gameplay, if it's too complicated Edited March 3, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 3, 2023 Report Share Posted March 3, 2023 Here's some example code I made for player portraits: gfxpak -cp PHOTOS\BPHOTO.VIV\0001.FSH 3618.FSH tapper.png PPRT gfxpak -p PHOTOS\BPHOTO.VIV 3618.fsh move 3618.fsh bphoto\ gfxpak -cp PHOTOS\SPHOTO.VIV\0001.FSH 3618.FSH tapper_s.png PPTS gfxpak -p PHOTOS\SPHOTO.VIV 3618.fsh move 3618.fsh sphoto\ gfxpak -cp UGI\UGIFACE.VIV\0001.FSH 3618.FSH tapper_m.png PPTU gfxpak -p UGI\UGIFACE.VIV 3618.fsh move 3618.fsh ugiface\ pause cls This gets copied into a new .bat file, which can be created by pasting the code into Notepad and selecting "All Files". gfxpak.exe is needed for this (a version of which can be, interestingly enough, found here: http://mjhl2002-2.freewebspace.com/utility.zip) Though obviously, the numbers and file name would reflect the one you're trying to edit. The bphoto, sphoto, and ugiface folders would need to be created in the game directory first. For this, three images are needed; a large photo, which is 176x250 (bphoto); a small photo, which is 28x40 (sphoto); and a medium photo, which is 56x78 (ugiface). Name these files as such: (player name).png (bphoto); (player name)_s.png (sphoto); and (player name)_m.png (ugiface) As for cyberfaces, here's what you do: First, you open EA Graphics Editor. Then you find faces01.viv. Open that file. After that, find the cyberface that most closely matches the portrait. Extract that cyberface, then rename it to reflect the portrait number (f000xxxx.fsh; the x's are placeholders for the number of your choice. if it's 4 digits, then you put, for example, 1234 in the x's. If it's 3 digits, then you put, for example, 0123 there, etc.). The program then asks if you would like to decompress it. Select yes. After that, you go to the file called FAC1, and save it as a png. If you want, you can name it after the player you are dealing with. Then go to whatever photo editing software you have. I use Photoshop. For that, I simply duplicate the original face and put it in RGB mode. The steps may be different for other image editors. Here, let's assume you have Photoshop. First, you go to the portrait, and select the face using the Lasso tool. Feather it after you make the selection so that the transition between the portrait and cyberface is more seemless. Copy the selection, and paste it on top of the cyberface Then you line up the face you just pasted with the cyberface's features. For even more realism, you can make the new layer's colours resemble that of the cyberface as closely as possible. Once that is done, merge the two layers and copy it. If the player has a beard, simply use the Clone Stamp tool to clone parts of the beard to make it more realistic. Proceed to then merge and copy. Then you paste the new image onto the original. That way, the palette remains the same. Save it. Remember that cyberface you extracted all the way back in step 4? Now, let's open it up. Once it's open, go to the file labled FAC1, and open the Import Wizard. Select the option that reads "Import an existing external file into the current open image." Click next. Then you go to "Browse", and find the image you just edited. Then click "Next". The Wizard will mention that the image uses a global palette. Assuming you pasted the RGB image over the indexed one back in step 10, you don't need to worry, as the palette is the same. Click "yes". Then, watch as the Wizard does its thing. If it was successful, then you should be able to see the new image imported into the cyberface. Then, make a new .bat file in the same way as previously outlined. Here's some base code: GFXPAK -p gamedata\faces00.viv F0008185.fsh move F0008185.fsh cyberfaces\ pause cls Replace F0008185.fsh with whatever cyberface you made. And create the cyberfaces folder in the install directory. Once all that is done, run the first batch file, which can be named something like "photos.bat". If done correctly, the files should be imported. Do the same thing with the cyberface, witha batch file called "cyber.bat". Again, if done correctly, the file should be imported. Then, find a player that fits the position of the player you wanted to make files for, and change the FAC1 and FAC2 numbers in nhlinfo (which can be found here: nhlinfo.zip - Google Drive) to the numbers corresponding to the files you just imported. Then launch the game. Go find the player you were editing. If done correctly, there should not be an appcrash, and the photos are visible. On my end, however, trying to select teams crashes the game because of ntdll.dll being faulty, according to Event Viewer, but the cyberface should be visible in-game if you followed the steps correctly. Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 3, 2023 Author Report Share Posted March 3, 2023 (edited) Thank you for a detailed tutorial, but I am a noob and I have plenty of questions 1. If I understood you well - if I do not want cyberfaces, then that script from the beginning is all I need + those 3 version of png photos in appropriate resolutions (normal, _m, _s)? Am I right? I only wanna add 2 goalies so really, cyberfaces in the game do not matter much for me...Lot of work for nothing. 2. File you linked (http://mjhl2002-2.freewebspace.com/utility.zip) can not be downloaded (forbidden access). I've also tried VPN + 3 different countries, same result 3. Can you pls explain a bit logic of this command: gfxpak -cp PHOTOS\BPHOTO.VIV\0001.FSH 3618.FSH tapper.png PPRT I understand it tries change cyberface in database PHOTOS\BPHOTO.VIV, specifically 0001.FSH cyberface (I guess...) with another cyberface 3618.FSH but I do not have any cyberface 3618.FSH? I only have png photos of players. Or do I miss something? Thanks a lot for your effort, I really appreciate it Edited March 3, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 3, 2023 Report Share Posted March 3, 2023 (edited) 1) Yes, that’s all you’d need. 2) Of course this was going to happen. How about this one, instead? https://forums.nba-live.com/downloads.php?view=detail&df_id=29 3) That’s not for cyberfaces. That is for the 176x250 photo that you see when viewing a player’s information, as well as the starting line up screen. In regards to the number, please read this: 7 hours ago, Jlsegafan2001 said: Though obviously, the numbers and file name would reflect the one you're trying to edit. So yeah, you missed a crucial detail. Edited March 3, 2023 by Jlsegafan2001 Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 3, 2023 Author Report Share Posted March 3, 2023 (edited) Thanks. I specifically do not understand why there are 3 different informations: - 0001.FSH // I assume this is a player image I wanna change - tapper.png // a player image I wanna upload - 3618.FSH // what is this ??? I do not ask about numbers, I know they are arbitrary, I am asking what is that extra fsh file? Edited March 3, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 3, 2023 Report Share Posted March 3, 2023 Here’s the thing. 0001.fsh is actually used as a reference for .fsh file you are using gfxpak to create and import (3618.fsh). tapper.png is the image that the .fsh file should contain. PPRT is the file type used for the images in bphoto.viv. Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 4, 2023 Author Report Share Posted March 4, 2023 (edited) Got it, it just looked confusing, but once I tried it, it was actually pretty easy and straightforward. Thanks a lot! One last thing though - whatever I use, jpg or png, it looks like image degrades a bit, and there are few black dots all over the image. Not a big deal, just not sure why that happens? Edited March 4, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 4, 2023 Report Share Posted March 4, 2023 Can you please show me what you’re talking about so I know what you mean by “few black dots”? Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 4, 2023 Author Report Share Posted March 4, 2023 See attachment. Some photos are better than the others, it's random. I also attached the source image Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 4, 2023 Report Share Posted March 4, 2023 What I do is this: I create the images with those sizes. Then I paste the portrait into the 176x250 image and crop it. Then I use the magic wand tool to select the background. Then I put the image into indexed mode, which limits the colours to 256. It’s important that you set the matte to black, as that way, the portrait won’t have a TV static-esque outline. That’s when I delete the background. Then, I save the image with the player’s last name. The last name is preceded by the first initial of another player has the same last name. For two fictional players of mine, Sonny Hedges and Sonia Hedges, I name them as syhedges.png and sahedges.png, as their names are spelled almost identically. However, for Justin Miller and Stephen Miller, two other fictional players of mine, it’d be jmiller.png and smiller.png For the player you have, the file names would be: lasak.png (bphoto) lasak_s.png (sphoto) lasak_m.png (ugiface) Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 4, 2023 Author Report Share Posted March 4, 2023 (edited) Yes, those are exact name conventions I've used. I've even tried jpg pics, bmp pics, png with transparent background pics, even gifs, 8 bit, 16 bit, 24 bit, 32 bit, web pallette, normal palette - in Gimp, or photoshop, even online converters, etc. Nothing works. Always some issues. EDIT: I've tried 256 colors (8-bit) PNG with transparent background, and that's the only combination which works! Finally Thanks for your help! This was tough, much more complicated than I thought and I would have never figure it out without your help Edited March 4, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 4, 2023 Report Share Posted March 4, 2023 You’re welcome. I’ve made mods of these games for a few years, so I know how the file structures work. Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 5, 2023 Author Report Share Posted March 5, 2023 Do you have any own mods, addons, updates or anything? I'd love to check your work PS: by any chance, do you know how to play NHL 2002 on higher than 800x600 resolution? I'm a bit familiar with nGlide, but it doesn't do anything for nhl 2002 regardless settings (even after installing registries & patch). I remember it used to work for nhl 2000 in the past Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 5, 2023 Report Share Posted March 5, 2023 https://discord.gg/Fj78gGbF6c If you have Discord, you can join this server. If not, you can simply create an account, then join. If you don't want to, I can create some threads showing off what I have to offer as of late. P.S.: That's interesting. I have my own issue, and it's game-breaking: I am unable to load into a match because this error crashes the game every time I attempt to get to the Select Teams screen in any mode: Faulting application name: nhl2002.exe, version: 0.0.0.0, time stamp: 0x31313931 Faulting module name: ntdll.dll, version: 10.0.19041.2364, time stamp: 0xea5711f3 Exception code: 0xc0000005 Fault offset: 0x000482f5 Faulting process ID: 0x44d4 Faulting application start time: 0x01d94f22ede5066d Faulting application path: C:\NHL 2002\nhl2002.exe Faulting module path: C:\WINDOWS\SYSTEM32\ntdll.dll Report ID: def3245a-97dd-47ea-841b-7e18ec96bb68 Faulting package full name: Faulting package-relative application ID: Faulting package-relative application ID: Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 5, 2023 Author Report Share Posted March 5, 2023 (edited) Interesting. I am using Parallels with Win11 (on Mac M2 - ARM) and everything works fine. So was on VMWare (just without 3D acceleration). This looks like a Drivers/graphic problem? I would definitely try virtualization - even if your laptop is Windows - to narrow down possibilities. Because virtualized environment is standardized, and if game works fine in virtualized enviroment, but not on your host OS, for sure something is wrong with the host OS, probably drivers? hard to say, but worth to try. Edited March 5, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 5, 2023 Report Share Posted March 5, 2023 The only way I've been able to play it was with virtualization using VMWare. However, I want to play the game on the host machine. Also, did you see the link I sent? Quote Link to comment Share on other sites More sharing options...
mil84 Posted March 5, 2023 Author Report Share Posted March 5, 2023 (edited) Joined. To your issue, this really seems like corrupted drivers or perhaps unsupported graphic card? Because generic drivers & hw in VMware works fine. What your specs & win version? I guess you've investigated it a lot already, but just in case - have you tried copying ntdll.dll from VMware to your host machine? Or installing various drivers versions for your graphic card? Or installing a software from your card manufacturer, and tweak it by turning on/off various features? Or if you have a dedicated graphic card, have you tried to turn it off and only using integrated one from the (intel) motherboard? Edited March 5, 2023 by mil84 Quote Link to comment Share on other sites More sharing options...
Jlsegafan2001 Posted March 5, 2023 Report Share Posted March 5, 2023 No, it was a Windows update that broke NHL 2002. Copying that file cannot be done, as Windows will prevent me from completing it by way of needing permission… from myself. I use an nVidia card, and I always try to keep it up to date whenever I can. I believe the motherboard I have is an MSI one. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.