Player attribute maths

Talk about EVERYTHING related to Kick Off 1 + 2.

Moderator: Moderators

User avatar
Danny D
4000+ Poster!
4000+ Poster!
Posts: 4765
Joined: Mon Jun 11, 2001 12:00 am
Contact:

Postby Danny D » Sat Sep 10, 2005 3:01 am

Great stuff Steve.Are you converting the debuggers dump from 68000 to c manually ? That must be painstaking, checking each register for their contents, etc.. ! Another question, why is your output above c and not c++ ?

loop:
move.w (a0)+,d0
cmp.w #337,d0
beq left_arrow
cmp.w #338,d0
beq up_arrow
cmp.w #340,d0

Could you update the text on the competition version wiki page to a more technical version please (tools used, 68000 code etc..)

http://www.ko-gathering.com/wiki/index. ... on_version

The aim is to have an improved and updated version of Kick Off 2 using reverse engineering on the original Amiga game.
"We are now on the threshold of a newer movement, with a newer hope and a new inspiration."
James Larkin
User avatar
filippodb
2000+ Poster!
2000+ Poster!
Posts: 2491
Joined: Wed Jun 27, 2001 12:00 am
Location: Supposed to be in Rome (but usually in Venice - Italy)
Contact:

Postby filippodb » Sat Sep 10, 2005 10:12 am

every aspect of the game are tecnically analized on KORPS category, here:

http://www.ko-gathering.com/wiki/index. ... gory:KORPS
User avatar
Steve Camber
Mad! 7000+ poster!
Mad! 7000+ poster!
Posts: 7657
Joined: Sat Jun 16, 2001 12:00 am
Location: Sheffield, England
Contact:

Postby Steve Camber » Sat Sep 10, 2005 3:09 pm

Monty wrote:
Steve Camber wrote:All player's running speed decreases gradually as the game progresses (possibly more so when in possession of the ball). There is a lower cap, so they dont come to a complete standstill. It's not related to morale at all.

There is also a function which makes the winning player slower by a multiple of the goal difference. However, this may only affect the goalie. There is also some code which appears to make the player speed up again in the last minute. Needs further research though...


for i can only talk about the oracle-version, it seems that this lower cap is missing there. i had several games against the computer where i led 25:0 or something around that and i had to take care that my keeper hadn't to do a goal-kick. if that happened the game was practically over, because he moved either with a speed of one pixel per 10 seconds towards his goal-kick-position or he moved BACKWARDS of the pitch into nowhere (= negative speed).

but this is maybe just a bug of the oracle-version...


Yes, the lower cap is missing when the goalie is taking a goal kick.. but as soon as he's kicked the ball, the lower cap returns so he's instantly back up to a decent speed.
Maybe this feature is meant to simulate the goalie taking his time and trying to run the clock down (swifty style) when his team is winning?
--
Image
SteveC - Kick Off engineer
18 Dec 2003 - "One day I'm going to disassemble the 68000 code, and find out exactly what's going on in there!! "

Ask me about online KO2 :)
User avatar
Steve Camber
Mad! 7000+ poster!
Mad! 7000+ poster!
Posts: 7657
Joined: Sat Jun 16, 2001 12:00 am
Location: Sheffield, England
Contact:

Postby Steve Camber » Sat Sep 10, 2005 3:16 pm

Danny D wrote:Great stuff Steve.Are you converting the debuggers dump from 68000 to c manually ? That must be painstaking, checking each register for their contents, etc.. ! Another question, why is your output above c and not c++ ?


Yes, I manually converted that piece of code from a 68000 dump to simple C to make it more readable for everyone. I assumed more people here can read C compared to those that can read 68000.

Danny D wrote:loop:
move.w (a0)+,d0
cmp.w #337,d0
beq left_arrow
cmp.w #338,d0
beq up_arrow
cmp.w #340,d0


Where's that from?!

Danny D wrote:Could you update the text on the competition version wiki page to a more technical version please (tools used, 68000 code etc..)

http://www.ko-gathering.com/wiki/index. ... on_version

The aim is to have an improved and updated version of Kick Off 2 using reverse engineering on the original Amiga game.


I will update the wiki at some point :)
--
Image
SteveC - Kick Off engineer
18 Dec 2003 - "One day I'm going to disassemble the 68000 code, and find out exactly what's going on in there!! "

Ask me about online KO2 :)
User avatar
Sam
4000+ Poster!
4000+ Poster!
Posts: 4747
Joined: Sat Jan 03, 2004 8:46 pm
Location: The garden of England

Postby Sam » Tue Jul 18, 2006 1:11 pm

jesper wrote:So morale is signed, hmm. Just had a look at the stats file. Fisher has (unsigned) morale 226 and signed morale -30. Hunt and Barker have negative morale as well which is understandable, but why is Fisher so unhappy?


I think he has problems at home. Something to do with the wife & Pedro. He doesn't like to talk about it much. The Prozac's helping though!
Time is running out...
User avatar
Bounty Bob
5000+ Poster!
5000+ Poster!
Posts: 5263
Joined: Sun Sep 19, 2004 7:16 pm

Postby Bounty Bob » Tue Jul 18, 2006 1:16 pm

Monty wrote:but this is maybe just a bug of the oracle-version...
No, that's PBD you're thinking of. :wink:
Robert
Moderator
Moderator
Posts: 16369
Joined: Fri Jun 15, 2001 12:00 am

Postby Robert » Tue Jul 18, 2006 1:40 pm

Can I just read this again then Steve.

It appears that, when a tackle is made, the Tackling scores of the two players are checked - HOWEVER, they are first modified by:

Square root of Agility + (Morale/4)

So...

Imagine two players on a collision course...

Player A
Tackling 170
Agility 200
Morale 32

Player B
Tackling 180
Agility 150
Morale -10

So, player A modifer is (SQR(200)=14.14) + (32/4=8 ) = 22.14
And, player B modifier is (SQR(150)=12.24) + (-10/4=-2.5) = 9.75

Total Score A, 170+Mod = 192.14
Total Score B, 180+Mod = 189.75

Result: Player A pushes player B over.

This is interesting as Player B has the higher Tackling score. Because Player A is nimble and determined he is able to pull off a challenge on a lumbering miserable oaf?

Am I understanding this 100% correctly? I have of course ignored the Team A/B difference, now that is consigned to history.

Looking back on this Steve, you've explained how the modifier is calculated but you haven't confirmed what the attribute check is for a block tackle. Is it JUST Tackling or do height/weight play a role? I'd like to know all attribs that are checked for collisions. The reason I ask is that years ago I had a mail from Dino saying that height/weight were involved.
User avatar
Steve Camber
Mad! 7000+ poster!
Mad! 7000+ poster!
Posts: 7657
Joined: Sat Jun 16, 2001 12:00 am
Location: Sheffield, England
Contact:

Postby Steve Camber » Tue Jul 18, 2006 2:08 pm

This isnt exactly fresh in the memory and I dont have time to check right now, but..

- When a tackle occurs, it's the one with the larger tackling value who stays on his feet (probably a random element in there to mix it up a bit)

- Players height is used for headers and nothing else.

- Weight is not used for anything at all. Ever.


- I could be wrong on any of the above, just dont have time to scan through the code and back up my beliefs as I usually would!
--
Image
SteveC - Kick Off engineer
18 Dec 2003 - "One day I'm going to disassemble the 68000 code, and find out exactly what's going on in there!! "

Ask me about online KO2 :)
User avatar
Sid
4000+ Poster!
4000+ Poster!
Posts: 4627
Joined: Thu Feb 12, 2004 2:25 pm
Location: KORA HQ
Contact:

Postby Sid » Tue Sep 12, 2006 8:46 am

Very technical :?

But can you use any of this stuff on the pitch to manipulate the course of the game to your advantage?
Image
WC2011 #20th position
WC2011 Rodolfo's new arch enemy and Silver Cup dream ender!
WC2011 The KOA's new bowling champion
UKC2009 #1 Silver Cup Winner
UKC2007 organiser

Who is online

Users browsing this forum: No registered users and 4 guests