Julia Game Dev: Anyone interested in collaborating on some animations/practice mode for a soccer manager game?

I ported a game engine to Julia that has formations, etc and can generate minute-by-minute plays like below (with fake players):

*************  KICK OFF  *****************
Min.  2 :(klm) D_Donyuzi cuts the ball back to Z_Enodrewbt
          ...  Z_Enodrewbt is one of one with the keeper, he shoots !
          ...  But it whistles just past the post
Min.  3 :(ape) B_Ohachusy finds his way through
          ...  B_Ohachusy with the shot !
          ...  GOAL !!
          ...  ape 1-0 klm ...
Min.  3 :(klm) R_Ukanyi with the dribble
          ...  But C_Chinhooryo reads the situation well and wins the ball
Min.  4 :(klm) Z_Enodrewbt takes possesion
          ...  Z_Enodrewbt with the strike !
          ...  But O_Voishtato with the difficult save
Min.  5 :(klm) B_Omo passes the ball to D_Donyuzi
          ...  A vicious shot by D_Donyuzi !
          ...  It goes wide for a goal kick
Min.  6 :(klm) Z_Enodrewbt cuts the ball back to C_Umnablobt
          ...  Cleared by T_Eryur
Min.  9 :(klm) Z_Enodrewbt cuts the ball back to D_Donyuzi
          ...  D_Donyuzi with the strike !
          ...  O_Voishtato makes a difficult save
Min. 12 :(klm) X_Una with a smart pass to M_Avraeshtab
          ...  M_Avraeshtab goes for goal !
          ...  But O_Voishtato with the difficult save
Min. 13 :(klm) D_Donyuzi with a real burst of pace
          ...  D_Donyuzi with the strike !
          ...  Saved by O_Voishtato
Min. 15 :(ape) A_Urte finds B_Ohachusy in the box
          ...  B_Ohachusy shoots towards goal !
          ...  GOAL !!
          ...  ape 2-0 klm ...
Min. 16 :(klm) S_Brarto slides the ball across to Z_Enodrewbt
          ...  A vicious shot by Z_Enodrewbt !
          ...  O_Voishtato makes a comfortable save
Min. 19 :(ape) N_Noivo finds B_Ohachusy in the box
          ...  B_Ohachusy goes for goal !
          ...  But L_Ryili punches it away
Min. 22 :(klm) V_Chisi with the heel pass to X_Una
          ...  X_Una shoots towards goal !
          ...  O_Voishtato makes a difficult save
Min. 23 :(klm) V_Chisi with a flashy move
          ...  T_Eryur wins the ball with a clear tackle
Min. 24 :(klm) Z_Enodrewbt with a glorious long pass to M_Avraeshtab
          ...  Intercepted by T_Eryur
Min. 25 :(klm) Z_Enodrewbt with a smart pass to R_Ukanyi
          ...  But C_Eja reads the situation well and wins the ball
Min. 28 :(ape) T_Eryur with an ugly foul
          ...  Shown a yellow card
Min. 29 :(klm) F_Ibto plays a long ball to D_Donyuzi
          ...  D_Donyuzi tries to chip the ball over the keeper !
          ...  But it whistles just past the post
Min. 31 :(klm) M_Avraeshtab passes the ball to X_Una
          ...  X_Una shoots towards goal !
          ...  But it goes just over
Min. 34 :(klm) F_Ibto with a smart pass to D_Donyuzi
          ...  A powerful shot by D_Donyuzi !
          ...  O_Voishtato makes a difficult save
Min. 35 :(klm) F_Ibto with a precise pass to S_Brarto
          ...  S_Brarto with the strike !
          ...  But it goes wide
Min. 37 :(klm) R_Ukanyi takes advantage of a defensive mistake
          ...  R_Ukanyi tries to beat the keeper !
          ...  O_Voishtato parries it
Min. 43 :(klm) V_Chisi slides the ball across to M_Avraeshtab
          ...  M_Avraeshtab tries to chip the ball over the keeper !
          ...  But O_Voishtato with the difficult save
Min. 44 :(klm) Z_Enodrewbt cuts the ball back to R_Ukanyi
          ...  R_Ukanyi with the shot !
          ...  O_Voishtato makes a difficult save

The ref adds 1 min. of injury time

Min. 46 :(klm) D_Donyuzi with a precise pass to X_Una
          ...  X_Una is one of one with the keeper, he shoots !
          ...  But it clips the post and goes wide

*************  HALF TIME  ****************

Min. 46 :(klm) Z_Enodrewbt finds D_Donyuzi in the box
          ...  D_Donyuzi with the shot !
          ...  But it clips the post and goes wide
Min. 48 :(klm) S_Brarto with the heel pass to X_Una
          ...  C_Chinhooryo gets in the way and wins the ball
Min. 54 :(klm) M_Avraeshtab heads the ball down to D_Donyuzi
          ...  D_Donyuzi shoots towards goal !
          ...  But it goes wide
Min. 60 :(ape) N_Noivo fouls badly
          ...  He gets a yellow card
Min. 62 :(klm) D_Donyuzi with the dribble
          ...  D_Donyuzi goes for goal !
          ...  But O_Voishtato reaches the ball. Good save
Min. 63 :(klm) Z_Enodrewbt heads the ball down to D_Donyuzi
          ...  D_Donyuzi shoots towards goal !
          ...  O_Voishtato gathers it comfortably
Min. 67 :(klm) D_Donyuzi cuts through the defense
          ...  But D_Yiceny reads the situation well and wins the ball
Min. 68 :(klm) S_Brarto with the dribble
          ...  Cleared by D_Yiceny
Min. 71 :(ape) A_Urte cuts the ball back to B_Ohachusy
          ...  But D_Donyuzi wins the tackle
Min. 73 :(ape) T_Eryur with a glorious long pass to K_Jaezew
          ...  K_Jaezew with the strike !
          ...  L_Ryili makes a difficult save
Min. 75 :(ape) B_Ohachusy cuts the ball back to Z_Zoest
          ...  Z_Zoest tries to chip the ball over the keeper !
          ...  Wide of goal
Min. 76 :(klm) D_Donyuzi finds a hole in the defense
          ...  A powerful shot by D_Donyuzi !
          ...  But it clips the post and goes wide
Min. 78 :(klm) D_Donyuzi plays a long ball to S_Brarto
          ...  S_Brarto is one of one with the keeper, he shoots !
          ...  O_Voishtato gathers it comfortably
Min. 79 :(klm) R_Ukanyi with the heel pass to X_Una
          ...  X_Una with the strike !
          ...  But O_Voishtato with the difficult save
Min. 82 :(ape) A_Urte with the dribble
          ...  M_Avraeshtab wins the ball with a clear tackle
Min. 84 :(ape) A_Urte cuts the ball back to B_Ohachusy
          ...  Blocked by R_Ukanyi
Min. 86 :(ape) C_Chinhooryo passes the ball to B_Ohachusy
          ...  B_Ohachusy chases it through, he must score !
          ...  L_Ryili gathers it comfortably
Min. 86 :(klm) V_Chisi slides the ball across to Z_Enodrewbt
          ...  A vicious shot by Z_Enodrewbt !
          ...  O_Voishtato makes a good save
Min. 88 :(klm) D_Donyuzi finds himself in a good position
          ...  A powerful shot by D_Donyuzi !
          ...  Wide of goal

The ref adds 1 min. of injury time


*************  FULL TIME  ****************

My main purpose is to use this for machine learning (ie, choose ratings that can fit real-life stats), but it is also fully playable. That aspect can be improved if I spend time on a few other features.

I am wondering if there is any interest. It would be nice to have the option to “watch” the game, or even maybe a simple (2-D) practice mode where the user can interact with their squad.

I saw a couple game-dev packages but haven’t tried them out. Maybe someone could use it to showcase their package?

@Sabe
@Kyjor

4 Likes

Interesting…

Want to do a reinforcement learning on it?

1 Like

To be clear, there are two aspects here.

I was imagining this as a package for benchmarking optimization algorithms, but it is only missing a few bells and whistles to be fully featured as a game.

To finally answer your question: RL could possibly be used to fit the ratings, and to improve the AI for auto-teamsheet/tactics selection before each match.

So that would be very interesting.

That’s pretty cool! At the moment, to implement something like this seems like it would be pretty complex, and I don’t have the bandwidth for it. If you’d like to implement it yourself, I can definitely offer support though!

1 Like

Thanks, do you think even a highlight reel (that looks like a playable 2D game) would be a lot of effort?

Yeah, sadly I think so :confused: . But like I said, I would definitely support you if you end up trying to pursue it using JulGame. There’s still a lot of work I need to do on the engine and games I want to make with it. This is something I would be interested in down the line, and hopefully doing some reinforcement learning with live simulations will be easy in the engine eventually :slight_smile:

1 Like