gametechmods
Robot Arena => General Support => Topic started by: Roboquad on October 19, 2009, 07:05:54 AM
-
I don't know if this is the right place to post this, but oh well.
Ok, wanted to raise the walls on the BBEANS V2 arena, so I decomple it, edit the necessary parts and comple it again. The walls are now rased, but the bots now fall through the floor and the walls are also now opaque white instead of seethrough.
Thanks in advance
-
transparent one is an easy solution your using dummys compiler....
dummys wont decompile transparency values so you compiled the walls with 0% transparency
the bots falling through to floor should like you changed the wrong parts of the arena collision, I havent looked at the decompiled BBEANS arena myself but that's my guess
so did the wall actually appear higher ? and what did you modify in the GMF ?
-
Yea, i used dummys...
The only thing about that is, the only other (de)compiler I could find (on the downloads section atleast) was Serge's. The problem was that it when I complied afterwards, the thing would give me a few error mesages.
Basicly can you tell me one that works.
In the GMF file for BBEANS V2 arena there is no 'arena collision', however there is several 'parts' that are seperate. Like these two.
*GEOMOBJECT
{
*NODE_NAME fence
*NODE_SHADEVERTS 0
*NODE_TM
{
*NODE_NAME fence
*TM_ROW0 1 0 0
*TM_ROW1 0 1 0
*TM_ROW2 0 0 1
*TM_ROW3 0 0 0
}
*MESH
{
*TIMEVALUE 0
*MESH_NUMVERTEX 8
*MESH_NUMFACES 8
*MESH_VERTEX_LIST
{
*MESH_VERTEX 0 -10 0 0
*MESH_VERTEX 1 10 0 0
*MESH_VERTEX 2 -10 0 0.2
*MESH_VERTEX 3 10 0 0.2
*MESH_VERTEX 4 -10 2.5 0
*MESH_VERTEX 5 10 2.5 0
*MESH_VERTEX 6 -10 2.5 0.2
*MESH_VERTEX 7 10 2.5 0.2
}
*MESH_FACE_LIST
{
*MESH_FACE 0 A: 0 B: 2 C: 3 *MESH_MTLID 1
*MESH_FACE 1 A: 3 B: 1 C: 0 *MESH_MTLID 1
*MESH_FACE 2 A: 4 B: 5 C: 7 *MESH_MTLID 1
*MESH_FACE 3 A: 7 B: 6 C: 4 *MESH_MTLID 1
*MESH_FACE 4 A: 0 B: 1 C: 5 *MESH_MTLID 0
*MESH_FACE 5 A: 5 B: 4 C: 0 *MESH_MTLID 0
*MESH_FACE 6 A: 3 B: 2 C: 6 *MESH_MTLID 0
*MESH_FACE 7 A: 6 B: 7 C: 3 *MESH_MTLID 0
}
*MESH_NORMALS
{
*MESH_FACENORMAL 0 0 -1 0
*MESH_VERTEXNORMAL 0 0 -1 0
*MESH_VERTEXNORMAL 2 0 -1 0
*MESH_VERTEXNORMAL 3 0 -1 0
*MESH_FACENORMAL 1 0 -1 0
*MESH_VERTEXNORMAL 3 0 -1 0
*MESH_VERTEXNORMAL 1 0 -1 0
*MESH_VERTEXNORMAL 0 0 -1 0
*MESH_FACENORMAL 2 0 1 0
*MESH_VERTEXNORMAL 4 0 1 0
*MESH_VERTEXNORMAL 5 0 1 0
*MESH_VERTEXNORMAL 7 0 1 0
*MESH_FACENORMAL 3 0 1 0
*MESH_VERTEXNORMAL 7 0 1 0
*MESH_VERTEXNORMAL 6 0 1 0
*MESH_VERTEXNORMAL 4 0 1 0
*MESH_FACENORMAL 4 0 0 -1
*MESH_VERTEXNORMAL 0 0 0 -1
*MESH_VERTEXNORMAL 1 0 0 -1
*MESH_VERTEXNORMAL 5 0 0 -1
*MESH_FACENORMAL 5 0 0 -1
*MESH_VERTEXNORMAL 5 0 0 -1
*MESH_VERTEXNORMAL 4 0 0 -1
*MESH_VERTEXNORMAL 0 0 0 -1
*MESH_FACENORMAL 6 0 0 1
*MESH_VERTEXNORMAL 3 0 0 1
*MESH_VERTEXNORMAL 2 0 0 1
*MESH_VERTEXNORMAL 6 0 0 1
*MESH_FACENORMAL 7 0 0 1
*MESH_VERTEXNORMAL 6 0 0 1
*MESH_VERTEXNORMAL 7 0 0 1
*MESH_VERTEXNORMAL 3 0 0 1
}
*BACKFACE_CULL 1
*MATERIAL_REF 0
}
}
*GEOMOBJECT
{
*NODE_NAME fencecorner
*NODE_SHADEVERTS 0
*NODE_TM
{
*NODE_NAME fencecorner
*TM_ROW0 1 0 0
*TM_ROW1 0 1 0
*TM_ROW2 0 0 1
*TM_ROW3 0 0 0
}
*MESH
{
*TIMEVALUE 0
*MESH_NUMVERTEX 8
*MESH_NUMFACES 8
*MESH_VERTEX_LIST
{
*MESH_VERTEX 0 0 0 -2
*MESH_VERTEX 1 2 0 0
*MESH_VERTEX 2 -0.2 0 -2
*MESH_VERTEX 3 2 0 0.2
*MESH_VERTEX 4 0 2.5 -2
*MESH_VERTEX 5 2 2.5 0
*MESH_VERTEX 6 -0.2 2.5 -2
*MESH_VERTEX 7 2 2.5 0.2
}
*MESH_FACE_LIST
{
*MESH_FACE 0 A: 0 B: 2 C: 3 *MESH_MTLID 1
*MESH_FACE 1 A: 3 B: 1 C: 0 *MESH_MTLID 1
*MESH_FACE 2 A: 4 B: 5 C: 7 *MESH_MTLID 1
*MESH_FACE 3 A: 7 B: 6 C: 4 *MESH_MTLID 1
*MESH_FACE 4 A: 0 B: 1 C: 5 *MESH_MTLID 0
*MESH_FACE 5 A: 5 B: 4 C: 0 *MESH_MTLID 0
*MESH_FACE 6 A: 3 B: 2 C: 6 *MESH_MTLID 0
*MESH_FACE 7 A: 6 B: 7 C: 3 *MESH_MTLID 0
}
*MESH_NORMALS
{
*MESH_FACENORMAL 0 0 -1 0
*MESH_VERTEXNORMAL 0 0 -1 0
*MESH_VERTEXNORMAL 2 0 -1 0
*MESH_VERTEXNORMAL 3 0 -1 0
*MESH_FACENORMAL 1 0 -1 0
*MESH_VERTEXNORMAL 3 0 -1 0
*MESH_VERTEXNORMAL 1 0 -1 0
*MESH_VERTEXNORMAL 0 0 -1 0
*MESH_FACENORMAL 2 0 1 0
*MESH_VERTEXNORMAL 4 0 1 0
*MESH_VERTEXNORMAL 5 0 1 0
*MESH_VERTEXNORMAL 7 0 1 0
*MESH_FACENORMAL 3 0 1 0
*MESH_VERTEXNORMAL 7 0 1 0
*MESH_VERTEXNORMAL 6 0 1 0
*MESH_VERTEXNORMAL 4 0 1 0
*MESH_FACENORMAL 4 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 0 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 1 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 5 0.7071 0 -0.7071
*MESH_FACENORMAL 5 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 5 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 4 0.7071 0 -0.7071
*MESH_VERTEXNORMAL 0 0.7071 0 -0.7071
*MESH_FACENORMAL 6 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 3 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 2 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 6 -0.7071 0 0.7071
*MESH_FACENORMAL 7 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 6 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 7 -0.7071 0 0.7071
*MESH_VERTEXNORMAL 3 -0.7071 0 0.7071
}
*BACKFACE_CULL 1
*MATERIAL_REF 0
}
}
These then must join somehow to make the full arena.
The only parts I edited was the second column of the MESH_VERTEX's from 1.75 to 2.5 on the above two GEOMOBJECT's. Also the walls were defently higher.
(https://gametechmods.com/uploads/images/21142screenshot_8.JPG)
With F12 pressed
(https://gametechmods.com/uploads/images/98077screenshot_9.JPG)
-
ill crack open the arena and have a look myself if you like, as for the compiler I use dummy's a lot actually but you have to make a checklist of what is transparent and not and go through add it to each one before compiling
so find the walls section up the very top of the GMF and put a value next to transparency, the value is a percentage in decimal form for how much percent is transparent
0.25 (25% transparent) 0.5 (50% transparent) etc 1 is 100% and the compiler will use 0 for 0% if you dont type in anything
-
after looking at it myself and trying a few different things I really dont know what is with that ? it seems that the floor looses its collision. I tried the same thing with the BBEANS arena v1 and it worked fine so if you wanted to to away with flippers ? if not best wait until the weekend when Click is on or Mad
-
The floor loses its collision because that's not the real floor. I used an object called a "Plane" to make the real arena floor, because planes are perfectly smooth (regular objects can be bumpy sometimes).
I believe Serge's compiler can compile planes. If not, you'll have to edit the compiled file with Notepad++ or something. Sounds daunting but it's pretty easy.
In hex mode, find the part that says Plane01 at the end of the gmf file. Soon after the third and last occurrence of Plane01 there is a four digit sequence that goes
33 33 f3 bf
Immediately after this is a whole bunch of 00's. Change the FIFTH 00 to a 01, so it should look like this when you're done.
33 33 f3 bf 00 00 00 00 01
Save the file and the Plane object should now work.
Edit: OH YEAH and the object Plane01 in the RBCollection should look like this
*GMID_HAVOK_RIGIDBODY
{
*NODE_NAME Plane01
*MASS 0
*ELASTICITY 0.3
*FRICTION 0.7
*OPTIMIZATION_LEVEL 0.5
*UNYIELDING 0
*SIMULATION_GEOMETRY 2
*GEOMETRY_PROXY_NAME (null)
*USE_DISPLAY_PROXY 0
*DISABLE_COLLISIONS 0
*INACTIVE 0
*DISPLAY_PROXY_NAME (null)
*NODE_TM
{
*NODE_NAME Plane01
*TM_ROW0 1 0 0
*TM_ROW1 0 1 0
*TM_ROW2 0 0 1
*TM_ROW3 0 -1.9 0
}
[color=red]*HAVOK_GEO_TYPE Plane[/color]
*NUMBER_OF_CHILDREN 0
}
FYI: this is also how I made the Infinity Arena. Planes are perfectly smooth, limitless surfaces with no real vertexes or faces.
-
I don't remember implementing those in my compiler.
-
when I tried to do it, I used your compilers and it was the same result as dummy's, I am glad you implemented all the transparency values and such into yours though.. makes things a lot easier serge