Let me clear something.
About four sound banksYes, it actually four sound waves used to each speaker (GP4 support four speaker mode). Currently waves data stored in .bnk file only one, then mapped for each four banks/speakers. The reason is to reducing file size in .bnk file (however, using 3D sound won't affect too much for different waves data mapped to four speakers).
About engine.txt fileThis is a configuration file for engine in different view mode. This file splitted into two groups, where each group has four sections. First group is to define engine sound when accelerating. Second group is to define engine sound when decelerating. Each group then has four section to define four waves sound (mapped to four speakers) as I mentioned before.
Now if you want to change the positional car engine sound (either 3D or 2D settings), you can't just modify the .bnk file and engine.txt. The reasons are; first, positional sound is managed by DirectSound; second, you may produce a strange sound if trying to add effects in waves data stored in .bnk file since the DirectSound require pure generic sound to produce 3D positional sound; third, never trying to convert waves data into double-channels or more (stereo, surround, whatever) because DirectSound require mono waves data to produce 3D positional sounds.
So, what elements needed to change positional sound in GP4?
Just look at reverb files stored in revebdata folder. Viewing this reved data file is not easy because it was binary file.
In reality, doesn't matter who's
right but most important is who's
left.