Hi VeT,

my current guess is that your mistake is not when reading from the vector, but when creating your struct objects.

Some posts before you posted the following code:

Code:
players_number = file_var_read(fhandle);

vPlayers = createGSVector();
CHARACTER* tempChar = (CHARACTER*)malloc(sizeof(CHARACTER));
	
var i;
for (i=0; i<players_number; i++)
{
	tempChar.s = file_var_read(fhandle);
	tempChar.i = file_var_read(fhandle);
	tempChar.j = file_var_read(fhandle);
		
	tempChar.step_max = file_var_read(fhandle);
	tempChar.step_left = file_var_read(fhandle);
		
	insertIntoGSVector(vPlayers,tempChar);
}


You can't do it that way, because you have to create an object for each player.
So you have to move the malloc into the loop ... this way:

Code:
players_number = file_var_read(fhandle);

vPlayers = createGSVector();
	
var i;
for (i=0; i<players_number; i++)
{
        CHARACTER* tempChar = (CHARACTER*)malloc(sizeof(CHARACTER));
	tempChar.s = file_var_read(fhandle);
	tempChar.i = file_var_read(fhandle);
	tempChar.j = file_var_read(fhandle);
		
	tempChar.step_max = file_var_read(fhandle);
	tempChar.step_left = file_var_read(fhandle);
		
	insertIntoGSVector(vPlayers,tempChar);
}


Regards,
Pegamode