Game Development Community

T3D 1.1 Beta 2 - full template - 2 errors in script + errors in datablocks - RESOLVED - Not fully Fixed in B3

by elvince · in Torque 3D Professional · 08/04/2010 (7:03 am) · 8 replies

Build: 1.1 Beta 2

Platform: Windows 7, 64 bit

Target: Editors, Visual Studio, Torsion, Xcode

Issues: When launching the new fresh installed full template and just open the editor and disconnect. If you look in the scripts you have 2 errors + multiple call to a function on object 0 during initialization +issue with some datablock

(tell us how to trigger the bug)
Steps to Repeat:
1. Launch the game
2. Go in a mission
3. F11
4. Exit

my console log: Look for //Error--> that should indicates all the errors I found.
//-------------------------- 8/4/2010 -- 08:55:38 -----
... deleted first information ...
--------- Initializing Directory: scripts ---------
sfxStartup...
SFXSystem::createDevice - created DirectSound device 'Haut-parleurs (Périphérique High Definition Audio)'
//Error-->SFXDSDevice::setDistanceModel - 'linear' distance attenuation not supported by DirectSound
   Provider: DirectSound
   Device: Haut-parleurs (Périphérique High Definition Audio)
   Hardware: No
   Buffers: 16
!!!! Setting master volume to 0.8
!!!! Setting channel 0 volume to 
!!!! Setting channel 1 volume to 1
!!!! Setting channel 2 volume to 1
!!!! Setting channel 3 volume to 1
!!!! Setting channel 4 volume to 1
!!!! Setting channel 5 volume to 1
!!!! Setting channel 6 volume to 1
!!!! Setting channel 7 volume to 1
!!!! Setting channel 8 volume to 1

--------- Initializing Mygame: Server Scripts ---------

--------- Initializing Mygame: Client Scripts ---------

--------- Initializing Lighting Systems ---------
Using Advanced Lighting


--------------
Attempting to set resolution to "1024 768 false 32 60 0"
Accepted Mode: 
--Resolution : 1024 768
--Full Screen : No
--Bits Per Pixel : 32
--Refresh Rate : 60
--FSAA Level 0
--------------
Binding server port to default IP
UDP initialized on port 0
 % - Initializing Tools
 % - Initializing Tools Base
 % - Initializing Base Editor
 % - Initializing World Editor
 % - Initializing Sketch Tool
 - Initializing Datablock Editor
 % - Initializing Debugger
 % - Initializing Decal Editor
 % - Initializing Forest Editor
 % - Initializing Gui Editor
 % - Initializing Material Editor
//Error-->Con::execute - 0 has no namespace: onCollapsed
//Error-->Con::execute - 0 has no namespace: onCollapsed
 % - Initializing Mesh Road Editor
 % - Initializing Particle Editor
 % - Initializing Physics Tools
No physics plugin exists.
 % - Initializing River Editor
 - Initializing Road and Path Editor
 % - Initializing Shape Editor
//Error-->Con::execute - 0 has no namespace: onCollapsed
//Error-->Con::execute - 0 has no namespace: onCollapsed
Engine initialized...
Window focus status changed: focus: 1
Exporting server prefs...
//Error-->ParticleData((null)) bad value(s) for animTexTiling [0 or 151341876 <= 0], invalid datablock
263: Register object failed for object RocketSplashRingParticle of class ParticleData.
ParticleEmitterData(RocketSplashRingEmitter) unable to find particle datablock: RocketSplashRingParticle
ParticleEmitterData(RocketSplashRingEmitter) unable to find any particle datablocks
280: Register object failed for object RocketSplashRingEmitter of class ParticleEmitterData.
ParticleData((null)) bad value(s) for animTexTiling [0 or 151344928 <= 0], invalid datablock
262: Register object failed for object PlayerWakeParticle of class ParticleData.
ParticleEmitterData(PlayerWakeEmitter) unable to find particle datablock: PlayerWakeParticle
ParticleEmitterData(PlayerWakeEmitter) unable to find any particle datablocks
284: Register object failed for object PlayerWakeEmitter of class ParticleEmitterData.
Validation required for shape: art/shapes/actors/Gideon/gideon.dts
Validation required for shape: art/shapes/actors/Gideon/gideon.dts
*** LOADING MISSION: levels/Empty Terrain.mis
*** Stage 1 load
*** Stage 2 load
game -> activatePackages
*** Mission loaded
Connect request from: 
Connection established 8742
CADD: 8743 local
*** Sending mission load to client: levels/Empty Terrain.mis
Mapping string: ServerMessage to index: 0
Mapping string: MsgConnectionError to index: 1
Mapping string: MsgLoadInfo to index: 2
Mapping string: MsgLoadDescripition to index: 3
Window focus status changed: focus: 0
  Using background sleep time: 200
Mapping string: MsgLoadInfoDone to index: 4
Mapping string: MsgClientJoin to index: 5
Mapping string: Welcome to the Torque demo app %1. to index: 6
Mapping string: Visitor to index: 7
Mapping string: MissionStartPhase1 to index: 8
*** New Mission: levels/Empty Terrain.mis
*** Phase 1: Download Datablocks & Targets
Mapping string: MissionStartPhase1Ack to index: 0
Validation required for shape: art/shapes/actors/Gideon/gideon.dts
Validation required for shape: art/shapes/actors/Gideon/gideon.dts
Mapping string: MissionStartPhase2 to index: 9
*** Phase 2: Download Ghost Objects
Mapping string: MissionStartPhase2Ack to index: 1
Ghost Always objects received.
Mapping string: MissionStartPhase3 to index: 10
Client Replication Startup has Happened!
fxFoliageReplicator - replicated client foliage for 0 objects
*** Phase 3: Mission Lighting
Mission lighting done
Mapping string: MissionStartPhase3Ack to index: 2
Mapping string: MissionStart to index: 11
Mapping string: SyncClock to index: 12
Mapping string: RefreshWeaponHud to index: 13
Mapping string: swarmer.png to index: 14
Mapping string: reticle_rocketlauncher to index: 15
*** Initial Control Object
Activating DirectInput...
Mapping string: setNumericalHealthHUD to index: 16
//Error-->C:/Torque/Torque 3D 2009 Pro 1.1 Beta 2/My Projects/Mygame/game/shaders/common/postFx/edgeaa/edgeDetectP.hlsl(30,13): warning X3550: array reference cannot be used as an l-value; not natively addressable, forcing loop to unroll
Window focus status changed: focus: 1
//Error-->Con::execute - 0 has no namespace: onExpanded
//Error-->tools/worldEditor/scripts/editorSettingsWindow.ed.cs (5): Unknown command setSelectedById.
  Object ESettingsWindowList(9069) ESettingsWindowList -> GuiTextListCtrl -> GuiArrayCtrl -> GuiControl -> SimGroup -> SimSet -> SimObject
Win32Window::WindowProc - resetting device due to window size change.
GFXPCD3D9Device::reset - depthstencil 2d45b60 has 2 ref's
--- Resetting D3D Device ---
Time spent in toggleEditor() : 1.387 s
Win32Window::WindowProc - resetting device due to window size change.
GFXPCD3D9Device::reset - depthstencil 11578120 has 2 ref's
--- Resetting D3D Device ---
*** ENDING MISSION
//Error-->scripts/server/gameCore.cs (280): Unable to find object: 'game' attempting to call function 'onClientLeaveGame'
CDROP: 8743 
Exporting server prefs...
Exporting server prefs...
Exporting client prefs
Exporting server prefs
Cur. D3DDevice ref count=1

Thanks,

#1
08/11/2010 (10:04 am)
In guiTextListCtrl.cpp, find
DefineEngineMethod( GuiTextListCtrl, setSelectedId, void, (int id),,
   "@brief Finds the specified entry by id, then marks its row as selected.\n\n"
   "@param id Entry within the text list to make selected.\n"
   "@tsexample\n"
   "// Define the id\n"
   "%id = \"5\";\n\n"
   "// Inform the GuiTextListCtrl control to set the defined id entry as selected\n"
   "%thisGuiTextListCtrl.setSelectedById(%id);\n"
   "@endtsexample\n\n"
   "@see GuiControl")
change:
DefineEngineMethod( GuiTextListCtrl, setSelectedId, void, (int id),,
to:
DefineEngineMethod( GuiTextListCtrl, setSelectedById, void, (int id),,
#2
08/11/2010 (2:04 pm)
Logged as TQA-769 for the QA team to verify.
#3
08/16/2010 (2:35 pm)
The error triggering this msg:
Error-->scripts/server/gameCore.cs (280): Unable to find object: 'game' attempting to call function 'onClientLeaveGame'

It appears the Game object is being deleted in endMission() or what not as you exit the game, THEN the onClientLeaveGame() func is being triggered afterwards after the Game object has been deleted.

A quick fix is just to add this if statement to onClientLeaveGame():

function GameConnection::onClientLeaveGame(%this)
{
      if (isObject(Game))
         Game.onClientLeaveGame(%this);
}
#4
09/17/2010 (3:39 pm)
Fixed in 1.1 Beta 3.

Note that the sound distance model error is a config issue and you'll need to have correct distance model selected for the sound provider being used.
#5
09/22/2010 (6:54 am)
Not fixed in Beta 3:

/gameCore.cs (280): Unable to find object: 'game' attempting to call function 'onClientLeaveGame'

c:/Torque/Torque 3D 2009 Pro 1.1 Beta 3/My Projects/MyGame/game/shaders/common/postFx/edgeaa/edgeDetectP.hlsl(30,13): warning X3550: array reference cannot be used as an l-value; not natively addressable, forcing loop to unroll

Validation required for shape: art/shapes/actors/Gideon/gideon.dts
c:\torque\torque 3d 2009 pro 1.1 beta 3\engine\source\t3d\player.cpp(391) : Warning - PlayerData::preload - Unable to find named animation sequence 'prone_root'!
c:\torque\torque 3d 2009 pro 1.1 beta 3\engine\source\t3d\player.cpp(391) : Warning - PlayerData::preload - Unable to find named animation sequence 'prone_forward'!

Followed in another thread:
C:/Torque/Torque 3D 2009 Pro 1.1 Beta 3/My Projects/MyGame/game/shaders/common/scatterSkyV.hlsl(8,11): warning X3207: Initializer used on a global 'const' variable. This requires setting an external constant. If a literal is desired, use 'static const' instead.
#7
09/23/2010 (6:32 pm)
Didn't have notify checked for this one so I missed it the other day. It was definitely fixed in the build I confirmed it as fixed in, and I'm pretty sure that was the final build that I signed off on. I'll look into to see what happened, probably won't get to it until tomorrow though.
#8
09/23/2010 (6:53 pm)
onClientLeaveGame cleanup issues are reported here and here.

I was told ages ago (by Sickhead's finest beard owner) that the unroll shader isn't actually an error, and it's really up to the user to decide what level of warnings they want in code. Not knowing anything about shaders I just nodded...

Gideon doesn't have any prone animations shipped - though the old defaulting to prone issue has been fixed as of the 1.1 betas.