Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Yann Chachkoff
 But relatively to players and developers, what do people see as the top 
 feature(s) that should be added (or things fixed) to make crossfire a better 
 game.

Apart from the code cleanup idea, here's what I see as important:

- Better visual appearance. On the coding side, it means adding things like 
support for smooth moves (continuous move of characters and monsters between 
squares, instead of the current direct jump to the next square visual 
effect), or support for action animations (when I attack a monster, I expect my 
character to swing its weapon. When I wear a shield, I expect the shield to 
appear on the character displayed).

- Better scenaristic background. Currently, a lot of the maps are very 
bash-n-slash without little to no story behind. I think that more than 
software code additions, solid, interesting stories will keep people playing. 
Offering different starting points for each race, providing more interactions 
with NPCs, chaining quests, etc. would require no new code and would also help 
filling the Bigworld map.

- Friendlier client. The currently available clients are intimidating for 
newcomers: the cfclient looks rather primitive while gcfclient is crowded with 
options bars, icons and menus and leaves only a small patch in the middle to 
display the game playfield itself. I think that a friendlier design here that 
leaves more space for the game would make the game somewhat more immersive and 
enjoyable to play.

Those are the things that I see as top-priority. Apart from the first, I don't 
think they require massive code changes. I tend to think that - once cleaned - 
the current game engine of Crossfire is very good and includes a lot of 
interesting features, on par with many commercial RPG and that it mostly 
requires to offer better content to get much more attractive.


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries (was: Moving server towards a modularized system?)

2006-01-29 Thread Yann Chachkoff
 I am not opposed to porting crossedit to gtk however.

The current difficulty I see with crossedit is that it is rather heavily 
dependent on the server code. I think that the best would be at some point to 
get the editor - being GTK, Athena or whatever else - get its own codebase, 
alongside the client and the server.

This, however, would require significant work. The question being: do we really 
need to maintain two editors ? When the Java Editor was introduced, my answer 
to that question was yes, because a lot of machines were a little too tight 
to run the Java Editor comfortably. But nowadays, my answer would be no - 
most not-too-ancient computers can run it, and it offers more functionalities 
(I think) than the old Athena Editor.

 But if my favorite editor is removed outright... java is not an option. 

Well, it would be interesting to understand why Java isn't an option for you - 
did you have issues with the Java Editor when trying it ? If so, report those 
on the ML, so work can be done on it to try to solve them.

 However crossedit works great (IMHO) now, so there really is no reason to 
 change it.

But it definitely wouldn't work anymore if significant changes occur in the 
server code - in particular, getting rid of the Athena Editor would allow to 
remove the separation between the common and server subdirectories - 
something that makes the code structure more complex with no real benefit 
(other than allowing the Athena Editor to exist in the first place). 

 All this constant talk of removing things is
displeasurable, thus my retirement for a time.

Notice that it was never suggested to remove game functionalities, but obsolete 
protocol commands, pieces of code not used anymore, or tools that got outdated 
by (supposedly) better ones.

It may mean that some low-end computers that were previously able to run 
cfclient/crossedit will not be able to run their replacements with the same 
level of comfort, yes. But are we targetting the game at computers manufactured 
ten years ago ? I agree that not limiting Crossfire to the most modern machines 
is very important - but I am not convinced that we should extend support *that* 
far in the past.

 If the things I like are not removed I'll come back, if the things I like are 
 removed I won't come back. 

I'm immune to that kind of childish ultimatum, and I hope other developers are 
as well.

 I am also waiting on some new features aswell.

Nobody prevents you to code them and submit a patch on the ML if you want them. 
If no coder wants (or has time) to code your suggestions, it is their choice 
and you have to deal with it.

 I trust all notice the drop in cvs commits? That is because I am uninspired 
 as I watch the CF dev team discuss the most effective way of canning the 
 whole project.

And now, we're responsible of your lack of inspiration... Given that 
inspiration is something often driven by an unknown and highly complex mental 
process that science still fails to properly understand, I suggest that the 
discussion about possible future changes continues, as we're absolutely unsure 
that stopping it would solve your imagination issue.

Now, I could suggest you various things to get inspiration back, like reading 
books, have a walk outside, listen to music, or spend less time ranting (which 
definitely can have a negative impact on imagination).

 How about not removing things from the game, a novel idea, no?

How about proposing an alternative to let's keep everything unchanged forever 
- a novel idea for you, wouldn't it ?


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Alex Schultz
Mark Wedel wrote:

  With the current discussion regarding modularization, the topic of new 
features also came up.
  

Discussions do that :P

  For 2.0, it was mentioned do a general code cleanup to removed old crufty 
 code 
that is only there for compatibility reasons.  Fair enough.
  

Yes, I agree. We can't keep much of this old compatibility cruft around 
forever. Yes we don't need to do a major release for it, but IMHO doing 
it at a major release will confuse the players less and therefore would 
be of benefit.

  but relatively to players and developers, what do people see as the top 
feature(s) that should be added (or things fixed) to make crossfire a better 
game.
  

Features added... well... here's some ones I think would be neat for a 
2.0 release (though doing all isn't too realistic):
-Land plots (I plan on working on those some time)
-Colored lighting and more lighting levels
-More layers
-Revamp/fix sound
A few ideas/proposals on those are at 
http://wiki.metalforge.net/doku.php/dev_todo (feel free to contribute to 
the todo list there)

Also I would really like to see the weather fixed up. The issues with 
that are:
1) Some disappearing tiles and such ugly bugs (might be a bug in the 
overlay code instead of weather code). (Also, no this isn't just Mikee, 
I've seen this on my private test server too)
2) Too much granularity right now. For this I think strange elevation 
values might be to blame. Might also be some simulation parameters. Not 
really sure. But in any case, you shouldn't see things like so many wet 
and dry spots speckled right beside eachother, that makes it seem almost 
as if there is little rainclouds speckled all over the place looking 
like they could float individually over player's heads
3) Once the granularity is fixed, perhaps some new rain pictures would 
also help that look even better

   I'm somewhat curious to see what the thoughts are.  I think this info may 
indirectly help drive the modularization discussion - it may be that some of 
these features require significant rewrites or cleanups of the code that make 
sense with modularization.  It may also be that some are relatively easy to do 
and don't require such changes.

Personally, I think modularization and better organization would be 
something good to do, however I do not think it is worth doing major 
rewrites to archive such. Perhaps rewrite some parts, but IMHO there is 
plenty of organization that can be done with the current code without 
major rewrites.

Also, out of the modularization discussions, there has been some 'game 
engine' talk. Personally, I do not believe separating into a game engine 
would be a good goal within/for the project, though I do believe that it 
isn't harmful if such separation comes as a side affect of other goals 
such as making the code more maintainable (not saying engine separation 
would necessarily have that affect, that is for another discussion).

Alex Schultz

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Negative Luck for pk

2006-01-29 Thread Brendan Lally
On 1/28/06, Miguel Ghobangieno [EMAIL PROTECTED] wrote:
 Hi, I've asked for just that configuration option
 before. I'll forward this mail to the mailing list so
 the other devs may see that this is a wanted feature.

Correction: it /was/ a wanted feature, about a year ago, which is
roughly when it was introduced.

from the settings file:

# This is the penalty to luck that is given to a player who kills another
# player (PK's). The value here is deducted from their luck value, so set this
# high to discourage PK-ing and zero (or negative) to encourage it.
# Range is limited to -100 to 100, since this is the value range that the luck
# stat can be within.

pk_luck_penalty 1

In the case of cat2, you probably want to set it to zero.

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries (was: Moving server towards a modularized system?)

2006-01-29 Thread Brendan Lally
On 1/29/06, Yann Chachkoff [EMAIL PROTECTED] wrote:
 But it definitely wouldn't work anymore if significant changes occur in the 
 server code - in particular, getting rid of the Athena Editor would allow to 
 remove the separation between the common and server subdirectories - 
 something that makes the code structure more complex with no real benefit 
 (other than allowing the Athena Editor to exist in the first place).


I believe that the random map generator also needs the same seperation
of common and server, at least the way it is compiled at the moment.

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Brendan Lally
On 1/29/06, Mark Wedel [EMAIL PROTECTED] wrote:
   but relatively to players and developers, what do people see as the top
 feature(s) that should be added (or things fixed) to make crossfire a better 
 game.

I'll split this into two parts, usability issues/improvements, and
game issues/improvements (many of these things I have hinted at on IRC
in the past, but I'll describe them more fully here)

Usability:

currently most useful features of the game are hidden behind obscure
text commands, without any nice way for the clients to show them in a
systematic way. . - the rest are really minor niggles.

I would suggest then, in no particular order:

* client side display of parties (so that they can present an
interface more like gcfclient2 has for the metaserver, removing the
need for using the rather complex party commands directly).

* adding more stats, including a number that could be considered as
settings, so that clients can have a configure menu for them (imagine
having a 'server' tab next to the general, map, and keybindings tabs
in gcfclient)

In order to do that, I think you would need to send

output-sync short (byte?)
output-countbyte
bowmode byte mapped to associated requestinfo
applymode   byte mapped to associated requestinfo
listen levelbyte
petmode byte mapped to associated requestinfo
usekeys byte mapped to associated requestinfo

all of which would have better names displayed client side
(eg, group up to [spinbox] identical messages before sending, recieve
messages with priority [spinbox] or lower)

* I'd also want to consider removing brace altogether, or at least
making it a flag in the stats so that it can be displayed client side
(hitting brace by accident and not being able to move can be
confusing).

* providing an [instruction]  ext new draw info so that clients can
print the instructions that apply to them in order to do things. (I
would imagine that this would be something like drawextinfo 0 8 0 to
worship a new god, stand on their alter and $(use_skill praying) 
then a client could look up their own 'instructions' array, or check
their keybindings, and if use_skill praying is found, print that
instead (otherwise, strip out the $() characters). - so for example,
my gcfclient setup has use_skill praying mapped to 'p', so when I
receive that message, it should check an 'instructions' array, find it
empty, and then look in the keybindings, find one that matches, and
say to worship a new god, stand on their alter and press p

* a new login system, which would allow single packet character login,
or creation.
something like a login name\0password packet, and also a createchar
name\0\password packet (with the double typing the responsibility of
the client).
then some way to request die rolls, and send back the final results,
and a race choice

For this there would be something like requestinfo races, returning
replyinfo [list of races with their corresponding face numbers], then
requestinfo race foo return replyinfo race foo the foo are a
mysterious race from the land of the metasyntactic variable -
clients then would be able to present a list of races to choose from,
and a nicer interface to handling swapping stats.

* sending all the information given from describing items in the items
command (I think this is only the message, chosen name  values, then
having the description generated client side, and shown as a tooltip
to each item - freeing the left mouse button to do something else to
items (moving apply away from middle click, maybe?).

* having a concept of actions applying to a square (an extension of
what I mentioned the other day about having a goto system, have
something like left-click to walk to a square/pull a lever/talk to an
NPC/fight a monster on a square (probably whichever is appropriate to
the topmost item on the square, decided server side) and right click
to cast a spell/fire an arrow, etc to a square. (diablo-style
controls)

possibly as an extension to this, send an actionid to the client with
the map command (2 bytes per square (maybe a byte if there isn't a
convenient tayste within the rest of the (newly redesigned) map
command), so that clients can tell the player what would happen by
clicking on a given square (this would also need some special flags to
decide whether to show things like secret walls - possibly they should
be marked walkable once you are adjacent to them, but not from a
distance - or maybe the detect traps skill should mark them detected,
after which they show up)

- an extension to the extension above, send health status along with
monsters (probably as a percentage to not give away total hp), they
can then have clients draw health bars above their heads.

* having a keywords system in NPC dialog, so that when NPCs speak, it
formats their text specially, underlining (or similar) the words they
say that you can ask more about - 

[crossfire] crossedit and the Java editor (was: renaming binaries (was: Moving server towards a modularized system?))

2006-01-29 Thread Alex Schultz
Yann Chachkoff wrote:

I am not opposed to porting crossedit to gtk however.


The current difficulty I see with crossedit is that it is rather heavily 
dependent on the server code. I think that the best would be at some point to 
get the editor - being GTK, Athena or whatever else - get its own codebase, 
alongside the client and the server.

This, however, would require significant work. The question being: do we 
really need to maintain two editors ? When the Java Editor was introduced, my 
answer to that question was yes, because a lot of machines were a little too 
tight to run the Java Editor comfortably. But nowadays, my answer would be 
no - most not-too-ancient computers can run it, and it offers more 
functionalities (I think) than the old Athena Editor.
  

 From what I have saw, the java editor is very flawed (not impossible to 
fix, however IMHO not very maintainable), largely due to various fixable 
bugs, but more importantly the language being unfamiliar to most of our 
devs, and therefor bad things happen such as mistakes that cause it to 
be slow (As I understand, there are lots of slow java programs, not 
necessarily because of the language, but coding mistakes that are common 
in it for C coders and such).
The old crossedit is also very flawed due to a combination of it's 
widget set, and rather messy code (so messy that it's even worse than 
the Java editor likely).
IMHO, what would be BEST (by no means least effort, in fact likely most 
effort), would be a rewrite of crossedit (different toolkit, make sure 
the code is organized), and a big cleanup of the 'common'/'server' 
separation.
I might be willing to do this myself even once I get a bit more time on 
my hands.

But if my favorite editor is removed outright... java is not an option. 


Well, it would be interesting to understand why Java isn't an option for you - 
did you have issues with the Java Editor when trying it ? If so, report those 
on the ML, so work can be done on it to try to solve them.
  

As I understand, his reason is because Java is a non-foss dependency. 
IMHO this is not a worthless point, it doesn't prevent me from using the 
java editor, but it does leave a 'bad taste in my mouth'.

However crossedit works great (IMHO) now, so there really is no reason to 
change it.


But it definitely wouldn't work anymore if significant changes occur in the 
server code - in particular, getting rid of the Athena Editor would allow to 
remove the separation between the common and server subdirectories - 
something that makes the code structure more complex with no real benefit 
(other than allowing the Athena Editor to exist in the first place). 

I believe the way that it is dependent on the server code is actually a 
rather eloquent thing; why maintain two separate copies of the map 
saving and loading code? Of course, that said, the current state of the 
split between common and server IS very hackish and somewhat ugly. 
However, I see making the separation more distinct and cleaner, would be 
something that would help with modularization, not so much fo any 
advantage in making features easier, but for making the code more 
maintainable. So if anything, the boundary between common and server 
shouldn't be removed, but should be fixed/cleaned up and solidified.

Alex Schultz

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries (was: Moving server towards a modularized system?)

2006-01-29 Thread Brendan Lally
On 1/29/06, Mark Wedel [EMAIL PROTECTED] wrote:
  I would suggest the following mappings (for both binaries and package names)
  crossedit - crossedit

   Arguably, crossedit should just disappear.  This, however, may become more 
 or
 less an issue depending on other changes (if a code restructuring means
 significant rewrites needed for crossedit, I could see more reason to get rid 
 of
 it.  OTOH, if that major rewrite makes it cleaner, then maybe more compelling
 reason to keep crossedit, or make a gtk replacement).

The problem is that at the moment there is no real replacement for
crossedit (CFJavaEditor doesn't work well enough, it doesn't even have
undo support).

I don't think that crossedit needs to be abandoned though, splitting
it out into a separately distributed tarball/CVS module would suffice,
if the functions that it uses from the server code are well
documented/commented, then any changes to these functions in the
server module should backport to crossedit as and when that is needed.
Meanwhile, the server/ common/ distinction could go, and everything be
rearranged more logically. (this would also have the advantage of
allowing crossedit to be ported to a modern toolkit without breaking
the server).

  gcfclient - crossfire-client
  gcfclient2 - crossfire-client2 (or crossfire-client-gtk2)
  cfclient - crossfire-client-x

   I don't know if there is any official standard on this, but if anything, it
 would seem the standard is that it be toolkitname-program name.

   Eg, gnome-terminal, xterm, etc.

   It is a little unclear to me where gtk ends and gnome begins - on my 
 system, I
 see a lot of gnome-* programs, but not many gtk-* programs

   But given that, I'd suggest gtk-crossfire-client, gtkv2-...,
 x-crossfire-client, etc to keep that naming convention.

The thing with this is that currently all distro packages are called
crossfire-client or crossfire-client-gtk. If I am on a debian (or
similar) system and install a program, I always try and run it using
the name of the package, only if that fails do I bother to grep the
filelist for bin/, sometimes if it is something I don't care about,
then I ignore it and find something else to do the job instead.

having the binary being tab-completable from the start of the package
name is a good thing, especially when the .desktop files aren't
installed properly.

of course, should there ever be a KDE client, then the rules change
somewhat, the name krossfire-klient would be obligatory.


   Perhaps have a generic crossfire-client script that looks for the different
 programs and tries to run the 'best' one available.

I'd be interested to know how 'best' would be determined there.

  CFJavaEditor - jcrossedit

   See note above about naming.  That said, I'd be a little less concerned 
 about
 this one, as I doubt there is as much confusion in this (at least on the unix
 side, you don't run it directly anyways - you're going to use ant or have to 
 do
 the java command by hand, so that is sort of hidden).

java -jar CFJavaEditor.jar

   I don't in fact know if this can be reasonably assembled into a package or
 installed.  But once again, making a script called jcrossedit that runs the 
 JVM
 with the needed flags (I recall the default memory sizes really aren't big
 enough) may be the way to really go here.

The default memory size is ok if you only open a couple of maps, and
is a lot better than it used to be since tchize fixed it a while back.

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Andrew Fuchs
I have added a page to the wiki, where crossfire 2.0 features could be tracked.

http://wiki.metalforge.net/doku.php/dev_todo/cf2.0

--
Andrew Fuchs

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries (was: Moving server towards a modularized system?)

2006-01-29 Thread Miguel Ghobangieno
Understand this Yann. IF crossedit is removed I remove
myself. Do you want to lose your biggest current media
contributor? If so then remove crossedit.

I think you need to fork off crossfire and make your
own project where you can do whatever you want.
Perhapse crossfire-awsome.sf.net?

--- Yann Chachkoff [EMAIL PROTECTED]
wrote:

  I am not opposed to porting crossedit to gtk
 however.
 
 The current difficulty I see with crossedit is that
 it is rather heavily dependent on the server code. I
 think that the best would be at some point to get
 the editor - being GTK, Athena or whatever else -
 get its own codebase, alongside the client and the
 server.
 
 This, however, would require significant work. The
 question being: do we really need to maintain two
 editors ? When the Java Editor was introduced, my
 answer to that question was yes, because a lot of
 machines were a little too tight to run the Java
 Editor comfortably. But nowadays, my answer would be
 no - most not-too-ancient computers can run it,
 and it offers more functionalities (I think) than
 the old Athena Editor.
 
  But if my favorite editor is removed outright...
 java is not an option. 
 
 Well, it would be interesting to understand why Java
 isn't an option for you - did you have issues with
 the Java Editor when trying it ? If so, report those
 on the ML, so work can be done on it to try to solve
 them.
 
  However crossedit works great (IMHO) now, so there
 really is no reason to change it.
 
 But it definitely wouldn't work anymore if
 significant changes occur in the server code - in
 particular, getting rid of the Athena Editor would
 allow to remove the separation between the common
 and server subdirectories - something that makes
 the code structure more complex with no real benefit
 (other than allowing the Athena Editor to exist in
 the first place). 
 
  All this constant talk of removing things is
 displeasurable, thus my retirement for a time.
 
 Notice that it was never suggested to remove game
 functionalities, but obsolete protocol commands,
 pieces of code not used anymore, or tools that got
 outdated by (supposedly) better ones.
 
 It may mean that some low-end computers that were
 previously able to run cfclient/crossedit will not
 be able to run their replacements with the same
 level of comfort, yes. But are we targetting the
 game at computers manufactured ten years ago ? I
 agree that not limiting Crossfire to the most modern
 machines is very important - but I am not convinced
 that we should extend support *that* far in the
 past.
 
  If the things I like are not removed I'll come
 back, if the things I like are removed I won't come
 back. 
 
 I'm immune to that kind of childish ultimatum, and I
 hope other developers are as well.
 
  I am also waiting on some new features aswell.
 
 Nobody prevents you to code them and submit a patch
 on the ML if you want them. If no coder wants (or
 has time) to code your suggestions, it is their
 choice and you have to deal with it.
 
  I trust all notice the drop in cvs commits? That
 is because I am uninspired as I watch the CF dev
 team discuss the most effective way of canning the
 whole project.
 
 And now, we're responsible of your lack of
 inspiration... Given that inspiration is something
 often driven by an unknown and highly complex mental
 process that science still fails to properly
 understand, I suggest that the discussion about
 possible future changes continues, as we're
 absolutely unsure that stopping it would solve your
 imagination issue.
 
 Now, I could suggest you various things to get
 inspiration back, like reading books, have a walk
 outside, listen to music, or spend less time ranting
 (which definitely can have a negative impact on
 imagination).
 
  How about not removing things from the game, a
 novel idea, no?
 
 How about proposing an alternative to let's keep
 everything unchanged forever - a novel idea for
 you, wouldn't it ?
 
 
 ___
 crossfire mailing list
 crossfire@metalforge.org

http://mailman.metalforge.org/mailman/listinfo/crossfire
 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] crossedit and the Java editor (was: renaming binaries (was: Moving server towards a modularized system?))

2006-01-29 Thread Mark Wedel

  Crossedit still works to some degree.

  However, when new things are added, it does break and fixes are needed. 
Anyone remember regions?

  Also, I haven't looked lately, but I'm not sure sure if crossedit actually 
supports all needed features - is there an interface to map tiling information, 
etc.

  If crossedit was to be redone, this would briefly be my suggestions:

1) Use glade to do layout, so additional layout features are easy to add 
in/layout.  This would make whipping up the basic interface pretty quickly.

2) Make this a separate program from the server (new CVS tree).  That said, 
large portions of code could be grabbed from the server (load/save) and the 
client (display).  Sure, having the editor be a separate program would mean 
that 
that code may get out of date.  OTOH, at least on the server side, there is a 
lot of code there that does things that the editor doesn't really need (and 
there are about half a dozen editor checks in the common directory to handle 
things we do or don't want to do if being used through the editor).

3) Do something like the java editor and have a file that does an object 
type/special fields type of documentation, instead of it being hardcoded into 
the program (eg, for exits, it is sp/hp which are the coordinates it leads to, 
but the editor should present that as dest_x and dest_y)

  That said, all of this is a non trivial process.  If the java editor is not 
good enough, and can't be made 'good enough' then this is perhaps something 
that 
should be investigated.

  random map code:  It only requires the 'common' directory for the stand alone 
random map generator.  Since the random map code is linked into the server, it 
does not need/care about libcross.a.

  I don't know how often the standalone program is used, but if it was used 
enough, I'd suggest that the server could be modified to take some command line 
options (eg, crossfire -gen-random-map -random_map_options='')


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries

2006-01-29 Thread Mark Wedel
Miguel Ghobangieno wrote:
 Understand this Yann. IF crossedit is removed I remove
 myself. Do you want to lose your biggest current media
 contributor? If so then remove crossedit.

  I seem to see this ultimatum almost once a week now (do this or I leave)

  This carries no weight for me.  I'm not going to program and make changes 
based on what one person demands to be done.  Maybe you are the one that needs 
to fork off crossfire for your own use so you can do whatever you want with it.

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries

2006-01-29 Thread Mark Wedel
Brendan Lally wrote:
 On 1/29/06, Mark Wedel [EMAIL PROTECTED] wrote:
 I would suggest the following mappings (for both binaries and package names)
 crossedit - crossedit
   Arguably, crossedit should just disappear.  This, however, may become more 
 or
 less an issue depending on other changes (if a code restructuring means
 significant rewrites needed for crossedit, I could see more reason to get 
 rid of
 it.  OTOH, if that major rewrite makes it cleaner, then maybe more compelling
 reason to keep crossedit, or make a gtk replacement).
 
 The problem is that at the moment there is no real replacement for
 crossedit (CFJavaEditor doesn't work well enough, it doesn't even have
 undo support).

  This is perhaps a problem.  But then I think we need to figure out what our 
editor story is.

  If it is that the java editor is the official editor, these bugs should be 
reported and fixed up.  I do agree that the fact it is in java and not C 
probably doesn't help things a great deal in terms of java competency of some 
of 
the programmers (me included).



 
 The thing with this is that currently all distro packages are called
 crossfire-client or crossfire-client-gtk. If I am on a debian (or
 similar) system and install a program, I always try and run it using
 the name of the package, only if that fails do I bother to grep the
 filelist for bin/, sometimes if it is something I don't care about,
 then I ignore it and find something else to do the job instead.
 
 having the binary being tab-completable from the start of the package
 name is a good thing, especially when the .desktop files aren't
 installed properly.

  Have to admit, I've not looked at what other packages do in terms of program 
names vs package names.


   Perhaps have a generic crossfire-client script that looks for the different
 programs and tries to run the 'best' one available.
 
 I'd be interested to know how 'best' would be determined there.

  Probably basically in this order:
gcfclient (still most complete)
gtkv2-client (not complete, but still usable, and probably more 
complete/featureful than)
cfclient - last resort really, and it doesn't provide much in the way of UI, 
and 
I think is still limited in terms of graphics and map size.


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Mark Wedel
Brendan Lally wrote:

 I would suggest then, in no particular order:
 
 * client side display of parties (so that they can present an
 interface more like gcfclient2 has for the metaserver, removing the
 need for using the rather complex party commands directly).
 

  Yes - that sounds like a good idea.

 * adding more stats, including a number that could be considered as
 settings, so that clients can have a configure menu for them (imagine
 having a 'server' tab next to the general, map, and keybindings tabs
 in gcfclient)
 
 In order to do that, I think you would need to send
 
 output-sync   short (byte?)
 output-count  byte

  I'd suggest the output-* stuff on the server should go away.  That was put in 
before the client/server split IIRC.  I think any collapsing/discarding of 
messages should just be done on the client.

  Granted, doing it on the server does save some bandwidth, but I can't see 
that 
as much an issue on current connections.


 bowmode   byte mapped to associated requestinfo
 applymode byte mapped to associated requestinfo
 listen level  byte

  is listen level really used much?  I'd almost suggest this go away also, but 
right now, harder for the client to deal with it, since it isn't getting 
message 
levels.

 petmode   byte mapped to associated requestinfo
 usekeys   byte mapped to associated requestinfo

  Yes, all the rest makes sense, and wouldn't be hard to do at all.

 * I'd also want to consider removing brace altogether, or at least
 making it a flag in the stats so that it can be displayed client side
 (hitting brace by accident and not being able to move can be
 confusing).

  Brace could probably go away now.  I believe there are other ways to get the 
same effect (ready melee weapon skill, and just fire in that direction)

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries

2006-01-29 Thread Miguel Ghobangieno
Check the CVS logs. I have stopped committing about a
week ago. If you remove crossedit I will not restart.

--- Mark Wedel [EMAIL PROTECTED] wrote:

 Miguel Ghobangieno wrote:
  Understand this Yann. IF crossedit is removed I
 remove
  myself. Do you want to lose your biggest current
 media
  contributor? If so then remove crossedit.
 
   I seem to see this ultimatum almost once a week
 now (do this or I leave)
 
   This carries no weight for me.  I'm not going to
 program and make changes 
 based on what one person demands to be done.  Maybe
 you are the one that needs 
 to fork off crossfire for your own use so you can do
 whatever you want with it.
 
 ___
 crossfire mailing list
 crossfire@metalforge.org

http://mailman.metalforge.org/mailman/listinfo/crossfire
 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] renaming binaries

2006-01-29 Thread Miguel Ghobangieno
Lol.


--- todd [EMAIL PROTECTED] wrote:

 I suppose this would be a nice perk and a big
 incentive to remove 
 crossedit, but you've quit so many times before that
 it just isn't a 
 reliable enough promise to base a decision like this
 on ;)
 
 
 Miguel Ghobangieno wrote:
 
 Understand this Yann. IF crossedit is removed I
 remove
 myself. Do you want to lose your biggest current
 media
 contributor? If so then remove crossedit.
 
 I think you need to fork off crossfire and make
 your
 own project where you can do whatever you want.
 Perhapse crossfire-awsome.sf.net?
 
 --- Yann Chachkoff [EMAIL PROTECTED]
 wrote:
   
 
 
 ___
 crossfire mailing list
 crossfire@metalforge.org

http://mailman.metalforge.org/mailman/listinfo/crossfire
 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Miguel Ghobangieno
One of the things we should do for 2.0 (note: we are
not yet at 1.9) is try to decrease bandwith usage. For
instance, some animations are cylical, and the server
knows which ones these are currently IIRC. The server
shouldn't have to send a update for every tile every
time for cylical animations, the client should beable
to work this feat IMHO.

Also if we can make some commands that are 4 bytes
long (north south etc) or other longish commands
shorter that might be good too. (We should keep
backwards compat here maybe thought, so if a client
says it's not 2.0+ it gets to use the old, easier to
parse, stuff).

Plots should go in at 1.9 I guess.
Crossedit could be gtkized for 2.0. or after. (I'm not
against updating crossedit, I am against removing it).

Maybe some new spells too? Circular spells ect (kinda
like a circle of protection of fireballs spining
around you etc).




__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Miguel Ghobangieno
Brace is used, as Leaf said before, to make it easier
to swich deities without being pushed off the alter...
this was allready discussed!

We shouldn't do things that increase bandwidth
usage...
/me watches the bandwith usage skyrocket just to spite
him.

--- Mark Wedel [EMAIL PROTECTED] wrote:

 Brendan Lally wrote:
 
  I would suggest then, in no particular order:
  
  * client side display of parties (so that they can
 present an
  interface more like gcfclient2 has for the
 metaserver, removing the
  need for using the rather complex party commands
 directly).
  
 
   Yes - that sounds like a good idea.
 
  * adding more stats, including a number that could
 be considered as
  settings, so that clients can have a configure
 menu for them (imagine
  having a 'server' tab next to the general, map,
 and keybindings tabs
  in gcfclient)
  
  In order to do that, I think you would need to
 send
  
  output-sync short (byte?)
  output-countbyte
 
   I'd suggest the output-* stuff on the server
 should go away.  That was put in 
 before the client/server split IIRC.  I think any
 collapsing/discarding of 
 messages should just be done on the client.
 
   Granted, doing it on the server does save some
 bandwidth, but I can't see that 
 as much an issue on current connections.
 
 
  bowmode byte mapped to associated requestinfo
  applymode   byte mapped to associated requestinfo
  listen levelbyte
 
   is listen level really used much?  I'd almost
 suggest this go away also, but 
 right now, harder for the client to deal with it,
 since it isn't getting message 
 levels.
 
  petmode byte mapped to associated requestinfo
  usekeys byte mapped to associated requestinfo
 
   Yes, all the rest makes sense, and wouldn't be
 hard to do at all.
 
  * I'd also want to consider removing brace
 altogether, or at least
  making it a flag in the stats so that it can be
 displayed client side
  (hitting brace by accident and not being able to
 move can be
  confusing).
 
   Brace could probably go away now.  I believe there
 are other ways to get the 
 same effect (ready melee weapon skill, and just fire
 in that direction)
 
 ___
 crossfire mailing list
 crossfire@metalforge.org

http://mailman.metalforge.org/mailman/listinfo/crossfire
 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Brendan Lally
On 1/29/06, Miguel Ghobangieno [EMAIL PROTECTED] wrote:
 Brace is used, as Leaf said before, to make it easier
 to swich deities without being pushed off the alter...
 this was allready discussed!

But since being pushed off the square is an intended effect, being
able to brace to avoid that is probably a bug rather than an intended
feature.

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Miguel Ghobangieno
Well Leaf said that it was so that if someone really
wanted to recant their diety that they could, but they
would have to mean it (not by accident, or by mere
trifiling whim) and thus brace. A question I have is
does brace have any ill effects. EX: if you are on a
mover, and brace, does that stop you from being moved.
If so then... well that's not supposed to happen and
brace seems like it needs work, if not then nm.

--- Brendan Lally [EMAIL PROTECTED] wrote:

 On 1/29/06, Miguel Ghobangieno [EMAIL PROTECTED]
 wrote:
  Brace is used, as Leaf said before, to make it
 easier
  to swich deities without being pushed off the
 alter...
  this was allready discussed!
 
 But since being pushed off the square is an intended
 effect, being
 able to brace to avoid that is probably a bug rather
 than an intended
 feature.
 
 ___
 crossfire mailing list
 crossfire@metalforge.org

http://mailman.metalforge.org/mailman/listinfo/crossfire
 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Mark Wedel
Miguel Ghobangieno wrote:
 Well Leaf said that it was so that if someone really
 wanted to recant their diety that they could, but they
 would have to mean it (not by accident, or by mere
 trifiling whim) and thus brace. A question I have is
 does brace have any ill effects. EX: if you are on a
 mover, and brace, does that stop you from being moved.
 If so then... well that's not supposed to happen and
 brace seems like it needs work, if not then nm.

  I'd make the case that this should just be handled better, like if you pray 
over an altar to another god, you get a message like:

You currently worship ...  Changing gods will result in a loss of experience in 
the praying skill.  Are you sure you want to do this (y/n)?

  This is one of those cases where hacks are currently in place - IIRC, there 
is 
a 1% chance when praying over the altar of a new god you won't get pushed off. 
This still means that occassionaly someone could be over an altar, pray (not 
intending to change gods) but hits that 1% chance when it doesn't push him off 
and thus change gods.

  The current method is to just repeat until you are not hit by that 1%, but 
that still seems like a bit of a hack.

  This could be changed without breaking any compatibility in clients, since it 
is just messages.

  That said, the current query status is IMO one of those things that could be 
done in a better fashion - currently, there is a ST_.. case statement with 
function to call.  It would be much more flexible to convert that into 
callbacks.  Eg, the function that prints out that message would do something 
like:

  set_reply_callback(change_god_confirmation, ...)

  Instead of having to set ST_ states.  I think one reason there isn't much in 
the way of actual questions from the server because it really is a pain to set 
them up.


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire


Re: [crossfire] Crossfire 2.0+ features/priorities

2006-01-29 Thread Mark Wedel
Miguel Ghobangieno wrote:
 One of the things we should do for 2.0 (note: we are
 not yet at 1.9) is try to decrease bandwith usage. For
 instance, some animations are cylical, and the server
 knows which ones these are currently IIRC. The server
 shouldn't have to send a update for every tile every
 time for cylical animations, the client should beable
 to work this feat IMHO.

  I'll probably throw out a 1.9 release in the next few weeks.

  I do plan to work on the map2 command in that not too distant future 
(really!).  Part of that is to let the client do animations.  That said, that 
isn't a huge bandwidth hog.

 
 Also if we can make some commands that are 4 bytes
 long (north south etc) or other longish commands
 shorter that might be good too. (We should keep
 backwards compat here maybe thought, so if a client
 says it's not 2.0+ it gets to use the old, easier to
 parse, stuff).

  IMO, the client-server communications isn't an issue.  Even at say 10 
bytes/command, and doing 10 commands/second, that is 100 bytes per second.  A 
2400 baud modem can cover that.

  This issue is really the server-client direction, and that already is 
binary, 
so not a whole bunch of savings.

  I have a feeling the big hog is the map data - things like stats is never 
much.  The item stuff, especially for huge piles, can add up.  And I think 
someone suggested that the detailed item information (what you get from 
describe 
item) is also sent along - I think that may be a reasonable idea, but does 
increase the bandwidth on that (that is also tricky in that certain things 
could 
change the description of the item (it being identified will change its value 
for example) - I'm not 100% the UPD_ flags cover that, but probably do (but 
money will always be suspect - changing charisma can affect costs also).

  It _may_ be reasonable to compress the map data if that packet was big enough 
(there would need to be a new command, like:

S-C: cdata len

  And after the client gets the data, it then uncompresses it and then runs the 
commands from it.  But to do that, requires some reworking - ideally, you would 
want to queue all the data that the server is about to send to the client 
during 
the activity tick, and then after that, go and compress the data and send it 
along.  This actually wouldn't be that hard.  However, it does make a tradeoff 
of CPU consumption (on the server to compress it) vs bandwidth.


___
crossfire mailing list
crossfire@metalforge.org
http://mailman.metalforge.org/mailman/listinfo/crossfire