- JasmineWarrior
- |
- Exalted Member
I must admit, this looks to be a very promising idea, although I have a few minor suggestions.
The choice to incorporate player placeable AI units into multiplayer maps through forge is certainly something I think many would appreciate, even if such a thing were restricted to customs only (which I doubt). Sadly it brings with it a few "issues" as well, which I shall explain below. Aside from that, I think you idea holds a good deal of potential.
One of the largest issues with including bots in any multiplayer game is the "pathing", or the system that tells the bots how to get wherever the AI tells them to go. Without proper paths AI enemies will simply stand still, walk into walls, stroll off cliffs or move about in other undesirable ways. Now take the map Guardian, for example. Without proper paths, you would find that any AI enemies would either stand still or attempt to chase opponents from behind walls, or be unable to move from one level to the next. Were bungie to include a prebuilt path system, the AI on the map would function accordingly, jumping gaps from the center to lift room, utilizing all lifts and (hopefully) avoid diving headfirst off cliffs.
Now at first glance this may seem to function just fine for your in game maps, but as soon as one introduces the forge things become a good deal more complicated. Now let us assume bungie built and fully pathed a much more customizable map than Guardian, such as Foundry. Assuming a default layout, the AI would function properly, jumping and moving around the map with at least some semblance to your average human being. But as soon as someone removes all the geometry, bungies ever so thoughtfully constructed pathing system is completely useless, as the entire map layout can change into a million different combinations, ones that the old path "nodes" will no longer match.
As I see it, there are two realistic ways to solve this problem and still include an AI system in forge and multiplayer.
First, bungie could try and code an adaptable AI, one that fully recognizes surrounding geometry and utilizes it based on predefined parameters. These parameters determine if, for example, an Elite could use the object as cover, climb over it, destroy it when an enemy is nearby, ect. The problem with this, however, is that such an AI (to the extent of my knowledge) would require not only immense amounts of processing power (as in supercomputers) to function adequately, it would also be very, very difficult to program. (Note that this type of AI does something similar to what any human being would when playing halo. It analyzes the object and its purpose, and then relates this in context to the rest of the environment, then precedes to store this information and use it accordingly. And a human brain is immensely more powerful then any household computer. It is possible to have a very simplified version, however, but when compared to option #2, it is somewhat useless.)
A much more feasible (in my opinion) option would be to have player placeable "path nodes".
These are basically objects visible only in forge that a person would place onto their completed map that direct the AI around the geometry, giving direction as to where it must jump, use a lift, ect. These can even be extended to include vehicles, without adding to much to the complexity (GUI wise, not code wise).
Basically, these things could look like little glowing balls or something, and in between them would be a variety of lines. each of these lines would connect to a different node, and this would be controlled by the player (for example, the player sets node A to connect to B and C, and little lines appear joining them directly). Now what the AI does is follow these lines, and depending on the path type, it determines what actions it can take (if A is connected to B and C, but not D, and D is only connected to C, then the AI character runs from A->C->D. If the character decides to move to B from D, then it moves from D->C->A->B.)
In addition, the lines that connect these paths could be "activated" in forge, and a menu would pop up that controls the type of path that joins the two points. If the path is just a straight walkway, it could be set to normal, default, w/e. If there was a gap between A and B, then one would set the path to a "jump" type of path or similar to inform the AI it must jump to get from A to B. This could of course be extended to vehicles, and various other special paths that may be required.
The only other issue I can see people "worrying" about is perhaps lag, to which I have a fairly simple answer. If 4 player campaign, with perhaps 20+ enemy AI on screen at once is reasonably acceptable network wise, then perhaps 15 human players and 5 AI, or some such combination of the two, would stay within a reasonable bandwidth limit (or at least so I hope, there are some pretty terrible connections out there).
Sorry for the long post,