News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

Football Fever (aka - Games with smooth "1" pixel multi directional scrolling.)

Started by sigh, 14:48, 23 April 12

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

sigh

Cheers. I'm finally able to ease up on this as there's not much else for me to do, but I'll probably do a mock up screen for referee mode showing the ref icons.To be honest - they are just going to be the animated poses in a box, but I want to find a way to present them onscreen nicely.

sigh

Example of hud and crowd/football chants:



I tweaked the crowd by adding more people and a 1 frame pixel overlay that flashes on and off for chants.

jesusdelmas

Quote from: sigh on 12:19, 25 July 18
Example of hud and crowd/football chants:



I tweaked the crowd by adding more people and a 1 frame pixel overlay that flashes on and off for chants.


Looks good!! if the gameplay is fast and good you will make the best amstrad football game ever! :)

sigh



Matchday 2 has some of the best sound effects in a CPC football game. Nice jingles along with the crowd in the background. When a goal is scored - the crowd noise gets louder, but I was wondering if it is possible to changes the "pitch" of the noise on the CPC sound chip?

It would be nice if the noise was able to be pitched in order to create a variation on atmosphere:



Gryzor

So glad this project is still alive!


Ref mode - heh that's original :D First we had penalties and goalie minigames, now there's a referee one too? What's next, controlling the medic? :D

Gryzor


sigh

Hello everyone,
Sorry for the late reply. I've been rather busy at work so I haven't been able to do much on the beat em up or football game these past few months. We have two deadlines to meet at work, the last being in August, so I will be back on both projects then.
I was thinking of doing a mock up of how the referee mode will work. But more importantly I need to do a mock up of the Menu and UI for when you are selecting teams, colours and selecting which type of game you want to play.I haven't found any coders for this as yet. It's an extremely challenging game to program due to the amount of animations in the game.

roudoudou

Quote from: sigh on 13:45, 05 July 19
I was thinking of doing a mock up of how the referee mode will work. But more importantly I need to do a mock up of the Menu and UI for when you are selecting teams, colours and selecting which type of game you want to play.I haven't found any coders for this as yet. It's an extremely challenging game to program due to the amount of animations in the game.
Always refractory to a ROM based game? With this even 464 users may play the game and memory limitation is no longer a problem.
My pronouns are RASM and ACE

sigh

Hello,

I haven't touched this for nearly 2 years now! I will be starting work on this sometime next week or the week after. There isn't much else I can do on this apart from the menu and maybe demonstrate the referee mode.

sigh

Here is the mock up for referee mode. It will tell you whether your decision was correct or not. Your decision will stick, regardless.



You cannot view this attachment. 

..and at the end of the match, you will receive an overall score: 

You cannot view this attachment. 

To choose when to make a decision during the match, I imagine pressing the space bar at the time of the event, where there will be a 3 second recording of the event; 1 second before the event and 1 second after. You can then make the decision to either play on, or select an action from the bottom.

Choosing to play on, will continue the game from where the incident took place as though nothing happened.


sigh

You cannot view this attachment.

Here is the menu. I am fully aware that it is not spectacular to look at it, but with the amount of options that can be changed, I wanted it to be as functional as possible by having all the options on one screen. You can edit the team and player names allowing for both mens and womens tournaments. The coloured squares next to the names indicate skin colours. The coloured squares next to the team name indicates shorts and top colours. You will also be able to make custom tournaments.
You can also see the "ref" and "cpu" options when selecting the amount of players.

So, that's it.

All the artwork has now been created for this football game. Another project that has taken nearly 12 years to get done in regards to art and graphics. I'm not sure what happens next in regards to it being picked up by a programmer, or it may just sink to the bottom of the forum pages. What I may do, is bump it up every so often as long as people don't mind.


jesusdelmas

Quote from: sigh on 13:13, 07 May 22You cannot view this attachment.

Here is the menu. I am fully aware that it is not spectacular to look at it, but with the amount of options that can be changed, I wanted it to be as functional as possible by having all the options on one screen. You can edit the team and player names allowing for both mens and womens tournaments. The coloured squares next to the names indicate skin colours. The coloured squares next to the team name indicates shorts and top colours. You will also be able to make custom tournaments.
You can also see the "ref" and "cpu" options when selecting the amount of players.

So, that's it.

All the artwork has now been created for this football game. Another project that has taken nearly 12 years to get done in regards to art and graphics. I'm not sure what happens next in regards to it being picked up by a programmer, or it may just sink to the bottom of the forum pages. What I may do, is bump it up every so often as long as people don't mind.
I think that a programer should take it, it is a really nice work, my congrats

sigh

Thanks.

Finding a programmer for a game like this, is going to be very tricky.

1) It's an AI nightmare.

2) It will also be hard to take on, especially if they are not into sports game, in which case they would need to find aspects of the game that they would find interesting to program, despite not liking football.

roudoudou

Quote from: sigh on 09:46, 24 May 221) It's an AI nightmare.

i hope a Z80 can simulate 10 times a soccer player brain :P
My pronouns are RASM and ACE

TotO

Quote from: roudoudou on 12:30, 24 May 22i hope a Z80 can simulate 10 times a soccer player brain :P
soccer player... brain... Hum... YES! :D
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

villain

Finally it's really easy... As Gary Lineker said:

"Football is a simple game. Twenty-two men chase a ball for 90 minutes and at the end, the Germans always win."

Sounds doable, even in Commodore-BASIC.  ;D

luckpro

Quote from: sigh on 09:46, 24 May 22Thanks.

Finding a programmer for a game like this, is going to be very tricky.

1) It's an AI nightmare.

2) It will also be hard to take on, especially if they are not into sports game, in which case they would need to find aspects of the game that they would find interesting to program, despite not liking football.


From the experience of CPC Soccer I can tell you...

1) yeah, it´s an nightmare, but not imposible

2) I recommend that the programmer really likes footy games since the development will be long.

Quote from: roudoudou on 12:30, 24 May 22
Quote from: sigh on 09:46, 24 May 221) It's an AI nightmare.

i hope a Z80 can simulate 10 times a soccer player brain :P

The AI function needs to be very very very fast to be able to move 22 players with any logic (especially if the game moves at 50 fps). 

What I did was have a fast AI for the far players and another strong AI for the players close to the ball. 
The fast AI simply stays in zone based on the position of the ball on the pitch (use an array of zones for each player). 
Strong AI does have a kind of state machine and takes into account more elements (who has the ball, distance to the ball, where is your mate, etc... ).
Then apart you have the AI of the goalkeepers that is completely different from that of the players.
I cheated with the goalkeeper (he moves faster, has a larger collision zone, etc...) otherwise it was too easy to score a goal.

And of course Germany must always win (very important).  :laugh:

If you need help let me know.

sigh

Quote from: luckpro on 10:54, 25 May 22
Quote from: sigh on 09:46, 24 May 22Thanks.

Finding a programmer for a game like this, is going to be very tricky.

1) It's an AI nightmare.

2) It will also be hard to take on, especially if they are not into sports game, in which case they would need to find aspects of the game that they would find interesting to program, despite not liking football.


From the experience of CPC Soccer I can tell you...

1) yeah, it´s an nightmare, but not imposible

2) I recommend that the programmer really likes footy games since the development will be long.

Quote from: roudoudou on 12:30, 24 May 22
Quote from: sigh on 09:46, 24 May 221) It's an AI nightmare.

i hope a Z80 can simulate 10 times a soccer player brain :P

The AI function needs to be very very very fast to be able to move 22 players with any logic (especially if the game moves at 50 fps).

What I did was have a fast AI for the far players and another strong AI for the players close to the ball.
The fast AI simply stays in zone based on the position of the ball on the pitch (use an array of zones for each player).
Strong AI does have a kind of state machine and takes into account more elements (who has the ball, distance to the ball, where is your mate, etc... ).
Then apart you have the AI of the goalkeepers that is completely different from that of the players.
I cheated with the goalkeeper (he moves faster, has a larger collision zone, etc...) otherwise it was too easy to score a goal.

And of course Germany must always win (very important).  :laugh:

If you need help let me know.


Thanks for the invaluable info!

"If you need help let me know."

I need LOADS of help in finding a programmer for this game :laugh:



andycadley

The best advice I can give: document how the game has to work.

Screenshots, animations etc are great but if you want to get a developer on board you actually need to define all the rules in clear, logical steps. The more detail you can give on how the AI should work, how and what calculations need to be applied to the ball etc, the better. And it's best to assume whoever might pick it up knows literally nothing about football whatsoever.

luckpro

Let's see if we encourage some programmer.

I'm sure it can be done much better, but in case you don't know where to start, I'll leave you with a small scheme of the CPC Soccer AI in case it helps you in any way:

Be careful, I wrote it from memory (I haven't seen the code for a long time) but it worked more or less like this:

Types of AI in cpc soccer
A - goalkeeper (STRONG IA),
B - player off screen (inactive FAST IA)
C - players on screen (activate FAST IA)
D - players close to the ball (hyperactive STRONG IA)


A - 1º calculates where the ball is on the field
     2º divide the field into 4 parts, if the ball is in the 2nd or 3rd part, don't worry too much, just make the goalkeeper stand in the center of the goal and nothing else.
     3º Otherwise, take into account the following cases:
         3a- ball only in the area:
              3a1 check the ball speed
                   if ball goes slowly:
                       1º see if there is a player near the ball, if there is, don't do anything, stay in the goal, if there isn't, go very quickly for the ball before they arrive.
                   if ball goes fast:
                       1º you have to predict "approximately" where the ball is going to pass when it reaches the goal and place the goalkeeper exactly in that position
                       2º If you think that he is not going to have time to reach that position, make the goalkeeper jump towards that position to move faster.
         3b- your partner has the ball:
              3b1 stay in the goal, your partner will take the ball out of the area, trust him
         3c- the opposing team comes with the ball:
               3c1 check if there is a defender near the striker who has the ball:
                     if there is, stay in the middle of the goal and trust your mate
                     if there is not, go for him directly, the goalkeeper is alone and has to go out in that case.


B - 1º determines where the ball is on the field
      2º look at the zone of the player's area through which he must move (you should have it in memory before starting)
      3º do linear interpolation to determine where the player has to go within his zone depending on where the ball is on the field (remember that the field is big, make the zone big too)
      4º change the direction of the player so that he goes to the destination point (always at maximum speed, do not calculate acceleration or similar, remember! FAST IA)


C - 1º 2º and 3º same as B
     4º change the acceleration so that the player goes to the determined point with the interpolation (smoothly, remember that it is already on the screen and you can see it)
     5º keep in mind that it could collide with the ball if someone shoots too fast, or if it is in the barrier in a free kick


D - NOTE: I use only 2 players of this type, no more, D1 the player closest to the ball, D2 the second closest player to the ball

D1 -
  no one has the ball:
      1º go for the ball directly without thinking about it. nothing more.

  ball on the opposing team:
     1º go for the ball directly
     2º if you are a short distance away consider (random number?) make a tackle to try to take the ball from him (in cpc soccer players move faster when they make a tackle)

  with ball:
     1º advance towards the opposite field, beware, do not always go in a straight line upwards, go drawing random numbers to go diagonally to the left or right, otherwise it would be very predictable.
     2º As you advance, keep in mind not to go off to the left or right of the field, if you are very close to the edges it tends to go towards the center
     3º if you are already in the 3/4 field line, you have to start heading towards the goal, otherwise you will shoot outside
     4º from 3/4 of the field, see if you want to shoot at the goal (random number?) (if you are going to shoot, calculate force based on distance)
     5º all the time you carry the ball see if you want to pass the ball to your mate (D2) (random number and that you have a mate where you are looking).
           If you are going to pass do not aim directly at D2 but a little in front of D2 (keep in mind that D2 is running forward and the ball will take time to reach his position)

D2 -
   ball on the opposing team:
       1º place yourself in the middle between D1 and D2 of the opposing team, this way if they try to make a pass you might block it

   ball on your partner:
       1º Accompany D1, try to position yourself in a place where D1 can pass it to you (make sure there are no players from the opposing team near or in the passing line) (simply make random positions near player and check it)

   no one has the ball:
         1º go for the ball (maybe D2 is closer to the ball than D1 at some point and may catch it first)

   you touch the ball:
         1º in cpc soccer in this rare case I exchange D1 for D2, so that it is always D1 that carries the ball (to simplify)


NOTE: When the ball is out, everyone acts as B or C except the shooter. The only exception is when the foul is close to the area and the barrier must be placed, which is used by the 4 defenders and they are placed in a straight or diagonal line depending on the position.

NOTE 2: no check collisions in B case

NOTE 3: try to implement the AI in such a way that what you can check faster goes first, to finish as fast as possible.

I'm very sleepy, I'm sure I'm forgetting something --.--

next chapter, the physics of the ball :-)

sigh

@luckpro 

The information you are providing is a godsend! Thank you so much, as not being a programmer myself, I wouldn't know where to even start with this.

Please continue!

sigh

Hope nobody minds me just bumping this up to see if anyone is interested. :)

sigh

Womens world cup starts this thursday, so I'm taking the opportunity to bump this up.

OneVision

Super Cauldron has a good multidirectional scrolling though I don't think it's one pixel horizontally.

With GurneyH on our Wonderboy remake we had different speeds of horizontal scroll as in the original arcade game : but even at the slowest speed (when you press a direction without pressing fire) we had to accept scrolling by 1 pixel mode 0 (= 2 pixels mode 1) with the R3 trick. Anything below would have consumed too much CPU and the game would have been unplayable.

Powered by SMFPacks Menu Editor Mod