PlaneShift

Development => Development Deliberation => Topic started by: avaleee on July 26, 2005, 06:38:44 am

Title: help! psserver.exe start problem
Post by: avaleee on July 26, 2005, 06:38:44 am
I had successfully built the PlaneShift.
But when I ran psserver.exe,there was an error:

Could not find field prg_evt_equip!. Exiting.
Assertion failed: false, file \\cvsroot\\planeshift\\planeshift\\src\\server\\database
\\mysql\\dal.cpp, line 380

It seems the database table has the field prg_evt_equip, while I created the database according the instruction:
http://laanx.fragnetics.com/index.php?page=build_visual

Does anyone know how to solve it?

Thanks in advanced!
Title:
Post by: avaleee on July 26, 2005, 06:58:29 am
I just debugged the psserver.exe and it stopped at the line 154 of file spawnmanager.cpp.

void psSpawnManager::PreloadLootModifiers()
{

    Result result( db->Select( \"select * from loot_modifiers\" ) );
    if ( !result.IsValid() )
    {
        Error2( \"Could not load loot modifiers due to database error: %s\\n\",
               db->GetLastError() );
        return;
    }

    for ( unsigned int i = 0; i < result.Count(); i++ )
    {
        int id = result.GetInt( \"id\" );

        LootModifier *entry = new LootModifier;

        entry->modifier_type = result[ \"modifier_type\" ];
        entry->name = result[ \"name\" ];
        entry->effect = result[ \"effect\" ];
        entry->prg_evt_equip = result[ \"prg_evt_equip\" ];
 ~~~~~~~~~~~~~ Here is the reason of the error!

        entry->prg_evt_unequip = result[ \"prg_evt_unequip\" ];


 And this function was called by psSpawnManager::PreloadDatabase().

Any idea?
Title:
Post by: avaleee on July 26, 2005, 07:39:13 am
Because I just want to start the server, I just commented the line:

entry->prg_evt_equip = result[ \"prg_evt_equip\" ];

And so I bypass the problem. But the code seems need the developers to pay attention to.