Sunday, February 15, 2015
Week 5 Fun with Nukes
This week I have had fun trying to figure out what we want to happen with nukes for the AI player. For now the main target is the command center and this week has a first pass on a new way to create nukes. Alex created a new method to create nukes paths overall to help with the transfer from mouse click to touch. The old method tended to work one way or the other and had problems switching back and forth. So I took this and developed a method on top. Initially missiles automatically shoot out a distance directly from the center of the planet. This way unless you try hard you can't nuke your planet accidentally on the first turn. You can turn it back, but that is a problem for another date. So, my method uses just a little bit of trig. Missiles have a launch distance that they go for each rotation and each rotation the planet moves one away. So when you check if a missile could hit you check with the adjacent 5 spots to the direction its rotating. So if its the left planet you search its left location 5 times.You check how many turns it would take going directly from the first place out to each location. You add one for the original launch which happens automatically by creating a nuke. if this number is within -1 to 1. Say it takes 3 turns and either and the location is either 2, 3, or 4 it will blow up. So if its 3 its 100% chance. 2 or 4 its put at 60% chance. You don't add perfect straight to location, that would be too predictable as well as easily countered. When it confirms which of those spots its going to nuke it figures out at each point the angle from the center of the spot to the last nuke location. It has a hypotenuse which is the full vector length, as well as an x so you can use cos^-1 to get the angle in radians, which our system uses. Than you have to add an offset so its not likely to fly straight at it, and add zig zag similar to a real player. This can cause it to miss, as well causing the enemy to have a hard time hitting one of their nukes into the computer players. This path on the first go is working well. As expected hits target about 60-70 percent of the time which is decent and not to high. However about 10% of the time it does seem to shoot of the screen for an unknown reason. We will be looking in this week to figure out if its a math or logic error. Or a weird new pathbuilder error. As well, we are looking to do a similar goal orientation for the enemy nuke selection as its building. This way it all works goal orientated which is how the game has been developed to be seen. The command center being the biggest object, both to explode and secure. We will than work our way down based on some small changes. This being how the AI wants to win. Starve the opponents resources, go for shield generators, kill all nuke paths etc. Each will have a multiplier to help decide and create AI that have a variety of goals in different games. This way they aren't too easily predicted game after game. These numbers can and will change in the midst of games if that Player changes his gameplay as well, but that is to be added in the much later stages. We are currently quite happy with the initial AI both for its nuking and its building and survivability. The last piece to be added is the boost resources which the intro AI won't do a hundred percent of the time. In the later and more difficult will use all resources to its advantage every turn.
Monday, February 9, 2015
Week 4
Moving towards this week the goal was to get the basic works for everything into the game. The AI now has total control over everything. As we move forward now I can focus on using a different Algorithm in order for the AI player to be a little less easy to guess. To get it all going I gave everything just and importance value and left the modifier alone at so it would not effect at all and I could check everything. This week I will push for getting the Computer to choose a building or building slot it wishes to nuke and figure out where it will be in the amount of turns a nuke will take to get to a location. Exactly how I will be going about this I am uncertain. For the first attempt, I will most likely be picking a spot than checking the following 4 and seeing how long each takes to get nuked. If the spots away is the same as the time, I would choose that location because it will collide quite well. However since we will want levels of perfection for the AI, I will also add a chance to pick the one before and after. As well as it won't use a perfect path at each section. So there is a chance it will miss, just like a player could miscalculate. After the Missiles are done, I will be sitting down with a designer and figuring out the importance values of every ability or action, and than modifiers in situations. This way they can also plan future events based off of what we have chosen. As well it will be made so the designers can go back in and change them when they want. Most likely to be loaded from an XML document that they can easily swap in and out for testing.
Sunday, February 1, 2015
Week 3
This week our team is getting ready to push for Greenlight presentation. On Monday we discussed during class what left was needed in order to achieve what we set for our Greenlight goal. For Greenlight you were to take what you had last semester and make changes and push for new concepts. In order to pass Greenlight you needed all these new features into the game in some shape or form, that would look reasonable. Our team chose to push for several; Tablet usage of the game was the first priority as its what we wanted the game to end on. Next we were moving away from the multiplayer basis of the game and creating a single player campaign. In order to move towards that we needed to have a faction system, level progression, and an AI implementation. So to show the designers needed to come up with the faction system, and I came up with a goal orientated AI implementation in the first few weeks which will get built farther upon in the semester. Later in the week when we had a basic form of everything we wanted I met with Alex and we went over changes in the next week. Since we believe we will pass Greenlight, we have pushed towards refactoring some of the Unity wrapper we are using. When Alex created the wrapper and system, it was built for player vs player and played on a pc. Since these are completly different from our new goals being single player and tablet, a lot of the organization of systems is no longer appropriate or reasonable to progress at a steady rate. We have already had some problems switching, and we have discussed many more. So this next week, we will start to get the system written for our new end goals. This will allow us to progress not only at a quicker rate, but our code will be much more legible.
Friday, January 23, 2015
Senior Production Week Two
This week we accomplished a lot during our Monday meeting and Wednesday meeting. We started to get ready to nail out some green light final details. So far the game has been built for multiplayer and so far that has been what is shown off. So since the game has been moved to tablet and that is the final end goal the decision for the single player has been the most important. We hammered out details about the map, as well as how a player will play through the campaign. This has been good and we have started to get ready to show it off. I personally am learning all of Alex's code and the level on top of Unity still. Since the game was built primarily for multiplayer, the code is as well. We are starting figuring out everything that will be added and needed before we refactor the code. This will allow us to plan for everything instead of changing it to change it again. Normally it wouldn't be a problem to just fix and update as needed. However we have a lot to add in such a short time. This means that we have to use every hour efficiently and going back to keep changing things is a waste of time. However we have started to get the single player in motion. The hardest part looking forward will be sending nukes. We have a nice system for the AI to plan which buildings it will create and which to upgrade. Those are based off values of importance then sent through to check which will be most necessary at that turn. For instance Chromium is needed more than Uranium for buildings, upgrades and nukes. So not only will it be higher on the list of importance. If they are about the same max amount the multiplier for Chromium will also be higher.This way the AI player will purchase a Chromium drill over a Uranium if those are the only two available. Of course if overall something comes out higher it will look and see what it can do and what it should do. We will have to work closely with designers to see how they feel the importance of nukes, chromium, uranium, and shields should be and work out balance as we move forward.
Friday, January 16, 2015
Senior Production Week one
Sadly my team didn't go forward semester, but I joined a great team WeLoveNuclearArmageddon and in this first week have gotten straight to work. I originally met with programmer Alex a couple days ago to start to look at how he encapsulated unity. As the group uses Unity as what is played the calling uses almost no Unity calls rather a layer on top of it that Alex wrote. With this I need to familiarize myself with the code and been meeting and fooling around within the project itself. This week I have fully tackled the event system and how to use specific calls. Some that send events just to its group and other that send to all active classes and object. This allows events to be sent for multiple reasons and have a couple reactions. As well we have just got the AI character to realize its his turn and end it. Now it has been started to move in the base AI class before we get into the factions having different weights and objects. Now looking forward in the week to come I want to start working with its decisions on buildings the locations and why. I am currently most excited to work with the missile targeting, which I believe will be a several week process. Overall I am very excited to get underway.
Tuesday, November 25, 2014
Final Week
As this semester starts to come to a close and the final week before our capstone presentations are underway every team begins a crunch time rush. Working the labs we see that most of the teams are present throughout the morning into the next. We as well are working on our pitch which all teams are critiquing with one another in an effort to help everyone out.
As we work on our final pitch we also need to make sure every piece of the game is in, even if its extremely basic. This is one of the criteria when moving forward we need to put in every feature that will be corresponding with our final product if we are to move forward. I believe that our game has a decent chance to move forward because it is something that has never been done to our knowledge and to our classes. This is also a large risk, what if that is a reason they are worried about letting us move forward. With this in mind it seems that it could go either way. We have had the same types of reviews in both faculty reviews as well as peer reviews during testing. The negative to our game it seems that it has a love hate relationship which doesn't allow for us any sort of middle or wiggle room with the sway. We need to perfect the pitch. However the day before the pitch we were told that it could be no longer than 12 minutes. Previous to this we have been told 15 minutes is were you need to be. This forced us to cut out a lot of material. This hurts the overall presentation for our group drastically. It also is a bit upsetting that we have been receiving updated information the day of or before something is to happen. Dates and times seem to change right before and some people have work because we are students and it tends to cause conflicts. If we were in the work force a last second meeting change to a half hour earlier where we were just showing up wouldn't affect us drastically. However working and being in school and all free time going to work the half hour earlier being told 3 hours before does hurt many individuals. Not only our group, but many feel there is a lack of communication this year and many things are not understood or told to right before it matters. This has a large impact on how we as a group feel and its not as positive as I would have liked.
As we work on our final pitch we also need to make sure every piece of the game is in, even if its extremely basic. This is one of the criteria when moving forward we need to put in every feature that will be corresponding with our final product if we are to move forward. I believe that our game has a decent chance to move forward because it is something that has never been done to our knowledge and to our classes. This is also a large risk, what if that is a reason they are worried about letting us move forward. With this in mind it seems that it could go either way. We have had the same types of reviews in both faculty reviews as well as peer reviews during testing. The negative to our game it seems that it has a love hate relationship which doesn't allow for us any sort of middle or wiggle room with the sway. We need to perfect the pitch. However the day before the pitch we were told that it could be no longer than 12 minutes. Previous to this we have been told 15 minutes is were you need to be. This forced us to cut out a lot of material. This hurts the overall presentation for our group drastically. It also is a bit upsetting that we have been receiving updated information the day of or before something is to happen. Dates and times seem to change right before and some people have work because we are students and it tends to cause conflicts. If we were in the work force a last second meeting change to a half hour earlier where we were just showing up wouldn't affect us drastically. However working and being in school and all free time going to work the half hour earlier being told 3 hours before does hurt many individuals. Not only our group, but many feel there is a lack of communication this year and many things are not understood or told to right before it matters. This has a large impact on how we as a group feel and its not as positive as I would have liked.
Tuesday, November 18, 2014
Week 11
As we come closer and closer to the end of the semester we are really forced to make a push on what is needed and what can be shown in an older form to be reformatted next semester. The goal is you have everything you want next semester, but in a more basic way so we can get everything in our vertical slice of our game.
As well we were attempting stage 3 this week which we passed, that felt very good and raised our teams morale. For the presentation however our group was quite lucky that we work extremely well together and have no problems with a lot of long group meetings. Devon our designer was sick and unable to present most of the design slides. I stepped up and gave the presentation for the stage. I was also not forced just to read each slide and put the class to sleep because we have worked in groups so often. I was able to take a slide know what it meant and how our group wanted it and give them explanations from how I saw it which may be a little different, but still in the same direction as we needed it to be. So even with this last second swap as I said we passed.
Now we started looking forward to the pitch and realized that we didn't have enough time in a day to do everything we wanted. Of course everything we want in the long run is hours among hours of polish and very little basic stuff to add. This works well overall, we were able to take what needed to be finished by next Saturday night(2 full days to bug fix) As well as what we could polish if the time arises. With all of these we feel a hundred percent belief that everything we need will be in the game to go on the Monday of presentations. Key points will be polished and in final states. As well as what we are uncertain of how they will finish for example the dreamlike blur will be raw, but still have the desired visual affect.
As well we were attempting stage 3 this week which we passed, that felt very good and raised our teams morale. For the presentation however our group was quite lucky that we work extremely well together and have no problems with a lot of long group meetings. Devon our designer was sick and unable to present most of the design slides. I stepped up and gave the presentation for the stage. I was also not forced just to read each slide and put the class to sleep because we have worked in groups so often. I was able to take a slide know what it meant and how our group wanted it and give them explanations from how I saw it which may be a little different, but still in the same direction as we needed it to be. So even with this last second swap as I said we passed.
Now we started looking forward to the pitch and realized that we didn't have enough time in a day to do everything we wanted. Of course everything we want in the long run is hours among hours of polish and very little basic stuff to add. This works well overall, we were able to take what needed to be finished by next Saturday night(2 full days to bug fix) As well as what we could polish if the time arises. With all of these we feel a hundred percent belief that everything we need will be in the game to go on the Monday of presentations. Key points will be polished and in final states. As well as what we are uncertain of how they will finish for example the dreamlike blur will be raw, but still have the desired visual affect.
Subscribe to:
Posts (Atom)