Game Development Community

Torque Game Builder 1.7.5 Released!

by Matt Fairfax · in Torque Game Builder · 04/30/2010 (5:49 pm) · 49 replies

Grab it from your account page!

Improvements:

  • Added Visual Studio 2008 projects and solution
  • Made Con::evaluatef() safer
  • Upgraded all Xiph libs to latest releases (Ogg, Theora, Vorbis)
  • Upgraded audio system to use OpenAL 1.1
  • Console now resets the function offset so the stack doesn't continue to grow unnecessarily
  • Added Source Rect support to t2dScroller and t2dStaticSprite objects
  • Added AlertYesNo dialog box support
  • Added support ping-pong animations
  • Added animation direction controls (ie. forward or backward playback)
  • Support for non-unicode string buffers / t2dTextObjects
  • Support for bilinear filtering on t2dTextObjects
  • Support for integer pixel snapping on t2dTextObjects
  • Support for 16bit image maps / textures
  • Better checks / logic on particle saving in the editor
  • Added outputting of bitmap name when a t2dImageMapDatablock is destroyed but still has references in order to help track down the other references
  • SimSets can now have a class and superclass
  • Added pointInRect() to RectF and RectD
  • Minor modification to destroy resources rather than unloading textures during texture zombification
  • Modified image-map so that it removes any bitmaps created during frame compilation
  • randI and randF handle degenerate and inverted intervals
  • TorqueGameBuilder.exe and TGBGame.exe are now DPI aware. (Per msdn.microsoft.com/en-us/library/dd464660(VS.85).aspx, manifest warnings can be safely ignored)
  • Made the TGB window smaller on the Mac so that it won't be hidden by the top menubar
  • Polish/cleanup pass on the documentation to make sure it is up-to-date

Fixes:

  • Made ResManager::isValidWriteFileName() handle blank/empty filenames properly
  • Updated all references to www.garagegames.com to www.torquepowered.com and removed any defunct links
  • CodeBlock::exec() now protects against a NULL currentNewObject in OP_ADD_OBJECT
  • AbstractClassRep no longer leaks field validators during initialization
  • Made sure that the line buffer is terminated before using it in a string function in TelnetDebugger::processLineBuffer()
  • Fixed a potential infinite loop in TSShape::fixupOldSkins()
  • Made sure that Torque defines a proper set of delete operators to match its overridden new operators
  • TiXmlDocument::Parse() now correctly handles a null result for LinkEndChild()
  • GuiParticleGraphCtrl and GuiGraphCtrl ConsoleMethod's now correctly check against the MaxPlots constant when determining if a plotID is valid
  • GuiMLTextEditCtrl::handleMoveKeys() no longer skips the final line when pressing the down or end key
  • Zip entries are properly deleted if they are unable to be inserted into a ZipArchive
  • Telnet debugger and console now properly protect against trying to use an invalid socket
  • Unicode Win32 API handling fixed (affects all file I/O involving non-ANSI characters in file names)
  • Several Theora video playback problems fixed
  • Made sure all va_start()'s are properly matched with a corresponding va_end()
  • Fixed memory leak in LangFile
  • Added code to handle a NULL return from getOwner() in many of BehaviorInterface's functions
  • Namespace::~Namespace() now properly uses dFree() for mUsage
  • Fixed bogus delete/memory leak in loadObjectStream()
  • Removed extra printf parameters from GFont::dumpInfo()
  • TextureManager::loadBitmapInstance() now correctly checks to make sure the ResourceManager returned a GBitmap
  • handleMasterServerListResponse() no longer leaks PacketStatus's
  • GuiControlArrayControl::resize() no longer leaks memory in the form of the sizes and offsets arrays
  • CTRL-Z no longer unintentionally deletes the contents of a GuiTextEditCtrl if it is done while dragging a mouse
  • The UNIX version of Platform::isSubDirectory() now properly closes the directory in case a subdirectory doesn't exist
  • Added better protection/tests for uses of dynamic_cast's
  • Fixed several SnowLeopard/GCC4.2/XCode/OSX Build errors and issues.
  • Fixing osx framework linking issues with OGG
  • OpenAL OSX Framework issues with compiling linking *Broken Symlinks
  • GFont destroying now decrement texture handles correctly
  • Scripts are now correctly informed that no master server is found if that is the case
  • Fixed a potential crash in the t2dSceneWindow picker
  • Fixed a crash in GuiTextCtrl::setText() if the font is NULL
  • Added missing PROFILE_END() in GuiCanvas::renderFrame()
  • Fixed possible endless loop in the Windows FileDialog::setDefaultPath()
  • Text in a GuiMLTextCtrl now correctly reformats itself on a resize.
  • Memory is now freed when an audio profile deleted and streaming OGG stopped (torquepowered.com/community/forums/viewthread/96713 and torquepowered.com/community/forums/viewthread/53220)
  • The mouse over graphic no longer used when the button is inactive
  • Case is preserved when setting text on a button
  • Fixed various collision-detection issues
  • Fixed issue with referenced textures when image-maps were resurrected
  • EventManager's isRegisteredEvent ConsoleMethod calls the matching C++ function
  • GetScheduleDuration() and GetTimeSinceStart() now return the expected values
  • GuiTextEditCtrl's selectAllText function correctly selects all text
  • TGB more stable in regards to all window switching operations
  • We now process the world-limits earlier during the update phase to make sure that tick-destination gets correctly updated when a world-limit collision occurrs
  • Removed the problematic _WIN32_WINNT define so that TGB will compile cleanly on Visual Studio 2008
  • Reordered the Xcode architectures so that it will default to i386 instead of ppc out of the box
  • Made sure we aren't leaking memory from the dynamic_cast fix in DynamicConsoleMethodComponent::_callMethod()

Notes:

  • Changed Xcode projects to use system OpenAL; dropped pre-configured support for OSX 10.4 in Xcode project (OAL does not ship with 10.4)
  • Game Builder Torsion project renamed, and uses proper version of TGB 1.7.5 Tools.Torsion
  • Dropped Windows 98 support
  • Removed support for Visual Studio 2003
  • Installers now remove the TGB AppData info since it was causing issues
  • Removed the old collision-time separation clamping

Known Issues:

  • Reloading a project may cause the toolbar to render improperly (restarting should fix this)
  • Drag and drop for asset importing does not function on Macs
  • Compiling in Xcode under ppc fails from time to time
  • Selecting a config datablock does not fill in class fields
  • Script-based File I/O outputs the to the GaragGames folder in the user's Roaming AppData

About the author

I am a Game Designer at PopCap who has worked on PvZ Adventures, PvZ2, Peggle Blast, and Bejeweled Skies. I am an ex-GarageGames employee who helped ship TGE, TGEA, Torque 3D, and Constructor.

#21
05/03/2010 (2:17 pm)
I didn't see anything specific to Windows 7 but I thought that was one of the up-coming enhancements before T2D comes out. Does 1.7.5 include Win7 support? If not, will it be coming before T2D?
#22
05/03/2010 (2:23 pm)
It has full support for Win7.
#23
05/04/2010 (5:05 am)
I have a big issue with the editor, regarding saving level: the source rect property is not saved properly for t2dStaticSprite (http://www.torquepowered.com/community/forums/viewthread/114831) neither for t2dScroller.

Has someone experienced the same bug?
#24
05/04/2010 (5:48 am)
I had a quick look at this for you and have posted on your thread.
#25
05/04/2010 (5:54 am)
@Matt - thanks for the clarification. One more question, what does the last bullet in the known issues mean ("Script-based File I/O outputs the to the GaragGames folder in the user's Roaming AppData")?

Does this mean it wont save to the CompanyName/ProductName anymore?
#26
05/04/2010 (3:31 pm)
Hi,

I'm also experiencing the same problem as Afan:
- "Torsion Error msg : Connection to executable failed."

I'm also having the weirdest thing i ever have seen.
The game, is configured at 800x600, and when I launch it in my laptop, instead of launching at 800x600, the game shows at 200x600 or something like that. Any idea where in the code I can fix this ?

thanks,
Bruno
#27
05/04/2010 (4:00 pm)
Well, to asnwer my own question, I don't know what are the consequences of doing this, but in Platform32/PlatformGL.h , there's this variables definition :

#define MIN_RESOLUTION_X 320
#define MIN_RESOLUTION_Y 320

I just replaced it by 640x480, and now initializes fine in the laptop.
#28
05/04/2010 (9:10 pm)
What kind of collision issues were resolved ? I know that I did experience a bit of wonkiness with collisions a while ago.
#29
05/07/2010 (11:32 pm)
Like Afan and Bruno, I also get the same error message :
"Torsion Error msg : Connection to executable failed."

Sometimes it will run, but if it does, it will not hit any breakpoints in basic places that I know should be hit.

Building the 1.75 C++ code and running the executable outside of torsion works fine.
#30
05/12/2010 (12:42 am)
We've experienced some font rendering problems with UTF characters (instead of a single character, two white boxes appear).

It is easily fixable by reverting the change from t2dTextObject.cc, around line 154:

// setText(StringBuffer(text, mNoUnicode));
#31
05/12/2010 (8:26 am)
Thanks World-Loom
#32
05/12/2010 (11:51 am)
Patrick Sherman found solution for "Torsion Error msg : Connection to executable failed."

Working like a charm :)

More info Here
#33
06/03/2010 (10:45 am)
OK I have an issue 1.7.5 TGB. When I go to edit this object collision polygon the window comes up and has all of its setting there but no picture I can edit it is just a gray screen. I am on windows 7 professional X64. Has any one else had this problem.
#34
06/03/2010 (10:49 am)
@Johnathan
That's a known issue with the binary builds that was discovered after the release. The temporary fix is available here.
#35
06/03/2010 (10:57 am)
Thanks ya I found it after I posted. lol I should have done more research first.
#36
06/05/2010 (4:16 pm)
Building TGB with Xcode -- there's a web link to that when installed but the link is broken. Where can I get more info on compiling v1.7.5 in Xcode?

Jay Jennings
#37
06/15/2010 (6:00 pm)
Hi, I'm on OS X 10.4 and the .pkg complains that it needs 10.5 to install. Is this really a requirement for 1.7.5 or can I get it some other way?

Greg
#38
06/21/2010 (12:08 pm)
@Tetraweb - We don't support 10.4 so we don't test it. You are basically swimming in uncharted waters. I'm expecting it won't even compile without modifications.

@Jay - Look for the directory path "Torque Game Builder 1.7.5 Pro\documentation" in the root directory.
#39
06/23/2010 (1:40 pm)
Regarding the Mac window size bug, the cause seems to be in the setScreenMode function in macCarbOGLVideo.cc:

newRes.y -= OSX_MENUBAR_OFFSET;

Disabling this line fixed the problem for windowed mode, although it may be correct for fullScreen window mode (if platState.captureDisplay is false).

While I was in there, I also noticed that it lacked the "scan through the available resolutions and pick the closest one" code from the windows version of setScreenMode.
#40
06/23/2010 (1:57 pm)
That code is definitely the problem but removing it will cause the top of your TGB editor to be hidden by the system menubar (including some critical toolbar buttons).

I think a better fix would be to change the code at the top of macCarbOGLVideo.cc from

#define OSX_MENUBAR_OFFSET 90

to

#ifdef TORQUE_TOOLS
   #define OSX_MENUBAR_OFFSET 90
#else
   #define OSX_MENUBAR_OFFSET 0
#endif

I haven't tested that but I think that is the best solution.