• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

457 Neutral

About alexjc

  • Rank
    Advanced Member

Personal Information

  1. Thanks!   Yes, it's always recorded.  Last year we had a pretty fast turn-around time for the AiGameDev members, aiming to do the same this year.  We'll also be posting more free videos from last year on social media (Twitter, Facebook) so stay tuned!   http://twitter.com/nuclai http://facebook.com/nuclai
  2. We've announced some pretty amazing talks for our nucl.ai Conference recently... At this stage the organization team is scheduling talks almost entirely based on what they want to see, so it's turning out well for everyone!   [attachment=27029:Screen Shot 2015-04-28 at 13.15.20.jpg]   From the Evolution of AI at Pixar to the Technology behind IBM's Watson, MCTS in Fable Legends (realtime) and Total War (turn-based), the AI Directors in Fortnite, ambient crowds in Assassin's Creed Unity, Behavior Trees and data-heavy animation techniques like Motion fields, and more to come...   Early Bird tickets are almost gone, but there'll be a batch of Early Worm tickets shortly after.  Also, if you're a student who want to volunteer now's the time as we only have a couple spots left.   Of course, anything you can do to help spread the word is very much appreciated!     http://nucl.ai/   Thanks! Alex, Petra & The nucl.ai Team
  3. Do you have a cool project to show off?  Did you work on interesting prototypes?  Have you learned something recently to share with others?  This is your chance!  The largest worldwide conference entirely dedicated to artificial intelligence in games is calling for speakers.     http://gameaiconf.com/vienna/announcement/call-for-speakers/   [attachment=26475:GAIC14_CrowdTuesday.jpg]     Any topics relating to AI in interactive media, training and simulations, and of course games are welcome.  In particular, we have tracks for the following:   • Character Animation • Real-time Decision Systems • Training and Simulation • Agent Behavior & Coordination • Procedural Content Generation • Virtual & Augmented Reality • Crowds and Ambient Life • Analytics & Data-Mining • Systemic Design and AI Direction     Just send an email to <events at aigamedev.com> to send in your proposal!  We're looking forward to reading them all.   Alex, Petra & The nucl.ai Team
  4. The Game/AI Conference 2014 will take place on July 7th to 10th, in Vienna/Austria.     CALL FOR SPEAKERS     Whether you're a professional working in the games industry, or a researcher in artificial intelligence, speaking at the conference is a fantastic experience.  So if you have a proposal, of course we'd love to hear it!   Send your email to <events at aigamedev.com>, or consider reading more about it here:       http://gameaiconf.com/highlight/call-for-speakers-volunteers/     If you have any questions (or ideas) for the conference, don't hesitate to let us know!     EARLY BIRD TICKETS     We're very pleased to announce that the event this year will take place at the prestigious Austrian Academy of Sciences, a magnificent and historical building.  It's located at the heart of Vienna's 1st district, equally amazing for both tourism and game conferences!       http://gameaiconf.com/highlight/2014-confirmed/     Tickets are available now.  You can secure a 50% discount if you buy now (and not for much longer), or if you're a student just email us <events at aigamedev.com> and we'll send you the details for a specially priced ticket!     Alex  
  5. I'd second your Markov model idea, and somehow try to work around the training problem.   If you build a simple semantic model using WordNet for example, you could reduce your training data required significantly.  So you'd end up learning at the high-level, <pronoun> <verb> <noun>, or possibly more detailed like <pronoun> <eat> <vegetable>.  I'm not sure how good NLP / NLG libraries are for Javascript but there are some awesome ones in Python that could help with this.   Anyway, cool project ;-)
  6. Hi,   Good question!   In general this problem is independent of how you execute the behaviors.  Most often, there's a separate system for picking the highest risk target and engage a single behavior to deal with that, there's a separate system for picking positions according to that primary target (and possibly a secondary one), etc.   I've rarely seen production systems take into account more than two threats for position picking, and even in the cases you have two threats, the second tends to be weighted a bit lower than the first to prevent indecision problems and static/boring gameplay.   Alex
  7. You could create a selector as you describe it, with a separate condition tree (read-only) and then a behavior tree (read-write). However, you'll find those are a pain to maintain in a similar way than your previous example. The way I use active selectors, I basically want the exact same as a passive selector, but instead running those higher priority branches every frame and aborting the lower-priority ones if those succeed. If that's the specification you want, then the implementation of it should be straight forward. (If not, just ask! :-) Alex
  8. Yes, ActiveSelectors are a nice solution to this particular example. You'll first need to figure out your "specification" for how that should happen, e.g. every frame check all nodes of higher priority than the currently executing one and if one can execute simply deactivate the current one. Once you have that specification, the code is relatively straightforward. I've done this differently a bunch of times, but most recently managed to get it working by mostly reusing the passive selector logic. Just write unit tests and it'll work out! Alex
  9. The [url="http://aigamedev.com/broadcasts/gameaiconf-2012/"]Live Stream[/url] from the Vienna Game/AI Conference will be available online free. By this time next week, Day #2 will already be underway. The broadcast starts around 07:00 UTC. I hope you can join us live to interact with the presenters and the attendees!
  10. First of all, thanks for taking the time to formulate a great question! It stands out among most others here :-) I haven't worked with RVO2, so I'm not sure why it's taking that branch. However, a few things may help:[list] [*]ORCA is a bit easier to understand from the perspective of the "solver" -- it's just linear programming. [*]Some algorithms have biases for turning in a particular direction, so it may be on purpose. [*]ORCA for instance completely rules out half of the search space, which would similar to what you're seeing. [/list] Have you tried drawing the velocity obstacles? See [url="http://twitter.com/alexjc/status/232167676523446272"]this screenshot[/url] I tweeted recently from last weekend's AiGameDev interview. The green planes are what ORCA gets as input, and the red circles (less obvious) are the velocity obstacle. It does make sense visually so you should be getting something that looks reasonable. Alex P.S. There's also a masterclass on the topic with Jamie Snape on AiGameDev but it sounds like you're almost there :-)
  11. [quote name='Kevin Dill' timestamp='1343926452' post='4965589'] Among the highest priority options, I use weight-based random. So in essence I'm using the priority to divide my options up into categories, and then only selecting from among the most important category.[/quote] Sounds like a behavior tree with localized utility :-) I like this approach better. Scales well and it's easy to author -- as you said. I think BT is more specific than just a "hierarchical framework" that you can plug stuff into, but that's worth as separate discussion. Alex
  12. [quote name='Kevin Dill' timestamp='1343763951' post='4964970'] I'm not sure what I would have meant by that. [...] That said, I don't know what connection I might have been thinking of between modularity and BTs. [/quote] We were walking out of Moscone North and heading towards West on Monday evening after your lecture that afternoon. The conversation started something like this... I pointed out that while you focused your lecture on modularity of inputs and setting up criteria, I just haven't been faced with this problem in the past. I haven't had unmanageable inputs since the information I need is often expensive; every additional input costs you. I asked you about modularity of actions / outputs, since it doesn't seem to be talked about anywhere near as often, and that's a problem I've faced significantly more often. That's when you said the line I quoted, which for some reason is burned in my brain (it made sense :-) "Ah, for that you need something like a BT." I can see how hierarchy would help make it manageable, but a full utility-based hierarchy (like MASA's DirectIA aka. behavioral network, or Spir.Ops' drive system) would potentially have a huge performance impact since you have to simulate the whole thing to get a decision. If you don't simulate the whole thing and "prune" space with Boolean conditions for example, then you're basically moving towards decision-tree style AI. For this reason, I tend to take the approach of BT first, then sprinkle utility around where necessary. It's easier to work with, it's modular, and it's fast as hell -- O(log n). The alternative, having an elegant utility architecture that you need to hack for performance, hasn't been as appealing for me. Alex
  13. I won't help with your implementation directly, RVO are very well documented. Here's my best advice:[list] [*]If you want a quick solution, use the available libraries such as [url="http://gamma.cs.unc.edu/RVO2/"]RVO2[/url]. [*]If you want to implement it yourself, go through the papers. [url="http://gamma.cs.unc.edu/RVO/"]This one[/url] isn't a bad place to start. [/list] I hope that helps get you started! Alex
  14. I'd agree with Alvaro's advice. I've found utility very suited to managing relatively simple decisions (limited number of outputs) from arbitrary information (large number of inputs). There was a lecture at the AI Summit by Kevin Dill and he emphasized the modularity of input "criteria" above all. I asked him about modularity of decisions/output and he said something like: "Sure, for that you need a BT-style structure." If you have large numbers of possible outputs, and want to express a large variety of special cases that can combine together, then behavior trees or hierarchical planners are my recommended option. Utility has been found not to scale up very well in these areas (e.g. performance), and games like the SIMS 3 famously moved away from "utility everywhere" for these reasons. Alex
  15. The Vienna [url="http://gameaiconf.com/"]Game/AI Conference 2012[/url] is the largest independent event dedicated to artificial intelligence, gameplay and character animation. Last year it brought together over 300 developers from around the world, including programmers from the leading European studios such as IO Interactive, Rocksteady, 2K Czek, Splash Damage, Ubisoft – and many more. This year, most sessions have been [url="http://aigamedev.com/open/upcoming/2012-vienna-preview/"]officially announced[/url] and the full schedule will follow, including the following titles:[list] [*]BATMAN: ARKHAM CITY from Rocksteady Studios [*]HITMAN: ABSOLUTION from IO Interactive [*]GRiD & F1 from Codemasters [*]SPEC OPS: THE LINE from Yager Development [*]VESSEL from Strange Loop Games [*]MAFIA 2 from 2K Czek [*]MOTORSTORM: APOCALYPSE from Evolution Studios [/list] There are also some tutorials (included in main conference) and workshops (standalone) on the topics of:[list=1] [*]Procedural Character Animation Workshop [*]Behavior Tree Logic Workshop [*]Monte Carlo Tree Search (MCTS) [*]Data-Mining and Pattern Recognition [/list] [url="http://gameaiconf.com/"]Tickets are available[/url] from 96€ for the next few weeks, and if you're a student we have a handful of Bronze tickets at 48€. Keep an eye on the official website or @GameAiConf on Twitter for details. If you have any questions don't hesitate to ask! Alex Champandard