Sports game

Been developing a game on and off for a while, whenever I have time and motivation.


  • Better AI
  • More teams
  • More players
  • More formations
  • Soccer tournaments

It started off as an idea to create a simple framework for game dev. I needed to create a simple implementation of it and then it sort of just kept going. I got going a bit on the AI of team sports. Quite a lot of fun and also quite challenging to get it to an exciting game. Now I am not sure if I should go ahead and continue the game or if it is time to retire it. Fine-tuning AI takes quite a lot of work… Would be nice to hear what you have to say.

Do you like the control system? Quite different from most other similar games… Would you demand a kbd-ctrl as well?
How about the AI? I know it needs improvement to really be challenging, but is there anything missing in the behavior?
It is pretty well prepared for different line formations and somewhat for different strategies. It could be expanded to be a bit of a management challenge as well. Could be fun, but is that what one would want?
Do the player need to accelerate? Right now they can go to max speed in one frame update. AI would have to be much more complicated, but would it be worth it?
Probably need to read the instructions on the page before playing. If you have done that:

Be aware that the only thing in there is basically the game-play. Everything else ehh… sucks.

It started off as a hockey-like game, and has since mutated to a soccer-like game as well. It is therefore still a bit of a mix, the tackling for example are therefore quite brutal, but that is a later thing to worry about. Was originally intended to be something like speedball, and might still become something like that…

Imagine that there is a nice menu system, good gfx and sound, and some management, buy sell players, tournament options available (I know that is A LOT to imagine :wink: ). Would anybody be willing to pay 9.95 for this (type of) game?
Would anybody of you 3D gurus want to slap some 3D onto this? Would still have to be the same top-down view because of the ctrl-system… I am using plain Java so any framework would be OK to add.
Not sure that needs to be the way to go. I could imagine doing this in 2D, freebee just for the fun of the AI challenge, but more fun if someone other than I would bother playing it. :slight_smile:

Hope it works :slight_smile:
Oh yeah, Java 1.5 needed

Works here, and it’s great :slight_smile:

Control system is quirky but feels pretty natural. Like all soccer games though always feel like your guys should be doing more :slight_smile:


Wow, its really cool. Trouble is that I’m hopeless.

Maybe to give players a chance you should make it loser’s ball at kick-off after a goal.

Nice work.

Thanks for the feedback!

Hmmm “quirky but natural”, should I interpret that as easy to understand, but yet difficult to control? The ctrl system is what makes this a bit different from most other soccer games. I hate it when I playing soccer games and I want to pass to a player and then the game passes to the player to the side or even worse to the opponent. With this mouse you control exactly where the puck/ball goes. Is the quirkyness how to shoot/pass or how to switch players or both? This is a bit of a learning experience, since it is a somewhat unusual ctrl system.

Both teams use the same AI at the moment, so by improving it, I would also improve the opponent :slight_smile: Next step might be to create different levels of AI. Was there any specific part that you wanted to improve? Defence, offence, passing fore checking, placement?

Yep, you are right about that, it is not very soccer like… Trouble is that I haven’t decided what type of game to do. Soccer, hockey, or fantasy speedball type game. Not sure if anybody cares about playing soccer if you can’t ctrl your favourite team. Don’t think I will be able to license real teams and players :frowning:

I’ll see if I can create different AI levels and game-type behaviour this weekend.

Guess it is sort of slow around here when 4K isn’t running :slight_smile:

Glad to hear more opinions.

Wow quite fun, and I don’t normally like sports games. Perhaps this one is a little more arcadey or something. Whatever it is, I like this quite a lot. Is this all just plain java 2D as well?

Pretty good on the AI, it managed to beat me once (total 1 - 3).

I think the hockey one doesn’t really work though, it seems like the ball keeps getting stuck in between two players and it’s really hard to get it to go anymore. Also i think there’s a bug where the second game you play is always hockey… even if you select soccer… anyone confirm this?

Anyway it might be worthwhile experimenting with some stamina based acceleration. Say hold right click (I think right click is essentially = left click for now yea?) or press shift. It could let you run for a little while but then move slower later (move speed might be somewhat proportional to stamina bar, and expending stamina bar gives speed but when stamina = 0% then movement is %50, when stamina is 50% move speed is 75%, something like that?). I don’t play any sports games really ever though, so don’t take any of my ideas too seriously. The AI should probably implement such running feature if it’s close to the ball and/or you are near the goal.

You might want to present the game as something that’s not quite soccer since it’s a little bit different.

And don’t be too hard on yourself either, this is a lot more fun than a lot of the stuff that some developers try to label as “games”.

In fact if this was multiplayer this might be a lot of fun to play against someone in…

Maybe let the player create their own team, then they can call it the Australian Socceroos or whatever they think the best team is :wink:

If the content is player-created, then there’s no copy-right/licensing problem.


I have added one AI level for the soccer game, so all opponents are a bit slower and tacle and shoot a bit softer. I only changed it a bit but it should be noticable. Soccer now has kickoff rather than that odd battle for puck thing. I also changed opponent team in soccer to a 4-3-3 formation. Hockey should be pretty much the same.

It’s getting really late here,so I’ll write some more later.

Impressive shi t:)

Yep, I don’t think I could compete with FIFA07 so I should probably try to niche it in some arcadey direction. Speedball2 was the inspiration, so that might be just right. Yupp plain java 2D, but I am sort of hoping that someone talented in 3D, jME or Xith3D or (plain) JLWGL could help me make it look a bit better. I guess I have to make it a bit cooler first to attract some interest… Anybody interested just PM me! :smiley:

I have added more teams so it should be possible to get a reasonable challenge by selecting different teams. The teams have differently talented players, AI and formations. For soccer, select player team: BallsFC and computer:Slow, and you should have a fair chance :wink:

Hmmm yeah, it should definitely have multiplayer. We’ll see when I could implement that. Don’t have too much time right now.

Also, I have uploaded a new version, including a simple menu system, so that teamselecting is possible. I have also improved AI a bit, so passing and general behavior is a bit nicer, and probably some other things I have forgotten about.

More comment are welcome

wow that AI just got a whole lot harder. I have failed to beat it without putting it to “slow” >_<

Lot better AI. The first time I got sqashed with 8-0 at hockey by a smooth AI. :-[ The Second Time I managed to get a 3-3 :stuck_out_tongue:

OK, so I have now added 22 soccer teams, so it should be possible to create a good challenge on many levels. :slight_smile:
3-3 That is really a nice result for me! Several goals are scored and it is not impossible or way too easy. Great :smiley:
Now there are also tournament options available. Let me know how you do. These ones should be possible to win with just a little bit of training.

Have a look at the homepage for more information about tournaments and updates.

What fps count do you get?

2-2 on Soccer :). At hockey I got beaten with 6-4 (Computer smooth vs me normal):frowning: . At hockey sometimes it takes too long to prepare the strike , some times it takes normal time … why ? ???

I get 64 fps.

The green indicator above the player indicates the power. When you shoot and tackle, it goes down, and then slowly builds up again. It will take longer to build up a hard tackle or shot, if power is low. Using this to prevent many tackles in a row. Should work the same way in both hockey and soccer, but it is probably happening more often in hockey because of the physical play.

I’ll add more hockey teams soon, so you have more matchup possibilities. Some easier, some harder.

Also testing acceleration, and agility. Should be able to add that this weekend. Should make it a bit more tactical, but probably also a bit more difficult… Maybe it is already tactical and difficult enough?

Anybody tested the tournaments?

Added and uploaded a few improvements:

  • Aftertouch. Right-click before you release left mouse button when shooting. Then move mouse cursor quickly to the side to create aftertouch spin on the ball.
  • Windowed mode. Just use other webstart link.
  • Individual goalies settings.
  • Keyboard input possible. Press ‘k’ to activate keys (arrows plus z) ‘m’ for mouse again.
  • Camera is now higher up, so you can see more of the field.
  • More difference in players (faster players are quite a lot faster)
  • Player energy
  • Player speed boost (use space to activate).
  • Tournament are now simulated so that the scores are realistic according to team strengths.

Some updates I uploaded a few days ago:

  • Added a turbo mode. This can be nice in the Tournaments. You can engage turbo if you are in a comfortable lead, to quicker advance in the tournament. Just press “T” to toggle turbo mode.
  • Better goalie. The goalie will now also take into account where the puck/ball is heading instead of just where it is at the moment. Goalies are now also a quicker.
  • Because of the better goalies, I also had to make the AI shoot harder, to give it a chance to score.
  • You are allowed to select formations in soccer quick mode, rather than using teams default formation.
  • Acceleration and slowdown when turning. This a quite big change for AI and gameplay, even though I have tried to keep the settings so that the change won’t be too noticeable.

Feedback greatly appreciated!

How do I change players when in keyboard mode ?

Opps, wrote wrong, should be arrow-keys to move and ‘Z’ to shoot/tackle/change player. I still like mouse a lot better, I get beaten up when I use keys. Any way to make it easier to play with keys?

The little time I have had to code, I have used to add features, so it might need some tuning. Switching players with the ‘z’ key will get the player closest to the puck. Probably better to switch to the player closest to the path of the puck. Might have a look at that later on.

Some small updates:

  • Cup is now available.
  • “Silver goal” (since cup matches not allowed to end in a draw)
  • Individual team colors (rendered from the team name), can also be set specifically in config file
  • Slightly better AI
  • Player energy now lasts a bit longer

One more update:

  • Team strategy settings are now available to configure before each soccer game
  • Forwards don’t “lump up” as they used to do
  • Default team settings adjusted, among them setting teams to be a bit more offensive minded in passes
  • Slowmotion mode (Press ‘S’ to cycle through slowmo)
  • Goalie slows down a bit faster
  • General AI improvements
  • and probably some more…

Comments and feedback are welcome!