[Freeciv-Dev] More ideas, maybe some AI
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Hi Freeciv developers !
Here's what appeared in my mind in the last days and is about Freeciv.
I'm sorry for my bad English as I'm just learning it yet.
QUESTIONS:
- What is the reason for including structure races[] in files
client//finddlg.c, client//gotodlg and client/gtk/messagewin ?
I haven't found any reference to this structure in these files.
IDEAS:
+ = I think I can do that with (probably) no problems.
? = I could do it, if someone will help me with some minor details.
* = I could do it, but I would need more help (major details :) .
- = I don't dare to do it (at least not now)... :)
?,* = I need someone to ask some questions, and I don't want to fill
this very good mailing list with stupid questions.
easier (for implementation) ones:
? Is there any reason for having city names in the server file ? I think
no. The clients need the names to suggest the player new city's name.
So the data from city.c should be moved into client/ and only the
functions from city.c should remain in the common dir.
? the (power)graph from Retire ending of Civ1
+ comparation with some great leaders (as in Civ1) - like David Pfitzer,
Solomon the wise, average Freeciv-developer, average Freeciv-player,
or for each nation separately (ex, american - Lincoln, Washington,
Roosevelt, Lee, Grant, etc.)
harder ones:
? genders - to distinguish between Queen/King, Mr./Mrs. President, and
also to make players know whom they are playing with :)
*? my personal vision is that there will be a network (for beginning one)
of meta-civserver(s) that will get the information about running civservers
(and some information about them, like max. people limit, version, etc.)
and the clients will connect to this meta-civserver, find out the civserver
most suitable for their purposes (location, gamestyle, other people, etc.)
and connect to it. The civservers will periodically send information
about them (users, running games, ...) to the metaserver. The people
connected to the same civserver will be able to start game(s), like on
irc, when people (clients) join the channel (game) and the operator
(someone) changes the mode for channel (start game).
However, this is probably highly unrealistic with the code written....
just a vision. But... if it would be possible ... I'd like to help to do it.
* races, as they are now are hardwired in the civ executables. This makes
enhancements to the races quite difficult. I think they should be stored
in a ruleset kind of file, along with their descriptions (explained later)
and maybe other stuff. The clients should have their own races defined
in rulesets (or, to be sure, some predefined ones hardwired). At the
time of connection to server, the client will send his (her ?:))
list of races to the server. The server will have a list of available
civilizations (along with their descriptions). At the time of gamestart,
the server will send each client the complete list of races and the rest
will continue as usual. In less words - the races will be collected from
clients at the playtime (ie, you have races you want to have).
My opinion what should be needed to define a race (based on players.c),
currently written in pseudo-form:
1) race name in singular+plural : string
2) default leader name (maybe also with gender -> Queen Elisabeth)
3) the final government form (important for AI)
4) the list of cities
5) psychic characteristics of the leader (important for AI). I have many
more ideas than these few, but my English knowledge isn't high enough
to find suitable names for them.
- aggressivence:
kill'emall = only dead enemy is good enemy = attacks with all possible
weaponary (incl. nukes, pollution, etc.), very weak defense
forward-looking = attacks only when (s)he is strong enough,
about 2-3 times stronger than enemy
coward = first builds a lot of defensive forces, then attack units and
then attacks
chicken = builds a lot of defensive forces and attacks almost never.
- urbanisation (does this word even exist):
distributed = many small cities
centralist = few big cities
- exploration:
explorer = tries to explore the entire starting island, then the islands
around,...
houseman (housewoman :)) = looks only at neighbour squares
6) maybe the list of technical goals, but I think they can be generated
by AI on-the-fly according to his/her psychic characteristics (ie,
aggressive one will try to invent better weapons, expansionist will
try to find sail.
WHAT HAVE I DONE (I can post it if anoyone would be interested):
- = so simple that there probably cannot be a mistake there.
? = should be bug-free, but only 99.5%
* = will probably require some testing
- moving of the map with SHIFT+KP keys, F1-F? = advisors, top 5 cities, etc.
as in Civ1
WHAT I PLAN TO DO OR NOT TO DO (aka ((2DO) | !(2DO))==-1)
Make a patch that would allow non-mouse Civ1 players to adopt on Freeciv
faster (ie, all usual Civ1 keyboard controls).
If you agree with some of my IDEAS, I'll try to (help to) code them faster.
The next 10 days (starting from 22nd July to 1st August) I'll be out of
internet-connection, thus if you reply on this message, don't expect the
answer before August.
Peter
- [Freeciv-Dev] More ideas, maybe some AI,
Peter 'g00bER' Kosinar <=
- Re: [Freeciv-Dev] More ideas, maybe some AI, Peter Schaefer, 1999/07/21
- Re: [Freeciv-Dev] More ideas, maybe some AI, Reinier Post, 1999/07/21
- Re: [Freeciv-Dev] More ideas, maybe some AI, Daniel Burrows, 1999/07/21
- Re: [Freeciv-Dev] More ideas, maybe some AI, David Pfitzner, 1999/07/21
- Re: [Freeciv-Dev] More ideas, maybe some AI, Andy Black, 1999/07/22
- Re: [Freeciv-Dev] More ideas, maybe some AI, Sune Kirkeby, 1999/07/26
|
|