SuperTuxKart

Show what you made with Bullet Physics SDK: Games, Demos, Integrations with a graphics engine, modeler or any other application
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

SuperTuxKart

Post by hiker »

Hi all,

I am one of the admins of the game "SuperTuxKart", a fun, non-serious racing game (think of Mario Kart, though I hope that some of the features I want to add make this game different). We have recently switched to using bullet physics. And while not all 'pre-bullet' features of SuperTuxKart are fully implemented yet (e.g. no wheelies atm), the game is already playable with the new physics:
stk_bullet6-1.jpg
stk_bullet6-1.jpg (44.23 KiB) Viewed 18380 times
But please be aware that this is a first alpha announcement, so it's not yet a completely polished release. More details on:
http://supertuxkart.sourceforge.net/ or http://sourceforge.net/projects/supertuxkart/ for the development pages. You have to check out the latest SVN version to get bullet support - automake and Visual Studio project files are included. It should work with Linux, Windows, and Macs - but we don't have binary packages atm.

I'll update this thread as we keep improving the implementation - we hope to do our first 'bullet release' (the 0.4 release of SuperTuxkart) at around the end of the first quarter next year. A big "Thank You" to Erwin for his support and for the bullet library! Without his answers to my questions (and bullet in general) we wouldn't be were we are right now!

Any feedback, suggestions, bug reports are welcome!

Cheers,
Joerg
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

Hi all,

following Erwin's advise I've created a simple windows binary package for people who want to quickly play SuperTuxKart without compiling everything. It's available at:
http://sourceforge.net/project/showfile ... _id=202302
Look for the SuperTuxKart unstable package. It does not come with a full installer - just unzip the file and start supertuxkart.exe

As always, feedback is welcome!

Cheers,
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

Is that a online-game or are you preparing a Online version for it???
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

michaelth wrote:Is that a online-game or are you preparing a Online version for it???
We certainly plan to add network multiplayer support, which means you should be able to run it over the internet with friends (assuming that the lag is within certain limits of course). At this stage I can't commit to a deadline for that, for now we focus on getting all the physics issues fixed first, and make the actual game better. But it will (hopefully, time permitted) be the next big feature we add (see our currently proposed milestons page at:
http://supertuxkart.sourceforge.net/Milestones - release 0.5 (though I admit that this schedule is not really fixed, since it depends a lot on how much time the core developer have, and how easy the features are).

We already support split screen multiplayer at this stage.

Hope that helps!
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

hiker wrote: We certainly plan to add network multiplayer support, which means you should be able to run it over the internet with friends (assuming that the lag is within certain limits of course). At this stage I can't commit to a deadline for that, for now we focus on getting all the physics issues fixed first, and make the actual game better. But it will (hopefully, time permitted) be the next big feature we add (see our currently proposed milestons page at:
http://supertuxkart.sourceforge.net/Milestones - release 0.5 (though I admit that this schedule is not really fixed, since it depends a lot on how much time the core developer have, and how easy the features are).

We already support split screen multiplayer at this stage.

Hope that helps!
Joerg
Split screen multiplayer?It sounds ineresting. How fine is your game's performance?Can it runs smoothly(more than 60 fps)with 10 or more karts?How many screens can your game split,4 or more?And Is a player just compete with some robot karts(controlled by computer) in your game?
So I don't think this game form is more attractive than the online version.Currently,I find there are a lot of game players playing the
kart game online and their passion seemly never drop.Maybe it is the competing between amounts of real players brings them so much fun.
So why not design a pretty good online kart game server?
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

michaelth wrote: Split screen multiplayer?It sounds ineresting.
Well, it's only interesting if you have a couple of joysticks (or, if I integrate my wii hack, a couple of wii remotes) around. Using keyboard with more than two players is (imho) close to impossible, even with two people it's hard to find keys that don't cancel each other out (google for 'keyboards are evil').
michaelth wrote: How fine is your game's performance?Can it runs smoothly(more than 60 fps)with 10 or more karts?
Well, I did quite a bit of performance improvements (in case that you have heard of the performance problems of the 'game of the month' supertuxkart version), but we are currently stuck with the rather dated plib library, which doesn't exactly gives the best performance. My laptop is usually fine with 4 karts (now that I write this: I am mostly using a debug executable, so it might be able to handle more), my desktop can run 10 karts with about 100 fps and more (nvidia GS 6800). It actually depends a bit on how many karts you see (which indicates that the performance problem are the kart graphics, and the graphics library we use). We are using display lists, but for better performance most of the data handling should be improved (e.g. sort triangles by texture to avoid texture swapping, generally make use of shared models, e.g. trees in some of the tracks, which are not at all optimised, ...).
michaelth wrote: How many screens can your game split,4 or more?
2-4 screens. Obviously, there is a certain performance hit, since the scene is rendered multiple times.
And Is a player just compete with some robot karts(controlled by computer) in your game?
You can play against any mixture of up to 4 human karts and more AI/robot karts at the same time (there is a limit of 10 karts atm, but that's mainly due to having to specify enough starting positions in some of the tracks, where the karts have to start on non-default positions).
So I don't think this game form is more attractive than the online version.Currently,I find there are a lot of game players playing the kart game
Which is 'the' kart game? Usually it's "the kart game" is any of the many Mario Karts, but that's not online :)
online and their passion seemly never drop.Maybe it is the competing between amounts of real players brings them so much fun.
So why not design a pretty good online kart game server?
Well, we are thinking about several options, starting with online highscore lists, download manager for additional tracks, karts etc. I had thought about a kart game server, but the main problem is to get a server with a fast enough internet connection (considering that we are not making any money with the game). Of course, the dream would be to have a online community, with tournament, people could watch other player's races, buy upgrades for karts ... but I think that's a bit too much for our current number of developers (2 regular admins, and currently 2 or 3 active people). It would need some serious amount of money to get proper tracks, the source code up to speed, and then hope to attract enough attention - which might mean running races with price money, dealing with the problem of people cheating (a bit of a problem with open source software), ... All in all not easy.

But we are always open for suggestions and ideas (feel free to contact me at hiker <at> luding dot org, or on our development email list, details are on our web page).

Besides, my main goal is actually to add more mini games (think of racing with a twist). I have quite a few ideas for these, and I think that would make STK stand out from the crowd ... I hope :)

Best regards,
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

hiker wrote: Which is 'the' kart game? Usually it's "the kart game" is any of the many Mario Karts, but that's not online :)
"the kart game" I refered is a Korean game just like yours but it is a online game.Every player competes with each other.It seems funny for amounts of young players.
Well, we are thinking about several options, starting with online highscore lists, download manager for additional tracks, karts etc. I had thought about a kart game server, but the main problem is to get a server with a fast enough internet connection (considering that we are not making any money with the game). Of course, the dream would be to have a online community, with tournament, people could watch other player's races, buy upgrades for karts ... but I think that's a bit too much for our current number of developers (2 regular admins, and currently 2 or 3 active people). It would need some serious amount of money to get proper tracks, the source code up to speed, and then hope to attract enough attention - which might mean running races with price money, dealing with the problem of people cheating (a bit of a problem with open source software), ... All in all not easy.
Why not firstly make a LAN version of your SuperTuxKart.As to me,I am now making a multiplayer FPS game in my LAB(12 PCs).I have basically finish the communcation designing of it and made a simple demo(using CounterStrike's Models).The most important characteristics is that the game's server runs 4 PCs so it provides stronger processing ability ,so it can hold 100 or more players in one map.
Certainly,the communication delay is far different from Internet.However,building a testing evironment for your SuperTuxKart in LAN may be a practicable try.And the communication in LAN is faster and more stable than the internet.
Is your source code open?
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

[quoteWell, I did quite a bit of performance improvements (in case that you have heard of the performance problems of the 'game of the month' supertuxkart version), but we are currently stuck with the rather dated plib library, which doesn't exactly gives the best performance. My laptop is usually fine with 4 karts (now that I write this: I am mostly using a debug executable, so it might be able to handle more), my desktop can run 10 karts with about 100 fps and more (nvidia GS 6800). It actually depends a bit on how many karts you see (which indicates that the performance problem are the kart graphics, and the graphics library we use). We are using display lists, but for better performance most of the data handling should be improved (e.g. sort triangles by texture to avoid texture swapping, generally make use of shared models, e.g. trees in some of the tracks, which are not at all optimised, ...).][/quote]
Does your game's every frame's time mainly focus on 3d-rendering or Physics calculating?
If it mainly focus on 3d-rendering,you may make several simplified version models for different distances. Have you tried doing such things.
If it mainly focus on Physics calculating,you can run your game 's "server"(providing the physics calculating) on several computers.But it needs some cluster-computing technique.
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

michaelth wrote:
hiker wrote: Which is 'the' kart game? Usually it's "the kart game" is any of the many Mario Karts, but that's not online :)
"the kart game" I refered is a Korean game just like yours but it is a online game.Every player competes with each other.It seems funny for amounts of young players.
Ah - I've heard of that, but apparently it's only available in Korea (even if it were available, it wouldn't help me too much, since I don't speak/read Korean).
michaelth wrote: Why not firstly make a LAN version of your SuperTuxKart.As to me,I am now making a multiplayer FPS game in my LAB(12 PCs).I have basically finish the communcation designing of it and made a simple demo(using CounterStrike's Models).The most important characteristics is that the game's server runs 4 PCs so it provides stronger processing ability ,so it can hold 100 or more players in one map.
Certainly,the communication delay is far different from Internet.However,building a testing evironment for your SuperTuxKart in LAN may be a practicable try.And the communication in LAN is faster and more stable than the internet.
Well, implementing it in a LAN environment is comparable easy - you (more or less) don't have to deal with dropped packages (or tcp/ip is fast enough anyway). I think I prefer implementing it once, and then correct so that it can deal (to a certain degree) with lost packages, and slower connections ... I hope :)

michaelth wrote: Is your source code open?
Yes, it is. Just follow the download page on our homepage.
michaelth wrote: Does your game's every frame's time mainly focus on 3d-rendering or Physics calculating?
If it mainly focus on 3d-rendering,you may make several simplified version models for different distances. Have you tried doing such things.
If it mainly focus on Physics calculating,you can run your game 's "server"(providing the physics calculating) on several computers.But it needs some cluster-computing technique.
Physics are no problem, we are using a rather simplified model anyway (our goal is not to make a realistic game). We are using bullet physics (though we are still in the process of cleaning up old physics code that's still left in) with the default 60HZ timesteps. While I haven't done any profiling for a while,it's obvious that the graphics are the problem (your FPS depends on how many karts you see).

Having models of different resolution is on our todo list (bottleneck atm is number of developers/artists). As soon as we have lower resolution kart models, we can put them in, plib supports switching of models depending on distance.

Cheers,
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

Physics are no problem, we are using a rather simplified model anyway (our goal is not to make a realistic game). We are using bullet physics (though we are still in the process of cleaning up old physics code that's still left in) with the default 60HZ timesteps. While I haven't done any profiling for a while,it's obvious that the graphics are the problem (your FPS depends on how many karts you see).]
Well,the most important problem to reduce rendering time within lots of (more than 10) karts.Is your 3d render programed directly with using OpenGL/DirectX 3d, or based on a ready-made 3d graphics Engine?Certainly ,if you are proficient in graphics developping,you can code the fastest graphics engine for your own game.
Have try using Orge3d? I think it is a fine-performance open source library.And it has good fps performance when rendering less than 100
lifelike objects.The following picture is rendered by OGRE.
Attachments
sample.JPG
sample.JPG (69.87 KiB) Viewed 18120 times
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

How different is your SuperTuxKart from TuxKart?Or just Modify/add some models.
How much work have you done in this game?
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

Hi,

sorry for the delay, but I had promised my wife some computer-free time over the Xmas period :)
michaelth wrote:Well,the most important problem to reduce rendering time within lots of (more than 10) karts.Is your 3d render programed directly with using OpenGL/DirectX 3d, or based on a ready-made 3d graphics Engine?Certainly ,if you are proficient in graphics developping,you can code the fastest graphics engine for your own game.
Have try using Orge3d? I think it is a fine-performance open source library.And it has good fps performance when rendering less than 100
lifelike objects.The following picture is rendered by OGRE.
STK is currently using plib for the rendering, but we are already thinking about switching to an up-to-date and active library (open scene graph, ogre, irrlicht, ...).Not sure when we have the time to actually switch over - we currently favour either OSG (less work when switching over, since it is somewhat similar to plib) or irrlicht (easy to learn, few dependencies, optimised for this kind of application). Ogre would probably be third choice (it apparently has quite a few additional dependencies, and has some problems with certain open source graphics drivers).
michaelth wrote:How different is your SuperTuxKart from TuxKart?Or just Modify/add some models.
How much work have you done in this game?
By now we have (very roughly estimated) rewritten about 90% of the original TK:
  • new physics (using bullet)
  • new AI
  • new fullscreen support (using SDL)
  • new keyboard handling (using SDL allowed us to use e.g.'right shift key' as well, improving split screen multiplayer handling)
  • new sound system (openAL+ogg support instead of plib sound and mod support)
  • new menu system
  • Mac support
  • rewrote most of the 'manager' classes, i.e. for handling attachments, ...
  • added features like shortcut detection, highscore lists, new gadgets (bombs, parachute, anvil), new track, a halloween add-on
And probably even more - so the 90% newly written is more than justified :)

For the history: the people on the 'game of the month' project tood TK, improved the graphics, and rewrote some part of the code, and added more dependencies. At the end (after some nearly flame-war like discussions) the project was basically dead - the code full of bugs and too slow. It was branched off as 'SuperTuxKart', basically to keep the source base somewhere.

I picked it up, fixed all performance problems and most (all?) bugs, and then (when I noticed that other people are interested as well) made it a new active project. After two releases we moved to sourceforge (due to stability problems with the old host), and we are now planning the next release (main feature will be the new physics), with plenty of new ideas to keep us busy for a while :) I'll keep this thread up-to-date.

Cheers,
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

Hi.
I have download the TuxKart source and write a P2P network version of it.For its bad OPENGL rendering,when I use 3 machines to test the P2P game,I need to install a Graphic Driver for my Radeon 3200 video card(on another machine).And then it work smoothly.
I also download and play your Supertuxkart.It's physics seemly better than than the previous version.Nice job!Keep us always know
yout fresh work.
The following pictures are my P2P game version of the TuxKart:
Attachments
Kart 2 in B machine
Kart 2 in B machine
kart2.JPG (104.3 KiB) Viewed 17838 times
Kart 1 in A machine
Kart 1 in A machine
kart1.JPG (95.26 KiB) Viewed 17855 times
hiker
Posts: 83
Joined: Tue Oct 24, 2006 11:52 pm
Location: Australia
Contact:

Re: SuperTuxKart

Post by hiker »

Dear Michealth,
I have download the TuxKart source and write a P2P network version of it.For its bad OPENGL rendering,when I use 3 machines to test the P2P game,I need to install a Graphic Driver for my Radeon 3200 video card(on another machine).And then it work smoothly.
Whow - that's great. Would you be interested in supplying your p2p version to the SuperTuxkart project? We can always use some help :) I've actually got a few questions (e.g. did you use a network library, or just plain sockets, ...) - but we are getting somewhat off topic here. If you are interested, could you send me a PM here?
I also download and play your Supertuxkart.It's physics seemly better than than the previous version.Nice job!Keep us always know yout fresh work.
Thanks for your encouragement. I've already found and fixed a few bugs in the windows test version I created, time to build a new one (but there are still a few annoyances to fix). We are planning a 0.4 release soonish, so I should have a new alpha version ready here soon.

Cheers,
Joerg
michaelth
Posts: 21
Joined: Mon Oct 22, 2007 12:47 pm

Re: SuperTuxKart

Post by michaelth »

Well,I just use the udp socket to implement the P2P version and it is easy.if you can provide me a easy way to understand your code,and the P2P version of it can be finished quickly.
Is your code mostly like the TuxKart?I means use the same Kart Class,the same control method,the same Global variables and the same GUI interface.And if your program's main flow as same as the TuxKart,the network job may be very easy.
I always be intersted in networking a funny game.
Post Reply