Legacy GM Test Instance Count function not working

A

Anti-Icarus

Guest
I'm having a problem in which the Test Instance Count function is not working when it's supposed to. I was experimenting with making a game from an old textbook on Game Maker in order to see how the methods would stack up in GameMaker: Studio and possibly expand on it in the future. To be specific, I'm attempting to recreate a game featured in The Game Maker's Apprentice called Galactic Mail. In the game, you control a rickety spaceship delivering mail to moons floating around among asteroids which is done by hopping from one moon to the next without getting hit by said asteroids to get a high score.

Galactic Mail, moons.png

Now as it stands, the version I'm working on starts in one room with the ship on a special moon (obj_specialmoon), 5 other moons (obj_moon), and 6 asteroids (obj_asteroid). The ship itself comes in two forms: obj_landing for when it moves with obj_specialmoon and obj_flying for when the spacebar is pressed (which destroys the instance of obj_specialmoon, of course) and flies around in space to land on another moon unless it collides with obj_asteroid and gets destroyed. As to the purpose of obj_specialmoon, it serves as basically a shelter from the asteroids whenever the ship lands on obj_moon. To put this another way, when obj_flying collides with obj_moon, the former becomes obj_landing and the instance of the latter gets replaced by obj_specialmoon. Now here's where I encountered the problem with the Test Count Instance function. Following the directions of The Game Maker's Apprentice, I tried to tell GameMaker to move to the next room when all of 5 instances of obj_moon were destroyed using the Test Instance Count drag-and-drop action like this:

2016-12-05_21h00_32.png
This worked in Game Maker 8.1, the legacy version of the software, but it is not working in GameMaker: Studio. For comparison, here's a screenshot of obj_flying's properties in Game Maker 8.1, highlighting the Test Instance Count function in its collision event with obj_moon:

2016-12-05_20h58_55.png
And as you will see in the next screenshot, the properties of the obj_flying in GameMaker: Studio are largely the same with one notable difference:

2016-12-05_20h59_04.png
With the version of Galactic Mail that I'm working on, I cannot get GameMaker: Studio to go to another room, leaving the ship float around on the instance of obj_specialmoon forever until flies off, destroying that, and going on forever until it crashes into an asteroid.

Galactic Mail, no moons.png
There is a high possibility that this problem lies in the fact that the Sleep action (featured in the older versions of Game Maker) mentioned in The Game Maker's Apprentice is among the obsolete functions because it is "no longer relevant to any other device except Windows." In summary, what I'm trying to do with my version of Galactic Mail is get the game to move to the next room containing a different number of moons and asteroids after all instances of obj_moon have been destroyed in the starting room after a one-second pause. What would be the best way to do that using GameMaker: Studio?
 

TheouAegis

Member
Maybe it is still obj_moon until the end of the step.

Maybe Test Instance Count has a glitched drop menu like Test Collision. Try setting it to greater or less than.
 
M

Mirrorstreet

Guest
I have the same problem. The program doesn't recognise the object as being destroyed. When I replace the test instance with an object I didn't put in my level it does work. But when it's about the object that just got destroyed it doesn't work.. Did you find a solution?
 

FoxyOfJungle

Kazan Games
I have the same problem. The program doesn't recognise the object as being destroyed. When I replace the test instance with an object I didn't put in my level it does work. But when it's about the object that just got destroyed it doesn't work.. Did you find a solution?
I think that in the past the game maker ran the code in order, try to put the check code before the next code.

This is from 2016 šŸ˜®
 
Top