[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-games-devel
Subject:    [Kde-games-devel] About me, the GGZ and the rest of the world
From:       Josef Spillner <dr_maux () maux ! de>
Date:       2001-05-21 17:59:34
[Download RAW message or body]

Hello guys,

I think the current discussion needs some clarification, and some fresh 
ideas. That is what this mail is about.

Most people don't know me anyway because although I started with KDE lots of 
months ago, I joined the project just some weeks ago, and didn't have much 
time yet to do some internal contributions. So please don't feel annoyed by a 
bit of history now :-)

When my work on GGZ started, it hasn't come very far - in fact it consisted 
of a little chat which could launch exactly two games - TicTacToe and 
NetSpaded. Not too impressing, hehe. Everything was written in Gtk+, and in 
addition there was a server, plus the two game servers.

But over the time it grew, and although I knew I would spend a _lot_ of time 
on such a huge project, I said during one chat meeting (probably being 
drunken or very tired): "Hey, let me port this to KDE, completely".

I coded around many weeks, and the cool thing was that some internal 
structures changed a lot (e.g. the name of the polling function changed three 
times, and with it the data context), so in February this year I had a not 
really working KDE client, which could neither launch games nor be used for 
chat session longer than around 3000 lines, which made it really slow or even 
crashed it.

So in fact the whole GGZ-KDE thing is really new and started in February or 
March when I rewrote KGGZ (the central application to chat, launch games and 
such) from scratch. In addition, some KDE games were created - the usable one 
are now KDots, GGZ-KReversi, KTicTacTux and Krosswater. I even asked 
userfriendly.org for permission for their dust puppy image to be used in 
games (playing against Konqui...), but unfortunately they didn't allow it :( 
("financial interest")

When the first ideas appeared which said something about GGZ compatibility in 
KDE games, I had plans to work heavily on libkdegames, but haven't had the 
time because I thought it is more useful to create all the necessary 
framework first, so game developers can see how all this works together. The 
new apps are:

-GGZap: This consists of a KPanel applet and a connection window. It is 
intended to be used as a quick launcher. For example, if you click on one of 
the games under K/Games/GGZ Gaming Zone/Quick Laucher, it raises a window, 
shows the connection progress (connect, authenticate, login, join), and 
either launches a game (if a waiting player is found) or waits for one. This 
can be minimized, so if someone says "Hey, I want to play Chess online right 
now", he fires it up, and it sits in the taskbar until someone joins, then it 
pops up and the game is starting. Ideally I thought of something like a radar 
which is animated, searching for players - but my artistic skills forced me 
to give up on that task ;)
Status: Well, 80%, or: "works theoretically"

-GGZ Module Sniffer: This is used to embed new games. For example, KDE games 
usually don't have an entry in the file ggz.modules. However, they may be 
compatible to GGZ just inside KDE (please look at KTicTacTux for an example). 
So this sniffer can then later add it to the database. This does also apply 
to new games which are downloaded from the internet and installed from source 
- they get their KDE menu entries right, and their properties (this will 
follow in GGZ 0.0.5).
Status: Ready for basic functionality, needs perhaps some tweeking for KDE 
games.

- GGZ MetaServ: Just started, so it's far from being usable. It handles all 
GGZ game servers and the games on it, with favorites and search functions. 
For example: Query new game servers, or Where the Hell did I found that cool 
xxx game last week ....
Status: Hmm not more than 20%

The library I originally intended to be used is libZone, consisting of 
ZoneGGZModServer and ZoneGGZModUI right now, but much of it can be replaced 
by libkdegames, or merged. I intend to make this task the one I'll work on 
the next weeks, just need to grab KDE CVS access yet.
Concerning KGGZ: Originally, I planned a rewrite for 0.0.5 (again), but this 
time I would have rewritten the structure of the modules rather than the 
modules themselves, like implementing dynamic module loading, more 
components, and DCOP functionality (so other program can get informed about 
specific state). Now if some vanilla KDE app needs one of the components, it 
may safely be moved to KDE, as KGGZ depends on it anyway, and won't even 
recognize it. This consideration can be turned into practice beginning in 
June.

There will be some permanent GGZ Servers available. All developers meet each 
Friday night on jzaun.com:5688, which is owned by one of the devs. As we 
don't want to be flooded one day, there are some additional ones:
-ggz.morat.net (U.S.), is currently running 0.0.3, will be updated soon
-games.snafu.de (Germany), a.k.a. "GGZ Europe One" - I have contacted the 
admin rather late, so it's not up yet, he said "as soon as Linux is 
reinstalled", and expected it for these days - so it may even be this week!
This is a professional dedicated game server including firewall and such 
stuff, which normally serves as Quake-like backup server.
-141.30.227.122 (Germany), a.k.a. "GGZ Europe Two" - a student server, which 
may be regarded as disadvantage, but I have full root access there :)
A domain name shouldn't be the problem, but right now it's only for testing 
purposes. I intend this to be the reservation server for GGZap and game 
server querying, maybe even on a second port.
-some more which are not permanently available 

One thing I'd still like to add is the time frame: KDE games are now months, 
if not years, old, so the decision doesn't need to be done within a week or 
two now. It's better to play around with sources yet, meet on IRC (erm, GGZ, 
preferably), and discuss, discuss, discuss. LinuxTag is in July, and I'll be 
there too, so if we can present some KDE game stuff there it's right in time. 
I expect to have about 7-8 working KDE games based on GGZ then, plus (maybe) 
the first internal KDE games which run on it.

Maybe it's good to go several steps: Adding the --ggz options is easy for KDE 
games, for example one could take KTron and port it to GGZ, this wouldn't 
have any additional dependencies (look at GGZ-KReversi on how to write a 
QSocket-based GGZ game). Whoever plans something in this direction, I'll be 
your support hotline :-)
The next step could then be to integrate everything into the framework, but 
this will most certainly take longer, especially since many GGZ features are 
still to be implemented, or the patches need to be applied (there are some of 
them right now).

OK, sorry for writing that amount of text, but I think it's better explaining 
things than answering dozens of questions afterwards.
If there are coding tasks, feel free to assign them to me.

I've sent a little GGZ-KDE-Games Howto to Martin for making it accessible 
somewhere, more will follow soon.

Josef
_______________________________________________
Kde-games-devel mailing list
Kde-games-devel@master.kde.org
http://master.kde.org/mailman/listinfo/kde-games-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic