gm_skills_image
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| gm_skills_image [2022/08/08 12:57] – [Variables] admin | gm_skills_image [2022/10/28 10:19] (current) – [Variables] admin | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ======= Skills and Image Ratings ======= | ||
| + | |||
| + | The Game Mechanics section of the manual details the internal formula used in the game's calculations. | ||
| + | |||
| + | The Game Mechanics part of the manual is mainly designed to be a reference for the frequently asked question, "Why do I get this rating when I do X, Y, Z?!" Usually, this answer involves many different variables, which this section of the manual demonstrates. | ||
| + | |||
| + | **The game mechanics section of the manual shows [[https:// | ||
| + | |||
| + | |||
| + | ===== Variables ===== | ||
| + | |||
| + | |||
| + | ^ Name ^ Description ^ ^ Name ^ Description ^ | ||
| + | | **IMAGE_WORK** | Workmanship Image Rating | | **IMAGE_RACING** | Racing Image Rating | | ||
| + | | **IMAGE_QUALITY** | Quality Image Rating | | **IMAGE_GLOBAL_GENERAL** | Global Image Rating | | ||
| + | | **SKILL_MARKETING** | Marketing Skills | | **DESIGN_ENGINE** | Engine Design Skills | | ||
| + | | **DESIGN_CHASSIS** | Chassis Design Skills | | **DESIGN_TRANSMISSION** | Gearbox Design Skills | | ||
| + | | **DESIGN_BODY** | Body Design Skills | | **DESIGN_LUX** | Luxury Design Skills | | ||
| + | | **DESIGN_SAFETY** | Safety Design Skills | | **SKILL_MANUFACTORING** | Manufacturing Skills | | ||
| + | | **SKILL_ADMIN** | Administration Skills | | **SKILL_DEALER** | Dealership Skills | | ||
| + | | **researchChassisEffect** | Chassis Research Teams Effect | | **researchEngineEffect** | Engine Research Teams Effect | | ||
| + | | **researchGearboxEffect** | Gearbox Research Teams Effect | | **researchVehicleEffect** | Vehicle Research Teams Effect | | ||
| + | | **CarInfo.Rating_Overall** | Current Vehicle' | ||
| + | | **CarInfo.Rating_Safety** | Current Vehicle' | ||
| + | | **CarInfo.Rating_Quality** | Current Vehicle' | ||
| + | | **CarInfo.manureq** | Current Vehicle' | ||
| + | | **CarInfo.Rating_Drivability** | Current Vehicle' | ||
| + | | **ChassisInfo.Overall_Comfort** | Chassis Comfort Rating | | **ChassisInfo.Overall_Strength** | Chassis Strength Rating | | ||
| + | | **ChassisInfo.Overall** | Chassis Overall Rating | | **ChassisInfo.Req_Design** | Chassis Design Requirement Rating | | ||
| + | | **ChassisInfo.Req_Manu** | Chassis Manufacturing Requirement Rating | | **ChassisInfo.Overall_Dependabilty** | Chassis Dependability Rating | | ||
| + | | **ChassisInfo.Overall_Performance** | Chassis Performance Rating | | **Engine.Power** | Engine Power Rating | | ||
| + | | **Engine.FuelEconomy** | Engine Fuel Economy Rating | | **Engine.OverallRating** | Engine Overall Rating | | ||
| + | | **Engine.DesighnRequirements** | Engine Design Requirement Rating | | **Engine.Reliability** | Engine Reliability Rating | | ||
| + | | **Engine.ManufacturingRequirement** | Engine Manufacturing Requirement Rating | | **Gearbox.PowerRating** | Gearbox Power Rating | | ||
| + | | **Gearbox.FuelRating** | Gearbox Fuel Economy Rating | | **Gearbox.OverallRating** | Gearbox Overall Rating | | ||
| + | | **Gearbox.Design_Requirement** | Gearbox Design Requirements Rating | | **Gearbox.ReliabiltyRating** | Gearbox Reliability Rating | | ||
| + | | **Gearbox.Manufacturing_Requirement** | Gearbox Manufacturing Requirements Rating | | **Gearbox.PerformanceRating** | Gearbox Performance Rating | | ||
| + | | **Number Of Cars** | The total number of cars designed in the last 5 years | | **RacingHistory.PlayerWins** | All company' | ||
| + | | **Racing.Popularity** | The popularity of the racing series | | **Marketing_*Efficency** | Marketing efficiency value, where * is the type of marketing | | ||
| + | | **RacingRnDFocus** | Racing focus set to development, | ||
| + | |||
| + | |||
| + | |||
| + | ===== Value Assignments ===== | ||
| + | |||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | current_ImgWork = IMAGE_WORK | ||
| + | current_ImgRace = IMAGE_RACING | ||
| + | current_ImgQual = IMAGE_QUALITY | ||
| + | current_ImgGlobal = IMAGE_GLOBAL_GENERAL | ||
| + | current_MarketingSkill = SKILL_MARKETING | ||
| + | |||
| + | current_DesignEngineSkills = DESIGN_ENGINE | ||
| + | current_DesignChassisSkills = DESIGN_CHASSIS | ||
| + | current_DesignGearboxSkills = DESIGN_TRANSMISSION | ||
| + | current_DesignBodySkills = DESIGN_BODY | ||
| + | current_DesignLuxSkills = DESIGN_LUX | ||
| + | current_DesignSafeSkills = DESIGN_SAFETY | ||
| + | |||
| + | manuSkill = SKILL_MANUFACTORING | ||
| + | adminSkill = SKILL_ADMIN | ||
| + | dealerSkill = SKILL_DEALER | ||
| + | |||
| + | |||
| + | effectCemps = researchChassisEffect | ||
| + | effectEemps = researchEngineEffect | ||
| + | effectGemps = researchGearboxEffect | ||
| + | effectVemps = researchVehicleEffect | ||
| + | |||
| + | |||
| + | |||
| + | for( Cars Year > Current Year - 3 ) | ||
| + | { | ||
| + | Workmanship = Workmanship + (TOTAL(CarInfo.Rating_Overall+(CarInfo.Rating_Luxury*21)+ | ||
| + | CarInfo.Rating_Safety+(CarInfo.designreq*2) ) + | ||
| + | (ChassisInfo.Overall_Comfort+ChassisInfo.Overall_Strength+ChassisInfo.Overall+(ChassisInfo.Req_Design*2) )) | ||
| + | | ||
| + | workmanship_Quality = workmanship_Quality + (TOTAL( (CarInfo.Rating_Quality*3) + | ||
| + | (CarInfo.Rating_Dependability*3) + CarInfo.manureq + CarInfo.Rating_Overall ) + | ||
| + | ( (ChassisInfo.Overall_Dependabilty*3) +ChassisInfo.Overall_Strength+ChassisInfo.Req_Manu+ChassisInfo.Overall)) | ||
| + | | ||
| + | workmanship_Racing = workmanship_Racing + (TOTAL(CarInfo.Rating_Performance*3 + | ||
| + | CarInfo.Rating_Drivability*3 ) + TOTAL(ChassisInfo.Overall_Performance)) | ||
| + | | ||
| + | workGlobal = workGlobal + TOTAL(CarInfo.Rating_Overall*10) | ||
| + | | ||
| + | counts = Number Of Cars * 25 + 5 | ||
| + | | ||
| + | counts_Quality = Number Of Cars * 8 + 6 | ||
| + | | ||
| + | counts_Racing = Number Of Cars * 8 + 3 | ||
| + | | ||
| + | counts_Global = Number Of Cars * 10 | ||
| + | |||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | for ( Every Engine Design Year > Current Year - 3 ) | ||
| + | { | ||
| + | Workmanship = Workmanship + (Engine.FuelEconomy+Engine.OverallRating+(Engine.DesighnRequirements*2) ) | ||
| + | | ||
| + | workmanship_Quality = workmanship_Quality + ( (Engine.Reliability*5) + Engine.OverallRating + Engine.ManufacturingRequirement ) | ||
| + | | ||
| + | workmanship_Racing = workmanship_Racing + Engine.Power*5 | ||
| + | | ||
| + | counts = counts + 4 | ||
| + | | ||
| + | counts_Quality = counts_Quality + 7 | ||
| + | | ||
| + | counts_Racing = counts_Racing + 6 | ||
| + | |||
| + | } | ||
| + | |||
| + | | ||
| + | |||
| + | | ||
| + | |||
| + | for ( Every Gearbox Design Year > Current Year - 3 ) | ||
| + | { | ||
| + | Workmanship = Workmanship + Gearbox.FuelRating+Gearbox.OverallRating+(Gearbox.Design_Requirement*2) ) | ||
| + | | ||
| + | workmanship_Quality = workmanship_Quality + ( (Gearbox.ReliabiltyRating*5) +Gearbox.OverallRating+Gearbox.Manufacturing_Requirement ) | ||
| + | | ||
| + | workmanship_Racing = (Gearbox.PerformanceRating*2+Gearbox.PowerRating*2) | ||
| + | | ||
| + | counts = counts + 4 | ||
| + | | ||
| + | counts_Quality = counts_Quality + 7 | ||
| + | | ||
| + | counts_Racing = counts_Racing + 5 | ||
| + | |||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | //Race Results | ||
| + | for(Racing results over the last 6 years, using this trim or an car or engine from this trim) | ||
| + | { | ||
| + | workmanship_Racing = workmanship_Racing + TOTAL(RacingHistory.PlayerWins*Racing.Popularity)*0.3 | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | for each racing championship over the last 6 years, using this trim or an car or engine from this trim | ||
| + | { | ||
| + | workmanship_Racing = workmanship_Racing + 20; | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | marketing_Effecents = Average((Marketing_NewspaperEfficency + Marketing_BillboardsEfficency + | ||
| + | Marketing_MagsEfficency + Marketing_SportsEfficency + | ||
| + | Marketing_EventsEfficency + Marketing_RadioEfficency + | ||
| + | Marketing_TVEfficency + Marketing_InternetEfficency + Marketing_MiscEfficency)/ | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Images ===== | ||
| + | |||
| + | |||
| + | ==== Workmanship ==== | ||
| + | |||
| + | <code cpp> | ||
| + | if(counts> | ||
| + | { | ||
| + | workmanship_image = Workmanship/ | ||
| + | |||
| + | if(workmanship_image > 110) | ||
| + | workmanship_image = 110; | ||
| + | |||
| + | if(workmanship_image > (current_Workmanship_Image+0.5) ) | ||
| + | { | ||
| + | newImg = current_Workmanship_Image + 0.25 + (marketing_Effecents/ | ||
| + | | ||
| + | if(newImg > 100) | ||
| + | { | ||
| + | newImg = 100 | ||
| + | } | ||
| + | |||
| + | | ||
| + | |||
| + | } | ||
| + | else if(workmanship_image< | ||
| + | { | ||
| + | newImg = current_Workmanship_Image -0.4+(marketing_Effecents/ | ||
| + | | ||
| + | if(newImg < 1) | ||
| + | { | ||
| + | newImg = 1; | ||
| + | } | ||
| + | |||
| + | | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | |||
| + | </ | ||
| + | ==== Quality ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | if(counts> | ||
| + | { | ||
| + | adjust_image = workmanship_Quality/ | ||
| + | |||
| + | if(adjust_image > 110) | ||
| + | adjust_image = 110; | ||
| + | |||
| + | if(adjust_image > (current_ImgQual+0.5) ) | ||
| + | { | ||
| + | newImg = current_ImgQual + 0.25 + (marketing_Effecents/ | ||
| + | | ||
| + | if(newImg > 100) | ||
| + | { | ||
| + | newImg = 100; | ||
| + | } | ||
| + | |||
| + | | ||
| + | |||
| + | } | ||
| + | else if(adjust_image< | ||
| + | { | ||
| + | newImg = current_ImgQual -0.4+(marketing_Effecents/ | ||
| + | | ||
| + | if(newImg < 1) | ||
| + | { | ||
| + | newImg = 1; | ||
| + | } | ||
| + | |||
| + | IMAGE_QUALITY = NewImg | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | ==== Racing ==== | ||
| + | |||
| + | <code cpp> | ||
| + | //Racing | ||
| + | if(Doing Racing) | ||
| + | { | ||
| + | adjust_image = workmanship_Racing/ | ||
| + | |||
| + | |||
| + | if(adjust_image > 100) | ||
| + | { | ||
| + | adjust_image = 100; | ||
| + | } | ||
| + | |||
| + | if(current_ImgRace <= 0) | ||
| + | current_ImgRace = 1; | ||
| + | |||
| + | |||
| + | |||
| + | if(adjust_image > current_ImgRace) | ||
| + | { | ||
| + | newImg = current_ImgRace + 0.25 + (marketing_Effecents/ | ||
| + | |||
| + | if(newImg > 100) | ||
| + | { | ||
| + | newImg = 100; | ||
| + | } | ||
| + | |||
| + | IMAGE_RACING = newImg | ||
| + | |||
| + | } | ||
| + | else if(adjust_image< | ||
| + | { | ||
| + | newImg = current_ImgRace -0.4+(marketing_Effecents/ | ||
| + | if(newImg < 1) | ||
| + | { | ||
| + | newImg = 1; | ||
| + | } | ||
| + | |||
| + | | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | ==== Global ==== | ||
| + | |||
| + | |||
| + | <code cpp> | ||
| + | Global_Total_Img = Global_Total_Img + ((current_ImgWork + current_ImgRace + current_ImgQual)*10); | ||
| + | counts_Global += 30; | ||
| + | |||
| + | //Global | ||
| + | if(counts_Global> | ||
| + | { | ||
| + | |||
| + | |||
| + | adjust_image = Global_Total_Img/ | ||
| + | |||
| + | if(adjust_image > 100) | ||
| + | { | ||
| + | adjust_image = 100; | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | if(adjust_image> | ||
| + | { | ||
| + | newImg = current_ImgGlobal + 0.25 + (marketing_Effecents/ | ||
| + | if(newImg > 100) | ||
| + | { | ||
| + | newImg = 100; | ||
| + | } | ||
| + | |||
| + | IMAGE_GLOBAL_GENERAL = newImg | ||
| + | |||
| + | } | ||
| + | else if(adjust_image< | ||
| + | { | ||
| + | newImg = current_ImgGlobal-0.4+(marketing_Effecents/ | ||
| + | if(newImg < 1) | ||
| + | { | ||
| + | newImg = 1; | ||
| + | } | ||
| + | |||
| + | IMAGE_GLOBAL_GENERAL = newImg | ||
| + | |||
| + | } | ||
| + | |||
| + | } | ||
| + | </ | ||
| + | ===== Skills ===== | ||
| + | |||
| + | |||
| + | ==== Marketing ==== | ||
| + | |||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | if(marketing_Effecents > current_MarketingSkill * 0.6) | ||
| + | { | ||
| + | current_MarketingSkill = current_MarketingSkill + 0.5 + ((marketing_Effecents-current_MarketingSkill)/ | ||
| + | |||
| + | } | ||
| + | else if(marketing_Effecents < current_MarketingSkill * 0.6) | ||
| + | { | ||
| + | current_MarketingSkill = current_MarketingSkill - 0.1; | ||
| + | |||
| + | } | ||
| + | |||
| + | if(current_MarketingSkill> | ||
| + | { | ||
| + | current_MarketingSkill = 100; | ||
| + | } | ||
| + | else if(current_MarketingSkill < 0) | ||
| + | { | ||
| + | current_MarketingSkill = 0.1; | ||
| + | } | ||
| + | |||
| + | |||
| + | SKILL_MARKETING = current_MarketingSkill | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Manufacturing ==== | ||
| + | |||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | Adjusted_Manufacturing = TOTAL( (1.35-Speed) * (Moral/ | ||
| + | |||
| + | |||
| + | if(Adjusted_Manufacturing > (manuSkill*1.02)) | ||
| + | { | ||
| + | manuSkill = manuSkill+0.25+ ((Adjusted_Manufacturing-manuSkill)/ | ||
| + | | ||
| + | if(manuSkill> | ||
| + | { | ||
| + | manuSkill = 100; | ||
| + | } | ||
| + | | ||
| + | SKILL_MANUFACTORING=manuSkill | ||
| + | |||
| + | |||
| + | } | ||
| + | else if(Adjusted_Manufacturing < (manuSkill*0.98)) | ||
| + | { | ||
| + | manuSkill = manuSkill-0.25; | ||
| + | | ||
| + | if(manuSkill < 0) | ||
| + | { | ||
| + | manuSkill = 0.1; | ||
| + | } | ||
| + | | ||
| + | SKILL_MANUFACTORING=manuSkill | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== RnD ==== | ||
| + | |||
| + | <code cpp> | ||
| + | Researching_Average = (effectCemps+effectEemps+effectGemps+effectVemps)/ | ||
| + | |||
| + | | ||
| + | RnDCounter =Number of designs started within in the last 2 years. | ||
| + | | ||
| + | if(RnDCounter == 0) | ||
| + | { | ||
| + | rndSkillChange = -0.08 + (Researching_Average/ | ||
| + | } | ||
| + | else | ||
| + | { | ||
| + | rndSkillChange = (RnDCounter) * 0.02 + (Researching_Average/ | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | SET SKILL_RND = SKILL_RND + rndSkillChange | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Administrative ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | For All Branches | ||
| + | { | ||
| + | dealerFocus = TOTAL(Dealer_Resources) | ||
| + | branchNumber = COUNT(Branch_ID | ||
| + | branchMorale = AVG(Employee_Moral) | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | if((branchNumber/ | ||
| + | { | ||
| + | SET SKILL_ADMIN = SKILL_ADMIN - 0.5 | ||
| + | } | ||
| + | else if((branchNumber/ | ||
| + | { | ||
| + | SET SKILL_ADMIN = SKILL_ADMIN + 0.7 | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Dealer ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | For All Branches | ||
| + | { | ||
| + | dealerFocus = TOTAL(Dealer_Resources) | ||
| + | branchNumber = COUNT(Branch_ID | ||
| + | branchMorale = AVG(Employee_Moral) | ||
| + | } | ||
| + | |||
| + | |||
| + | if(branchNumber != 0) | ||
| + | dealerFocus = (dealerFocus*100)/ | ||
| + | |||
| + | |||
| + | if(dealerFocus < (dealerSkill * 0.95)) | ||
| + | { | ||
| + | SET SKILL_DEALER= SKILL_DEALER - 0.3 | ||
| + | } | ||
| + | else if(dealerFocus > (dealerSkill)) | ||
| + | { | ||
| + | SET SKILL_DEALER= SKILL_DEALER + 0.5 | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Design Skills ===== | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==== Engine ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | Self designed engines over the last 5 years. | ||
| + | { | ||
| + | overallDesignRating = Average(Engine.OverallRating); | ||
| + | } | ||
| + | |||
| + | |||
| + | oldDesignSkill = current_DesignEngineSkills; | ||
| + | |||
| + | |||
| + | |||
| + | if(overallDesignRating > (current_DesignEngineSkills*1.02) AND current_DesignEngineSkills < 95.5) | ||
| + | { | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills + 0.25 +(0.65*effectEemps); | ||
| + | | ||
| + | SET DESIGN_ENGINE = current_DesignEngineSkills | ||
| + | |||
| + | } | ||
| + | else if(overallDesignRating< | ||
| + | { | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills - 0.1 + (0.4*effectEemps); | ||
| + | | ||
| + | if(current_DesignEngineSkills < 0.1) | ||
| + | current_DesignEngineSkills = 0.1; | ||
| + | | ||
| + | SET DESIGN_ENGINE = current_DesignEngineSkills | ||
| + | |||
| + | } | ||
| + | else if(current_DesignEngineSkills < 101 && current_DesignEngineSkills > 1) | ||
| + | { | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignEngineSkills = current_DesignEngineSkills - 0.25 +(0.85*effectEemps); | ||
| + | | ||
| + | if(current_DesignEngineSkills < 0.1) | ||
| + | current_DesignEngineSkills = 0.1; | ||
| + | else if(current_DesignEngineSkills > 99.99) | ||
| + | current_DesignEngineSkills = 99.99; | ||
| + | |||
| + | SET DESIGN_ENGINE = current_DesignEngineSkills | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Chassis ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | |||
| + | Self designed chassis over the last 5 years. | ||
| + | { | ||
| + | overallDesignRating = Average(Chassis.OverallRating); | ||
| + | } | ||
| + | |||
| + | |||
| + | oldDesignSkill = current_DesignChassisSkills; | ||
| + | |||
| + | |||
| + | if(overallDesignRating > (current_DesignChassisSkills*1.02) && current_DesignChassisSkills < 95.5) | ||
| + | { | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills + 0.25+(0.65*effectCemps); | ||
| + | | ||
| + | SET DESIGN_CHASSIS = current_DesignChassisSkills | ||
| + | |||
| + | } | ||
| + | else if(overallDesignRating< | ||
| + | { | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills - 0.1 + (0.4*effectCemps); | ||
| + | | ||
| + | SET DESIGN_CHASSIS = current_DesignChassisSkills | ||
| + | } | ||
| + | else if(current_DesignChassisSkills < 101 && current_DesignChassisSkills > 1) | ||
| + | { | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignChassisSkills = current_DesignChassisSkills - 0.25+(0.85*effectCemps); | ||
| + | | ||
| + | if(current_DesignChassisSkills > 99.99) | ||
| + | current_DesignChassisSkills = 99.99; | ||
| + | |||
| + | SET DESIGN_CHASSIS = current_DesignChassisSkills | ||
| + | |||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Gearbox ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | Self designed gearboxes over the last 5 years. | ||
| + | { | ||
| + | overallDesignRating = Average(Gearbox.OverallRating); | ||
| + | } | ||
| + | pStmt-> | ||
| + | |||
| + | oldDesignSkill = current_DesignGearboxSkills; | ||
| + | |||
| + | |||
| + | if(overallDesignRating > (current_DesignGearboxSkills*1.02) && current_DesignGearboxSkills < 95.5) | ||
| + | { | ||
| + | | ||
| + | |||
| + | | ||
| + | |||
| + | SET DESIGN_TRANSMISSION = (current_DesignGearboxSkills) | ||
| + | |||
| + | } | ||
| + | else if(overallDesignRating< | ||
| + | { | ||
| + | current_DesignGearboxSkills = current_DesignGearboxSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignGearboxSkills = current_DesignGearboxSkills - 0.1 + (0.4*effectGemps); | ||
| + | | ||
| + | SET DESIGN_TRANSMISSION = (current_DesignGearboxSkills) | ||
| + | } | ||
| + | else if(current_DesignGearboxSkills < 101 && current_DesignGearboxSkills > 1) | ||
| + | { | ||
| + | current_DesignGearboxSkills = current_DesignGearboxSkills + RacingRnDFocus; | ||
| + | | ||
| + | current_DesignGearboxSkills = current_DesignGearboxSkills - 0.25+(0.85*effectGemps); | ||
| + | |||
| + | if(current_DesignGearboxSkills > 99.99) | ||
| + | current_DesignGearboxSkills = 99.99; | ||
| + | |||
| + | SET DESIGN_TRANSMISSION = (current_DesignGearboxSkills) | ||
| + | } | ||
| + | |||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Vehicle Design Skills ===== | ||
| + | |||
| + | ==== Body ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | |||
| + | For Every Vehicle Self Designed For This Marque In The Last 5 Years | ||
| + | { | ||
| + | overallDesignRating = AVERAGE Rating_Overall | ||
| + | | ||
| + | if(overallDesignRating > (current_DesignBodySkills*1.02) AND current_DesignBodySkills < 95.5) | ||
| + | { | ||
| + | | ||
| + | | ||
| + | SET DESIGN_BODY = current_DesignBodySkills | ||
| + | } | ||
| + | else if(overallDesignRating == 0) | ||
| + | { | ||
| + | current_DesignBodySkills = current_DesignBodySkills - 0.1 + (0.4*effectVemps); | ||
| + | | ||
| + | SET DESIGN_BODY = current_DesignBodySkills | ||
| + | } | ||
| + | else if(current_DesignBodySkills < 101 AND current_DesignBodySkills > 1) | ||
| + | { | ||
| + | current_DesignBodySkills = current_DesignBodySkills - 0.25+(0.85*effectVemps); | ||
| + | | ||
| + | if(current_DesignBodySkills > 99.99) | ||
| + | current_DesignBodySkills = 99.99; | ||
| + | |||
| + | SET DESIGN_BODY = current_DesignBodySkills | ||
| + | } | ||
| + | | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Luxury ==== | ||
| + | |||
| + | <code cpp> | ||
| + | For Every Vehicle Self Designed For This Marque In The Last 5 Years | ||
| + | { | ||
| + | overallDesignRating = AVERAEG Rating_Luxury | ||
| + | | ||
| + | if(overallDesignRating > (current_DesignLuxSkills*1.02) | ||
| + | { | ||
| + | current_DesignLuxSkills = current_DesignLuxSkills + 0.25 +(0.65*effectVemps); | ||
| + | | ||
| + | DESIGN_LUX = current_DesignLuxSkills | ||
| + | } | ||
| + | else if(overallDesignRating==0) | ||
| + | { | ||
| + | current_DesignLuxSkills = current_DesignLuxSkills - 0.1 + (0.4*effectVemps); | ||
| + | | ||
| + | DESIGN_LUX = current_DesignLuxSkills | ||
| + | } | ||
| + | else if(current_DesignLuxSkills< | ||
| + | { | ||
| + | current_DesignLuxSkills = current_DesignLuxSkills - 0.25 +(0.85*effectVemps); | ||
| + | | ||
| + | if(current_DesignLuxSkills > 99.99) | ||
| + | current_DesignLuxSkills = 99.99; | ||
| + | | ||
| + | DESIGN_LUX = current_DesignLuxSkills | ||
| + | } | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | ==== Safety ==== | ||
| + | |||
| + | <code cpp> | ||
| + | For Every Vehicle Self Designed For This Marque In The Last 5 Years | ||
| + | { | ||
| + | overallDesignRating = AVGERAGE Rating_Safety | ||
| + | | ||
| + | if(overallDesignRating > (current_DesignSafeSkills*1.02) | ||
| + | { | ||
| + | current_DesignSafeSkills = current_DesignSafeSkills + 0.25 +(0.65*effectVemps); | ||
| + | | ||
| + | DESIGN_SAFETY = current_DesignSafeSkills | ||
| + | } | ||
| + | else if(overallDesignRating==0) | ||
| + | { | ||
| + | current_DesignSafeSkills = current_DesignSafeSkills - 0.1 + (0.4*effectVemps); | ||
| + | | ||
| + | DESIGN_SAFETY = current_DesignSafeSkills | ||
| + | } | ||
| + | else if(current_DesignSafeSkills< | ||
| + | { | ||
| + | current_DesignSafeSkills = current_DesignSafeSkills - 0.25 +(0.85*effectVemps); | ||
| + | | ||
| + | if(current_DesignSafeSkills > 99.99) | ||
| + | current_DesignSafeSkills = 99.99; | ||
| + | | ||
| + | DESIGN_SAFETY = current_DesignSafeSkills | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Vehicle Image ===== | ||
| + | |||
| + | |||
| + | ==== Vehicle Image ==== | ||
| + | |||
| + | <code cpp> | ||
| + | |||
| + | newVehicleImg = 0; | ||
| + | movementAmount = 0; | ||
| + | |||
| + | |||
| + | marketingEffect = AVERAGE (Marketing_NewspaperEfficency + Marketing_BillboardsEfficency + | ||
| + | Marketing_MagsEfficency + Marketing_SportsEfficency + Marketing_EventsEfficency + | ||
| + | Marketing_RadioEfficency + Marketing_TVEfficency + Marketing_InternetEfficency + Marketing_MiscEfficency) | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | For Every Active Vehicle: | ||
| + | { | ||
| + | currentVehicleIMG = CarInfo.Vehicle_Image | ||
| + | |||
| + | |||
| + | if( (CarInfo.CarTypeRating+ CarInfo.Rating_Dependability*3+CarInfo.Rating_Quality*2) / 6.0 > currentVehicleIMG*1.2) | ||
| + | { | ||
| + | newVehicleImg = currentVehicleIMG + (0.25 + ((CarInfo.Rating_Dependability*3+CarInfo.Rating_Quality*2)/ | ||
| + | (((current_ImgGlobal*2) + current_ImgQual | ||
| + | } | ||
| + | else if((CarInfo.CarTypeRating+CarInfo.Rating_Dependability*3+CarInfo.Rating_Quality*2) / 6.0< currentVehicleIMG * 0.85) | ||
| + | { | ||
| + | newVehicleImg = currentVehicleIMG + (-0.50 | ||
| + | (((current_ImgGlobal*2) + current_ImgQual | ||
| + | } | ||
| + | else | ||
| + | { | ||
| + | newVehicleImg = currentVehicleIMG + (-0.25 | ||
| + | (((current_ImgGlobal*2) + current_ImgQual | ||
| + | } | ||
| + | |||
| + | movementAmount = (newVehicleImg-currentVehicleIMG)/ | ||
| + | |||
| + | newVehicleImg = (Random Number Between (0 and movementAmount)) + currentVehicleIMG; | ||
| + | |||
| + | if(newVehicleImg <=1) | ||
| + | { | ||
| + | newVehicleImg = 1; | ||
| + | } | ||
| + | else if(newVehicleImg >= 100) | ||
| + | { | ||
| + | newVehicleImg = 100; | ||
| + | } | ||
| + | |||
| + | if(currentVehicleIMG DOES NOT EQUAL newVehicleImg) | ||
| + | { | ||
| + | VehicleImg = newVehicleImg | ||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | </ | ||