Game Development Community

dev|Pro Game Development Curriculum

Advancing Along...

by Robert Fritzen · 07/11/2011 (12:03 pm) · 6 comments

So It's been about 7 1/2 months since I've had the engine now, and with that time, I've enjoyed working with the engine, and getting to meet the great community and developers behind it. So first off, I'd like to say thanks for everything so far, It's been a great time, and I hope to keep it going! Now onto ze technical stuffs...

I've ran through about 3 implementations of my xxz568 authentication resource, making upgrades and enhancements, while addressing some very evil issues in the code. However, It can still be made better! I was completely unaware when I first got the engine of it's own String class. So I've been writing with std::string. I'm probably going to need to make the switch at some point, so I figured now would be the best time.

Also along the lines of (evil) problems I have come across, and am still dealing with is for my little tank combat project I've been working on. A while back I thought I had fixed the "choppy" turrets issue only to now find out that it was never fixed in the first place. So, back to the drawing board of potential fixes, and unfortunately, without any luck so far, I have not fixed this problem which is now becoming quite the time vampire for me.

My last problem currently, goes along with my pre-game lobby I've created for my projects. I plan on having colored clan tags and names at some point for the lobby. unfortunately, the current text list control does not handle what I was looking for (multiple colors by profile). So, I wanted to try to make a new gui object. What I tried to do was to merge the guiTextList with the GuiMLTextCtrl so instead of being text objects that make the list, it would be GuiMLTextCtrl's that filled the list. Unfortunately, I have made no progress to getting this to work, I may need to try an alternate route.

Fortunately however, I have made quite a few interesting things happen with the time I've had.

The first was getting my new rank container working perfectly. It has been quite helpful in hunting down some of the bugs in xxz68. And I thank everyone who not only helped me fix the problems in it, but getting it working so I could resource it ;p (who doesn't like free cool stuff?)

Also, I got the patcher resource working for TGEA after making some minor enhancements that were causing lockups in the download process. apparently the storage of details of the current file were being stored as a global variable, which I discovered to cause problems when downloading a large file, and then starting (and finishing) a smaller file before the large one finished. So I switched it all to local variables in my TCPObject connects (%this.blah = Some Stuff;), and voila, it worked perfectly.

Currently, I'm working on two main systems to which I plan on implementing into my tank combat project. The first, is an item system which will allow players to buy tanks they can use in multiplayer using money they gain in game by progressing in ranks, killing other players, ect. I'm currently about 80% done with this system, and so far, it looks like this one is going to run smoothly without any problems. The second system, will bring back some good old time memories from T2 Vets (like myself). I'm going to implement a clan system similar to what Tribes 2 Had, where players can create a clan, that will have a blank canvas of a page (guiMLTextCtrl) to be filled with. Clans can be public, private, or hidden, depending on how the owner wants it to be.

So, this is what my current plan off attack seems to be:

* Re-write the crypto system using Torque's String class, instead of the std::string class.
* Fix the very evil Tank/Turret problem I've had (choppy movement on one, smooth on other)
* Get a GuiMLTextList working so I can handle colored names/tags in the lobby.
* Finish writing my item system and clan system

And all of this, I'm going to have to try to get done before Aug. 16 when I am moving to UICU to get my degree.

#1
07/11/2011 (2:55 pm)
Your resources have been a great help, Robert, thank you. Security in general is not often discussed around here, which is a shame, since so many people create games that need integrity to function.

As for the colored clan tags, did you know that GuiMLTextCtrl can use a special markup language called TorqueML? It will let you specify arbitrary colors, or load bitmaps into the control - whichever you had in mind for clan tags.
#2
07/11/2011 (6:39 pm)
Thanks for that. However, I knew about the TorqueML for that specific control, I was only wondering how to create a new gui object that mirrors the guiTextList but using the features of TorqueML for the text in the text list (each player can have different tag colors).
#3
07/11/2011 (6:52 pm)
Oh I see. Sorry about that. It'd indeed be great if that feature was consistent across all GUI text input & display objects. The whole GUI system could use an overhaul to be honest.
#4
07/11/2011 (7:06 pm)
I agree :).

I've been trying to get it working, but if I have to go the long route of actually copying the properties of the MLText to mirror the behavior of the text in the list, I will go that route if I cannot solve the (simpler) way to replace String Text; in the textList with GuiMLTextCtrl objects.

IE: I'm trying to have it create a GuiMLTextCtrl in place of a Text entry on the list, from where I can access the features, however, it doesn't want to render.
#5
07/12/2011 (10:24 am)
Robert - Keep up the good work! I agree with Konrad - not enough security discussions. Either down to a lack of knowledge, or is just forbidden to discuss and unlock the secrets :)
#6
07/12/2011 (11:42 am)
To which I should probably be discussing in more general question form with the T3D private section. ;)

But yes, definitely. I just need to find a way to adapt the crypto resource to work with S32 or String, which will more than likely make me switch everything to const char * or some implementations of std::string somewhere.