|
 |
|
|
|
|
|
GTA Modification Forums
[REL] GTA IV Ivaud Editor Made by Vilavek Vilavek made this so all credits to him
 |
|
 |
| |
Vilavek  |
Posted: Saturday, Jan 16 2010, 23:11
|
Player Hater

Group: Members
Joined: Dec 28, 2009


|
As far as I am aware NTAuthority, I am not in violation of any GPL agreement. The hasher I created was hand-coded by myself, as the original hasher is not compatible with the VB.NET language due to inherent differences between C# and VB.NET (mainly the lack of unchecked variables). As you may have noticed I have been extremely hesitant to even look at SparkIV’s source code and incorporate it into my own work for this very reason. This is also the reason that I am coding the Ima/Dvi Adpcm decoder and encoder myself as well.
The screenshot you submitted shows me storing hashed values in a dictionary, is this the part you were referring to when you said I violated the GPL? If so, would you like me to redesign my application to not use dictionaries for this purpose? If so, how would you suggest I easily store 10,000+ hash values and associated filenames? With the same mentality, one would say that by using the only IMA Adpcm Decoding algorithm possible for decoding IMA Adpcm, I would be in violation of some license somewhere.
Version 1.1.5 was only released to give the community something to use until version 1.2 was released, something that supported filenames. I started GTA-IVaud while I had time off from work and school over the holiday season. Now that the holiday season is over and I am beginning the final semester of my college program, I am also starting a new fulltime job with a local higher-education focused technology firm. I fear I won’t have time to finish my work if I am forced to focus on minutia.
DerPlaya78 is correct. Through my own research into sounds.dat15 I came to the same conclusion he came to. Not all the filenames relating to audio are stored in sounds.dat15. Per your request however, I will document all my findings of sounds.dat15 and post an article on the subject, as soon as I get the time to do it, as my life does not consist solely of reverse engineering Grand Theft Auto IV’s design.
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
NTAuthority  |
Posted: Tuesday, Jan 19 2010, 07:57
|
member_title

Group: Members
Joined: Sep 9, 2008



|
| QUOTE (Vilavek @ Jan 17 2010, 00:11) | | As far as I am aware NTAuthority, I am not in violation of any GPL agreement. The hasher I created was hand-coded by myself, as the original hasher is not compatible with the VB.NET language due to inherent differences between C# and VB.NET (mainly the lack of unchecked variables). As you may have noticed I have been extremely hesitant to even look at SparkIV’s source code and incorporate it into my own work for this very reason. This is also the reason that I am coding the Ima/Dvi Adpcm decoder and encoder myself as well. |
I know those points, but read the next point  | QUOTE | The screenshot you submitted shows me storing hashed values in a dictionary, is this the part you were referring to when you said I violated the GPL? If so, would you like me to redesign my application to not use dictionaries for this purpose? If so, how would you suggest I easily store 10,000+ hash values and associated filenames?
|
Well, your variable names are exactly equal, and the compiled IL code would also be mostly the same. Even more so, that entire class seems almost equally named, though you used VB however. The rest of the code doesn't look that bad, however you also have (though unused) the 'DviAdpcmDecoder' class. Not that bad for a intermediate version, but I'd personally not release it when things look mostly similar -- even though I commonly rewrite code using equal variable names, and even released verbatim GPL code with the reason 'if anyone complains, they can get the source code'.  | QUOTE | Version 1.1.5 was only released to give the community something to use until version 1.2 was released, something that supported filenames.
|
... oh well, I have been planning to rewrite some old C++ code I had lying around as well, never got to it, and in the meantime I had been hacking around on the old buggy codebase... and filenames can indeed be a great help. | QUOTE | DerPlaya78 is correct. Through my own research into sounds.dat15 I came to the same conclusion he came to. Not all the filenames relating to audio are stored in sounds.dat15.
|
Extracting just the strings from the file (to be precise, ep2_sounds.dat15) and comparing to ep2_sfx.rpf (hey, what?) did net me all filenames for the (non-radio related) files, minus most of the contents - some are stored in the sounds.dat15 files, but without exact table information I didn't find a way to extract the data. | QUOTE | Per your request however, I will document all my findings of sounds.dat15 and post an article on the subject, as soon as I get the time to do it, as my life does not consist solely of reverse engineering Grand Theft Auto IV’s design.
|
Whose life does, actually? | QUOTE (DerPlaya78) | @vilavek: that's right (not all filenames are recoverable from the game files). As i said, the ingame dialog filenames are only in the xbox360 version, there're not used by the game anyway, that's what the hashes are for... I spend a month collecting all the strings from all the files (I mean ALL game files) and checking for valid hashes.
|
... why would you use hashes in compiled code when you'd still need to use original filenames? SA had this issue in a similar way, there was a list of script names and their identifier, but those did absolutely not correlate to the audio files. IV's hash system is a lot more helpful in that way than the older engines were. We're even lucky IV contains non-hashed names for all scripting functions, I can't imagine who would have been interested in naming all functions again for the new hash system?
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
Dvt-MedShot  |
Posted: Tuesday, Jan 19 2010, 16:11
|
Playa

Group: Members
Joined: May 2, 2007


|
| QUOTE (NTAuthority @ Jan 19 2010, 08:57) | | QUOTE (Vilavek @ Jan 17 2010, 00:11) | | As far as I am aware NTAuthority, I am not in violation of any GPL agreement. The hasher I created was hand-coded by myself, as the original hasher is not compatible with the VB.NET language due to inherent differences between C# and VB.NET (mainly the lack of unchecked variables). As you may have noticed I have been extremely hesitant to even look at SparkIV’s source code and incorporate it into my own work for this very reason. This is also the reason that I am coding the Ima/Dvi Adpcm decoder and encoder myself as well. |
I know those points, but read the next point 
| QUOTE | DerPlaya78 is correct. Through my own research into sounds.dat15 I came to the same conclusion he came to. Not all the filenames relating to audio are stored in sounds.dat15.
|
Extracting just the strings from the file (to be precise, ep2_sounds.dat15) and comparing to ep2_sfx.rpf (hey, what?) did net me all filenames for the (non-radio related) files, minus most of the contents - some are stored in the sounds.dat15 files, but without exact table information I didn't find a way to extract the data.
|
Lol, those are the TBOGT audio configs and archives.
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
Vilavek  |
Posted: Tuesday, Jan 19 2010, 21:55
|
Player Hater

Group: Members
Joined: Dec 28, 2009


|
While we’re on the subject of minutia, yes, the DviAdpcmDecoder and encoder classes have since been consolidated into a single ImaAdpcm class. I’m not sure why SparkIV’s code has this named DviDecoder. Dvi and Ima are interchangeable, and officially the format is referred to as IMA, not DVI, since being adopted by the Interactive Multimedia Association shortly after the creation of DVI in 1992. I’m glad I spent time talking about this nearly entirely irrelevant issue.
NTAuthority, it is obvious that you are providing non-constructive criticism for the sake of providing non-constructive criticism highlighted by the occasional “well that’s obvious”, about a version of my program which was originally not intended for release. I’m not sure what I did to offend you but, I just want to be sure you don’t think this is a cock measuring contest, because if you do then I don’t personally get off on these sorts of ‘who’s the better’ debates in forums. Personally, I have found just about every post you have made regarding GTA-IVaud negative, and totally non-constructive.
You obviously claim to be a skilled and impressive coder, as anyone who remotely cares can gather from your posts. Thus, I have a radical suggestion NTAuthority, since you obviously care a hell of a lot more than I do about my project, I will abandon the GTA-IVaud project, and you can step in, start your own project, and feel superior for a while in my wake if that’s the sort of thing you’re looking for. No?
If this sounds good to you, feel free to drop me a line if you hit any walls along the way and I will truthfully offer assistance to you conducive to project success, with no hard feelings, as opposed to the criticism you have offered me in your past few posts. If not, feel free to rip my post entirely apart and out of context as you have with your previous replies to my posts. I’m sure you would anyway.
GTA-IVaud put on hold To clarify for all those interested in version 1.2 of GTA-IVaud, I have decided to abandon the GTA-IVaud project for the time being. I have too much on my plate, and not enough free time to devote to the audio modification utility. Version 1.1.5 will remain as the final version of GTA-IVaud until such time that I can pick it up again. It’s been fun, but even if I had the time, dealing with the modding community pretty much killed any desire I had in completing the project. Developers interested in source-code and information can feel free to send me a private message.
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
zerofreeze  |
Posted: Tuesday, Jan 19 2010, 22:02
|
There are no stupid questions, just stupid people.

Group: Members
Joined: Dec 7, 2008


|
| QUOTE (Vilavek @ Jan 19 2010, 21:55) | While we’re on the subject of minutia, yes, the DviAdpcmDecoder and encoder classes have since been consolidated into a single ImaAdpcm class. I’m not sure why SparkIV’s code has this named DviDecoder. Dvi and Ima are interchangeable, and officially the format is referred to as IMA, not DVI, since being adopted by the Interactive Multimedia Association shortly after the creation of DVI in 1992. I’m glad I spent time talking about this nearly entirely irrelevant issue.
NTAuthority, it is obvious that you are providing non-constructive criticism for the sake of providing non-constructive criticism highlighted by the occasional “well that’s obvious”, about a version of my program which was originally not intended for release. I’m not sure what I did to offend you but, I just want to be sure you don’t think this is a cock measuring contest, because if you do then I don’t personally get off on these sorts of ‘who’s the better’ debates in forums. Personally, I have found just about every post you have made regarding GTA-IVaud negative, and totally non-constructive.
You obviously claim to be a skilled and impressive coder, as anyone who remotely cares can gather from your posts. Thus, I have a radical suggestion NTAuthority, since you obviously care a hell of a lot more than I do about my project, I will abandon the GTA-IVaud project, and you can step in, start your own project, and feel superior for a while in my wake if that’s the sort of thing you’re looking for. No?
If this sounds good to you, feel free to drop me a line if you hit any walls along the way and I will truthfully offer assistance to you conducive to project success, with no hard feelings, as opposed to the criticism you have offered me in your past few posts. If not, feel free to rip my post entirely apart and out of context as you have with your previous replies to my posts. I’m sure you would anyway.
GTA-IVaud put on hold To clarify for all those interested in version 1.2 of GTA-IVaud, I have decided to abandon the GTA-IVaud project for the time being. I have too much on my plate, and not enough free time to devote to the audio modification utility. Version 1.1.5 will remain as the final version of GTA-IVaud until such time that I can pick it up again. It’s been fun, but even if I had the time, dealing with the modding community pretty much killed any desire I had in completing the project. Developers interested in source-code and information can feel free to send me a private message. |
Im glad you still released 1.1.5 and alot of people still support your effort on the project even though you dont have alot of time to spend it all on your project, Still great work  And i did a dumb thing to send you this topic at first because everyone is criticizing of what you do. People really dont deserve these things This post has been edited by zerofreeze on Tuesday, Jan 19 2010, 22:08
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
NTAuthority  |
Posted: Wednesday, Jan 20 2010, 12:54
|
member_title

Group: Members
Joined: Sep 9, 2008



|
| QUOTE (Vilavek @ Jan 19 2010, 22:55) | | [...] shortly after the creation of DVI in 1992. I’m glad I spent time talking about this nearly entirely irrelevant issue. | I'm not even asking about those details, nor was I trying to get any of you mad at me... or trying to be offensive, which could be a misunderstanding (English is not my native language). (it could be I selected the wrong quote, I also seem to find some things (semi-)offensive... but I mostly ignore it) | QUOTE | NTAuthority, it is obvious that you are providing non-constructive criticism for the sake of providing non-constructive criticism highlighted by the occasional “well that’s obvious”, about a version of my program which was originally not intended for release.
|
I did not know about the part of the version originally not being intended for release, and was just posting my findings about the program, whereas 'findings' can't be regarded as criticism. Also, forum topics for tools/modifications can't be just meant for criticism, can they?  | QUOTE | I’m not sure what I did to offend you
|
Same with me, I'm not offended... are you?  | QUOTE | because if you do then I don’t personally get off on these sorts of ‘who’s the better’ debates in forums. Personally, I have found just about every post you have made regarding GTA-IVaud negative, and totally non-constructive.
|
Me neither, and my posts were absolutely not intended as being negative - I was just trying to help. Heck, it's great that someone takes one of the harder parts of using a format that is already mostly known away and makes a tool for it; I'm still waiting for a SCO tool so that we can finally do away with the complexity of script hooks... we know the format, and there should be enough people with knowledge about compiler construction, if there are any left. | QUOTE | You obviously claim to be a skilled and impressive coder, as anyone who remotely cares can gather from your posts. Thus, I have a radical suggestion NTAuthority, since you obviously care a hell of a lot more than I do about my project, I will abandon the GTA-IVaud project, and you can step in, start your own project, and feel superior for a while in my wake if that’s the sort of thing you’re looking for. No?
|
Huh, what, no, my only interest about IV audio files was getting my GTA: Episodes audio extraction patch for SparkIV to work, which I'm already finished with... and making tools that do exactly the same as other maintained well-working tools without an underlying reason (openness, reusability, major lack of features) is useless. | QUOTE | If this sounds good to you, feel free to drop me a line if you hit any walls along the way and I will truthfully offer assistance to you conducive to project success, with no hard feelings, as opposed to the criticism you have offered me in your past few posts.
|
I, as well, do not have time for such a major project, and was not intending to bash on your tool anyway. Still, thanks for the offer. (sorry if that last sentence came over offending again) | QUOTE | If not, feel free to rip my post entirely apart and out of context as you have with your previous replies to my posts. I’m sure you would anyway.
|
I really did not mean to come over offensive/offended... as I said, English is not my first language, and I'm just replying to specific sections since formulating a complete reply to all sections at once is a lot harder. Also, I try to come over as non-offensive as possible by re-formulating some sentences, but - sadly - sometimes I fail at that, or people understand even more wrong. | QUOTE | It’s been fun, but even if I had the time, dealing with the modding community pretty much killed any desire I had in completing the project.
|
Exactly why I don't finish many of my own modification projects. If you're interested in more discouraging posts, try reading the tons of replies of why people think a project of mine was useless.
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
Indi  |
|
The manager's nice enough - but mother's off her rocker.

Group: Andolini Mafia Family
Joined: Nov 22, 2008



|
Hey, I try to open the theme tune audio, and I get an error when I click on one of them, and there are 2 inside them, this is the error: | CODE | See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.UnauthorizedAccessException: Access to the path 'c:\TEST.WAV' is denied. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at Microsoft.VisualBasic.FileIO.FileSystem.WriteAllBytes(String file, Byte[] data, Boolean append) at GTA_IVaud.ivaudMulti.Play(Int32 Index, Boolean bLoop) at GTA_IVaud.frmMain.PlaySelected() at System.Windows.Forms.ListView.OnSelectedIndexChanged(EventArgs e) at System.Windows.Forms.ListView.WmReflectNotify(Message& m) at System.Windows.Forms.ListView.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies ************** mscorlib Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll ---------------------------------------- GTA-IVaud Editor Assembly Version: 1.1.5.0 Win32 Version: 1.1.5.0 CodeBase: file:///C:/Users/Jacob/Desktop/Last%20GTA%20IV%20Modding%20Work/Sound%20Editor/GTA-IVaud_1.1.5.exe ---------------------------------------- Microsoft.VisualBasic Assembly Version: 8.0.0.0 Win32 Version: 8.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll ---------------------------------------- System Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Windows.Forms Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System.Drawing Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Runtime.Remoting Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll ----------------------------------------
************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled.
For example:
<configuration> <system.windows.forms jitDebugging="true" /> </configuration>
When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
|
Cheers if anyone can help.
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
Rob.Zombie  |
|
Sgt.Kanyo

Group: Members
Joined: Mar 22, 2007


|
How come when I replace car sounds, they sound completely different in game? I mean it's the same PCM signed, 16 bit mono, 44100 Hz (if not idle, because that's 24000 Hz) and has the same length. The sound itself is looped, so it's not like a car revving up, but a car keeping an exact rev. BTW sounds are from TDU. I've tried doing 350Z sounds for sultanrs, tried Z06 sounds for Coquette, and Murcielago sound for Infernus. None of them worked. They sound weak, and it makes me feel I'm driving a Prius. I tried changing the sound's pitch too Any help?
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
Vilavek  |
|
Player Hater

Group: Members
Joined: Dec 28, 2009


|
@Rob.Zombie: Not all variables within an ivaud file have been identified just yet. It could be that there are file-type stored variables for playback rates and other information required for engine sounds in-game. I myself tried replacing vehicle audio with my tool back with version 1.1 and ran into the same problem you have described, I had planned to look further into it and resolve the issue before releasing version 1.2. The current version (1.1.5) was intended as a pre-release to version 1.2, resolving some bugs from version 1.1 and adding makeshift filename support which will also be different in version 1.2. To date, I have assembled a rather long list of issues associated with GTA-IVaud that need to be resolved, and a list of features which I plan to add support for. These will all be presented in 1.2. For the time being, keep in mind that the tool is heavily considered to be in beta, though the title does not convey as much. For all those who are interested, I do still plan on releasing version 1.2 in the future, though for the time being I have set the project aside since, unfortunately, I just don’t have the time to work on it until the end of the current academic semester, at which time I will pick it up again and continue from where I left off. =) @Indi: Currently, GTA-IVaud does not support opening compressed ADPCM audio of which the vast majority of the music in GTA4 consists. Version 1.2 will allow you to open, extract, and replace these sorts of audio files. @NTAuthority: Good to know,
|
|
|
|
|
 |
|
 |
 |
|
 |
| |
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:
Pages:
(7) « First ... 3 4 [5] 6 7
Track this topic
Receive email notification when a reply has been made to this topic and you are not active on the board.
Subscribe to this forum
Receive email notification when a new topic is posted in this forum and you are not active on the board.
Download / Print this Topic
Download this topic in different formats or view a printer friendly version.
| |
 |
|
 |
|
|
|
|