1.0 Feature List

Discussion among members of the development team.

Moderators: Forum Moderators, Developers

jzaun
Posts: 45
Joined: October 24th, 2003, 7:06 pm
Location: Waikiki, HI
Contact:

1.0 Feature List

Post by jzaun » December 14th, 2003, 6:02 am

The list below is what is required before Wesnoth 1.0 will be released. Items not on the list may be included, but until everything below is completed the developers won't consider Wesnoth to be 1.0 quality. Once the listed items are completed there will be a hard freeze on the code base. During the hard freeze only bug fixes and translations will be committed.

If you would like items added or removed from this list please post a reply containing the change and why the change should be made. Any changes to the list will have to be approved by Dave.
  • Single Player
    • The full campain for Konrad should be complete
      • Full storyline in intros should be done (text, not nessisarilly graphics)
        The map dots should be done right
      Other campains should have at least four scenarios
      Tutorial should be 4-5 scenarios that teaches how everything works, with idot-proof instructions/directions
    Multiplayer
    • Full hotseat support
      All loaded values should be set -> players can't remember
      Player config should be live -> when one player changes an all players see the change
      Game should not start untill all players click I'm Ready
      Any change to player settings should clean I'm Ready status for everyone
      When a player disconnect (for whatever reason) game should continue with that person either dead or as an AI (all players left should vote)
      In-game chat
    Grahpics
    • All included units should have full animations
      All included tiles should be compleate with transitions
    Units
    • All wanted elvish units should be done
      Work should start on adding undead/orc/dwarvin/etc. units
    Music
    • There should be a win/lose track
      Each race should have 2-3 in game tracks

ziberpunk

Re: 1.0 Feature List

Post by ziberpunk » December 14th, 2003, 4:03 pm

jzaun wrote:
  • Single Player
    • The full campain for Konrad should be complete
      Other campains should have at least four scenarios
      Tutorial should be 4-5 scenarios that teaches how everything works, with idot-proof instructions/directions
I think that a single scenario option should be added in single player. This can already be done using multiplayer and selecting 1 player and the rest AIs but it should be in main menu. Random maps could be used for this purpose.

azlan
Posts: 73
Joined: November 23rd, 2003, 5:31 pm
Location: Nödinge in Ale in Sweden.
Contact:

1.0 list..

Post by azlan » December 14th, 2003, 4:09 pm

I agree.. And we have to make a good ramdom map generator.. :)
|----------------------|
| The Lion is Back |
|----------------------|

ImNotHere

Yup =D

Post by ImNotHere » December 16th, 2003, 1:35 am

Yeah, a random map generator would allot of replay value...

Dave
Founding Developer
Posts: 7067
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Re: Yup =D

Post by Dave » December 16th, 2003, 5:47 am

ImNotHere wrote:Yeah, a random map generator would allot of replay value...
This is the kind of thing that would be a great opportunity for a new coder to become involved: it's interesting, challenging, and yet can be well-encapsulated behind an interface so you would need minimal understanding of existing code.

Further, it could be written using either C or C++-style code. Any brave coders willing to rise up to the challenge?

We already have a Perl-based map generator that could be ported, if anyone is interested.

David

miyo
Posts: 2201
Joined: August 19th, 2003, 4:28 pm
Location: Finland

Post by miyo » December 16th, 2003, 6:28 am

Perl based random map generator is enough for me *grin*

- Miyo

Bazarov

Challenge

Post by Bazarov » December 16th, 2003, 4:04 pm

I am seriously considering standing up to Dave's challenge.
However, a map-generator alone probably isn't enticing enough. How would a scenario generator sit with you all? That is, go the next level and add generated enemies and goals? A map alone isn't all that useful, and, of course, they will be generic without some sort of internal motivation (i.e. lots of mountains, or lots of forests, a river crossing) that could also lead towards scenarios as wholes. So, starting with 'ideas' or 'models' generate maps that go with them, rather than just random maps.
I suppose everything I need exists to make a standalone generator, although feedback and ideas would help.
I work in C mostly, I don't care much for ++, but it shouldn't be a pain to integrate it: read a configuration file, output a scenario file.
My goals are rather 'ambitious' and personal, so if anyone else is considering doing a map generator, they should not be dissuaded from trying.

Dave
Founding Developer
Posts: 7067
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Re: Challenge

Post by Dave » December 16th, 2003, 5:05 pm

Bazarov wrote:I am seriously considering standing up to Dave's challenge.
However, a map-generator alone probably isn't enticing enough. How would a scenario generator sit with you all? That is, go the next level and add generated enemies and goals? A map alone isn't all that useful, and, of course, they will be generic without some sort of internal motivation (i.e. lots of mountains, or lots of forests, a river crossing) that could also lead towards scenarios as wholes. So, starting with 'ideas' or 'models' generate maps that go with them, rather than just random maps.
I suppose everything I need exists to make a standalone generator, although feedback and ideas would help.
I work in C mostly, I don't care much for ++, but it shouldn't be a pain to integrate it: read a configuration file, output a scenario file.
My goals are rather 'ambitious' and personal, so if anyone else is considering doing a map generator, they should not be dissuaded from trying.
Sounds interesting! Doing it in C wouldn't be a problem, we'd just encapsulate it.

David

Integral
Posts: 244
Joined: December 14th, 2003, 9:36 pm
Location: Pennsylvania

Re: Challenge

Post by Integral » December 17th, 2003, 12:37 am

Bazarov wrote:I am seriously considering standing up to Dave's challenge.
However, a map-generator alone probably isn't enticing enough. How would a scenario generator sit with you all? That is, go the next level and add generated enemies and goals?
I was going to post something like this elsewhere, but this looks like a good place.

No-one has said where these generated maps and scenarios would go, but my assumption is you're thinking about one-off games -- ie, "play a random game against the computer/other people". This is fun, but I would like to advocate the use of some elements of random maps in the campaigns as well.

I got this idea when I played the Sceptre of Fire level. A big part of what made it exciting was that I didn't *know* where the Sceptre was hidden, so I had to search in a hurry to find it before time ran out (I actually finished on turn 56/60 or so, and it was only by sheer luck that I didn't run out of time). Now, if I were to re-play this level, I could go straight for the Sceptre (not wasting time trying to break through the eastern hordes, for instance) and probably finish without much difficulty.

This greatly diminishes the replay value of the campaigns. However, it occured to me that there is a game that has already solved this problem: Nethack! For those of you who haven't played it, almost all the levels in Nethack are randomly generated in some way. There are a couple categories:
  • The map and everything in it are randomly generated based on some general parameters. For instance, the main dungeon is composed of rectangular rooms separated by corridors, while the Gnomish Mines are wide open areas with irregular edges.

    As a sub-case, some dungeon levels have special (or even unique) rooms in them, like the Oracle.
  • The map is loaded from one of several possible files. The effect here is to randomly choose between several pre-generated maps. Some elements of the map may still be randomly generated: for instance, in Minetown the geography within the town is predetermined, but which shops appear in the town perimeter, and the tunnels surrounding the town, are random.

    Some levels -- for instance, the Astral Plane (aka the final level) -- only have one possible map. The placement of things is still random, however, and this plays a big role in the Astral Plane: there are three altars in the level, and you have to find the one for your particular god. Unfortunately, some really terrifying monsters are chasing you while you do this. The level is (in my total of 2 times playing it) a frantic rush to find the right altar before you die.
Sooo, I'm sure everyone is wondering what the heck this has to do with Wesnoth. I don't think it would make sense for all levels to be completely random, but you could still try a combination of:
  • Support a random choice of map for a scenario
  • Support the random placement of items in a scenario
  • Support some features being randomly generated within an otherwise fixed map. For instance, you could allow villages to be randomly placed, possibly given a probability distribution from the level author. Similarly, the position of enemy leaders could be randomized.
  • Scenario elements could also be perturbed: for instance (although this might mess with the plot/world map too much), at the Crossroads, you could either have to run Konrad NE or NW. (ok, it was a lousy example..)
I've only skimmed the scripting language, but you might be able to get a lot of this by doing something like: [under appropriate translations to your actual language]

#define SOME_VAR random_choice(DISTRIBUTION)

where DISTRIBUTION could be uniform, gaussian, otherwise predefined, a combination of several distributions, etc.

#if SOME_VAR = 0
.... stuff here .....
#endif

etc

Daniel

Dave
Founding Developer
Posts: 7067
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave » December 22nd, 2003, 10:38 pm

Integral,

I agree that having some elements of randomness in the campaign would be good. For instance, I would like it so that at Muff Malal's Peninsula, the contents of the three temples are random (with the only requirement being that Moremirmu, the White Mage, is in one of the temples). I have an idea of how to do this basic 'item randomness'.

I have written a map generator, which is fairly configurable, in C++ that is now integrated into the game. Unfortunately it only generates above-ground maps, not underground maps, and you are quite right that maps which contain shroud (i.e. underground maps) are the maps that would benefit most from randomness in the campaign.

I plan to look into NetHack code at some point to see if any of its map generation code would be useful to port across. Otherwise I'll see about writing an underground map generator.

David
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming

accursed

Feature Request for 1.0 Better UI for loading saves

Post by accursed » January 6th, 2004, 4:03 am

It would be useful if either

1) You could browse your filesystem for saved games (so that I could have distinct folders for easy, medium and hard saves).

or

2) More metadata about saved games was available before loading...

eg: Difficulty level, turns taken, number of units etc...

Ideally both would be nice.
(It also wouldn't hurt to have some place in the in-game UI to see difficulty level).

Christophe33
Posts: 826
Joined: January 21st, 2004, 1:10 am
Location: San Diego, CA

Re: Challenge

Post by Christophe33 » January 30th, 2004, 1:03 am

Integral wrote: I got this idea when I played the Sceptre of Fire level. A big part of what made it exciting was that I didn't *know* where the Sceptre was hidden, so I had to search in a hurry to find it before time ran out (I actually finished on turn 56/60 or so, and it was only by sheer luck that I didn't run out of time). Now, if I were to re-play this level, I could go straight for the Sceptre (not wasting time trying to break through the eastern hordes, for instance) and probably finish without much difficulty.
Daniel
You just have to get the position of the Sceptre of Fire random within the inner perimeter of the cave complex. I finished at turn 46 but I was helped by a bug... I saw the Sceptre accross the cave wall fairly early. I apparently happened when I try to send by mistake a dwarf in the cave wall. He didn't move in (and lost all his movement) but the other side was revealed at a distance of 4 hex. This might constitute a funny but usefull bug :-).
I think the sceptre should be guarded by some monsters (maybe random) that appear when you come closeby... the long corridors are boring to explore and without any enemies.
Never tell a dwarf that he shortchanged you!

Blackbeard
Posts: 87
Joined: January 23rd, 2004, 9:30 pm

Post by Blackbeard » February 7th, 2004, 6:23 pm

wesnoth is a Single Player game, so perhaps that's where the focus should be.

Multiplay improvements can wait until there's a better protocol in place, imho.

kmj
Posts: 67
Joined: February 15th, 2004, 5:57 pm

Post by kmj » February 22nd, 2004, 9:00 pm

1) You could browse your filesystem for saved games (so that I could have distinct folders for easy, medium and hard saves).
In line with this, I was thinking it'd be nice to be able to specify your own director to look for scenarios, maps, etc. Alternatively, the ~/.wesnoth directory could have it's own data directory, which has it's own "maps", "scenarios", etc. First, I don't really like having to make changes to the install directory; second, it seems like it'd be a good idea to keep the "official" scenarios, maps, etc., seperate from user contributed ones.

Dave
Founding Developer
Posts: 7067
Joined: August 17th, 2003, 5:07 am
Location: Seattle
Contact:

Post by Dave » February 22nd, 2004, 9:39 pm

Blackbeard wrote:wesnoth is a Single Player game, so perhaps that's where the focus should be.

Multiplay improvements can wait until there's a better protocol in place, imho.
I concur. I think that for version 1.0, we should aim for a very good, professional, enjoyable single player campaign. In addition to this, we hope for basic, stable network multiplayer support.

David
“At Gambling, the deadly sin is to mistake bad play for bad luck.” -- Ian Fleming

Post Reply