Yeah I feel similarly, homework for practice is only useful if you need the practice. There is a difference between understanding how something works and being proficient at it. The easiest way to see this is in a physical arena but the idea is the same. For example, I recently started learning judo. I can understand immediately how a throw is supposed to work but I need to do it dozens of times before I start to feel proficient. High school is mostly a joke but when you get to the point when your studies start to bend your brain you'll need the practice too.
I figured I would play along and do those busywork assignments as minimally as I could afford to keep my grades up. The one that always got on my nerves was the constant reminder to show my work. When I did show my work I would often lose points because my work was "wrong." Then I would have to go and explain that their way wasn't the only way and mine worked just fine. Stupid profs thinking they know stuff.
If you intend to go to college, keep in mind that your grades might be a factor in how much funding you receive. Unfortunately universities have a hard time determining if you have 80% marks because you are stupid or brilliant and lazy. Even more unfortunately academics, and so many other things, seem to be about jumping through hoops.
Oh man I wish I had mod points. This is one of the funniest posts I've seen here. Parrots and children sounds like an interesting but uneviable situation.
I play from time to time but my attempts at being an adventurer had some legal implications I didn't like. What we need to for someone to make a save/load function.
I agree that what makes a good game has little to do with its coding. On the other hand there are those of us who have worked game design and learned to code to facilitate that. Coding and game design are not mutually exclusive. Just a thought.
Seems like email would be the proper place for this discussion but as you are an Anonymous Coward...
As you can well imagine this is a very large project and I am kept somewhat busy by my studies (Ph.D. AI) so it is hard to nail down a "release date".
I have been developing in python for its ease of use and the script like nature of the deck player works in nicely. Due to the very low speed of python I am planning on converting to c or c++ when I have some more of the implementation issues sorted out.
Just now you can't play against the computer as I have not written out a command set (for referencing targets and priority resolution) once I sit down and write this I plan on using the same protocol as Apprentice for playing. This will allow you to play against the computer via Apprentice as well as watch two computers battle it out. (seemed silly to write my own gui, especially since I have already written an interface to Apprentice for another piece of software).
While my software is still under developement the genetic algorithm and associated fitness function (the real meat of the thing) do what you propose on a limited scale pretty well. At this time my program can optimize a deck (it need not be given a starting deck, it can turn 60 forests into a pretty mean stompy deck) to handle a specific strategy. Often the GA returns a deck that is a bit better than my best shot. However, it doesn't generalize very well quite yet.
Since Magic is a nondetirministic game, searching for the "optimal" stragegy is unreasonable. I can actually get very good results from a magic player without any play ahead (the branching factor for a game of magic is insane). One funny thing is that the GA will change a deck to limit the bad strategy of the player. For example (if you don't play magic good luck with this): Everyone knows that when playing against a black deck in OBC you should not cast any more creatures than you need due to Mutilate. My player at this point doesn't associate early game swamps with the possiblity of Mutilate. So the GA will create a deck that relies on fewer heavy hitters or on non-creature threats. Its really quite interesting to see what it develops.
I am not quite ready to send my computer to a tourney instead of me, but I have used it extensively in deck building and testing with very good results.
Yeesh, hold your horses. I'm workin on it.
Yeah I feel similarly, homework for practice is only useful if you need the practice. There is a difference between understanding how something works and being proficient at it. The easiest way to see this is in a physical arena but the idea is the same. For example, I recently started learning judo. I can understand immediately how a throw is supposed to work but I need to do it dozens of times before I start to feel proficient. High school is mostly a joke but when you get to the point when your studies start to bend your brain you'll need the practice too.
I figured I would play along and do those busywork assignments as minimally as I could afford to keep my grades up. The one that always got on my nerves was the constant reminder to show my work. When I did show my work I would often lose points because my work was "wrong." Then I would have to go and explain that their way wasn't the only way and mine worked just fine. Stupid profs thinking they know stuff.
If you intend to go to college, keep in mind that your grades might be a factor in how much funding you receive. Unfortunately universities have a hard time determining if you have 80% marks because you are stupid or brilliant and lazy. Even more unfortunately academics, and so many other things, seem to be about jumping through hoops.
Bah, I loved my calculator in math class. I have a degree in math now so it didn't seem to hurt me too much.
Oh man I wish I had mod points. This is one of the funniest posts I've seen here. Parrots and children sounds like an interesting but uneviable situation.
I play from time to time but my attempts at being an adventurer had some legal implications I didn't like. What we need to for someone to make a save/load function.
I agree that what makes a good game has little to do with its coding. On the other hand there are those of us who have worked game design and learned to code to facilitate that. Coding and game design are not mutually exclusive. Just a thought.
Seems like email would be the proper place for this discussion but as you are an Anonymous Coward...
As you can well imagine this is a very large project and I am kept somewhat busy by my studies (Ph.D. AI) so it is hard to nail down a "release date".
I have been developing in python for its ease of use and the script like nature of the deck player works in nicely. Due to the very low speed of python I am planning on converting to c or c++ when I have some more of the implementation issues sorted out.
Just now you can't play against the computer as I have not written out a command set (for referencing targets and priority resolution) once I sit down and write this I plan on using the same protocol as Apprentice for playing. This will allow you to play against the computer via Apprentice as well as watch two computers battle it out. (seemed silly to write my own gui, especially since I have already written an interface to Apprentice for another piece of software).
In any case thanks for the enthusiasm.
While my software is still under developement the genetic algorithm and associated fitness function (the real meat of the thing) do what you propose on a limited scale pretty well. At this time my program can optimize a deck (it need not be given a starting deck, it can turn 60 forests into a pretty mean stompy deck) to handle a specific strategy. Often the GA returns a deck that is a bit better than my best shot. However, it doesn't generalize very well quite yet. Since Magic is a nondetirministic game, searching for the "optimal" stragegy is unreasonable. I can actually get very good results from a magic player without any play ahead (the branching factor for a game of magic is insane). One funny thing is that the GA will change a deck to limit the bad strategy of the player. For example (if you don't play magic good luck with this): Everyone knows that when playing against a black deck in OBC you should not cast any more creatures than you need due to Mutilate. My player at this point doesn't associate early game swamps with the possiblity of Mutilate. So the GA will create a deck that relies on fewer heavy hitters or on non-creature threats. Its really quite interesting to see what it develops. I am not quite ready to send my computer to a tourney instead of me, but I have used it extensively in deck building and testing with very good results.