Jump to content
  • Advertisement

markypooch

Member
  • Content count

    225
  • Joined

  • Last visited

Community Reputation

1321 Excellent

About markypooch

  • Rank
    Member

Personal Information

  • Role
    Programmer
  • Interests
    Art
    DevOps
    Programming

Recent Profile Visitors

8727 profile views
  1. markypooch

    Evolving neural networks

    yeeeah, I guess I didn't consider that, that's a good point. Idk, mocap equipment isn't as elusive in price as it you used to be, no? I mean, you can do some pretty legit stuff with an array of kinect cameras under a grand. Sure, nowhere near AAA quality, but that's out of scope in 90% of cases here anyways i'd imagine.
  2. markypooch

    Evolving neural networks

    Does any of that make a game more fun? You seem to be missing the fact that Game Development is considered a part of the entertainment industry. Why throw a neural network at my soccer players face when I can just mocap/tween? Will it really matter that much to the player??? You seemed to be stoked about this tech, that's great, but it don't think it has the far reaching implications that you think it does.
  3. Hey there, IADave has a point, typically this thread is reserved for Game AI, and not Natural Language Processing, or other forms of knowledge-based mining algorithms. I haven't worked much with NLTK offered by Python, but have used Naive Bayes/ID3 to perform sentiment analysis on sentences. It sounds like you are working with a Supervised model. That is, you have labeled training examples presented to your algorithm on what constitutes its classification. Where the disconnect seems to be is that it sounds like you aren't using a Bag-of-words approach, but instead a keyword approach, how would your current algorithm attempt to classify, "Our engineers will be launching a rocket into low-earth orbit this afternoon."? Unless you know in advance the type of sentences that your algorithm will be expected to classify, fixating on keywords that you think are relevant may not be the best approach. Instead, I'd advise a simple occurrence + bag of words approach. That is, keep track of all unique words, and their occurrences in your training data in relation to its training label (Acquisition, merger, launch, ect.), remove stop words (and, its, the, ect.), perform stemming on your words, ((programmer, programming) == program), and present that data to your algorithm to have it determine what qualifiers in a sentence given the training data encompasses a sentence with 'x' label. I don't know the level of abstraction you are working with, but that doesn't sound like an issue you should have if you are working with a bag-of-words approach. NTLK is probably one the easier frameworks out there to quickly perform Natura Language Classification. I think it might help you to not start with a high-level framework, but to actually implement an algorithm yourself for learning purposes. Take a peek at the link provided to implement a simple supervised classifier yourself https://monkeylearn.com/blog/practical-explanation-naive-bayes-classifier/
  4. The other approach I've considered in lue of grinding is enforcing a better notion of party composition (Does this battle scenario warrant a fighter/White Mage/Archer, etc. or a Thief/Black Mage/Necromancer, etc. ) In conjunction with leveraging the terrain the battle takes place in. Effectively a tactics clone that throws stats like HP/Vitality out the window, and goes with the idea that a sword swipe across the mid-drift is indeed a killing blow without some immediate medical intervention on the field, and the idea of sheltering members of the party behind obstacles to completely negate projectiles, and flanking to overcome defense and agility modifiers. Most RPGs have this, but the stakes could always be higher, e.g. an arrow to the thigh/chest without armour despite your level should hit a major artery, and cause your movement to be impeded, and start a clock of you bleeding out (bloodied as it were) until a white-mage can heal you. Of course, making something like this work without being overly punishing on the player would entail its own complications, but I do believe it can work. Leveling up/Grinding is a staple of both Western, and Japanese RPGs, but it's not a requirement imho, just look at FF VIII. It discouraged pure grinding as enemies leveled up beside you making it a break-even award. Instead you were incentivized to use the junction system instead and to keep the party's average level low. Really, when it comes down to it. A lot of RPGs feel a bit artificial to me when leveraging vanilla leveling systems with incremental increases with stats. I guess it's the idea of going from a level x nobody to a level xxx demi-god within the duration of the game that irks me a bit. I like the idea that despite your speed/defense, armor, magic, intelligence, at the end of the day, an arrow to the knee IS, IN FACT, an arrow to the knee.
  5. I mean, you COULD go the Phil Fish route, and tell them they look like shit :D
  6. markypooch

    Dealing with Fights in the Team

    If you haven't figured out yet, Computer Scientists are extremely relatable, charismatic, and always open-minded to new ideas, or different perspectives that challenge a lot of their pre conceived notions. In summation, these things happen. Most of the time they'll naturally blow over. In the off chance it doesn't, and you are in some form of position to where you are expected to, "lead" the team, you need to break up the ruler contest. Sometimes you need to pull rank, and tell everyone to focus on their work. When you're a manager, or team lead, you can't expect to always be friends, or buddy-buddy with your co-workers. If this is a small development house, or no one who occupies a role as a, "lead" then maybe there needs to be one? Also, remember to put things into perspective for them. Is this point of contention they are fixated on trivial? Is it something you'd expect mature adults to walk away from for a day to have let go, or to have seen the others perspective?
  7. I'm not sure how Total War does it (Also a huge fan of the series) but if everytime I attacked a province, and l do a quick save (Cause I got whooped by an AI), and reload, and decide to tool with the composition of my army (before the next attempt at assault), only to find that the AIs army changed without them using a scout (Remember Total War uses these types of units, Shogun = Ninjas, Warhammer = Heros, Rome = Centuari, ect. even the AI uses them making me believe TW takes a more organic route), or anything else, Id find that a bit mood-killing. You can still make it work, but you'd have to be crafty for your average RTS player not to catch on. Also, terrain makes a HUGE difference. In Total War if I route my units through certain terrain I suffer attrition, and movement penalties (Enemy Territory, moving during the winter, ect.), and on the battle map soldiers can suffer fatigue when being asked to run everywhere they go, or being asked to run to the top of a hill. In fact, side topic, one of my favorite tactics in Shogun 2 was placing my yari/yari samurai men at the top of a hill, and having the opposing AI charge their troops towards me (Shogun 2s AI was easy to antagonize into bad decisions ). By the time they ran into my wall of pikes their morale was gone, and they were exhausted. I could stretch 1 troop to 4 troops of the AIs (in most scenarios) Now, for a risk style game I still feel like you can factor this in. Tanks (and most vehicles to be fair) work best when you have flat, level, non-treacherous, dry terrain. Mountain ranges, regions that are experiencing rains (muddy), ect. should incur a penalty of movement (Have you seen a truck in the mud?), and a penalty during battle. These can be as simple as arbitrary deductions of base-line stats depending on the environment.
  8. One organic way to approach this is to leverage terrain, and it's limiting factors. Suppose you have a country that's surrounded by treacherous mountain ranges on several flanks, you could impose penalties on world map movement (Based on the composition of the army), or in battles to certain units (tanks, vehicles, ect.) a stalled tank is a sitting duck Also, while tanks are powerful, they should have at the very least one set back; they aren't cheap. Further still, they shouldn't be so easy/time conducive to construct that a player can throw 12,000 tanks at any problem This way the AI chooses it's units to best fit it's home terrain, or the terrains of the adjacent nations it seeks to conquer. Also, you should leveraging scouting as well. AIs shouldn't be able to cheat, and know the composition of an army, and vice-versa for the player. But, with a successful, but dangerous (for your expensive scout) mission, why not? Panzer/Tank hunters should be relatively cheap to make as well, considering that the weakest part of any tanks is it's tracks, and a well placed sock covered in axle grease, and filled with c4 can blow the tracks off a tank (So essentially just infantry soldiers running around with sock bombs)
  9. You should check out specular maps. Builds off of the logic of normal maps, except you are determining the specular intensity of each pixel leveraging your bumpmap normal, and an additional texture for your specular map. It's been a bit since I've last implemented it, but, depending on your environment, Rastertek did an article on it for D3D http://www.rastertek.com/dx11tut21.html
  10. markypooch

    How to start learning machine learning

    Machine Learning is a large field, and often gets mixed in with Deep Learning (Which is a subset of the field). Machine Learning really is open to anyone who can code, and has a basic understanding of linear algebra (though a more fundamental understanding doesn't hurt). It all comes down to the problem you are trying to solve, the model that best represents that problem, and the entailing solution, and how much visibility you want into the process of that algorithm. There are two general classes of Machine Learning that algorithms typically fall into. Supervised Learning, and Unsupervised learning. Supervised learning requires that you present the algorithm with labeled training examples for the feature extraction, and processing. Unsupervised learning involves no training data, but an unmarked data set, and letting the algorithm attempt to cluster similarities in the dataset together. Two common algorithms that are used heavily in Machine Learning (Under the context of supervised learning) is Naive Bayes, and ID3/C4.5. The former being quite good at giving classification results with minimum training data, and excels at generalization, and doesn't suffer as much to over-fitting (Too much correlation with your training data entailing losing the ability to generalize effectively about new data). One draw back is the naive part due to variables in a feature set having independence from one another. This normally would pop up in a dataset where features are highly correlated by nature, though, Naive Bayes can still give good results in any case. ID3/C4.5 are decision trees. You know the kind management bring up in conferences? These are admittedly a bit different then that, but follow the same general logic of: If x then this, if y then this. Yeah, they can also be considered under the machine learning umbrella due to how they are built from using labeled training data, and distilling said data with entropy formulas to find optimal splits in the tree. One common issue for most decision trees however, is over-fitting your training data. (The process of which your tree has become perfect at classifying your training data, but is unable to classify/or generalize new data as the "progression-ary" logic of stepping down the trees nodes/Selected features has become too correlated to the initial training data). This problem is normally combated with keeping a subset of the training data on hand, and running it against the tree as if it were unseen data to find nodes that you can potentially prune to give better generalization results. The cool thing about both of these algorithms is that I feel even a motivated beginner could homegrow/code these out without substantial help. However, there are all sorts of other algorithms, random forests, SVMs, linear regression, and the list goes on, and on. ANNs usually fall into the deep-learning categories, and excel in certain tasks (image detection). However, using them for Sentiment Analysis, or Text classification is usually a bit much when a Bag Of Words/Bayesian Approach can give similar results, with similar accuracy, less probability of over-fitting, less black-boxish (though arguably multiplying thousands of probabilities together when computing the algo isn't much better ) and easier in general to code/tweak. I'd recommend checking this out as well. It gives a good, non mathematical perspective of a typical bayesian classifier. It's beginner oriented, and the author articulates himself well enough that what he covers is easily transferable to code. https://monkeylearn.com/blog/practical-explanation-naive-bayes-classifier/
  11. markypooch

    Advanced AI in Games?

    I suppose one metric that could be gauged by modern, "Deep Learning" in game development is adaptive difficulty. The trick would lie in the Goldilocks zone where the player is challenged, but not over-whelmed, and not given so much leeway as to lose interest. Arguably though, one would not even need to leverage an ANN for this. A whole other slew of (examinable) non-black box Machine Learning algorithms could fit this bill.
  12. markypooch

    Animating characters on sloping ground

    Maybe having an up-vector for the models that points in the same direction of the face normal of the underlying polygon? And Orientate your model to coincide with that?
  13. Hmmm, I believe both styles you mentioned are examples of 3rd person cameras. The only qualifier being the Playable Character being rendered in a 3D environment within the view frustum so as the player can see them. Usually the PC (or the camera) will be latched, and offsetted so that they both stay within a relative position of one another regardless of where they are in World Space. Insofar as turning the character with the camera being turned is a matter of gameplay, and style. I wouldn't care for such a feature in a platformer, but in other genres, or sub-categories (actually thinking of the Hog vehicle in Halo) it works ok. I don't know your background in Game Development, or what experience you may have in any frameworks/engines/APIs, but if you want some nitty gritty on camera systems this site has plenty of articles
  14. What's wrong with being a Sonic Ripoff? The early Sonic games kicked butt. Unless you're ripping off the new ones O_o Take what they did in Sonic, and improve on it. Taking in what they did, distilling it, see why it worked, and do it better. Greatness is usually achieved by standing on the shoulders of those who came before you.
  15. It's almost impossible to find design that is 100% unique in this day, and age. Art Style, Good Design, and more important than all of that is the fun factor. If the game is fun, that's all you really need. Of course, the former certainly lend their hand to the latter. But game design should never be focused in making it as "Unique" as possible, but as intuitive, and fun as possible. If that's a philosophy that is echoed a lot, than maybe there is a science to that.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!