"FLAGS" Research

What does it all mean?

User avatar
CarLuver69
MM2X Active User
MM2X Active User
Posts: 934
Registered for: 17 years 1 month
Location: California, USA
Contact:

"FLAGS" Research

Postby CarLuver69 » Mon Aug 08, 2011 10:59 am

I decided to dedicate a topic to this matter. My Police LTV thread was getting cluttered :P.

During the production of the Police LTV, I was hoping that it would go to the bank in CnR. However, just adding the basename to "vehtypes.csv" wasn't enough. Neither was having sirens, lol.

Instead, I brought up a good point about the "FLAGS" you can find in the info file for each vehicle, so DB suggested checking the FLAGS for the Mustang Cruiser. Instead of just going off of one car, I went the whole nine yards and got the flags for every vehicle that shipped with the final version of MM2.

---FLAGS = 0---
Audi TT
Caddillac Eldorado
Ford F-350
Ford Mustang
Ford Mustang Fastback
LTV
Panoz GTR-1
VW Beetle
VW Dune
VW Beetle RSi


---FLAGS = 4---
Panoz Roadster

---FLAGS = 8---
Ford Mustang Cruiser


---FLAGS = 16---
City Bus


---FLAGS = 19---
Firetruck
Frieghtliner Century

---FLAGS = 64---
Aston Martin DB7
London Cabby
Mini Cooper
NEW Mini Cooper


---FLAGS = 80---
DD Bus

Without any prior knowledge of the FLAGS system, I proposed the following theory of what each one meant -

0 = Standard vehicle
4 = Fenders
8 = Cop car
16 = City Bus
19 = Semi Truck (w/ Trailer?)
64 = Paintjob unlocked from Crash Course
80 = Unknown

I was pretty close. However, I should've looked into 64 a bit closer than I did, because I would have realized that those cars are based in London and therefore, right hand drive. But what good is right hand drive with the hudmap in the way? 64 takes care of that by swapping the hudmap from right to left. More tea, vicar?

The revised list by DB, which turns out to be 100% accurate, is as following:

0 = No flags
4 = Leftover from MM1; fenders visible in dash
8 = Bank in CnR (confirmed)
16 = Camera drops behind car in tunnels
19 = Leftover from MM1; 5th & 6th wheels
64 = Hudmap on left side
80 = Hudmap on left side, camera drops behind car while in tunnels

Seems like a simple list, no? DB brought up a good point:
I just noticed something. Flag 80 combines the effects of Flag 64 and Flag 16, and 80 is the sum of 64+16. Coincidence? Or does it mean you can add flag numbers together to combine their effects (for example, flag 191 enables all of them)?
I decided to take a look into this and started out with 191 as an entry in FLAGS. Nothing happened. So instead, I decided to look at the pattern of how the FLAGS work, and noticed that each default entry is a multiple of 8. This is not including the ones that were leftover from MM1, as they no longer function.

If this were the case, the highest number achievable would be 88, which is 8 + 16 + 64. That would be:

-Bank in CnR
-Left side Hudmap
-Camera drops in tunnels

I slapped in the number and gave it a go. Surprisingly, the theory of adding flags together worked. 88 gave me the left side hudmap as well as the camera drops in tunnels. As of this update, it is unconfirmed whether or not the bank works in CnR.

But then I thought, what about any other kind of flags? I thought of 32. It's a multiple of 8 and just in between 16 and 64. I added 32 to 88 and got 120 as a new entry. This would mean:

-Bank in CnR
-Left side Hudmap
-Camera drops in tunnels
-Unknown effect

It worked flawlessly in MM2. But how do we know it's working? If you recall, I said that I input 191, which was the sum of all the flags which were present in MM2 info files, basically the entire list of flags I posted above.

But what does this mean? How can MM2 interpret which flag is used when you put them together? Is MM2 aware that a flag exists when you add it's number to the formula? This is the part I would really like to see figured out sometime in the future ;)

As for the 32 entry which is currently unknown, MM2 must be aware that a flag exists/existed and used a special flag calculating formula.

Feel free to add any feedback to this thread.

-CarLuver69

Additional Notes:

A good friend of mine has told me how the flags work. They are powers of 2, so in binary, here is an example of how the flags would look:

---FLAGS = 0---

Code: Select all

00000000000000000000000000000000
---FLAGS = 1--- (unknown effect) - linked to MM1 5th/6th wheel

Code: Select all

00000000000000000000000000000001
---FLAGS = 2--- (unknown effect) - linked to MM1 5th/6th wheel

Code: Select all

00000000000000000000000000000010
---FLAGS = 4---

Code: Select all

00000000000000000000000000000100
---FLAGS = 8---

Code: Select all

00000000000000000000000000001000
---FLAGS = 16---

Code: Select all

00000000000000000000000000010000
---FLAGS = 19--- (this would be a mixture of 1, 2, and 16)

Code: Select all

00000000000000000000000000010011
---FLAGS = 32--- (unknown effect) - this was an educated guess

Code: Select all

00000000000000000000000000100000
---FLAGS = 64---

Code: Select all

00000000000000000000000001000000
---FLAGS = 80---

Code: Select all

00000000000000000000000001010000
---FLAGS = 88---

Code: Select all

00000000000000000000000001011000
---FLAGS = 120---

Code: Select all

00000000000000000000000001111000
191 would actually be 00~0010111111...for all 32 bits to be set you'd have to try 4294967295...Or you could just do the first 16, which would be 65535
[img]https://img59.imageshack.us/img59/2562/2010mm2cawardssilver.png[/img] [color=orange]Best MM2 Innovation - Author of best car of the year[/color]
[color=silver][i]Proud supporter of MM2X[/i][/color]

[color=#CCCCCC]How do I love thee MM2? Let me count the add-ons...
[size=134][b]Are my pictures not showing up? [url=https://photobucket.com/CL69MM2]CLICK HERE![/url][/b][/size][/color]