Game Development Community

DSO's and GuiDefaultProfile

by Rex Hiebert · in Torque 3D Professional · 05/01/2010 (10:22 am) · 12 replies

This is the first time I have tried this so maybe I'm doing it wrong. I want to distribute my game as dso's and not .cs files. I generate the dso and then use the Torque toolbox to Package the Project. I tell it to NOT copy the .cs files (other than the main.cs that is required). When I try to start the game a window pops up with an error:

Title: ..\..\..\Engine\source\gui\core\guiControl.cpp(428):Fatal-ISV

Message: GuiControl::onAdd() unable to find specified profile and GuiDefaultProfile does not exist!

GuiDefaultProfile hasn't been touched and is loaded before the canvas is ever created.

If I do the same process but remove the dso's and let it copy the .cs files, the game works.

Has anyone run into this problem? Any ideas?

This is on Torque3D 1.0.1

#1
05/03/2010 (7:44 am)
While testing I also noticed that DeleteDSOs.bat was only deleting the DSO's for .cs files and not the .gui files. It should have an additional line like:

for /R %%a IN (*.gui) do IF EXIST "%%a.dso" del "%%a.dso"
#2
05/05/2010 (5:12 am)
So no one has run into this before?
#3
05/05/2010 (5:18 am)
This is the original file, and works great O__o

for /R %%a IN (*.cs) do IF EXIST "%%a.dso" del "%%a.dso"
for /R %%a IN (*.cs) do IF EXIST "%%a.edso" del "%%a.edso"
for /R %%a IN (*.gui) do IF EXIST "%%a.dso" del "%%a.dso"
for /R %%a IN (*.gui) do IF EXIST "%%a.edso" del "%%a.edso"
for /R %%a IN (*.ts) do IF EXIST "%%a.dso" del "%%a.dso"
for /R %%a IN (*.ts) do IF EXIST "%%a.edso" del "%%a.edso"
#4
07/26/2010 (6:00 am)
I'm having the same problem as described by Rex, anyone got solution?
#5
07/26/2010 (11:33 am)
Has anybody tried the following behaviour:
- Leave all .cs Files in Place,
- start the game and let create the .dso files.
- Exit the game and delete all .cs and .gui files?

If I see it correctly you made it from the toolbox?!
#6
07/27/2010 (2:46 am)
Tried Tobias suggestion, I ran the game with .dso generated, delete core\main.cs (not the main.cs in game root folder), then the game still crash with the same "GuiDefaultProfile does not exist" error.
#7
07/27/2010 (6:28 am)
Ok, I swam through the code a bit.
Check if there is a file core/art/gui/profiles.cs compiled as profile.dso.

In this file the default profile is defined. Looks like this file isn´t compiled. Another issue may be, that the names were hard coded in the engine and compiled files keep track via another reference system.
To short solve your problem just keep the profiles.cs active.

Maybe anybody related with the script system from GG can give further details.
#8
07/28/2010 (1:53 am)
Following are the steps I took:
1. Create a new empty project from Torque Toolbox.
2. Run the project once with "-compileAll" option.
3. Package the project into zip through Toolbox, all .cs files are also included.
4. Unzip the package and run the project, with all .cs files and .dso files intact, no error.
5. Delete core\main.cs, note that this is the only .cs file I deleted, all the other .cs and .dso still intact, including core/art/gui/profiles.cs and profiles.cs.dso.
6. Run the project and the same "GuiDefaultProfile" error appear.

PS: I'm using Torque3D v1.0.1.
#9
07/28/2010 (6:50 am)
Hmmm, that´s a good question! I have to verify your example on my computer. But the points you descriped indicate that´s there is something kind of strange!
And you really haven´t done anything except the points written down? Haven´t compiled with torqueConfig changed?

PS: Checked with T3D 1.1 Beta1, looks the problem is resolved there. Can start with dsos only!
#10
07/28/2010 (10:56 am)
Tried uninstall and reinstall the Torque 3D v1.0.1 SDK, repeat the steps and still end up with the same error...

May be will give 1.1 a try the other day if I got time....can't find release note of 1.1 online thus dare not try it with my current tight schedule.......
#11
07/28/2010 (11:27 am)
I´m currently also out of time to test with 1.0.1. Maybe later.
I believe that´s something with the COMPILE_NO_DSO directive from TorqueConfig.h. But I´m not in code actually and so this is only an idea of me.
#12
07/30/2010 (3:02 pm)
I gave up on it a while back. After wasting most of a day on it I couldn't find a solution and no one on the GG side provided feedback or even a bug tracking number. At this point, I see no reason to bother with it with B2 just around the corner. I'm going to wait and see what happens with that. If it's still an issue in that release then I'll be back here to complain again.