The future of Castle Story A.I. + New Gamemode?
DaeziK
Member
in Suggestions
The A.I.
I love the implementation of the new A.I. where the bricktrons automatically assign themselves to tasks. The A.I. has been significantly improved since I had first played the game when it first came out but there are a few things I have noticed that render the efficiency of the bricktrons.
The main issue that I keep running into is there seems to be little prioritizing when it come to what task they should assign themselves to. For example, if I decide to make a "Cleaning" task that is only a few pieces of stone, all of a sudden 4 bricktrons assign themselves to pick up those few pieces of stone... (more on priority in the PS. below)
One other example is when a bricktron goes to a workbench to make a piece of armor or sword, once they create the piece they run off and do another task leaving the piece sitting on the workbench.
Lastly, I've noticed only on very few occasions where bricktrons doing completely different tasks will sometimes switch items that they don't need. They proceed to go to there current destination, then realize they don't have the correct material and head all the way back to put the item they switched for in storage to then go all the way back with the correct material.
New Gamemode?
With that all being said I hope there is a future for the A.I. to be completely self sufficient. Where you could essentially PVP an A.I. instead of a player. Where you have preset builds for different difficulties that the enemy bricktrons build. Depending on the difficulty that has been selected would determine how fast and efficiently the enemy bricktrons would build a base and army.
Maybe even make a specific gamemode for this, a PVP gamemode where you gain more bricktrons faster than in Invasion and Conquest. You could decide to either build a hardy defense right away or go for a straight up weaponry rush to build as big as an army as fast as possible.
Other types of weaponry would make this gamemode insanely fun. Possibly have a Mage class that requires Brimstone to craft or even an assassin class that has short ranged throwing knifes and a melee dagger for close quarters combat, etc.
Since there is an auto assign for tasks, all that would have to be done is to create a pre-made build that gets randomly selected at the start of the game and depending on the selected difficulty chosen, would determine how fast the build is achieved.
When it comes to people making there own maps in the world editor all you would have to do to make it eligible for PVP is make sure there is a x by x open land around the home crystal that fits all possible preset builds and that is flat so the building can be constructed.
This is probably a project that would be done in the far future if seriously considered. I don't know what you guys have planned for the big 1.0 Update but i'm excited non the less. I'd love to hear your thoughts on this.
PS. (proposition to fix the prioritizing)
A possible solution to the priority thing would be to implement a 'priority_Value' to tasks. Depending on how much work is needed to be done in a specific task will determine if it is needing to be prioritized. Having a system in place where a bricktrons holding capacity has the equivalent of 1 priority. So 4 blocks needing to be placed in a construction task would have a priority value of '4' whereas a construction task that needs a whole building built would have a priority value of 20-40. When it comes to cleaning tasks, 20 pieces of stone/iron/brimstone etc(i.e. a bricktrons holding capacity) would equate to a Priority Value of 1 just like the stone brick. So if the total priority of all tasks active is '50t', the cleaning task has '10x' of the total priority and you have '10w' workers, 2 workers [ (w(x/t))= 2 ] would assign themselves to the cleaning task.
e.g. TotalPrior(t)=83/TaskPrior(x)=38/TotalWorkr(w)=7 | (7(38/83))=3.2046 Therefor 3 bricktrons are sent to that task.
In the event that you get a weird 'tasik_Priority' to 'total_Priority' ratio where there would be less then a bricktron working on a task like a .73 of a bricktron, you could make it so there is a Minimum of at least 1 bricktron per task. Also, in the event you don't have enough workers for all your tasks, the tasks with the Least priority value would be vacant until the other prioritized tasks where finished/deleted. For cases like the task 'Mine', you can set a default/minimum priority value to around 10-15% of the total priority. If there are extra bricktrons you could have them just randomly select tasks or whatever floats your boat.
Priority can be set in many different ways, this was just my idea on how to tackle it :P
I love the implementation of the new A.I. where the bricktrons automatically assign themselves to tasks. The A.I. has been significantly improved since I had first played the game when it first came out but there are a few things I have noticed that render the efficiency of the bricktrons.
The main issue that I keep running into is there seems to be little prioritizing when it come to what task they should assign themselves to. For example, if I decide to make a "Cleaning" task that is only a few pieces of stone, all of a sudden 4 bricktrons assign themselves to pick up those few pieces of stone... (more on priority in the PS. below)
One other example is when a bricktron goes to a workbench to make a piece of armor or sword, once they create the piece they run off and do another task leaving the piece sitting on the workbench.
Lastly, I've noticed only on very few occasions where bricktrons doing completely different tasks will sometimes switch items that they don't need. They proceed to go to there current destination, then realize they don't have the correct material and head all the way back to put the item they switched for in storage to then go all the way back with the correct material.
New Gamemode?
With that all being said I hope there is a future for the A.I. to be completely self sufficient. Where you could essentially PVP an A.I. instead of a player. Where you have preset builds for different difficulties that the enemy bricktrons build. Depending on the difficulty that has been selected would determine how fast and efficiently the enemy bricktrons would build a base and army.
Maybe even make a specific gamemode for this, a PVP gamemode where you gain more bricktrons faster than in Invasion and Conquest. You could decide to either build a hardy defense right away or go for a straight up weaponry rush to build as big as an army as fast as possible.
Other types of weaponry would make this gamemode insanely fun. Possibly have a Mage class that requires Brimstone to craft or even an assassin class that has short ranged throwing knifes and a melee dagger for close quarters combat, etc.
Since there is an auto assign for tasks, all that would have to be done is to create a pre-made build that gets randomly selected at the start of the game and depending on the selected difficulty chosen, would determine how fast the build is achieved.
When it comes to people making there own maps in the world editor all you would have to do to make it eligible for PVP is make sure there is a x by x open land around the home crystal that fits all possible preset builds and that is flat so the building can be constructed.
This is probably a project that would be done in the far future if seriously considered. I don't know what you guys have planned for the big 1.0 Update but i'm excited non the less. I'd love to hear your thoughts on this.
PS. (proposition to fix the prioritizing)
A possible solution to the priority thing would be to implement a 'priority_Value' to tasks. Depending on how much work is needed to be done in a specific task will determine if it is needing to be prioritized. Having a system in place where a bricktrons holding capacity has the equivalent of 1 priority. So 4 blocks needing to be placed in a construction task would have a priority value of '4' whereas a construction task that needs a whole building built would have a priority value of 20-40. When it comes to cleaning tasks, 20 pieces of stone/iron/brimstone etc(i.e. a bricktrons holding capacity) would equate to a Priority Value of 1 just like the stone brick. So if the total priority of all tasks active is '50t', the cleaning task has '10x' of the total priority and you have '10w' workers, 2 workers [ (w(x/t))= 2 ] would assign themselves to the cleaning task.
e.g. TotalPrior(t)=83/TaskPrior(x)=38/TotalWorkr(w)=7 | (7(38/83))=3.2046 Therefor 3 bricktrons are sent to that task.
In the event that you get a weird 'tasik_Priority' to 'total_Priority' ratio where there would be less then a bricktron working on a task like a .73 of a bricktron, you could make it so there is a Minimum of at least 1 bricktron per task. Also, in the event you don't have enough workers for all your tasks, the tasks with the Least priority value would be vacant until the other prioritized tasks where finished/deleted. For cases like the task 'Mine', you can set a default/minimum priority value to around 10-15% of the total priority. If there are extra bricktrons you could have them just randomly select tasks or whatever floats your boat.
Priority can be set in many different ways, this was just my idea on how to tackle it :P