Events and objects being skipped in GameMaker
Posted
by
skeletalmonkey
on Game Development
See other posts from Game Development
or by skeletalmonkey
Published on 2012-05-15T13:58:53Z
Indexed on
2012/06/15
15:28 UTC
Read the original article
Hit count: 438
game-maker
Update: Turns out it's not an issue with this code (or at least not entirely). Somehow the objects I use for keylogging and player automation (basic ai that plays the game) are being 'skipped' or not loaded about half the time. These are invisible objects in a room that have basic effects such are simulating button presses, or logging them.
I don't know how to better explain this problem without putting up all my code, so unless someone has heard of this issue I guess I'll be banging my head against the desk for a bit /Update
I've been continuing work on modifying Spelunky, but I've run into a pretty major issue with GameMaker, which I hope is me just doing something wrong.
I have the code below, which is supposed to write log files named sequentially. It's placed in a End Room event such that when a player finishes a level, it'll write all their keypress's to file. The problem is that it randomly skips files, and when it reaches about 30 logs it stops creating any new files.
var file_name;
file_count = 4;
file_name = file_find_first("logs/*.txt", 0);
while (file_name != "") {
file_count += 1;
file_name = file_find_next();
}
file_find_close();
file = file_text_open_write("logs/log" + string(file_count) + ".txt");
for(i = 0; i < ds_list_size(keyCodes); i += 1)
{
file_text_write_string(file, string(ds_list_find_value(keyCodes, i)));
file_text_write_string(file, " ");
file_text_write_string(file, string(ds_list_find_value(keyTimes, i)));
file_text_writeln(file);
}
file_text_close(file);
My best guess is that the first counting loop is taking too long and the whole thing is getting dropped?
Also, if anyone can tell me of a better way to have sequentially numbered log files that would also be great. Log files have to continue counting over multiple start/stops of the game.
© Game Development or respective owner