Game Development Community

Common complaints and reasonable counters. Civilized discussion

by Wolf Dreamer · in RTS Starter Kit · 10/19/2006 (4:16 pm) · 18 replies

I wish to address various common complaints I see popping up time and again, and try to have a civilized discussion, as we work through them.

I was chatting with Garage Game's employee Matt Langley over at my forum, and he once again put things into perspective.

Complaint 1:
Some people don't believe the RTS Starter Kit, in its current form, is worth half the price of Torque.

Matt Langley stated it clearly
Quote:
That's the downfall of Torque being priced at $100... everyone always compares it to Torque... $50 is half of Torque's cost so you should get half of what Torque offers at half the price...right? Wrong. Just because we're selling Torque at $100 (for indie license) it doesn't mean it isn't work much more, we can't price everything in that same range or we'd be broke by now.

People shouldn't be comparing two co-existing products. That would be like comparing the value of everything to something at a dollar store. Just because something is sold for a cheap price it doesn't mean everything will be in scale.

You have to compare the value to the price... $50. $50 is roughly 2 hours of coder work in my mind ($25 an hour is actually very cheap for coder work)... so do you get more than 2 hours of coder work?
Makes sense. I believe taken that into account, the price is fair.

Complaint 2:
There is no pathfinding included. None was promised, of course, so I suppose you can't really expect it. The starter kit is just to get you started with a few basic things, and nothing more.

I see a topic made back in August discussing how to add pathfinding http://www.garagegames.com/mg/forums/result.thread.php?qt=49024 and another post about it in the Resource section. Hmm....

There is the A* path finding which can be implemented to any Torque games I believe. http://www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=8531

Complaint 3:
Lack of support.

Valid arguements:
Most believe it should work right out the box with the most current version of the Torque Game Engine. You can not update yourself, since the necessary files mentioned in the topic concerning this, are no longer there, and no one can get in touch with the guy, or has them lying around to upload unfortunately.

RTS Starter Kit does deliver what it promises on its sales page, but nothing more. Is there one thing listed there that it doesn't have?

Complaint 4:
You have a lot of wonderful features that were added by customers, in the World Domination Mod. Unfortunately, no one can get these working right, there perhaps a change in some of the files that came with the RTS Starter Kit two years ago, and what you get with it today. Or perhaps it was updated to work with the 1.4 upgrade, which no one can get now, for reasons mentioned above.

Since having it work properly would more than double the number of useful features, and make everyone's lives a lot easier, plus provide a simple RTS game to work with right from the start, it makes no sense that the staff is more concerned with fixing it. When you have the time, please consider checking into this.

Anything else? Lets have a civilized mature discussion, shall we?

#1
10/20/2006 (3:25 am)
3 is perhaps the only valid complaint. Hopefully once TGE1.5 is released we'll see a compatible release of the RTS kit. Doing a merge yourself isn't all that difficult, and personally having bought the RTS a while back, I don't have a problem with doing so, but a new customer may expect it to opperate with the latest TGE (allowing for a little lag time that is).

4: The world domination mod does add a lot of good stuff, but I don't think the staff of GG should really be concerned with porting it to 1.5 (once RTS 1.5 comes out that is). It's a community project that comes with source/scritps which with a little time reading through will give a very good idea of how to go about extending the RTS kit to provide that functionality for yourself. Which, imho, will benefit RTS owners much more than it simply plugging in and working. Everything they learn from the world dom project will increase the knowledge of TGE/RTS and allow them to then go on to build their own additional features rather than having to rely on GG or another community project.

That said, I'm not sure why you can't get it working correctly, last time I tried it worked more or less straight off and I don't recall any new releases of the RTS kit since that time. I could be wrong of course, it has been a while since I last tried.
#2
10/20/2006 (4:48 am)
According to GG, the RTS kit will be updated to 1.5 once that engine is released.

Point 1 - I can't argue with that. As I said in another post, I feel I've got my moneys worth up 'till now.

Point 2 - Features is something else for me. I'm not a programmer as such and tackling the learning curve on that AND the art pipeline is a bit much. For me anyway. And I'm a total n00b. I would like to see the kit evolve with more features, etc including path finding, collision detection and what have you. In a selfish way, I realize what I'm asking for is an engine I can mod graphically and apply minor scripting changes too. Still, seeing the product evolve would be nice.

Point 3 - see my point 2. I'd like to see new features added to the engine "offically" i.e. by GG if possible.

Point 4 - World Domination mod is good and would be better if it were set up in an coherent way on TDN.. or did I miss something :)

I managed to get the conversion to work for the Mac side (yes I'm one of those people) but that was made easier by being able to update a PC version first using the instructions. That said, it was relatively painless.

If we assume that given the price point and the resources available that it is up to the individual SDK holders to update the product, then perhaps what we need is a coherent way of archiving the resources. Something that is (like the WDM) a community effort, supported by the community and GG, BUT organized. The keyword here is "Organized". After all, this is what TDN is set up for :)

Together and with GG support I think you might end up with something quite spectacular.

For my part, I can contribute no more than some minor Art pipeline elements but I'd be willing to offer my time to such a endevour.
#3
10/20/2006 (5:24 am)
Gary, please go here http://www.garagegames.com/mg/forums/result.thread.php?qt=23546 and download and try whats listed there. Then post in that thread if it works perfectly for you, or if you have the same problems that Guy Allard, Dean Sueck, Luke Smith, Serih Asdourian, and myself have had.
#4
10/20/2006 (7:05 am)
Dreamer: I've just had a quick try now, I installed RTS kit in c:\torque\rts as default, then un-zipped the world dom mod in that folder which added a few extra scripts and images. Then added execs for the one server script and two client scripts as mentioned above in the thread

Quote:
/server/init.cs
exec("./scripts/resources/resources-server.cs");

/client/init.cs
exec("./scripts/resources-client.cs");
exec("./scripts/buildings.cs");

I'm not sure of the order of which these need exec'ing in relation to the existing exec calls, I'm pretty sure the original world domination download location had a readme.txt file that explained the ordering. That doesn't seem to have been copied over when the zip was moved to tdn.

I simply placed the execs at the very bottom of their respective init.cs exec list. So server script exec at the very after game.cs. The client script execs I placed almost at the bottom, just before exec("./config.cs")

Running the rts exe I can select one of the four peons, click town and click on the ground and an animated building build occurs. Clicking on a peon and stone will cause him to start "collecting stone every 2 seconds" and then he toddles off and delivers it into the bilding.

If this doesn't work for you all I can think is check the order you're exec'ing those three scripts. I'm pretty sure the readme.txt has this info in it, but I couldn't find it on TDN, I'll have a look on my archive cd's later to see if I can find the original download and will update tdn with the actual instructions later.
#5
10/20/2006 (8:14 am)
I found the following RM-BA-README.txt and todo.txt files which may help with Complaint 4 on the above list.

P.S. I had to edit this because I'm not sure at the moment where I initially found these files.
#6
10/20/2006 (8:15 am)
RM-BA-README.txt:

RTS Starter Kit Resource Management System and Building Actions combined resource
written by Stephen Zepp, szepp@datastorm-studios.com for the GG RTS SK community

This resource builds upon the basic SupplyMan functionality provided by
Jared Barger. Thanks for the underlying work, it got me moving along nicely!

Anthony Rosenbaum contributed greatly to the Villager Actions, including basic AI,
movement to/from the resource site and the dropoff point, and also wrote the
resource Generation scripts to seed the mission with harvestable resources.

John McGlamory handled most of the art coordination, and is working on polishing
up some additional models that should be released at a later time.

Contributions:
Jared Barger for the initial functionality
Anthony Rosenbaum for testing, Villager/TC work, and resource generation
John McGlamory for icons, 3-d building models, and testing/feedback
Chris Jones-Gill for icons, barracks .dts
Greg McLean (Nemesis Vortex) for debugging/troubleshooting

Testers:
Addison Burns
DejaBlue
Chip Lambert
William Gooding
"Shawn"

Outside Artists:
Will Harrison--default peon .dts (free model from GG Art forums)

Summary:

This resource is designed to encapsulate and abstract resource management and
Building Actions, including:
--Client non-authoritative display and inventory tracking
(resources-client.cs)
--Server authoritative inventory tracking and modification
--functionality to:
---assign a resource "cost" to an action the player can perform
(see building.cs modifications for the example)
----validate the cost, and return either an ALLOW or DENY message to the action, including
information about why it was designed
(resources-server.cs)
----update the server's inventory, and inform the client of the updates
---allow server objects to add supplies to a player's resource store
---Easily define custom properties for new buildings, including:
----action type: Harvest, Hire (Shop, Research possibly on the horizon)
----Building Menu customization (modular, based on custom properties)
---place harvestable resources in your mission
---allow villagers to both harvest resources, and build buildings



Installation:

Installation of this add on is very straightforward against the stock RTS-SK.
However, integrating to an existing code base may be much more difficult, and no
support is available for this type of installation.


A. New File installation
--Run the latest RTS-SK installer program from Garage Games.
NOTE: This add on resource is designed to work specifically with the RTS-SK
installer that is available on November 29, 2004. It is currently labelled
"RTSStarterKit-1-0.exe", however, it is the second actual installer available.
PLEASE make sure that you have downloaded the latest 1-0.exe before trying this
modification.

--Place the "RM-BA-Villager-installer.zip" in your /RTSStarterKit directory.
Open up the .zip file, and extract all files to your /RTSStarterKit directory.


Now, you must make sure they get brought into the client and server during startup:

--for the resources-server.cs, open up /server/init.cs and add an exec at the bottom
of the rest of your exec's, BEFORE exec("./scripts/core/game.cs"):

exec("./scripts/resources/resources-server.cs");

--For the client dir, open up /client/init.cs, and add the following after exec("./scripts/demo.cs"):

exec("./scripts/resources-client.cs");
exec("./scripts/buildings.cs");



Closing: That should do it! If you have any questions, please ask on the RTS Starter Kit Private Forums
at the GG web site so that others may benefit from them. This resource could use much more extensive testing,
so if you spot any problems, errors, or better implementations, please let us know!

If you need to contact me, email szepp@datastorm-studios.com
#7
10/20/2006 (8:16 am)
Todo.txt:

Current To Do List:

Art:

We need the following artwork completed to make the resource complete:

Farm: .dts with animations, a buildingPortrait (I think they are 138x70), and a buildIcon (32x32)
Shop: .dts with animations, a buildingPortrait, and a buildIcon
Barracks: we need a buildIcon
Town Center: .dts with animations, buildingPortrait, buildIcon (John McGlamory is working on this)
Factory: need buildIcon
Foundry: need buildIcon

Scripts:

There are no planned script enhancements at this time. Some areas of functionality are left for
project specific implementation!


Known Bugs/Issues:

--The current RTS-SK does not take into account the fact that getDataBlock().getName() does not work
for remote clients. Some of the functionality for icons, and possibly building/villager actions will
not work until either GG modifies the underlying RTS-SK code, or you implement a way to track the
dataBlock's assigned name from within the dataBlock itself. This is not a difficult implementation,
but we wanted the resource to be script only, so we used the current GG techniques. The issue, and
a suggested fix is posted in the Garage Games RTS Starter Kit Private Forums, in the Bugs section.

--peons, when ordered to create a new building, do not actually move to the building location
before placing the building. This was left for project specific implementation.
--peons currently move to the center of resource objects and the Town Center. This will need to be
adjusted for your project, especially if you implement RTSUnit collision.
--there is no sanity checking for building placement, either for collision, or "flat terrain". In
some cases, this may cause unusual visual effects, and if buildings are placed in exactly the same
location, this may cause loss of ability to select one or more of the "stacked" buildings.
--units, once hired, always appear at the same offset from the building that hired them. This can be fixed
easily (search for %spawnOffset in the file /server/scripts/item/building.cs), but was left for project
specific implementation.

Any more?
#8
10/20/2006 (11:27 am)
Quote:Complaint 2:
There is no pathfinding included. None was promised, of course, so I suppose you can't really expect it. The starter kit is just to get you started with a few basic things, and nothing more.

I don't believe they mentioned anywhere on the page that pathfinding and collision were -not- part of the package. As it's functionality necessary for any RTS game one could easily assume it to be part of a 'starter kit.'

Let's suppose you're buying a computer. The product page lists all sorts of features. The processor speed, bus speed, graphics card, HD size, etc. But you get it home only to find out that it doesn't include a keyboard driver with the OS. You look in the manual and find "// insert clever keyboard driver code here" inside.

So you call up the vender and ask about it. Their response is that "We didn't say anything about a keyboard driver on the product page." You say, "but every computer has a keyboard driver. It's an underlying and necessary component before you can even get started!". They respond, "Sorry, but we never promised you a keyboard driver. Look at the product page again."

What they need is a disclaimer on the webpage stating plainly what features common to all RTS' that it does not include and you're expected to roll yourself.

Quote:Complaint 3:
Lack of support.

Valid arguements:
Most believe it should work right out the box with the most current version of the Torque Game Engine.

Definatly a valid complaint. When you market a product it's your responsibility to maintain it. They've dropped the ball on this one in a big way. Yes they recently said it'll be brought up to speed once 1.5 is out the door. However they have been saying for two years that they will update the product for 1.4 and TSE. That has never happened.
#9
10/20/2006 (4:10 pm)
Great thread Wolf Dreamer. I definately think there are some very valid issues with the RTS Kit. Most people for some reason think that we are ignorant to this though in all common sense we would likely have known these issues before anyone else. Also, like you have addressed, many of the issues people are talking about are not really issues, at least not the way they are stated. I really think a thread like this that people have the respect to eachother (including me) to keep to only constructive criticism and discussion. Like you titled the thread "Civilized discussion".

Now since I do beleive and respect you all (to have posted in such a respectful way) to respond just as respectfully and maybe give you a different perspective on things. It's often important for us all to always consider many different perspectives, it's far too easy to consider just your own and remain narrow minded. Since I was a community member for about 1 1/2-2 years (and very active) before coming to GG (like many GG Employees) it makes it fairly easy to see things from a community member's perspective. I do relate and undestand at least some of the concerns.


Complaint 3:

This is the most valid complaint in my opinion (some of the others I don't think are even valid at all, like you have quoted me already)....

Gary Preston:
Quote:3 is perhaps the only valid complaint. Hopefully once TGE1.5 is released we'll see a compatible release of the RTS kit. Doing a merge yourself isn't all that difficult, and personally having bought the RTS a while back, I don't have a problem with doing so, but a new customer may expect it to opperate with the latest TGE (allowing for a little lag time that is).

Well and respectfully put Gary. I think that if someone does not have the ability, or motivation to learn the ability, to do a merge like this then they probably either should just not use the latest TGE or they probably won't have the motivation and/or ability to finish any type of polished game. I know this sounds harsh (not necissarily to you Gary, you seem to be very motivated) but if you step back a moment and read that statement again it does sound true. Making a game is a very hard task. Making a fun, polished, and good game is an immensely hard task. If you are ready to seriously endeavour this task then you must be prepared to learn quite a deal. Merging the RTS Kit will probably be the easiest of tasks in your path to completing your game.

James:
Quote:Point 3 - see my point 2. I'd like to see new features added to the engine "offically" i.e. by GG if possible.

Very good point and I respect the way you phrased that. Usually if you want someone to do extra work for you it's good to try and be nice and respectful, I think we can all understand that you don't get motivated to do extra work (for free I will also note) when someone insults you. So i definately appreciate the way you phrased that.


Jacobin:
Quote:Definatly a valid complaint. When you market a product it's your responsibility to maintain it. They've dropped the ball on this one in a big way. Yes they recently said it'll be brought up to speed once 1.5 is out the door. However they have been saying for two years that they will update the product for 1.4 and TSE. That has never happened.

A few points that I think I maybe can reflect a new perspective to you Jacobin.

"Definatly a valid complaint. When you market a product it's your responsibility to maintain it."

It is a company's responsibility to maintain it; however, if you look at most of the products out there (like Photoshop for example), the updated versions cost a decent sum of money. Now the reason for these update costs is because constantly keeping something up to date like the RTS Kit takes a decent ammount of time and work. Now considering we almost never charge an update fee (the latest exception being TGE 1.5, though most people understand and respect that after all these years us getting a little more money for a lot more features is viable, as well as the update cost being exceptionally low) I think you as a customer and user could excercise a little more understanding. What you are asking for is a lot of man hours of work for FREE. Now we aren't saying we won't do this, we simply are saying that we do have a lot of other responsibilities and products that are a higher priority at the moment. Now the next thing you might think (if you aren't then don't take this to heart) is we shouldn't "spread ourselves too thin", this seems to be a common comment these days. Well keep in mind that if we stop putting out new products and Only update our old products for free we can no longer update those products for free. Though some don't seem to consider this fact, we are indeed human, we do need to pay rent, and we do need to eat. Now as as business it's not viable to spend years of man hours on a product that will never get us any more money. It's not that we don't want to, it's that we simply will not be around for long if we just do that... this means if we did what you are asking then there would never be any more TGE or RTS updates ever since we will be out of business. Now it may be easy for you to ignore the business aspects but in truth we cant. Since we offer our products so cheap we need to keep up a certain ammount of products to maintain the business, pretty basic? The other alternative would be for us to charge a lot more for our products, in that case you will have to give us a whole lot more money for the RTS Kit.

So in short, in response to those two sentences, because we don't typically charge an update price we don't fall under the same update structure as most products out there... in the end this is better for you since you don't have to shovel out money every updated version we release. If you did you would've had to pay us again for 1.4 and now again for 1.5. I don't think you would be happier. So please be a bit more understanding. The lack of updates isn't on purpose, it's simply the way it had to be for us to keep on going and ensure that we could eventually get out an update :)

Now on to your next four sentences.

"They've dropped the ball on this one in a big way. Yes they recently said it'll be brought up to speed once 1.5 is out the door. However they have been saying for two years that they will update the product for 1.4 and TSE. That has never happened."

There is an other reason why the updates aren't as easy as they may seem, beyond the fact that we must stay in business and due to our lowered prices we must sometimes let things like this slip longer than we would've liked. This other reason in fact is detailed in your sentences though you don't seem to be aware of it. The RTS Kit being updated to the latest version of TGE is highly dependent on one major factor... well TGE of course. Now as you have seen 1.4... 1.4.2 and 1.5 are all updates that have been progressively worked on roughly around the same time. This means if we spent a lot of time updating the RTS Kit for 1.4 then most likely the other TGE released would be delayed and then we would have to stop and update it again for the further releases. This especially sounds true for 1.5, quite a few things have been updated (like merging the Lighting Kit). This means that those released probably would be a lot later than they're going to be if we were to stop that dev and dev the RTS Kit updates. This means you get less core upates as soon and eventually you will have to just update to 1.5 anyways and that means more work for you and more work for us. Please try and consider our perspective in things like these... sometimes it looks li ke we are doing things in just our own best interest, though often those things are in both your and our best interests.
#10
10/20/2006 (4:10 pm)
Ok now on to the less valid complaints...

Complaint 1:

So far almost everyone I've seen post agreed that the RTS Kit is indeed worth its value of $50. Like Wolf Dreamer has posted I try to detail the fact that you can't relate prices from one product of ours to another, not products that co-exist at least. In a way that's like us doing you a favor and selling TGE for $100 and then you slamming us for that favor since we didn't price the RTS Kit quite to scale with Torque (though I still think $50 is a bargain). Again, $50 can equate to $25 an hour, which is extremely cheap for a skilled coder, at 2 hours. You get a whole lot more than 2 hours of work and respectfully most of you agree with that.


Complaint 2:
There is no pathfinding included. None was promised, of course, so I suppose you can't really expect it. The starter kit is just to get you started with a few basic things, and nothing more.

This one is the one that bothers and confuses me the most. Like Wolf Dreamer has said "None was promised, of course, so I suppose you can't really expect it.".

When I look at the RTS page it is quite obvious that there is no pathfinding. I mean if you read the features they explain all the main features quite well and honestly.

To me this is like buying a used car that has no Air Conditioning, then when it hits summer complaining to the dealer there was no air conditioning. That is nonsense, that is not a valid complaint. You can't blame someone else for not putting in something they never promised...

I mean, that would be like complaining to Adobe that they didn't include a 3D modeler with Photoshop. Well of course they didn't, they never said they did lol. I mean if we were accountable for every little feature everyone images up after buying the products we would be out of business, so would any other product on the planet.

Having no pathfinding is not a complaint, it's not a con of the kit, its not a downfall and/or bug of the kit either. It simply is not part of the kit at all, was never promised so shouldn't be expected. At Best that complain is a request or a suggestion and usually demanding an extra feature as a suggestion isn't the best way to get people to work more for free for you. You don't go to your cable company and ask them why you don't get the premium channels for free, or take your car to a dealer and ask why your car isn't a convertible. You definately wouldn't do that the way a lot of people have demanded pathfinding and pointed at the Kit like it was a failing of the kit. That is lack of reason in action. If you want an extra feature the least you need to do is ask nicely... definately don't insult the devs for sure. Really, those of you demanding pathfinding and claiming its a failing of the kit step back and think about it. I don't e-mail and harrass you about not posting more resources... you never promised it so i can't expect it, simple as that. If I wanted you to post more resources I would send an e-mail and ask nicely and respectfully. So please don't post harassing posts on our forums demanding something that should be a request as if it were promised when it wasn't. It's simple curtesy.


James:
Quote:Point 2 - Features is something else for me. I'm not a programmer as such and tackling the learning curve on that AND the art pipeline is a bit much. For me anyway. And I'm a total n00b. I would like to see the kit evolve with more features, etc including path finding, collision detection and what have you. In a selfish way, I realize what I'm asking for is an engine I can mod graphically and apply minor scripting changes too. Still, seeing the product evolve would be nice.

"I'm not a programmer as such and tackling the learning curve on that AND the art pipeline is a bit much. For me anyway. And I'm a total n00b."

This I can relate with. Well in fact anyone who has ever attepted or done game development in any fashion can relate with. This is a reality of making games, game dev is not easy. If it were then it wouldn't be worth doing because games wouldn't bring enough revenue to validate making them. Almost nothing worth being done in this life is easy.


" I would like to see the kit evolve with more features, etc including path finding, collision detection and what have you. In a selfish way, I realize what I'm asking for is an engine I can mod graphically and apply minor scripting changes too. Still, seeing the product evolve would be nice."

Well put. I respect that you realize what you may want is a bit out there... it doesn't mean you can't request it though. You have every right to respectfully request it and we have every right to decline it. Now keep in mind that this is still called the "RTS Starter Kit"... not "RTS Complete Game Kit" or "RTS Almost a Game Kit". If you're expecting to spend $50 to have someone else make your entire game then you probably should reconsider your jump into game dev. Now of course that would be nice, but if that were the case then the game you made with that tech would probably be unsellable or nearly unsellable. Spending time and effort on a game is what gives it your personal touch. This simply a "Stater Kit"... it never has been promised to be more. In fact the name of the products speaks volumes. I think its a wonderful Starter Kit.
#11
10/20/2006 (4:10 pm)
Jacobin:
Quote:I don't believe they mentioned anywhere on the page that pathfinding and collision were -not- part of the package. As it's functionality necessary for any RTS game one could easily assume it to be part of a 'starter kit.'

Let's suppose you're buying a computer. The product page lists all sorts of features. The processor speed, bus speed, graphics card, HD size, etc. But you get it home only to find out that it doesn't include a keyboard driver with the OS. You look in the manual and find "// insert clever keyboard driver code here" inside.

So you call up the vender and ask about it. Their response is that "We didn't say anything about a keyboard driver on the product page." You say, "but every computer has a keyboard driver. It's an underlying and necessary component before you can even get started!". They respond, "Sorry, but we never promised you a keyboard driver. Look at the product page again."

What they need is a disclaimer on the webpage stating plainly what features common to all RTS' that it does not include and you're expected to roll yourself.


Ok your first part:
"I don't believe they mentioned anywhere on the page that pathfinding and collision were -not- part of the package. As it's functionality necessary for any RTS game one could easily assume it to be part of a 'starter kit.''

Now that's kind of a weird request. We don't explicity say there is no pathfinding, though we don't hint that there is. Re-read the page. If you think pathfinding is included after reading those features then you came to it on your own conclusion. Even more so if you check public forum posts, ask, or even e-mail us and as we will quite honestly say it's not part of the kit and if you are only buying it if it is then don't buy it. Why would it be our responsibility for you to do your research on the product?

"As it's functionality necessary for any RTS game one could easily assume it to be part of a 'starter kit.''"

Pathfinding is necessary in some way for any RTS game.... however you fail to point out that there are a qutie a few different variations of Pathfinding. Many RTS games don't need very complex pathfinding and some use a type of pathfinding that is so rudementary that it can almost not be considered pathfinding. There is no end-all solution for pathfinding for every RTS game. In fact if we implemented something in the kit it's very likely you would have to rip it out and write/import your own for your own specific type of game. Pathfinding is a pretty in-depth feature for an RTS game that is highly game specific, not something that can be easily generalized. Some pathfinding involes what's already in the kit, simply movement. You can alter that to do some sort of simple pathfinding easily. Pathfinding is a general term, there's not just an "implement pathfinding" solution for everyone.

"one could easily assume it to be part of a 'starter kit"

Now I would disagree with this. This is indeed a "Starter Kit"... not an "Every Feature you Need Kit". It simply gives you a Start. Now I think it does that well. Pathfinding is something so specfic to your game that what we would implement may be useless to you. Nevertheless one couldn't so easily "assume" it to be a part of a starter kit. If you assumed that Photoshop came with a 3D modeler then you would be wrong. It wouldn't be Adobe's fault for your assumptions. You are responsibile for your actions, you are responsible for doing your research, not us. We don't block your research, in fact we are very responsive and honest about features that aren't implemented.

"Let's suppose you're buying a computer. The product page lists all sorts of features. The processor speed, bus speed, graphics card, HD size, etc. But you get it home only to find out that it doesn't include a keyboard driver with the OS. You look in the manual and find "// insert clever keyboard driver code here" inside."

That isn't exactly a good comparisson. An "RTS Starter Kit" can still function as an "RTS Starter Kit" without pathfinding, while you cannot utilize a computer without a keyboard driver. A better comparisson would be seeing a computer that lists the basics and then being surprised it didn't come with a DVD burner even though it didn't list it. You can't assume things and expect it. Others aren't responsible for your assumptions, only you are, that is the responsibility we must all take for ourselves. We haven't deceived you, no w here do we imply there is pathfinding.

"So you call up the vender and ask about it. Their response is that "We didn't say anything about a keyboard driver on the product page." You say, "but every computer has a keyboard driver. It's an underlying and necessary component before you can even get started!". They respond, "Sorry, but we never promised you a keyboard driver. Look at the product page again.""

In no way is Pathfinding a required aspect for an "RTS Starter Kit"... again this is not a "Complete RTS Game Kit"... you still do have to do work, we don't include everything for you. If you expect everything to be done for you, you will be paying a lot more than $50.


"What they need is a disclaimer on the webpage stating plainly what features common to all RTS' that it does not include and you're expected to roll yourself."

Why? That statement is flawed, if we were to do that then you would have to proplery word it -

What they need is a disclaimer on the webpage stating plainly what features common to all RTS Starter Kits that it does not include and you're expected to roll yourself

Remember we aren't selling you your game, or an RTS game. We are simply selling an RTS Starter Kit. Now I don't know about you but pathfinding is just one of the many aspects that could be a large feature in an RTS. Now if we consider every feature in an RTS we will be here all day since there are so many different types of RTS games out there.

In the end you have to make your game we simply supply you with a "Start"... how is the RTS Starter Kit not a start... we never promised it will give you a start to "every system you could possibly need for your game". that would be us coding half your game for you. you still have to code your game my friend. I'm sorry if any of my comments offend you, it's definately not meant that way. I just don't see how you can expect us to sell you all the feature of your complete game when it's simply called an "RTS Starter Kit". We list the features bluntly and don't p romise more. What's to get confused about?
#12
10/20/2006 (5:57 pm)
Matthew, thank-you for shedding a different light if not perspective on this topic. I read no excuses in your post, only a solid "reality check" for some of us to think about regarding our expectations.

I will say this: A hard realization for me in the last few weeks is that I'm not going to make a game using TGE + RTS kit for sale or give away (well, never say never I guess :)). So the primary purpose for TGE et al for me is as a learning tool to understand more about game design, development and specifically the art pipeline.

Perhaps we as RTS Starter Kit owners can work together on expanding the RTS section of TDN. As I said in my post above, I'm up to contributing time to this even if it's somewhat limited and... noobish.

By the way, who do we send our feature requests too :)

Cheers!

Edit - to clarify
#13
10/23/2006 (3:38 am)
My problem is not so much with the unsupported product. It is more with the unfulfilled promises. The vismanager was acknowledged to need some help years ago. An update was promise, and never delivered. In fact none of the issues with the kit were ever fixed.

Honestly, I don't plan on using the RTS kit in any projects. If I did it would be worth the $50 price of admission as it would give you a headstart on your project. But in terms of what it can do, it is vastly different from the FPS starter kit. Starter.fps gives you pretty much all of the major hurdles you would come across in a game. Obviously your going to want to add game specific stuff. The RTS kit however gives you a very basic shell. That's fine if you understand that is what your getting, but I think considering the naming convention a lot of people expected more from it than a product that gave an overhead map, some performance changes and simple move to path support and extremely simple combat support.

If you look at the problems that most people who bought this pack have had. They can't figure out the little things like how create an AI team. There really is no documentation for any of that stuff. How to get units to return fire. How to get real pathfinding. You can find a lot of that stuff on the forums, but it's not always easy to find.

In the end, is it worth $50? Yeah of course. But does it live up to the quality you have come to expect from the other Garage Games products? It falls short by a wide margin.
#14
10/25/2006 (2:08 am)
Quote:My problem is not so much with the unsupported product. It is more with the unfulfilled promises. The vismanager was acknowledged to need some help years ago. An update was promise, and never delivered. In fact none of the issues with the kit were ever fixed.

JC, that is by definition an unsupported product.

Matthew:

Quote:
Now I would disagree with this. This is indeed a "Starter Kit"... not an "Every Feature you Need Kit". It simply gives you a Start. Now I think it does that well. Pathfinding is something so specfic to your game that what we would implement may be useless to you.

Well Matthew I would disagree. Pathfinding, in terms of just not moving through buildings or up a 90 degree cliff face is not something that's game specific. It is an inherent part of every rts. Is this not implmented the same in every RTS from Startcraft and Warcraft to Myth?

I can understand your perspective of it stating it's just a starter kit. However, consider where we get our impression of how fleshed out a starter kit from GG is? Obviously FPS starter kit. Which is free with the engine not $50. It actually provides a lot of functionality to build upon. Things that could easily fall under your 'game specific so do not include' concept. Scoring is a good example. Obviously game specific, but it's in there. Why? I also don't believe you could show me in the starter FPS kit an equivalent of "// insert clever pathfinding code here".

So I can hope you can understand from that comparison how someone could see a fancy GG product website stating 'Start your RTS game now!' and be shocked to find it is just comprised of a half working minimap, a broken vismanager, a nice selection routine and a pruned AIplayer with no pathfinding...none of which work with 1.4/TSE.

As J.C. posted above, compared to the other 'starter kit' we have from GG, the RTS kit is a half starved ethiopian with a Sally Struthers pouting and begging for it to be fed. Maybe a new 'catch phrase' is in order? How about "Small selection of RTS related routines?"

upload.wikimedia.org/wikipedia/en/e/ee/Wheres_the_beef_commercial.jpgThe wendy's lady inspects the RTS starter kit.

Quote:There is an other reason why the updates aren't as easy as they may seem, beyond the fact that we must stay in business and due to our lowered prices we must sometimes let things like this slip longer than we would've liked. This other reason in fact is detailed in your sentences though you don't seem to be aware of it. The RTS Kit being updated to the latest version of TGE is highly dependent on one major factor... well TGE of course. Now as you have seen 1.4... 1.4.2 and 1.5 are all updates that have been progressively worked on roughly around the same time. This means if we spent a lot of time updating the RTS Kit for 1.4 then most likely the other TGE released would be delayed and then we would have to stop and update it again for the further releases.

That's understandable, Matthew. Just one suggestion in this regard. Don't have your employees do things like post that it was going to be updated for 1.4 and TSE if you were not intending to do so. It leads to confusion and bitterness when such promises go unfulfilled two years down the road.
#15
10/25/2006 (4:17 pm)
in response to you James

Very respectfully and well said. I respect that and that makes me want to find extra time to help get the features you want in. Even though I'm not part of the RTS Kit dev team lol :)

The best person would be Ben Garney, though if he's too busy to address your e-mail feel free to send it for me and I'll try and get it heard...

beng AT garagegames DOT com
mattl AT garagegames DOT com

My main duty is on our Docs and Demos team (presently focussed on TGB docs and demos) and I've primarily up to this point been one of the handful of devs on TGB, so I can't promise anything personally.


in response to you J.C. Smith

Quote:Starter.fps gives you pretty much all of the major hurdles you would come across in a game. Obviously your going to want to add game specific stuff.

I agree to a point, though FPS games with bots need pathfinding and we don't include that, much like the RTS Starter Kit. Also you must remember that Torque was created originally around Tribes, a FPS. So a lot of the functionality isn't necissarily in the starter.fps but in the engine itself. If you try making an FPS unlike Tribes in the Starter.fps your looking at a lot of the same ammounts of work as the Starter RTS Kit.


Quote:In the end, is it worth $50? Yeah of course. But does it live up to the quality you have come to expect from the other Garage Games products? It falls short by a wide margin.

Now that is a statement I agree with and respect. Honestly we realize that it doesn't live up to some of our other products. I've been deving on TGB and we've brought our concept of demos, documentation, and constant releases to a whole new level of quality. We really are planning on doing the same for all of our other products. You must also remember though that we do only sell TGE for $100 and the RTS Kit at $50, a fraction of the value of the code and hours spent on either of those. Because we sell them so cheap this means we don't have an immense ammount of resources. Sure we are expanding the company and gaining more resources, though this means we need to gain more products to support our increased resources. Doing mass updates to the RTS Kit for free is not going to earn us any more money. We do want to and honestly plan to, though we need to ensure that we can pay rent and eat first. I hope you understand that we truly want to update it, though for many reasons it isn't feasible at this moment. As Jeff T. has said, we do plan to address the RTS Kit and hopefully in the near future :) The more respectul requests we get the more likely it will happen, I appreciate you trying to view things from our perspective.


Now in response to you Jacobin

First I'll start off with something. Just because you don't beleive the kit or the engine doesn't do something doesn't mean it doesn't. For example... in another thread you stated this as a main fault of the kit:

Quote:-Not even a simple radius collision method.

Now you said this, and posted this... this doesn't mean that what you said is true... in fact it is very much not true.

After looking at the scritps included in the RTS Kit I created this function that utilizes the radius search in Torque (including the RTS Kit).

For a great example of this in the scritps you get with the Kit look at radiusDamage.cs in server/scripts/core/. It took me a handul of minutes to realize "radiusDamage" must use a radius search.

function doRadiusSearch(%position, %radius) 
{
  InitContainerRadiusSearch(%position, %radius, $TypeMasks::ShapeBaseObjectType);

  while ((%targetObject = containerSearchNext()) != 0)
  {
      echo("targetObject = " @ %targetObject);
  }
}

I tested it in stock RTS Kit in the level that comes with it, returned all of the player objects in that radius.

Now, this makes it hard for me to take some of your far fetched statements seriously when you so obviously overlooked a truth and claimed something very false.



Quote:JC, that is by definition an unsupported product.

Actually that is not the definition of an unsopported product. That is the definition of a product that has not released updates. There is quite a big difference between the two... updates is by far not the only form of support.
#16
10/25/2006 (4:18 pm)
Quote:Well Matthew I would disagree. Pathfinding, in terms of just not moving through buildings or up a 90 degree cliff face is not something that's game specific. It is an inherent part of every rts. Is this not implmented the same in every RTS from Startcraft and Warcraft to Myth?

No it is not. For one Starcraft is 2D and like any other 2D RTS there is no actual degree of cliff. In a 2D world everything is the same degree and movement blocking is either defined by collision checking (a simple radius check would work) or built into the pathfinding system to not set a path through those objects.

Also some RTS games allow you to move through different types of objects, while others don't, there isn't exactly a standard.

I understand what you are implying though I think you generalize RTS featuers far too much for something such as an RTS Kit. Sure you're trying to make a specific game so it's easy for you to demand a certain implementation, but on our end when we get tens of different demands with many conflicting eachother it's much easier said than done.


Quote:I can understand your perspective of it stating it's just a starter kit. However, consider where we get our impression of how fleshed out a starter kit from GG is? Obviously FPS starter kit. Which is free with the engine not $50. It actually provides a lot of functionality to build upon. Things that could easily fall under your 'game specific so do not include' concept. Scoring is a good example. Obviously game specific, but it's in there. Why? I also don't believe you could show me in the starter FPS kit an equivalent of "// insert clever pathfinding code here".


Some good points... however this is a bit funny :

"I also don't believe you could show me in the starter FPS kit an equivalent of "// insert clever pathfinding code here"."


I find this an extremely false statement since any FPS with bots (nearly all of them) needs pathfinding and we don't include pathfinding. In fact in some ways the pathfinding of an FPS is more demanding and in-depth than an RTS due to the true 3D perspectives. So yes I can't show you the equivilent because in the Start.fps kit we don't even go so far as to point to you where to put it.

I still am unsure how you can say that a feature we never promised and is quite clear that it's not in there (many of the reviews point it out and we've said it many times) is a weakness of the pack. How can you judge a starter kit on what it doesn't try to have. I mean if we said that there was pathfinding and it didn't have adequate pathfindg that would be one thing... though that isn't the case.


So basically what you are saying is because we included such a great free starter kit with the engine purchase that we should be insulted and harassed for it? That one of our products is excellent and the other is just ok to good that we should get mass complaints and a bit over critical judgements? Thats how it reads to me in your post?


Also the starter.fps kit is a bit different considering Torque was based off an engine made for Tribes games... a FPS. So understandibly it can accomplish a game like that easier than another type. That isn't anything specific to the starter.fps but to the engine itself. You are failing to draw the line fo where the engine is and the starter.fps is.

Quote:It actually provides a lot of functionality to build upon. Things that could easily fall under your 'game specific so do not include' concept. Scoring is a good example. Obviously game specific, but it's in there.

Sure and unit selection is pretty game specific and a game loby is game specific, though thats in the RTS Kit. Certain things like scoring can be changed in script amazingly easy. Selection and Loby systems can be changed fairly easy too, though something like pathfinding branches accross -Many- different techniques and methods. If you don't understand that then I suggest researching pathfinding. The list of implementations can go on quite a while... many different hybrid systems. This doesn't mean we won't ever add it, just that we haven't yet and we never promised we would and it isn't listed in the Features page either so you can't really hold us accountable for your own desires. You can request them, but the way you've "requested" them is definately not the best way to get them.


Quote:So I can hope you can understand from that comparison how someone could see a fancy GG product website stating 'Start your RTS game now!' and be shocked to find it is just comprised of a half working minimap, a broken vismanager, a nice selection routine and a pruned AIplayer with no pathfinding...none of which work with 1.4/TSE.


For one... as you even said 'Start your RTS game now!'... Thats why it's called a Starter Kit and why its unreasonable to expect more than a start. You are expecting most of the systems for your game. Thats very unrealistic at $50 and not fair to place those expectations on us.

"and be shocked to find it is just comprised of a half working minimap, a broken vismanager, a nice selection routine and a pruned AIplayer with no pathfinding...none of which work with 1.4/TSE."

... well I think your evaluation of the kit is a bit underestimated.

For one lets stop speculating about what the Starter Kit promised and see what it actually does.... this is the first sentence on the RTS Starter Kit page

[QUTOE]The Torque RTS Starter Kit provides foundational technology and modifications to the Torque Game Engine to make it easier for Indies to quickly produce their own strategy games.[/QUOTE]

It spells it out plain and simple "to make it easier for Indies to quickly product their own strategy games." What is to misunderstand there? It simply and bluntly states its a starter kit to make it easier for Indies to develop their strategy games. It doesn't say you won't have to work for it or all the hard work will be done, simply that it will make it easier. Now can you honestly say it doesn't live up to that? That these features don't make it easier for you to use it as a start?

- Customized Camera System
- Customized Mini-Map System
- Specialized RTSUnit Class
- Specialized RTSBuilding Class
- Unit Selection System
- Multiplayer Lobby
- Documenation

Now these are spelled out in big bold letters for even those that may be hard of reading or too lazy to read the details. Can you tell me that it doesn't include those and that those don't help you "Start" your game? I mean I think your underselling the kit far too much. Just because not all of your expected features are in these systems doesn't mean they don't serve as a great "Start"ing point. In fact to me (back before I worked at GG) the biggest advantages of the RTS Kit in my mind were the camera system (that alone many people convinced me was worth it and I still agree), and the custom unit and building classes optimized for networking. The rest was just a bonus to me.
#17
10/25/2006 (4:20 pm)
Ok since you're underselling the systems, let me flesh them out a bit more and then see if you can tell me it isn't worth $50... (or much more even)... which equates too probably less than 2 hours of code work at a contract price.

-----------------------------
RTS Camera

The RTS Camera has all of these fields to manipulate it.

movementSpeed - Pan speed of the camera. How quickly does it translate in the world?
   pitchAngle    - Starting pitch of the camera.
   maxHeight     - Maximum height of the camera.
   minHeight     - Minimum height of the camera.
   maxAngle      - Maximum angle for camera view, in degrees.
   minAngle      - Minimum angle for camera view, in degrees.
   orbitStep     - Size of steps when zooming.
   angleStep     - Size of steps when changing angle, in degrees.

and these functions

decreaseOrbitDistance() - RTSCamera.decreaseOrbitDistance()
  decreasePitchAngle()    - RTSCamera.decreasePitchAngle()
  getCameraFov()          -
  getCameraPosition()     - RTSCamera.getCameraPosition()
  getForwardVector()      - Returns a vector indicating the direction this object is facing.
  getOrbitDistance()      - RTSCamera.getOrbitDistance()
  getPitchAngle()         - RTSCamera.getPitchAngle()
  getPosition()           - Get position of object.
  increaseOrbitDistance() - RTSCamera.increaseOrbitDistance()
  increasePitchAngle()    - RTSCamera.increasePitchAngle()
  isInCameraView()        - RTSCamera.isInCameraView(%location)
  setCameraFov()          - (float fov)
  setCameraPosition()     - RTSCamera.setCameraPosition(posx, posy)
  setOrbitDistance()      - RTSCamera.setOrbitDistance(height)
  setPitchAngle()         - RTSCamera.setPitchAngle(degrees)


As well as having custom RTSCameraUpdate NetEvents.

RTSUnit

RTS Unit fiels

RTSUnit fields:

   //No extra fields.


RTSUnitData fields:
   // Many of these fields are simply provided for script calculations
   // to be based on. Where the C++ code depends on a specific value,
   // we note this.
   baseDamage   -
   attackDelay  - Indicates how many ticks to wait between attacks.
   damagePlus   -
   armor        -
   moveSpeed    - Indicates how fast the unit will move, as a factor of 0-1 of the movement speeds.
   range        - How far can the unit see?

   // These fields control whether specific client-side features are enabled.
   doWaterInteraction - Should check for water collisions and render special fx?
   doShadow           - Should render unit shadow?
   doLookAnimation    - Should animate unit to reflect direction it is looking?

Methods for it

addModifier( RTSUnitModifierData mod )       - Adds a modifier to this unit
  clearAim()                                   - Stop aiming at anything.
  getAimLocation()                             - Returns the point the AI is aiming at.
  getAimObject()                               - Gets the object the AI is targeting.
  getModifierList()                            - Gets a simset with all modifiers applied to this object
  getMoveDestination()                         - Returns the point the AI is set to move to.
  getNetModifier()                             - Gets a modifier object which is the sum of all modifiers applied to this object
  getProjectileDatablock()                     - Get the projectile which this unit will shoot.
  removeModifier( RTSUnitModifierData mod )    - Removes a modifier from this unit
  setMoveDestination(Point3F goal)             - Tells the AI to move to the location provided.
  setMoveGoal(SimObject obj)                   - Object to move towards.
  setMoveSpeed( float speed )                  - Sets the move speed for an AI object.
  setProjectileDatablock(ProjectileData block) - Set the projectile which this unit will shoot.

RTSBuilding

Quote:RTSBuildingMarker and RTSBuilding are both defined in engine/game/RTS/RTSBuilding.h, with implementation in the corresponding .cc file. RTSBuildingMarker is a subclass of TSStatic, modified to run properly as a client-side only object.


Minimap

Quote:The RTS minimap is implemented using a specialized GUI control, which captures a map of the mission in a texture. This GUI control is called GuiMapHud, and it is defined in engine/game/RTS/guiMapHud.h. It renders an ortho-projection image of the relevant mission area, and copies it into a texture.

GuiMapHud fields:
     textureSize - Size of the texture we render the map to, in pixels. Should be
	                about the same size as your GuiControl.
     pingTexture - Texture to render for the ping effects. Should be transparent.
                    Is used as a mask, so it should be in greyscale.

  GuiMapHud methods:
     rebuildMap(bool force)                           - Rerender the map.
     createPingEvent(Point2F worldPos, ColorF color)  - Spawn a new ping event.
#18
10/25/2006 (4:20 pm)
Selections

Quote:The GuiRTSTSCtrl is designed to be as simple as possible. It performs the low level spatial queries and rendering to provide a selection box. The terrain-following selection circle rendering is done seperately, see engine/terrain/terrSelection.cc for the core of that. The HUD-type rendering that is done for each selected item is done in GuiRTSTSCtrl::drawDamage, on line 421 of engine/game/RTS/guiRTSTSCtrl.cc.

From the perspective of a scripter, the GuiRTSTSCtrl provides two important SimSets. The first is what is currently selected; the second is what the user is currently dragging a box over, if anything. There are a set of callbacks which occur when a new object is dragged over, and the two SimSets are available to script.

In addition to the UI level selection logic, the set of selected units is also synchronized across the network. This is done in example/starter.RTS/client/scripts/selection.cs, via commandToServer calls. The server maintains a SimSet containing the most recent selection information. This has the benefit of allowing commands to be sent very concisely - when we want to issue a command (which occurs in example/starter.RTS/client/scripts/inputHandler.cs) we just send the command, knowing that the server already knows what units we had selected at the time. (This behavior works because all commands to server are guaranteed to be processed in order.)


Group Manager

Quote:The RTS Kit also contains a fairly powerful group manager. Groups are assigned by making a selection and pressing control plus a number. Pressing control, shift, and a number you can add the selection to a group. Pressing a number once selects the group assigned to that number; hitting it twice will snap the camera to the center of that group.

The group manager is created as an array of simsets. Each simset represents a selection. These groups can be added and removed from the selection using PlayGui::addGroup and PlayGui::removeGroup functions.


Lobby

Quote:
The Lobby is a fairly simple construct. When a server is started, the Lobby simply delays the call to loadMission, which actually loads the mission data, until after everyone has first indicated they are ready (by means of a commandToServer). On the client side, the LobbyGui is set as the GuiCanvas's content. When the server indicates that loading has started, the LoadingGui is loaded. When a control object is sent to the client as part of the mission load process, the client automatically loads the PlayGui. The lobby is a purely script-based change. The relevant file is example/starter.RTS/client/ui/LobbyGui.gui.




-----------------------------------



Now can you honestly tell me that this doesn't live up to what it says:

"to make it easier for Indies to quickly product their own strategy games."

That this all isn't a good if not great start for anyone using Torque for an RTS game. That this isn't a fairly complete RTS Starter Kit for the measly price of $50. I mean if I did a contract for any one of these systems it would be more than 2hours of work and I'd be charging probably at least $200-300 for the simpler of the systems. With the networking considerations the initial start of these systems is out of many new Torque users skill to code... thats why it's a valuable kit to people. So there no c hance that maybe you are just a bit bitter and being a bit unreasonable about this, it must be that the kit is horrible even with all of this?






Quote:That's understandable, Matthew. Just one suggestion in this regard. Don't have your employees do things like post that it was going to be updated for 1.4 and TSE if you were not intending to do so. It leads to confusion and bitterness when such promises go unfulfilled two years down the road.

The thing with that statement that you have assumed is that were truly "not intending to do so". How would you know if we were or weren't? How many times do your personal priorities change and though you wanted to do something you instead have to do something else. This is even more true for us as a company, whether we want to or not we have to change priorities and change plans. That indeed was the plan but for some very real reasons it had to be changed. We are sorry, it doesn't mean we've forgotten, though it is the truth of the matter. Priorities and plans change, its a fact of life and unfortunately none of us can do anything about it. That doesn't mean we never intended to or still don't want to. In fact I still hear people talk about wanting to add pathfinding to the RTS Starter Kit... the problem is we already work 10-16 hour days and typically weekends too so we just don't have time. Eventually we will though. I won't promise it but I can assure you that we've talked about it and indeed if we had the time and the choice we would've done it already.

The best thing you can do to get a feature is not complain, harass, insult, and belittle our kit and work for you. Do you think thats the best way to get someone to do extra work for free? The best way is to be nice and respectfully request it. E-mail is the best way.