Game Development Community

Plan for Nick Zafiris

by Nick Zafiris · 05/05/2005 (7:47 am) · 10 comments

I've had Torque for over a year now and in that year, I've messed around with it on a daily basis trying to learn and develop various components. I've gotten pretty far in creating stuff like my own scripted inventory, a save/load feature, a journal/log, although none are at 100%. I also now have a good grasp on things like GUI controls, precipitation, pathedCamera, audio, interior creation etc., as well as making minor engine modifications.

I learned a whole lot in this one year and one thing that helped was that I had a game idea in mind since day one and everything I did to learn revolved around that idea (3rd person, post-nuclear action/RPG). It helped me stay in focus, consistent and dedicated. Off course, my partner helped a lot with all his artwork, and I've had a great help from the community.

Now, I'm planning on starting fresh off of tutorial.base. I believe that this is the best way to go if you're ready to start developing a new game and add to it only the stuff that you'll be using.

Since the game is single player with multiple missions that will allow the player to travel back and forth between them, I need to modify the way current mission loading is handled. I found that it is spread across many files with intermingled functions that were difficult to follow. So I opened up a huge task to create a table and document all the major functions one by one included in every script file starting from common/server in a way that I can understand and refer back to.

In parallel, as functions are documented out, I'm also documenting the flow of the functions. To me this is one of the most important things that will truly help me understand how everything flows. For example, for the mission loading there are functions that call each other within the 3 missionDownload.cs files, clientConnection.cs, missionLoad.cs, missionInfo.cs, mission.cs, /server/scripts/game.cs, etc. Without having a visual representation as shown below, you get lost. At least I do. Planning on doing the same thing with other parts of the script too.

One thing I don't understand yet is that if you look at the difference between the game.cs files in starter.fps and tutorial.base, you'll see that in the starter.fps version there are many extra functions and function calls like startGame(), GameStart(), onGameDurationEnd(), cycleGame(), onCycleExec(), onCyclePauseEnd(), etc. Not sure if those are needed in my case.

Anyway that's the plan for now.

Nick

www.nuclearnightmare.com/images/GGimages/missionloading1.gif---------
Page 2
---------
www.nuclearnightmare.com/images/GGimages/missionloading2.gif

#1
05/05/2005 (8:13 am)
That is sweet. Very nice work on that flow chart! That will help a lot of people, I think.
#2
05/05/2005 (9:04 am)
I like it
#3
05/05/2005 (9:40 am)
Nick, you are my hero. I'd love to get this kind of documentation out to a bunch of people. I'll send you an email soon on it, but man, good job. :)
#4
05/05/2005 (10:11 am)
Fantastic work Nick. I enjoy a graphical representation of how things work as well.
#5
05/05/2005 (10:44 am)
YEEEESSSS!!! We need something like this for T2D too...
#6
05/05/2005 (11:48 am)
Hey guys thanks for your kind words! They're very inspiring. Didn't expect it to be that appealing, just did it cause I really needed it. I will be extending this as much as I can and will try to make it error free. Josh, looking forward to your email.

Nick
#7
05/05/2005 (3:05 pm)
Nice Work! THANKS.
#8
05/06/2005 (12:42 am)
Good job man!
#9
05/06/2005 (2:06 pm)
Great job! Very nice chart. I remember following your progress on using SQLite to save and load data, glad that worked out in the end... then our short adventure trying to figure out how to use message vectors in a journal system. Will enjoy seeing your future work ups, very well laid out!
#10
05/06/2005 (3:29 pm)
Thanks guys! Yeah it was fun...I see you've been pretty busy lately and doing a great job with all your tutorials. And congrats on your Associate status!

Nick