Game Development Community

Two instances on one machine - version incompatible ?

by Orion Elenzil · in Technical Issues · 11/08/2005 (12:04 pm) · 4 replies

Howdy,

i want to run two instances of TGE on a single machine,
and i'm running into a couple issues.

this is a completely fresh debug build of stock TGE 1.3.

* i launch one instance of torqueDemo_DEBUG.exe,
check 'host multiplayer', and away it goes.

* i launch a second instance of torqueDemo_DEBUG.exe,
query the LAN for servers, find the server and connect.

here's where things start to get funny.

* the second (client-only) instance is downloading a bunch of data.
specifically .../shapes/player/emote_emote01.dsq thru .../emote_emote20.dsq.

- why is it downloading so slow ?
i estimate it's downloading at about one byte per second or slower.
- are those files weird and special ? it looks to me like they're being
created only when they're asked for.

* being impatient, i cancelled this download and the next time i tried,
i got a 'cannot connect' dialog due to something like:
"error downloading [emote_emote04.dsq] in player.dts".

* i couldn't get past that problem,
so i re-installed the SDK and this time let it just sit and download, and...

* after downloading the emote.dsq's (took about ten minutes),
it finally doesn't connect with the following error dialog:
DISCONNECT
You do not have the correct version of the FPS starter kit or the related art.....
.... (Load sequence starter.fps/data/shapes/player/emote_emote01.dsq emote_emote01 filed for starter.fps/data/shapes/player/player.dts)

* subsequent attempts to connect skip the downloading and go straight to the same DISCONNECT dialog.

.. I hear rumors that this should work,
but basically it's seeming like i should just use two computers ?


thanks in advance,
Orion

#1
11/08/2005 (1:09 pm)
To do this I have always had to use Release build to avoid problems like you describe. And to run multiple instances in Release mode, you have to do the following

in guiCanvas.cc, locate the reference to excludeOtherInstances() and comment it out.


#if !defined(TORQUE_OS_MAC) // macs can only run one instance in general.
#if !defined(TORQUE_DEBUG) && !defined(INTERNAL_RELEASE)
// if(!Platform::excludeOtherInstances("TorqueTest"))
// return false;
#endif
#endif
#2
11/08/2005 (4:40 pm)
Thanks Tim.

Hmm,
i've tried every combination of debug & release
with and without excludeOtherInstances(),
and with or without seperate root directories,
and i still get this incompatible file versions thing,
both in stock TGE 1.3 starter.fps and in my own mission.

I've also tried disabling Norton.

Hmm.

I'll try tomorrow with two actual seperate computers.
#3
11/09/2005 (10:03 am)
Well this is strange,
there must be something odd about my work computer
because i've tried running two debug instances at home
and it works fine.

this is an uber-stock tge 1.3,
compiled with VC6 (also tried 7).
#4
11/14/2005 (11:47 am)
The following works like a charm:

new GameConnection().connect("127.0.0.1:28000");

..well, almost. i'm getting blue screens of death, but that's presumably a different issue.
(debug and release)