How to fix truck problems

From Rigs of Rods Wiki

Jump to:navigation, search

This page will explain how to fix common problems with trucks.


Note: This tutorial assumes that you have familiarized yourself with the Truck Description File, and therefore have some basic knowledge of how .truck files work.
If you haven't done that, have a look here: http://www.rigsofrods.com/wiki/pages/Truck_Description_File

Contents

How to look for Errors


To make it easier to find errors in your truck file, enable Advanced Logging in the Configurator:
Requires
0.38.13
or later

100


1. The first obvious thing to do is to load your truck in RoR. After you have spawned the truck, close RoR.


2. Open the HTML log of your truck, which is located in Documents\Rigs of Rods 0.38\logs


3. Look for errors in the log. Note that the bigger the font, the more critical the error is.


How do I know which log file to open?
Note the filename of your truck. For example, if you have a truck file named mytruck.truck, then the log should be named _beam_mytruck.truck.html.

Ogre Errors

Missing files

If you get this:

LogMessageLevel3	OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Kennzeichen_LF_NRU.png in resource group
 customInclude or any other group. in ResourceGroupManager::openResource at /root/ror-deps/ogre_src_v1-7-3/OgreMain/src/OgreResourceGroupManager.cpp (line 753)

GeneralError	Error loading texture Kennzeichen_LF_NRU.png. Texture layer will be blank. Loading the texture failed with the following exception: 
OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource Kennzeichen_LF_NRU.png in resource group 
customInclude or any other group. in ResourceGroupManager::openResource at /root/ror-deps/ogre_src_v1-7-3/OgreMain/src/OgreResourceGroupManager.cpp (line 753)

then you used a texture which is not found by the system.

Solutions

  • Filenames are case sensitive. In Windows, it will work if you switch lower and upper cases, but it will not find the file under Linux. So take care that you do not switch lower and upper case filenames.
  • Fix the texture name in the material to the new name?
  • Copy the texture into the correct vehicle zip or folder?

Missing Material

  • A material that is used in the .mesh was not found in any .material:
MaterialError	Can't assign material LF16-NG1222_Geraete_SketchupDefault to SubEntity of Ogre/MO23 because this Material does not exist. Have you forgotten to define it in a .material script?

Solutions

  • Upgrade exporter?
  • Forgot to copy .material file?
  • Add material manually?
  • Change mesh material usage in 3d editor?

Zero sized texture

LogMessageLevel3	OGRE EXCEPTION(3:RenderingAPIException): Zero sized texture surface on texture Textur_MBNGLF16_Kabine-aussen.png
 face 0 mipmap 0. Probably, the GL driver refused to create the texture. in GLTexture::_createSurfaceList at /root/ror-deps/ogre_src_v1-7-3/RenderSystems/GL/src/OgreGLTexture.cpp (line 406)

LogMessageLevel2	error loading mesh: LF16-NG1222_Kabine.mesh: OGRE EXCEPTION(3:RenderingAPIException): Zero sized texture surface
 on texture Textur_MBNGLF16_Kabine-aussen.png face 0 mipmap 0. Probably, the GL driver refused to create the texture. in GLTexture::_createSurfaceList at
 /root/ror-deps/ogre_src_v1-7-3/RenderSystems/GL/src/OgreGLTexture.cpp (line 406)

Look for the reason:

Probably, the GL driver refused to create the texture

Solutions

  • Do not us textures above 2048x2048 pixels: they do not run on all hardware.
  • Only use textures sizes 2^n (512, 1024, 2048).
  • Use .dds format for reducing loading times and GPU memory usage.

Old Mesh format

If you get something like this:

WarningMeshFormat	WARNING: beam.mesh is an older format ([MeshSerializer_v1.40]); you should upgrade it as soon as possible using the OgreMeshUpgrade tool.

Then your exporter uses an old file format of Ogre.

Solutions

  1. Drag and Drop the .mesh file onto the OgreXMLConverter.exe that is shipped with the RoR release in its installation directory. ONLY drag&drop one file at a file, or you loose data.
  2. It should create a .mesh.xml file in the folder.
  3. drag&drop the new .mesh.xml file onto OgreXMLConverter.exe again to get a .mesh file in the newest format.
  4. Copy the new .mesh into your package.

Compiler Error

If you get problems like this:

CompilerError	Compiler error: unknown error in LF16-NG1222_Kabine.material(186): token "20.0424980157919," is not recognized
CompilerError	Compiler error: unknown error in LF16-NG1222_Kabine.material(887): token "3.93700787401575," is not recognized

General format is:

CompilerError	Compiler error: unknown error in <FILENAME>(<LINE NUMBER>): token "<LINE CONTENT>" is not recognized

Then you should open the file <FILENAME> look at the line number <LINE NUMBER> and fix the problem.

In most cases the problems are caused due to a buggy/invalid Sketchup exported material.


For example, this is the material Sketchup usually exports:

material LF16-NG1222_Kabine_Kennzeichen_LF_NRU
{
   technique
   {
      pass
      {
         20.0424980157919, 4.19494144516574
         diffuse 1 1 1 1.0
         texture_unit
         {
            texture Kennzeichen_LF_NRU.png
         }
      }
   }
}

The line with:

20.0424980157919, 4.19494144516574

Is not preceded by a valid property name.

Solutions


RoR Errors

BeamInputOutputError

No GUID

Trucks are required to have a GUID, if its missing, you will get something like this:

LogMessageLevel2	BIO|OBSOLETE|LF-16-NG1222.truck:1036 | end | vehicle uses no GUID, skinning will be impossible
Solutions

globals material not found

BeamInputOutputError	BIO|ERROR |LF-16-NG1222.truck:10 | globals | Material 'tracks/MTW_NR' used in Section 'globals' not found! We will try to use the material 'tracks/transred' instead.

The material you used for the globals section was not found.

Solutions
  • You can use one of the following materials that come with RoR if you do not want to create your own:
    • tracks/trans
    • tracks/invisible
    • tracks/black
    • tracks/white

Invalid node number, less than zero

LogMessageLevel2    BIO|OBSOLETE|ff57UID-wrecker.truck:1010 | wheels | Error: invalid node number -81, less than zero, using positive number, please fix

You used a negative node number as the rigidity node in the wheels section.

Solutions
  • Scroll down to the wheels section of your .truck file, use a positive number as the rigidity node

http://www.rigsofrods.com/wiki/pages/Truck_Description_File#Wheels

Too less arguments: x provided, y required

BeamInputOutputError	BIO|ERROR |pr14sl2.truck:1894 | props | Too less arguments: 1 provided, 10 required.
BeamInputOutputError	BIO|ERROR |pr14sl2.truck:1894 | props | got parsing exception, falling back to no section
Solutions
  • Find the section that is stated in the error (in this case 'props'), and look for errors in the lines that follow that section:

Camera definition is probably invalid and has been corrected

LogMessageLevel2	BIO|OBSOLETE|aa21bUID-AST-1X.truck:650 | end | camera definition is probably invalid and has been corrected. It should be center, back, left
Solutions

Change the order of the nodes in the cameras section, so that they are correct: http://www.rigsofrods.com/wiki/pages/Truck_Description_File#Cameras

Trucks with less than 2 gears are not supported!

BeamInputOutputError	BIO|ERROR |challengerusty.truck:13 | engine | Trucks with less than 2 gears are not supported!
Solutions

All trucks should have at least 2 forward gears.
Add an additional gear: http://www.rigsofrods.com/wiki/pages/Truck_Description_File#Engine