[new site section: some topics not yet full or updated]
around BfW game itself
game rule alternatives
Well, I have many things in mind, a few implemented, also some related to baby Wesnoth below.
---> Wesnoth rules
an extreme minimal version
This is as of now only a starting design study and a loads of random thoughts. Baby Wesnoth is first intended as a testing platform for AIs, game rules, game elements and such… Then possibly a solid startup core to incrementally grow another game.
Nothing online as of know, much to come.
---> baby Wesnoth
this is a styling test
"statistics on multiple & variant scenario autoplays" — clear?
If you find a better way to express this in a compact manner, let me know, please!
Well, the purpose to allow running a scenario numerous times, also with possible variants, and then get statistics on each & all runs. I let you imagine the use potential of such a tool. The main limitaton is that obviously there can only be AIs playing. Anyway, hope it's clear…
The feature would be driven by a python script. There is a thread about this on the Wesnoth forum for coders — and a few more on specific issues.
Issues, namely, are numerous and were, solved except for a single one which presently blocks me totally — that savings are not done when there is no human player. A shame, because I have the main parts ready: a parser for statistics generated by the game engine (into save files, precisely); and a mini-language to configurate the script, especially to specify game variants, as well as parser for this, too. But I can't find a way to get the stats/saves themselves. Note that this savegame feature would work for humans playing, too — lol!
In other words: I'm stuck, helpless, and I hate that!
EDIT: Yep! seems a solution exist: someone pointed me to using replay savegames instead of normal ones. Not only they hold all data I need (esp. statistics, for any reason), not only they are done at end-of-game (while with standard saves I needed an ugly trick because they are done at start of turn), but they are not skipped for AI-only games!
The page pointed below will be created when I have examples running.
---> auto stats
WML (Wesnoth Markup Language) is a custom language designed to allow players create game content themselves, ranging from a single new "unit" type to a whole "campaign", through custom game rules. The thing is WML is supposed to be simple & user-friendly, especially for newcomers to programming.
in python, very easy base, tricky issues
Strictly grammatically parses WML code, after preprocessing and before semantic analysis — see below on this topic. Generates a very practicle parse tree, for python coders, which root node is a top section. More or less tested & debugged; also able to cope with metadata notes needed to write reference code — see below reference generator.
--> WML parser
a language to define WML semantic content
The thing is that WML's grammar, like eg XML, is a pure framework for any kind of content. The said content, indeed depending on its meaning, is specified by a semantic schema that describes the expected organisation & terminology of source documents.
Funnily enough, a semantic schema, like any kind of grammar, itself needs a language to be expressed. I defined two, the first one using a custom grammar about to be abandoned. The new one uses WML's own grammar, lol! And it would deserve a semantic schema of its own, lol bis!!
There is thread on this as well on wesnoth's forum.
---> WML schema language
A python tool script to automatically produce, from reference WML code, both semantic schema & user reference for the concerned part of WML, be it a whole file or a little section. Applied on all files or main section types, it would generate a whole semantic schema and reference manual for the language. It uses indeed the WML parser (to parse first the source, then the schema).
The same thread also talks about this — actually, I had the idea while exchanging there.
---> WML reference generator
Another python tool script to validate a given document — complying with WML grammar — against a semantic schema for this kind of doc. Id est check the expected terminology and organisation, inform on outcome and generate a report.
Needs to be updated to comply with the new semantic schema language using WML grammar itself.
a study for incremental evolution of WML toward real clarity and ease-of-use
No comment yet on this topic (avoid flame war ;-). Will come very soon (end of october 2009).
refounding WML from scratch
This was a "project of project" mainly born from my frustration in using (rather: trying to use) WML as is and a whole collection of "great" & reasoned ideas on the topic… Actually, this will probably never happen for several reasons:
- I'm working too much on present WML.
- As not yet mentioned above, soft evolution from current base can lead far toward a really good language, actually close to my previous ideas.
- I would rather in the future design a non-wesnoth specific language.
The latter would be a mix of description (config) and scripting language, probably influenced by both WML for description & (a very limited subset of) python for scripting. But in fact it would rather be a general framework usable for a whole range of turn-based games, designed to allow defining specific languages for given games using, again, a semantic schema. What would be fix is the overall grammar (structure, syntax, morphology) and basic control statements.
Page pointed below will be created if/when there is something to put in ;-)