<?xml version="1.0" encoding="ISO-8859-1"?>
<rdf:RDF
	xmlns="http://purl.org/rss/1.0/"
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel rdf:about="http://feeds.garagegames.com/rss/blogs/developer/54967/">
		<title>Blog for Joe Rossi at GarageGames.com</title>
		<description>Blog feeds for Gamers and Developers in the GarageGames community.</description>
		<link>http://www.garagegames.com/</link>
		<image rdf:resource="http://www.garagegames.com/images/GarageGames_logo_small_w.gif" />
		<dc:date>2008-10-16T02:25:32+00:00</dc:date>
		<items>
			<rdf:Seq>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/14184"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/13379"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/12352"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/11858"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/10060"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/9685"/>
				<rdf:li rdf:resource="http://www.garagegames.com/blogs/54967/9125"/>
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://www.garagegames.com/blogs/54967/14184">
		<dc:format>text/html</dc:format>
		<dc:date>2008-01-21T01:12:19+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>New and Improved TGB AudioManager</title>
		<link>http://www.garagegames.com/blogs/54967/14184</link>
		<description>I just want to let TGB users know about the updated AudioManager resource on TDN.  I've modded Phillip OShea's awesome AudioManager resource and I've found a way to make audioProfiles created with the resource selectable within behaviors!  I've had this on my TGB wishlist for awhile now, it's something that I felt should've been in TGB from the start.  It only took me a week or two, very part time...starting with Phillips code ;).  I've learned a great deal about how behaviors work internally, and as a bonus I stumbled upon the undocumented ColorPicker for behaviors.  &lt;br&gt;&lt;br&gt;&lt;br&gt;Without further ado...Here's how to install it.&lt;br&gt;&lt;br&gt;Grab the file resource from the new TGB resource page on TDN:&lt;a href='http://tdn.garagegames.com/wiki/TGB/Resources/AudioManager' target=_blank&gt;tdn.garagegames.com/wiki/TGB/Resources/AudioManager&lt;/a&gt;&lt;br&gt;&lt;br&gt;Unzip it to your resources folder, and (optionally) add the included icon to your tools\levelEditor\gui\images folder.&lt;br&gt;&lt;br&gt;For the next part you will need a &amp;quot;pro&amp;quot; version of TGB.&lt;br&gt;&lt;br&gt;Add this code at the bottom of your tools\behaviorEditor\Scripts\fieldTypes.ed.cs editor script&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;BehaviorEditor::registerFieldType(&amp;quot;audioProfile&amp;quot;, &amp;quot;createaudioProfileGui&amp;quot;);&lt;br&gt;function BehaviorFieldStack::createaudioProfileGui(%this, %behavior, %fieldIndex)&lt;br&gt;{&lt;br&gt;   %fieldInfo = %behavior.template.getBehaviorField(%fieldIndex);&lt;br&gt;   %name = getField( %fieldInfo, 0 );&lt;br&gt;   %description = %behavior.template.getBehaviorFieldDescription(%fieldIndex);&lt;br&gt;   %objectType = %behavior.template.getBehaviorFieldUserData(%fieldIndex);    &lt;br&gt;   %scenegraph = ToolManager.getLastWindow().getSceneGraph();    &lt;br&gt;   %list = &amp;quot;None&amp;quot;;      &lt;br&gt;   %count = $managedDatablockSet.getCount();&lt;br&gt;   for( %i = 0; %i &amp;lt; %count; %i++ ){&lt;br&gt;      %object = $managedDatablockSet.getObject( %i );&lt;br&gt;      if( !%object.isMemberOfClass( %objectType ) )  continue;       &lt;br&gt;      if( %object.getName() $= &amp;quot;&amp;quot; )   continue;&lt;br&gt;      if( %object.ObjectType !$=  &amp;quot;AudioProfile&amp;quot; )   continue;   &lt;br&gt;      %list = %list TAB %object.getName();&lt;br&gt;   }  &lt;br&gt;   %control = %this.createDropDownList(%name, %name, &amp;quot;&amp;quot;, %list, %description, true, true);&lt;br&gt;   %listCtrl = %control.findObjectByInternalName(%name @ &amp;quot;DropDown&amp;quot;);&lt;br&gt;   %listCtrl.object = %behavior;&lt;br&gt;} &lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;With this in place you can allow selection of audioProfiles created with the AudioManager like so:&lt;br&gt;&lt;br&gt;&lt;div class='codeblock'&gt;&lt;pre&gt;%template.addBehaviorField( mySound, &amp;quot;The sound we want to play&amp;quot;, audioProfile,  &amp;quot;&amp;quot;, ScriptObject  );  &lt;/pre&gt;&lt;/div&gt; &lt;br&gt;&lt;br&gt;I'd love to see this system or something like it become part of stock TGB in the future.  It's incredibly useful. Hopefully the Tools and Tech team will take notice.  With this out of the way, they can focus on other areas of TGB :)&lt;br&gt;&lt;br&gt;Many thanks to Phillip OShea for writing the bulk of this code and making it available to the community.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/13379">
		<dc:format>text/html</dc:format>
		<dc:date>2007-08-10T04:55:07+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>RPG progress and new font tool</title>
		<link>http://www.garagegames.com/blogs/54967/13379</link>
		<description>For those having trouble with TGB fonts I have uploaded a TGB addon to the resources section.  It makes the process of editing font images and creating/importing cached fonts a bit easier.  All the fonts in the below images were created with the help of this tool.  It will probably only work for TGB 1.5, but you get the source so you can probably figure out how to modify it for 1.3 if you need to.  &lt;br&gt;Get it here:&lt;br&gt;&lt;a href='http://www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=13348'&gt;www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=1334...&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;I know I haven't shared much about the game I'm working on. I think it will be an RPG, but the system I developed can also be used for a TGC, or any other game with lots of rules. So I'm keeping it flexible, hoping to reuse the system for all of my future games. It's written in about 50% Lua, 50% TorqueScript (using my Lua&amp;lt;-&amp;gt;TGE bridge).&lt;br&gt;&lt;br&gt;A little about how it works... Each object has an Lua coroutine for logic, and a TGB object (sprite or 3D model). They're tied together by name, so I can do anything TGB can do to the object from Lua. There is a message system so that each object can &amp;quot;see&amp;quot; what goes on in battle, and trigger events as needed. Each spell is a small Lua script with functions that control it. Spell selection from a menu is working, even multiple targets per spell. Each spell decides what a valid target is for itself. I made a &amp;quot;Phoenix Down&amp;quot; spell that really works! :D When a spell is cast it will play a sequence of animations/particles etc and move on to the next objects turn. I also have items working (similar to spells) and I'm currently coding the equipped item system.&lt;br&gt;&lt;br&gt;Besides the battle part I also have a working dialog system with scrolling text, and other random pieces of the game partially done. I will most likely use the Adventure Kit for my maps, and license as many content packs as I can afford to help me with graphics and sounds.&lt;br&gt;&lt;br&gt;Here are a couple of screens (excuse the placeholder/programmer art). &lt;br&gt;&lt;img src='http://i203.photobucket.com/albums/aa71/ima_gin/TGBGame_dialog1.png'  alt=&quot;&quot;&gt;&lt;br&gt;&lt;img src='http://i203.photobucket.com/albums/aa71/ima_gin/TGBGame_battlemenu1.png'  alt=&quot;&quot;&gt;</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/12352">
		<dc:format>text/html</dc:format>
		<dc:date>2007-02-19T02:08:09+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>Working towards an RPG in TGB</title>
		<link>http://www.garagegames.com/blogs/54967/12352</link>
		<description>So I finally decided what I want to make.. it was a hard decision, but, I'm going to make an RPG with TGB.  I really think RPGs are the best games.  They tell a story, and they don't rely on reflexes to win.  Unlike some other game genres, when I play an RPG I rarely ever feel like I've wasted my time.  &lt;br&gt;&lt;br&gt;I bought the Adventure Kit to get me started with the maps and art.  I'm glad I did, the docs alone are worth the $100 to me as an inexperienced tilemapper.  I wrote a dialogue system with all the standard features: multi-line scrolling text, clickable option text, character portraits etc.  Another important part is the battle mode.  Right now it's turn based, old school style.  Of course, all of it is controlled by Lua :)  I also commissioned artwork for the main menu, and I think it looks sweet.&lt;br&gt;&lt;br&gt;And that's what's up with me right now.  Hopefully I'll have something to show you in the not too distant future.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/11858">
		<dc:format>text/html</dc:format>
		<dc:date>2006-12-13T10:18:23+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>Building onto Torque Game Builder</title>
		<link>http://www.garagegames.com/blogs/54967/11858</link>
		<description>So I lost my internet for a week and I notice we TGB users got TorqueX for free!  That's very awesome and generous of you GarageGames...so thank you!  &lt;br&gt;&lt;br&gt;Recently I've been doing some work adding things to the TGB editors, mainly using &amp;quot;resources&amp;quot;.  I made a resource which I may make available soon that allows me to create and preview TGB fonts easily.  I also added a dropdown to my &amp;quot;Edit&amp;quot; tab when I click an object, where I can edit my lua script logic values for each object just like the dynamic fields.  This is great because it's much easier for me (or anyone) than opening and hand editing scripts!  So even an artist would be able to go and tweak something in a game I'm working on.  &lt;br&gt;&lt;br&gt;I'll post more about what I'm working on and my event system in a future blog.</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/10060">
		<dc:format>text/html</dc:format>
		<dc:date>2006-03-18T09:22:06+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>IUP: Use Lua scripted GUIs with Torque</title>
		<link>http://www.garagegames.com/blogs/54967/10060</link>
		<description>My latest resource is a binding for the IUP library, which is a Lua scripted GUI library.  Now I/we can run IUP scripts from Torque.  Since it uses my Lua bridge these scripts can access about any Torque data.  So with some effort it can be used to make more editors and tools that interact in realtime with Torque.  Something similar can be done using wxLua (wxWidgets lib for Lua) but that's too complex and bloated for me and for this purpose (dev tools) IUP works just fine.  &lt;br&gt;&lt;br&gt;Access it here. &lt;br&gt;&lt;a href='http://www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=9998'&gt;www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=9998&lt;/a&gt;&lt;br&gt;( Win32 only for now )&lt;br&gt;&lt;br&gt;As a demo I wrote a Torque console in IUP that lets you run TGE or Lua code, has a command history, and can be open and running as the game runs.  It's not perfect but it seems to work.  I started on some &amp;quot;in-house&amp;quot; tools that manipulate the currently selected level editor object... but to avoid reinventing any wheels I'll wait for the new editors before I go too far with that.  &lt;br&gt;&lt;br&gt;Other than this the past few weeks have not been productive for me.  Kind of in a slump I guess.  Lots of issues at the day job and so on... I need out of there! &lt;br&gt;&lt;br&gt;Thanks for reading! &lt;br&gt;&lt;br&gt;&lt;i&gt;Edit: removed blabber about not getting resource approved.. Thanks Josh ;)&lt;/i&gt;</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/9685">
		<dc:format>text/html</dc:format>
		<dc:date>2006-02-02T21:20:36+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>Lots of new changes</title>
		<link>http://www.garagegames.com/blogs/54967/9685</link>
		<description>It's been a while since my last blog..  A lot of new and exciting things are happening within the community.  Most notably the new Alpha and it's editors.  I haven't played with those yet, but they looks good so far.&lt;br&gt;&lt;br&gt;I'm happy to annouce that I managed to get my Lua resource uploaded, check it out here: &lt;a href='http://www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=9665'&gt;www.garagegames.com/index.php?sec=mg&amp;amp;mod=resource&amp;amp;page=view&amp;amp;qid=9665&lt;/a&gt;&lt;br&gt;This has plenty of uses but I won't go into them here.  I'm making extensive use of this in my build of T2D.  &lt;br&gt;I may attempt to get my DDS code to build into the new Alpha and submit that too, however incomplete it is.&lt;br&gt;&lt;br&gt;I have been using Overlord a lot to manage my ideas and projects. &lt;a href='http://www.phpoverlord.com/' target=_blank&gt;www.phpoverlord.com/&lt;/a&gt; Eventually I'll use that to coordinate tasks with my hired hands. For now it's serving as self-managment and personal diary/blog software.  I highly suggest it for anyone working across the 'net.  &lt;br&gt;&lt;br&gt;I have so many ideas that it's hard to pick one and go with it.  I'm trying to do what I think will be easiest, but I also want to make something interesting and salable.  I have to keep it simple for my first game, but I have plans for a bigger game that will be continually updated and expanded.  I'm currently negotiating art assets for that and of course I can't say what or with whom just yet.. but they are just incredible and things look great there.  That project will take tons of work and planning (and funding!) so I have to learn more about business.  I realize there is no way in hell I can do that project alone...  I've been reading a lot of books about money and business and law etc etc. so I will be more prepared when the time comes.  &lt;br&gt;&lt;br&gt;Well that's it for now.  Time to go to work at my petty day-job!</description>
	</item>
	<item rdf:about="http://www.garagegames.com/blogs/54967/9125">
		<dc:format>text/html</dc:format>
		<dc:date>2005-11-06T02:58:47+00:00</dc:date>
		<dc:creator>Joe Rossi</dc:creator>
		<title>Sunday Nov 6 2:58</title>
		<link>http://www.garagegames.com/blogs/54967/9125</link>
		<description>Some of the junk I've been messing with.&lt;br /&gt;&lt;br /&gt;So this is my first plan. Let me start by saying I think this is a great community we have here, lots of smart people, and if everyone can contribute just a little we will end up with a lot.  That said I hope to be contributing two things in the near future...&lt;br&gt;&lt;br&gt;&lt;b&gt;#1 Compressed DDS support. &lt;/b&gt;&lt;br&gt;DDS (DirectDraw Surface) is a compressed texture format that allows graphics cards to deal with texture data in a much more efficient way. Converting a few textures to this format will probably increase the FPS of any hardware accelerated game.  Users will need a card that supports the GL_EXT_texture_compression_s3tc extension, but most every card has since circa 2002. Even crappy onboard cards do these days. Anyway this compression is lossy so expect some images to lose quality at higher compression ratios. To compress textures you can use ATI's Compressionator, NVidia DDS Tools, and (maybe?) GIMP's DDS plugin...but I've only tested with ATI's utility and in DirectX DXT mode.&lt;br&gt;&lt;br&gt;So far I've loaded DXT3 and DXT5 compressed textures. I'll may stop there since those work, I'm not sure if I'll do DXT1.  The one challange I have now is making it work in DirectX mode. I probably need to hack the OpenGL2d3d.DLL. I'm not exactly an expert at hacking Torque! So it only works in OGL for now. Don't expect a resource anytime soon.  I'd like to make sure it works and is compatible with the new version of T2D before I send it out. This should work for TGE too BTW.&lt;br&gt;&lt;br&gt;&lt;b&gt;#2 Lua support&lt;/b&gt;&lt;br&gt;I've** managed to create a funky ScriptObject that allows Torque and Lua to get and set each others variables, execute each others scripts and other arbitrary code. This is great for me because I really enjoy coding in Lua and I already built a game logic codebase in Lua for another project.  &lt;br&gt;The benefits of Lua are many, and I feel that Lua can offset any weakness of TorqueScript. Lua has some language features that (I think) TorqueScript is lacking like coroutines, function closures etc, and Lua may handle some things more efficiently.  Don't get me wrong, Torque has a nice script language that I'm sure is very efficient for most things. Otherwise I'd have removed it completely. I just think some things can be easier with Lua. It only adds a few hundred KB to the EXE, too! Pretty cool. I plan to use Lua for the bulk of my game logic, TorqueScript for the rest.  This could also enable some people to create editors with mostly Lua code. &lt;br&gt;**Creds to John Vanderbeck for his BasicObject code.&lt;br&gt;&lt;br&gt;Edit: My Lua bridge code is nearly completed, at least for now. It's based on Lua 5.1 BETA, so I think I'll wait until that version is complete (before the end of the year, they're in code-freeze now I believe...) because this new version seems much better than the previous ones.  I don't know what else to add to this. I made an &amp;quot;LUA_DEBUG&amp;quot; flag that will exit Torque gracefully and print errors if you mess up, and you can shut it off for release (if you know there are no mistakes in your scripts!). The main file is &amp;lt;500 lines of code.  Maybe I'll make a little demo? Hmm. &lt;br&gt;&lt;br&gt;Edit2: I've been able to emulate Torque engine calls using Lua tables. Now we can probably access all of TGE/T2D inside Lua scripts! I think I'll need a new plan for that. FYI it looks just like TorqueScript, but without the funny operators and C syntax :D It also takes very little code. &lt;br&gt;&lt;br&gt;Until next time...</description>
	</item>
</rdf:RDF>
