Ted Merchant’s Final Presentation
description
Transcript of Ted Merchant’s Final Presentation
Ted Merchant’s Ted Merchant’s Final Final
PresentationPresentation
What I wanted to get What I wanted to get done:done:
Write the special function that will cause the NPC Write the special function that will cause the NPC to move to the resources and than back to the to move to the resources and than back to the base. base.
- Place temp resources (probably vending - Place temp resources (probably vending machines) into the map. machines) into the map.
- Change the resource counting function to be - Change the resource counting function to be iterated only when the special NPC returns to the iterated only when the special NPC returns to the base with the resources it has gathered. base with the resources it has gathered.
- Change the interface so that the played can - Change the interface so that the played can control where the special NPC’s will gather control where the special NPC’s will gather resources. resources.
- Create a priority system for the resources since - Create a priority system for the resources since there are 3 types. there are 3 types.
- Create a limiting system that will limit the - Create a limiting system that will limit the amount of resources at one location amount of resources at one location
What I Got DoneWhat I Got Done Write the special function that will cause the Write the special function that will cause the
NPC to move to the resources and than back NPC to move to the resources and than back to the base. to the base.
- Place temp resources (probably vending - Place temp resources (probably vending machines) into the map. machines) into the map.
- Change the resource counting function to be - Change the resource counting function to be iterated only when the special NPC returns to iterated only when the special NPC returns to the base with the resources it has gathered. the base with the resources it has gathered.
- Change the interface so that the played can - Change the interface so that the played can control where the special NPC’s will gather control where the special NPC’s will gather resources. resources.
- - Create a priority system for the resources Create a priority system for the resources since there are 3 types.since there are 3 types.
- Create a limiting system that will limit the - Create a limiting system that will limit the amount of resources at one location amount of resources at one location
How?How?
Almost all of what I did was in code.Almost all of what I did was in code. Mainly I created a new type of NPC very Mainly I created a new type of NPC very
closely related to the npc_citizen17 class.closely related to the npc_citizen17 class. I changed it’s idle behavior by creating I changed it’s idle behavior by creating
new schedules and task which control new schedules and task which control what the NPC’s do.what the NPC’s do.
I used the global entity list in order to I used the global entity list in order to allow the NPC’s to find and target the allow the NPC’s to find and target the different resources.different resources.
I also removed a lot of code that handled I also removed a lot of code that handled special citizen types and situations.special citizen types and situations.
How cont.How cont.
I created a new class for storing and I created a new class for storing and forming calculations on the forming calculations on the resources.resources. This class used arrays to store the This class used arrays to store the
amount of each resource.amount of each resource. It also calculated the average time it It also calculated the average time it
took to gather each resource and used took to gather each resource and used that information to assign newly that information to assign newly spawned Gatherers. spawned Gatherers.
How cont.How cont.
I created three new model enities I created three new model enities and added them to the map.and added them to the map. Used the model entity code from the Used the model entity code from the
Valve Wiki.Valve Wiki. Basically used as a way to connect Basically used as a way to connect
object on the map to objects in the object on the map to objects in the code.code.
What’s Left to be Done?What’s Left to be Done? There are a lot of things that I wanted to get to that There are a lot of things that I wanted to get to that
I did.I did. Create models for each resource instead of stand in Create models for each resource instead of stand in
models used now.models used now. Have a better user interface. Right now priorities are Have a better user interface. Right now priorities are
hard coded in. It would be nice to have some way to allow hard coded in. It would be nice to have some way to allow the user to change these priorities.the user to change these priorities.
Have constant Gatherer reassignment. Gatherers are Have constant Gatherer reassignment. Gatherers are assigned what resource to gather when spawned. It assigned what resource to gather when spawned. It would be nice if this could be reassigned during the game.would be nice if this could be reassigned during the game.
Give the user the ability to point and click the gathers to Give the user the ability to point and click the gathers to collect certain resources. collect certain resources.
Have a display and use for all three resources.Have a display and use for all three resources. Give the Gathers better animations instead of just Give the Gathers better animations instead of just
standing next to resource.standing next to resource.