Max Yankov

Members
  • Content count

    9
  • Joined

  • Last visited

Community Reputation

133 Neutral

About Max Yankov

  • Rank
    Newbie
  1. I'm surprised that so many people in this thread treat the choice of array vs vector as a major early-time design decision. Array vs vector is implementation detail; expose methods that will allow you to iterate through components, add and delete them, so that the user of this system won't even know if it's array, vector or experimental probabilistic data structure on the inside.
  2. You already have working A* algorithm, and it takes the red wall into account. Can't you just provide information about other units to this algorithm in the same way you provide information about the wall?
  3. It's generally a good idea that you're trying to keep different mechanics modular, and expose public interface with information that these systems need.   However, quest and achievement mechanics (at least, how they're usually understood) are conceptually different: you don't get new dialog options because you unlocked some achievement, but you certainly will see new dialog options if you're on a certain quest (you didn't mention this scenario, but it usually exists). So, since the quest mechanic can affect the behaviour of dialogs and vice versa in a variety of ways, they need to be coupled closely. How exactly — depends on your exact goals and game architecture.   But if you're talking about achievements, statistics, user analytics and other mechanics that can't affect the gameplay in any way, you only need to pass information one way, and while achievements/stats/analytics need to have knowledge about NPC/Dialogs/Quests, the latter don't need to know about the former. So, as you suggested, I would expose a public interface with read-only access to all necessary data. Also, if your language has events, I would use them instead of public getters: that way, your achievement system can just subscribe to an event and then act on it, instead of constantly checking if the variables changed.
  4. Question about saved games

    Also, it's a good idea to write a lot of unit and regression tests for this, as changes in save-files can be one of the most painful for the players, especially in single-player, story-driven games. Save new binary saves every time you touch the load/save functionality, and ensure that before you commit, all previous versions of save-files can be successfully read. You may want until release to implement such a testing system, but then in the haste of final crunch and then immediately releasing a patch you may forget about it — and upset a lot of users. Especially if you plan to release an early version of the game for preview.   Maintaining backwards compatibility can be painful; personally, I prefer using migration pattern for that. Every time I change the format, I write a special migration method that converts the previous version to the current one, so that n to n+x save-file goes through x consecutive migration methods. This makes the main save/load logic simple and clear of all the special flags and exceptions for the older versions, and so easier to maintain.
  5. What language are you using? Threading and asynchronous logic is a very language and sometimes even framework-specific thing. In modern C#, for example, there are async/await, in Unity's version of C# there are coroutines, and in your language and framework of choice there are likely to be some specific mechanisms for this.
  6. I offer game design implementation & consultations for free2play projects, but I wasn't able to find fitting category in classifieds. Should I post my ad in "business"?
  7. Game designer, 5y exp, need career advice

    [quote name='Tom Sloper' timestamp='1336317041' post='4937784'] I'm suggesting that you work in your accustomed role (designer, producer) on an AAA-quality indie project, since you want to work in AAA. [/quote] Can you suggest how should I look for such a project (apart from founding one myself)?
  8. Game designer, 5y exp, need career advice

    Thanks for replies! @Azgur: I'm from Moscow. Yes, I've sent out a lot of resumes to various game companies all around the world — but all of them were "cold calls", as I don't have a lot of connections in the foreign game industry, and most of the time I didn't even get a reply. And when I did, they looked like template rejection letters. I've also got in contact with recruiters, and they've set me up for a couple of Skype interviews, but it goes pretty slow (I've started this quest in march). Could you shed more detail about these designers — what it took them to achieve this? @Tom: Thanks for the compliment! I hope I deserve it ;). If I understand you correctly, you think that an indie project would be the best option for me, right? But when I tight about going indie, I thought that I have the best chances on succes with something really small, Iike a web-based or mobile application, and it's still pretty far from AAA experience. It's not like I could create a PSN or XBLA title by myself: although I can code and model, I'm just not that good ;). May be creating a mod or level-pack for some big PC game with an editor would be a better approach to build a portfolio? It's a closer skillset to AAA production after all. I would really like to know what do you think about that.
  9. Hi there. I'm new to the forums, and I hope that I chose the correct forum to post this. I've been working in game industry as a game designer (and lately as a producer) for 5 years, with over 20 projects under the belt. However, all of the games that I've worked on we're free2play online games, mostly browser-based, and for the last couple years — social and mobile. Which's not exactly the AAA titles that I've dreamt to develop when I first got here. If'd live in USA or Canada, I guess I could just look for a job in this field — but there aren't any companies developing big single-player games around, and finding a company that would want to relocate a game designer is extremely difficult. So, here's my question — how should I proceed towards my career goal? May be I just should develop something myself as am indie, or get into coding (with which I'm pretty familiar with), or just get more experience in the field that I'm in.... I just don't see even a theoretical career path from where I am now to, say, being a director of a bug production in 10 years time, and that's really depressing.