GameOne hangs
by Samuel Halperin · in Torque Game Engine · 04/05/2006 (6:18 pm) · 19 replies
I feel really stupid to have gotten only this far:
Following the gettingstarted.pdf in the examples directory, I am up to starting the game for the first time. When I try to do this, it either hangs at "LOADING MISSION" or "WAITING FOR SERVER" on the FWorld screen.
???
Following the gettingstarted.pdf in the examples directory, I am up to starting the game for the first time. When I try to do this, it either hangs at "LOADING MISSION" or "WAITING FOR SERVER" on the FWorld screen.
???
#2
http://saridon.no-ip.org/console.log
04/11/2006 (4:03 pm)
Same for me also here is a link to my logfile.http://saridon.no-ip.org/console.log
#3
saridon.no-ip.org/console.txt
04/11/2006 (4:11 pm)
Sorry about this but i had to change the logfile extension to .txt so here is the new link to itsaridon.no-ip.org/console.txt
#4
BTW, have any of you tried using your own custom terrain textures? I'm getting some funky effects.
04/13/2006 (6:45 pm)
Same for me. I was going to try doing the tutorial again to see if I could reproduce the issue. I found that I can only get into the mission to edit by waiting for it to hang and hitting F11, not waiting causes it to crash. Glad to see that others are suffering with my pain.BTW, have any of you tried using your own custom terrain textures? I'm getting some funky effects.
#5
This is a good reason to always make a copy of a folder that you plan to monkey with!
04/13/2006 (7:33 pm)
OK, guys, I got it: In the folder tutorial.base/client/ui there's something wrong with your playGui.gui file. Take note that your file may only read as playGui if you don't have file extensions showing. Copy a new one into there and start again. It'll get rid of your Score: 0 counter, but at least you're running again.This is a good reason to always make a copy of a folder that you plan to monkey with!
#6
04/15/2006 (7:01 am)
Whenever this type of thing happens, delete your DSO files. There's a bat file where TorqueDemo.exe is located called deleteDSOs.bat. Then, run the demo. The scripts will be re-compiled, and any errors should appear in the console.
#7
...I got the little tutorial game to run, no problems; careful how many of the bitmapButtons you delete, ;), keep the exit one around...you'll need it. Or console command quit();.
04/15/2006 (8:36 am)
Be careful with that BAT file...;). Since TSTpro is a standalone product that has been 'bundled' with the SDK and consists of mainly precompiled .dso's, that cleanup program will effeciently kill the viewer....I got the little tutorial game to run, no problems; careful how many of the bitmapButtons you delete, ;), keep the exit one around...you'll need it. Or console command quit();.
#8
04/15/2006 (10:18 am)
Just for knowing, how do you use the BAT file, just double-click it? I got my demo working so I don't plan to use it, but I like to know what things do.
#9
@n8man: Did you copy playGui.gui from tutorial.base directory to GameOne?
04/16/2006 (1:04 am)
I'm also having this problem and none of the aforementioned solutions have helped.@n8man: Did you copy playGui.gui from tutorial.base directory to GameOne?
#10
...then after it attempts to connect and download the mission file:
Going over the log, line by line, and seeing what it happening and what isn't or producing warnings & errors, helps narrow down to where the errant code is located...the tutorial works, I ran it the other day.
04/16/2006 (8:01 am)
Say, take a good look at the console.log file above...Quote:*** Stage 2 load...did you save it in the correct location based on the tutorial??
Could not find mission GameOne/data/missions/gameonemission.mis
...then after it attempts to connect and download the mission file:
Quote:Connect request from: IPX:A34329BE:28C7733FDC90:48658...hmmm.....ConnectionError??
Connection established 1353
CADD: 1354 local
Mapping string: ServerMessage to index: 0
Mapping string: MsgConnectionError to index: 1
Going over the log, line by line, and seeing what it happening and what isn't or producing warnings & errors, helps narrow down to where the errant code is located...the tutorial works, I ran it the other day.
#11
04/16/2006 (8:53 am)
Okay, that solved my issue. My file was named GameOne.mis, thanks Rex. Just to be clear, what determines the name of the .mis file being looked for? The project folder? The defaultGame line in the main.cs?
#12
The 'trick' with tutorials is that you must follow each step, exactly as outlined or risk straying from the code...seems in this case you renamed the mission other than directed and code lost track of it.
GameOne/main.cs:
line#106:
function loadMyMission()
{
//make sure we are not connected to a server already
disconnect();
//Create the server and load the mission
createServer("SinglePlayer", expandFilename("./data/missions/gameonemission.mis"));
//Make a local connection
%conn = new GameConnection(ServerConnection);
RootGroup.add(ServerConnection);
%conn.setConnectArgs("Player");
%conn.setJoinPassword("None");
%conn.connectLocal();
}
...there it is.....
04/16/2006 (9:23 am)
Uh, I think it would be the GUI's listing and that code; but this is a preset tutorial and not operating under 'normal' TGE 'flow', so take a look at the function loadMyMission();...that [I believe], in this particular case only!, is what is making the distinction on what the mission 'should' be called. This is 'normally' handled by the GUI in question's textListControl or whatever control is giving you a list of missions to choose from...The 'trick' with tutorials is that you must follow each step, exactly as outlined or risk straying from the code...seems in this case you renamed the mission other than directed and code lost track of it.
GameOne/main.cs:
line#106:
function loadMyMission()
{
//make sure we are not connected to a server already
disconnect();
//Create the server and load the mission
createServer("SinglePlayer", expandFilename("./data/missions/gameonemission.mis"));
//Make a local connection
%conn = new GameConnection(ServerConnection);
RootGroup.add(ServerConnection);
%conn.setConnectArgs("Player");
%conn.setJoinPassword("None");
%conn.connectLocal();
}
...there it is.....
#13
04/16/2006 (10:08 am)
Ah, I see now. Thanks again!
#14
1: the function onStart(): (line #29 or thereabouts)
$Editor::newMissionOverride = "tutorial.base/data/missions/tut.mis"
2: the function loadMyMission(): (line #106 or thereabouts)
createServer("SinglePlayer", expandFilename("./data/missions/tut.mis"));
I named my mission "tut.mis" so this line calls for it. I think that if either line is off then the program won't run.
04/16/2006 (10:46 am)
Rex, there's 2 "main.cs" files, one in the GameOne folder and one in the tutorial.base folder. The one in the tutorial.base folder has two lines that calls out the .mis file:1: the function onStart(): (line #29 or thereabouts)
$Editor::newMissionOverride = "tutorial.base/data/missions/tut.mis"
2: the function loadMyMission(): (line #106 or thereabouts)
createServer("SinglePlayer", expandFilename("./data/missions/tut.mis"));
I named my mission "tut.mis" so this line calls for it. I think that if either line is off then the program won't run.
#15
When you load a 'new' mission from the Editor, the default mission is actually another referenced somewhere else, and this bit of code makes the 'new' mission for the GameOne -game the one referenced in GameOne/main.cs...;). The two lines of code above are NOT connected in any way, as far as I read the code...;).
When you call the function loadMyMission, it creates a new Server and loads the mission in question above....they do not need to be named the same['new' mission and this example], except between the coded path and what's really in the folder...
There's a main.cs for every -game and -mod I believe....;).
04/16/2006 (11:17 am)
I believe that is somewhat incorrect, n8man. The first reference you list is an globalVariable override for what a 'new' mission should look like when loaded... This being the tut.mis file, which is not what my tutorial.base/main.cs says[mine says flat.mis actually] & the tutorial states to copy the tutorial.base folder over entirely??....but that's not the point. As long as these files actually exist in the path, the mission loads, otherwise, you get the results of this entire Thread, a 'hanging' engine...or nothing, ;). This is a TGE 'fundamental'; if your path is not correct, the asset isn't loaded...this may or may not cause the engine to 'hang'. I'd say not finding a mission, would cause that, but not finding a shapeFile[other than playerDTS] may not cause a mission to cease loading. But if you are indeed looking for tut.mis and it isn't in either -game folder[GameOne or tutorial.base], again, we may hang....When you load a 'new' mission from the Editor, the default mission is actually another referenced somewhere else, and this bit of code makes the 'new' mission for the GameOne -game the one referenced in GameOne/main.cs...;). The two lines of code above are NOT connected in any way, as far as I read the code...;).
When you call the function loadMyMission, it creates a new Server and loads the mission in question above....they do not need to be named the same['new' mission and this example], except between the coded path and what's really in the folder...
There's a main.cs for every -game and -mod I believe....;).
#16
The force is strong with this one!
04/16/2006 (11:38 am)
Well, I'll defer to what appears to be your greater experience. You're talking me in circles! I guess the only point I'll cling tenaciously to is that the main.cs in question is in the tutorial.base folder.The force is strong with this one!
#17
If you keep referencing that 'game'[tutorial.base], no wonder as you save files in GameOne directoryTree, you can't find them...you are continually referencing a 'game' that isn't being developed!
...Ah yes, I know the Force well...as does my Boss, Jabbbbaaaaaa....
04/16/2006 (11:45 am)
Nope, because now, we're dealing with GameOne!!! and it's main.cs! Tutorial.base is now in the 'past' because one of the first steps to take is direct the engine to our GameOne -game....;). I think this is where your confusion stems from.If you keep referencing that 'game'[tutorial.base], no wonder as you save files in GameOne directoryTree, you can't find them...you are continually referencing a 'game' that isn't being developed!
...Ah yes, I know the Force well...as does my Boss, Jabbbbaaaaaa....
#18
Is that really you in the pig mask?
04/16/2006 (1:41 pm)
Arg! You're right! Boy, is my face red. I copied the "example" folder instead of the "tutorial.base" folder. My game works fine, there's just some differences between my GameOne and the tutorial...Is that really you in the pig mask?
#19
04/16/2006 (6:05 pm)
Yes...pay no attention to the man behind the Star Wars props...move along; there's nothing to see here.
Torque Owner Joe Melton
Fails At Making Games