Previous Blog Next Blog
Prev/Next Blog
by date

My Bogle moving to Torque X

My Bogle moving to Torque X
Name:Andrew Douglas
Date Posted:Jan 06, 2007
Rating:Not Rated
Public:YES
Comments:YES
RSS Feed:GarageGames Blog feedor Subscribe with .
Profile Page:View profile page for Andrew Douglas

Blog post
Yeah, you all are probably wondering what happened to My Bogle. It's been a few months of "light" activity due to other obligations. Work on the website is going very well and should be read to launch soon, but really, the big news is that My Bogle is moving to Torque X. What? Why! Well, let's look at the plan and hopefully it'll make more sense.


Build out Friends Play Free: (if you don't know what Friends Play Free is, it's the service launching alongside My Bogle that allows people who purchase the full version of My Bogle to send invitations to their friends and family to play My Bogle against/with them. And as long as the invitee is playing against the inviter, they can play as much as they want... no restrictions on time, levels, game modes, etc. If they want to play the game against other people (when the inviter isn't around), then they'll just need to buy the game themselves.) This is really the defining element of My Bogle and at least a few more games to come after that. In order for us to build this out the way we want it to work, with the skillsets that I have as a developer, and with the tools that are available... developing the UI and framework for Friends Play Free has to be done in .Net. I must be getting old because I've rarely made a decision that said "it's only feasible on this platform", but with time and resource constraints in mind, it'll be months saved by moving to .Net... and that's too big of a savings to pass up. So what does building out Friends Play Free entail exactly?
- Jabber as the network layer. I want presence, rosters, chat, invitations and game play to all happen over one consistent network layer. Jingle (which will introduce true p2p and voice chat (video chat?)) will have to wait until the tools and spec (which I believe just entered last call) stabilize, but building on the jabber framework has a tremendous amount of functionality now, with a great future in front of it. So why not use libjingle? Well, cross platform (and even just one platform) support in libjingle is a black art, one I don't have time to get the required knowledge to deal with. It may be that libjingle and projects such as tapioca will get some cross platform love over the next year or so, but I can't wait for that and I want to build games, not network layers. Why not use TGB's networking layer? One reason is the firewall issues involved. In order for one player to host another player, they have to work around their firewall, and that's just not pick up and play friendly enough for me. You can skip that and just code it all via http, but that leaves a lot to be desired as well. Combine that with things like presence and the work that's going to have to go in to getting invitations working and such, and it's a huge undertaking and would require multiple components to make work. No thanks.
- Next gen, intuitive UI. I want the best of all possible worlds and I don't want to spend a huge amount of time to do it. Eh? What that means is I need a great design environment, with an intelligent and well thought out toolset that gives me things like data binding, animations/sound effects and scalable graphics. So where can I find all of these tools in the .Net world? WPF. Xaml. Whatever you wanna call it, it's point and click easy with tools like Expression and gives me the productivity boost I need. The fact it launched in, what... November? means that it's official and supported so really this is about the first real opportunity to use it in a production environment for me and that, in itself, will motivate me to hack on it. Compare that to the helluva time I've had with the form controls and such in Torque and it's like a whole new world of opportunities opens up. Yeah, it's another deployment issue, but it's already installed on vista and the installation story on xp sp2 should be solved with clickonce. Maybe I'm being a bit naive. Maybe I'm limiting my target audience too much. Yeah, well... so be it.
- I want a reuseable platform in Friends Play Free that can be used for some time to come. While I'm not currently focused on making it available for licensing for other developers (as I want to make my games, darnit!), I want to be able to plug in a different game with the same engine and not have to think about the platform. It should save me considerable time for the next game or two at least. I feel like if I did something hacked together for basic online play for My Bogle, I'd be facing this same issue again and again and I'm tired of it - I just want it done. The opportunity to license the framework is just icing on the cake really.


Improve My Bogle: Besides Friends Play Free and a great "lobby", what does My Bogle get out of this?

Well, I have to admit that's the hardest part about this whole thing. But My Bogle was my first Torque game and my first use of TorqueScript. There are a lot of lessons learned and opportunities for improvement. The best part is that pretty much all of the core game logic isn't going to be hard to port to c#, so really, the "ugly" bits are the only thing that need rewriting and that's really the stuff that needs it:

1. Serverside logic that is unit test-able and reusable. I want a much more sane "game manager" that is reusable and will be easier to support. Nunit ftw.
2. Better animation management. The system we had coded up in torquescript for "queuing" animations was, for all intents and purposes, crap. It was extremely fragile and not reusable in the least. The component framework in torquex will mean a much more intelligent and reusable animation system (also unit testable?) that will clean up my second biggest torquescript mess.
3. So what's the biggest mess? Multiplayer support. It's about as hardcoded as you can get. Having support for more than 2 people would have been a nightmare. I'm not sure how many players the game will support (or that we'll want to support), but it's now "game driven" not torquescript soup driven.
4. I'd love to play with some of the advanced shader effects and such, but for the most part, the in-game content isn't changing all that much really. Dynamic light effects on the runes is a moral imperative - and they were already looking soo cool. I can't wait! :)

It is a shame that a game that was near beta has to go back and have so many changes made, however it's all good stuff that's going on and I'm really excited about the changes. The tools, the language/development environment, and the opportunity to refactor means that My Bogle and Friends Play Free have a very bright future indeed. I can't thank GG enough for what opportunities Torque X has opened up for us!

I'll be posting screenshots of the gui I've been working on shortly... but for now - you'll have to use your imaginations :)

-Andrew Douglas
theoreticalgames.com

Recent Blog Posts
List:03/03/07 - Cooperative Control: Hello Whirled!
01/27/07 - Torque X - Break through/Break down
01/20/07 - Online multiplayer on the brain
01/06/07 - My Bogle moving to Torque X
09/06/06 - Alpha and Dragon*Con
08/14/06 - My Bogle Sculpture
07/24/06 - My Bōgle: Rules Rules Rules
07/21/06 - Funniest Game Ever?

Submit ResourceSubmit your own resources!

You must be a member and be logged in to either append comments or rate this resource.