From: Ris M. <rm...@ne...> - 2007-05-15 02:08:20
|
I just felt like writing down some wildly unrealistic future features tonight. This is all just off-the-cuff brainstorming material to read some time when you're bored and put in the back of your mind to chew on, or get excited about right now and write me back! :P I was reading over this rules variant called Unsung Heroes http://www.meccg.net/dforum/viewtopic.php?t=330 and it got me thinking ahead to a version >=2 feature. this scenario adds a set of rules which are somewhat complicated and it would be nice to have the software remind us about these special rules in effect. This makes me wonder if we could have some way to "mod" Ardanet with custom scenarios like this, made by the users based on some kind of custom scenario engine and editor. I think a lot of people are into designing custom scenarios like this, so it could be a useful feature. I don't quite have a clear enough vision of Ardanet to imagine exactly how it would be modded by players, but it's something to think about. For Unsung Heroes in particular, it looks like mostly deck-building restrictions. The part about no characters with mind >6 is a simple restrictions, but "except for your avatar's home site" is a trickier rule to define in a data-only kind of custom scenario file. There are also custom rules about playing resources based on your avatar's abilities instead of their own abilities (warrior/sage/diplomat kind of stuff) and I'm not sure whether we can even check the playability of resources like that. I'd like to if possible, just to give a user-overridable warning that a card appears to be unplayable by that character, and we have data to cover most of those cases already for anything simple like "warrior only." But it has to be just a warning you can ignore in case there are effects in play that would make this warrior-only card playable on this non-warrior character for who knows why. Anyway I'm just rambling now. My point was, the way Ardanet handles resource playing restrictions is still unclear, so it's even more unclear what to say about player-made custom scenario modules which modify that behavior. It would change if/when you get a warning. Still, it's something to think about in the back of your mind as we move forward. This also got me thinking about a slightly different idea: single player campaign scenarios for Ardanet. Basically you would create a deck for the usual kind of solitaire variation, drawing from only the hazards and playing as many on yourself as you can during your movement hazard phase, but we could enhance it to put permanent events in play at the start, add special rules, and make Ardanet track additional objectives. like I'm imagining a Hobbit scenario where you're programmed to be Gandalf and you start with the full Dwarven company at the Shire and have to perform a successful influence check against a hobbit on the first turn, not necessarily Bilbo. Then the movement is preprogrammed by the scenario to take you to most of the site cards from the Hobbit in the correct order and also programmed to throw a deck of very similar hazards at you while you draw from a deck of similar resources, to come up with a MECCG game that plays out a lot like the Hobbit but all shuffled around. It's a fuzzy idea. Maybe do it as a more free-form game starting as Gandalf at Rivendel and you get to go around recruiting/influencing the various dwarves before heading to the Shire to play a hobbit card and then moving on to the lonely mountain, etc. This gives me an idea for a "mystery scenario" kind of thing where you would only know your next objective, i.e. "bring 13 Dwarves, at least one of which must be listed on King Under the Mountain" and once you complete this, you find out your next objective is to "bring any hobbit character into play at his home site. The influence check is modified by -10 because respectable Hobbits simply don't go on adventures." So you go and play A Friend or Three with your company of 13 dwarves to win over Frodo, and so on, unlocking the next objective to guide you along a similar story as the Hobbit - or some other story you invent, which could open some cool opportunities - and you play it all out with MECCG cards, basically scrambling the Tolkien lore in a blender to come up with some fun stories and single-player scenarios. So maybe for version 2 or 3 we can come up with some kind of data-driven simplistic model to define custom scenarios like this, something that won't require hard-core programming, or. Here's a thought, maybe in a future version when we implement all of the card rules in the code, which I'd love to do some day, we will do that by making a custom scripting language to define the cards. Most of the cards' rules are made from very similar constructs and they follow a consistent logic, so it should be fairly easy to convert the wording of every card into a custom programming language if we create our parser around the consistent phrases they already use on the cards. The parser would give error messages where it finds wordings we haven't programmed it for, and we'd either enhance the parser for that new language and special kind of rule, or we would fix the wording of the card to fit our parser. This would take a long time and a lot of work but it would be fun and I'd love to have a completely automated game that really knows all the rules. Think how fast the games would go with a software assistant correctly interpreting all of the rules and cards for you? Telling you at all times every number in play counting all bonuses and special effects and capable of giving you the break down, as well as showing you which of the cards in your hand are currently playable. Then it's just a matter of enhancing this custom programming language for these additional kinds of rules to program the custom scenarios. Unfortunately, all of the above is a requirement before we can tackle the AI in version 5 or 6 or something. we need a fully programmed understanding of every rule and every card before we can program the computer to play the game. The computer will never build it's own deck, so it will be able to make heuristic decisions about each card based on, probably a power value we manually assign to each card, plus points for combinations with other cards in play, plus checks that it won't be immediately canceled, and so on. It's completely within the realm of possibility, but will take a lot of programming. That's more than enough rambling for one day. next time I'll shut up and work on programming some of the ideas we already have instead of adding to the work load lol :P -- Ris |