I doubt this is a bug, but I would still like to know how the game works in order to streamline component design.
So, if I multiply the values in the CarType table by 5, in order to match the star rating implemented in the Advanced Car Design window, the numbers don't match
Here's an example about a Full Size Sedan
Dependability goes from 2.5 to 2.0 stars
What values should I care about? Those in the db or those shown in Advanced Design Window?
(06-01-2024, 12:12 PM)Eric.B Wrote: [ -> ]I'm not sure where you're getting the table on the right from.
The stars in the game come from the data in the game.
If you're looking for formulas, there is in the manual: https://wiki.gearcity.info/doku.php?id=g...les_design
Here are the weights for the vehicle types: https://wiki.gearcity.info/doku.php?id=g...importance
This information is only applies to GearCity. The entire rating system has changed in GearCity: 2nd Gear, and it is still fluid.
The values are taken right from the CarType table in the most recent save (2.3.0.2) and multiplied by 5 (since they're from 0 to 1). As you can see, they equal the weights you linked me and don't match with the stars in the game (using the very same save)
I don't really understands why weights or db data are different (once multiplied by five) from the stars. I am not really versed in formulas anyway,
I just want to know If have to care about the stars or I can use the data in CarCity table (which I prefer as the star rating values vary by half a star, whereas the numbers in the db are more detailed)
EDIT.
To avoid any misunderstandings,
I need reference values to categorize the vehicles and determine what kind of components a vehicle type need and if I can use those components for different vehicles. For example: I have the performance vehicle group with coupe, fastback, roadster or Wagon group (Shooting Brake, Station Wagon), etc.
Approximately each 0.1 is half a star. So the 0.4 value for Dependability is 2 stars.
The numbers for Full Size Sedan in the wiki I linked match the screenshot of the database you uploaded. I don't know where you're getting the green numbers in the first table from. The value in the manual AND your save game for Dependability is 0.4. It is not 0.5 or 0.7, as the two values in your first picture show.
If you can tell me where you're getting the numbers that you are multiplying by 5 from, I can maybe see where the mistake is. (Either with the data you're getting, the game, or any misunderstandings.)
Note that your demographic selections also affect ratings weighting.
The green values are the db values multiplied by 5 (so that 1.0 = 5 stars)
Except for the dependebility values, I've must messed up excel cells
So, if 0.1 is half a star, shouldn't Power (0.6) be 3 instead of 3.5?
I don't care about the demographic selection for the time being, I need these values for the components design*, not the actual car. I'll customize the car accordingly to the targeted audience in the actual stage of car design.
Can I assume the db Values are more informative/precise to me than the one shown in the Advanced Car Design screen? Or is Advanced Car Design considering something else too?
*Actually, to find a way to optimize combinations of components for the several models.
I did say "approximately." The stars are skewed to avoid scaring users away from 35-rated designs. This was important back when we had 0-100 limited ratings.
Please note that stars are completely irrelevant in the game. They're just visual symbols for the numbers for the players who hate numbers. All numbers use the same star code.
Here is the code we use for stars if you want to know where the rating number falls in the stars for some reason:
value = the rating of the component category, "#star.dds" is the number of stars, and "#hstar.dds" means the number of stars and a half.
Code:
if(value > .9)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("5stars.dds");
}
else if(value > .8)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("4hstars.dds");
}
else if(value > .7)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("4stars.dds");
}
else if(value > .55)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("3hstars.dds");
}
else if(value > .45)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("3stars.dds");
}
else if(value > .35)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("2hstars.dds");
}
else if(value > .25)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("2stars.dds");
}
else if(value > .15)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("1hstars.dds");
}
else if(value > .05 )
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("1stars.dds");
}
else if(value <= .05)
{
static_cast<QuickGUI::Image*>(gameSheet->findWidget(name))->setImage("hstars.dds");
}
So I can assume I'm safer when I use values in the DB. Thanks.
(can I suggest to use an algorithm to round (value*5) up?. Or a vector of pairs named tresholds where each pair consists of a the value and a string with the star image name?)
Yes, the DB is the values. Pictures in the game are just pictures.
Quote:(can I suggest to use an algorithm to round (value*5) up?. Or a vector of pairs named tresholds where each pair consists of a the value and a string with the star image name?)
I'm not sure what issue that would solve.