This was very helpful. Adding some more info for those searching how to work with Vertex Color (like I did today):
In 6.5 the right mesh format is (where theMesh is a TVMesh):
theMesh.SetMeshFormat CONST_TV_MESHFORMAT.TV_MESHFORMAT_DIFFUSE + CONST_TV_MESHFORMAT.TV_MESHFORMAT_NOLIGHTING
And don't set a lighting mode or set it to this one:
theMesh.SetLightingMode(CONST_TV_LIGHTINGMODE.TV_LIGHTING_NONE)
I also was trying to use vertex created by AddFloorGrid. This didn't seem to work. I had to create my plane manually using AddVertex (in this case it's a trianglestrip):
theMesh.SetPrimitiveType(CONST_TV_PRIMITIVETYPE.TV_TRIANGLESTRIP)
theMesh.AddVertex(-0.5, 0, 0, 0, 1, 0, 0, 0)
theMesh.AddVertex(-0.5, 0, 1, 0, 1, 0, 0, 1)
theMesh.AddVertex(0.5, 0, 0, 0, 1, 0, 1, 0)
theMesh.AddVertex(0.5, 0, 1, 0, 1, 0, 1, 1)
Later I use GetVertex and SetVertex to change the color and just recopy all of the other values.
Dim NewCol as Interger = TVGlobals.RGBA(1, 0, 0, 1)
theMesh.GetVertex(vertexID, X, Y, Z, nX, nY, nZ, TU1, TV1, TU2, TV2, OldCol)
theMesh.SetVertex(vertexID, X, Y, Z, nX, nY, nZ, TU1, TV1, TU2, TV2, NewCol)