Author Topic: Editing BBEANS V2  (Read 1273 times)

Offline Roboquad

  • Antweight
  • Posts: 48
  • Rep: 0
    • View Profile
    • Awards
Editing BBEANS V2
« 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
Achievements:
  • Entered doomed robots and will be owned by a GAY CRAWLER! and Inf!
  • Will get owned in 2v1 challenge because my entries are RUBBISH!
  • Entering mirco mayhem with, a (probably) generic  bot.
  • Entering RAW2
* Crawlers are gay, if you agree with me, copy this into your signature. *

Offline JoeBlo

Editing BBEANS V2
« Reply #1 on: October 19, 2009, 07:18:25 AM »
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 ?

Offline Roboquad

  • Antweight
  • Posts: 48
  • Rep: 0
    • View Profile
    • Awards
Editing BBEANS V2
« Reply #2 on: October 19, 2009, 12:57:23 PM »
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.
Code: [Select]
*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.


With F12 pressed
Achievements:
  • Entered doomed robots and will be owned by a GAY CRAWLER! and Inf!
  • Will get owned in 2v1 challenge because my entries are RUBBISH!
  • Entering mirco mayhem with, a (probably) generic  bot.
  • Entering RAW2
* Crawlers are gay, if you agree with me, copy this into your signature. *

Offline JoeBlo

Editing BBEANS V2
« Reply #3 on: October 19, 2009, 09:11:08 PM »
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

Offline JoeBlo

Editing BBEANS V2
« Reply #4 on: October 19, 2009, 09:41:56 PM »
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

Offline Clickbeetle

  • *
  • Posts: 3375
  • Rep: 21
  • In Soviet Russia, bugs stomp YOU!
  • Awards BOTM Winner
    • View Profile
    • Beetle Bros site
    • Awards
Editing BBEANS V2
« Reply #5 on: October 23, 2009, 10:08:02 PM »
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

Code: [Select]
*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.

To lack feeling is to be dead, but to act on every feeling is to be a child.
-Brandon Sanderson, The Way of Kings

Offline Serge

  • *
  • Posts: 1530
  • Rep: 13
    • View Profile
    • http://www.q3k.org/
    • Awards
Editing BBEANS V2
« Reply #6 on: October 24, 2009, 09:56:57 AM »
I don't remember implementing those in my compiler.
home | twitter | yt | gmf de/compiler | component freedom | xmpp: q3k@q3k.org | email: q3k@q3k.org

Offline JoeBlo

Editing BBEANS V2
« Reply #7 on: October 24, 2009, 10:00:09 AM »
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