bstikkel Posted August 24, 2014 Report Posted August 24, 2014 Hi Pete, Together with a friend of mine who is able to write pc programs, I want to try to find out, what way FSX regulates the balance between the enginesound level of the flown aircraft and the soundslevels of the AI aircraft around. Reason to start this search, is we hope to be able to write a piece of software that can set separately the soundlevels of AI and the flown aircraft. Since I do some basis scripting with SIOC I know the list of offset values you have provided to be able to communicate with FSUIPC and FSX. Studying that list, my friend concluded it is neccesery to determine the first byte FSX uses, since the positions of all functions are given in offsetvalues. This position - I suppose - will be different every time FSX is loaded in the memory. If the answer on my question is 'your companies product secret' feel free to say so. If not, we would like to know how such a starting position can be found. To be completely open to you, I must say, that this search for the possibility to regulate the both enginesoundlevels separately, has started after contact with Alan Constantable. I asked him if there was a way to separately regulate the ai and own plane soundlevels. He explained me, FSX does manage these soundlevels in a way that is unknown and unclear. So in his experience, creating louder or more quiet soundfiles, is no use because FSX does level them up or down again. Hope my question is clear and if not, ofcourse please ask me what you want to know. Greetings, Bram Stikkel
Pete Dowson Posted August 24, 2014 Report Posted August 24, 2014 Since I do some basis scripting with SIOC I know the list of offset values you have provided to be able to communicate with FSUIPC and FSX. Do not confuse the FSUIPC offsets with actual offsets in a DLL. That is historical -- it was like that in FS98 where all FS's interesting values were stored in one area in "GLOBALS.DLL". Even then the offsets were not from the start of that DLL in memory, but from the start of a tabler withing it which was found by other means. These days the offset values are offsets to a data area inside FSUIPC itself -- or more accurately one of two data areas dependng whether you are reading or writing -- , and the data itself is either populated at asynchronous intervals compared to user requests, or obtained. set on request. The offset numbers should really be regarded as "tokens" or just identifiers for the data. Studying that list, my friend concluded it is neccesery to determine the first byte FSX uses, since the positions of all functions are given in offsetvalues. This position - I suppose - will be different every time FSX is loaded in the memory. If the answer on my question is 'your companies product secret' feel free to say so. If not, we would like to know how such a starting position can be found. For 32-bit programs the base address of modules is actually used as the handle. There's no one base address. each module -- the EXE and every DLL -- has it's own. I don't know where you think the sound levels can be controlled, but these will probably not be in the EXE but in one of the separate DLLs. To be completely open to you, I must say, that this search for the possibility to regulate the both enginesoundlevels separately, has started after contact with Alan Constantable. I asked him if there was a way to separately regulate the ai and own plane soundlevels. He explained me, FSX does manage these soundlevels in a way that is unknown and unclear. So in his experience, creating louder or more quiet soundfiles, is no use because FSX does level them up or down again. If you do know where the sounds can be controlled and you'd rather it be a facility in FSUIPC, then let me know the details and I'll see if I can add such facilities. I'm afraid these days I'm rather past hacking. It used to be fun, when I was younger! ;-) Pete
bstikkel Posted August 26, 2014 Author Report Posted August 26, 2014 Pete, thank you very much for your explaination in response on my questions. I am going to shortcut this info again with the friend that is more in programming than I am myself. If we discover something usefull, I will let you know. Thanks again ! Greetings, Bram Stikkel
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