English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 02 March 2020, 21:55   #41
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,774
Quote:
Originally Posted by Retro1234 View Post
Again I dont have anything against Bounding Boxes -but what I wrote would work - but mods please just delete my posts Thanks.
No, it wouldn't, and we told you again and again why
.

There is a reason why SF2 plays a lot more sophisticated than Yie Ar Kung Fu, and a lot of that is in those hitboxes..
Tigerskunk is offline  
Old 02 March 2020, 23:25   #42
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778
I not going to waste my time making a demo just to prove it, waste time proving stuff on a computer no-one cares about and when I'm done I never get a thanks or sorry.

It didn't work for you because you can't even understand what I'm saying.

The thread title is EASY WAY of doing it I told you an EASY WAY and I just get computer says no.
Yie Ar Kung Fu! You can't even grasp what I'm saying.

Last edited by Retro1234; 02 March 2020 at 23:30.
Retro1234 is offline  
Old 02 March 2020, 23:43   #43
DanScott
Lemon. / Core Design
 
DanScott's Avatar
 
Join Date: Mar 2016
Location: Tier 5
Posts: 1,212
DanScott is offline  
Old 03 March 2020, 00:15   #44
dlfrsilver
CaptainM68K-SPS France
 
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 46
Posts: 10,424
Send a message via MSN to dlfrsilver
Quote:
Originally Posted by rothers View Post
Didn't Mortal Kombat just use the arcade code? I seem to remember reading an interview where they said the logic was just the arcade code.

SF2 is 68k isn't it? Has anyone done a commented decompile like they have for many other games? That would be the quickest route... run the arcade code and redo the graphics engine. Still a big task.
It's not difficult per se. The problem with SF2 is that the game use 1024-1536kb of program code. This program code is code and data (data format used in byte,word, dword,lword).

It can be done. The problem is the amount of time to split each parts, it's a gargantuesque task.
dlfrsilver is offline  
Old 03 March 2020, 00:29   #45
mcgeezer
Registered User
 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
Quote:
Originally Posted by Retro1234 View Post
I not going to waste my time making a demo just to prove it, waste time proving stuff on a computer no-one cares about and when I'm done I never get a thanks or sorry.

It didn't work for you because you can't even understand what I'm saying.

The thread title is EASY WAY of doing it I told you an EASY WAY and I just get computer says no.
Yie Ar Kung Fu! You can't even grasp what I'm saying.
I’d just like to ask...

Have you coded anything in the past on Amiga? A genuine question.
mcgeezer is offline  
Old 03 March 2020, 04:47   #46
saimon69
J.M.D - Bedroom Musician
 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 3,529
Quote:
Originally Posted by dlfrsilver View Post
It's not difficult per se. The problem with SF2 is that the game use 1024-1536kb of program code. This program code is code and data (data format used in byte,word, dword,lword).

It can be done. The problem is the amount of time to split each parts, it's a gargantuesque task.
In 1993 this alone would have been a killer application to justify Hard disk purchase; nowadays, maybe, can justify a gotek?
saimon69 is offline  
Old 03 March 2020, 09:06   #47
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,774
Quote:
Originally Posted by Retro1234 View Post
I not going to waste my time making a demo just to prove it, waste time proving stuff on a computer no-one cares about and when I'm done I never get a thanks or sorry.
Ok, your decision...
Quote:
Originally Posted by Retro1234 View Post
It didn't work for you because you can't even understand what I'm saying.
No, I understand what you are saying.
I even created two games implementing what you are saying.

I even made a prototype for a game on the Amiga like that:
[ Show youtube player ]

While not being the sole instance of wisdom on that genre, I'd consider myself a bit knowledgable, you know...

Quote:
Originally Posted by Retro1234 View Post
The thread title is EASY WAY of doing it I told you an EASY WAY and I just get computer says no.
Easy way still means it needs to be sufficient for what it wants to accomplish.
SF2 is not SF2 without proper hitbox detection.

Quote:
Originally Posted by Retro1234 View Post
Yie Ar Kung Fu! You can't even grasp what I'm saying.
You are saying, that all around hit boxes for a character are enough, no need for detailed ones.
It's not hard to grasp, you know...

Why are you taking this so seriously? We are just having a technical discussion, and it's okay to be wrong on something. Have been there plenty of times..

Last edited by Tigerskunk; 03 March 2020 at 09:16.
Tigerskunk is offline  
Old 03 March 2020, 15:47   #48
Tsak
Pixelglass/Reimagine
 
Tsak's Avatar
 
Join Date: Jun 2012
Location: Athens
Posts: 1,034
Quote:
Originally Posted by Retro1234 View Post
All im saying is on a beat-em up you could do Sprite vs Sprite Collison or Mask Collison or just one large Bounding Box for the whole playe
Quote:
Originally Posted by Steril707 View Post
You are saying, that all around hit boxes for a character are enough, no need for detailed ones.
It's not hard to grasp, you know...
Isn't a Sprite vs Sprite or Mask Collision some sort of "pixel perfect" collision check? If that's the case then this has different qualities than an all around hit box.

Anyhow the problem with all the above, even if a pixel perfect method is used, is that you just need in a fighting game to make a hard distinction between the player's body and an attacking limb. You don't want the whole body of a character to act like an attack! For example if you are punching to the right, hitting the air and the other player happens to be at your back to the left (but still overlaping you), you don't want to register a hit because he isn't even remotely close to the punching arm.



The same stands true also for the body area. You need to be able to make a distinction between the body area one can hit and the rest of the player animation (including extended limbs e.t.c.). F.e. if 2 players perform a forward punch at the same time but only their fists overlap (so they are away from each other's body) you wouldn't want to register a hit either.

Attached Thumbnails
Click image for larger version

Name:	SF2-a.png
Views:	432
Size:	45.8 KB
ID:	66367   Click image for larger version

Name:	SF2-b.png
Views:	426
Size:	45.3 KB
ID:	66368  
Tsak is offline  
Old 03 March 2020, 19:50   #49
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778
im not going to have go at you because you have seen the one problem you cant tell witch part of the body is being hit(assuming your using one large sprite and not bobs split into pieces)
But your first picture after everything I wrote, come on, anyway everyone just move on

Last edited by Retro1234; 03 March 2020 at 19:58.
Retro1234 is offline  
Old 03 March 2020, 21:25   #50
rothers
Registered User
 
Join Date: Apr 2018
Location: UK
Posts: 487
Quote:
Originally Posted by dlfrsilver View Post
It's not difficult per se. The problem with SF2 is that the game use 1024-1536kb of program code. This program code is code and data (data format used in byte,word, dword,lword).

It can be done. The problem is the amount of time to split each parts, it's a gargantuesque task.

Well for MK they obviously got given the code to work with (I think all the home ports used the arcade logic code).

I'm in two minds about using the arcade code... back in the day there would have been plenty of people capable of doing it.

However now far fewer would be up to scratch on 68k asm, however you have some amazing tools at your disposal which would help.

It's probably the right route for the ultimate conversion, but it would just be for showing off internet karma as there is nothing else to gain from it.
rothers is offline  
Old 03 March 2020, 21:46   #51
jotd
This cat is no more
 
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 52
Posts: 8,201
disassembling a big executable in 68k and rebuilding the logic/resourcing it isn't an easy task even if you know the 68000 processor very well.

Best way is to debug the code using MAME so you can see it in action, check values of the variables, etc. A static analysis is very hard. Even with the right tools.^And we're talking an unknown platform, not the amiga. So the hardware interface isn't well known. Unless you check mame driver (which isn't very easy to understand either!)

You'd think you'd stumble on the IA routines directly, but they're mixed with a lot of little interest code (lowlevel routines for sound, gfx, controls, loading…). Kroah is pretty good at this. He admits he's using the Atari ST versions because they're way simpler than amiga versions (no blitter, no custom chips)
jotd is offline  
Old 03 March 2020, 21:55   #52
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,774
The point is with either pixel perfect or a large hit box, you get the problems that are described above.

It's simply not precise enough for Street Fighter..
Tigerskunk is offline  
Old 03 March 2020, 22:18   #53
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778
Im Not! having a go you Tsak just saying, but your second picture as-well after I wrote you know there X,Y could easily be overcome.

in fact knowing both players X,Y and Frame Number and Frame size it would be fairly easy to work out what part of the body has been hit with a fairly simple equation.

Going Further this probably would be possible with a single Bounding box and not even Sprite vs sprite collison.
Pre set data for each frame you could fairly easily work out what part of the body has been hit etc.

Used with Sprite Vs Sprite Collision would even probably give you collision better than bounding boxes, pixel perfect collison.

Last edited by Retro1234; 03 March 2020 at 22:34.
Retro1234 is offline  
Old 03 March 2020, 22:43   #54
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778
ive got stuff i should be doing not this....



Simple

Sprite Hit = True
X,Y = Player 2 in front of Player 1 etc
X,Y= both on Ground
Direction Player 1 = Right
Direction Player 2 = Right
Player 1 Hitting = False
Player 2 Hitting = True

Ok NO HIT.




Sprite Hit = True

Sprite 1 X,Y
Sprite 2 X,Y
Frame Etc
Move = Punch Type 1
Direction etc
Calc distance X Between Player 1 and Player 2 for Punch Type 1 = There must be distance of Blah

Too Far Away = NO HIT

Last edited by Retro1234; 03 March 2020 at 23:43.
Retro1234 is offline  
Old 04 March 2020, 07:38   #55
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Retro1234 View Post
Going Further this probably would be possible with a single Bounding box and not even Sprite vs sprite collison.
With single bounding boxes this would produce a false positive

britelite is offline  
Old 04 March 2020, 08:18   #56
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,774
Quote:
Originally Posted by Retro1234 View Post
ive got stuff i should be doing not this....



Simple

Sprite Hit = True
X,Y = Player 2 in front of Player 1 etc
X,Y= both on Ground
Direction Player 1 = Right
Direction Player 2 = Right
Player 1 Hitting = False
Player 2 Hitting = True

Ok NO HIT.




Sprite Hit = True

Sprite 1 X,Y
Sprite 2 X,Y
Frame Etc
Move = Punch Type 1
Direction etc
Calc distance X Between Player 1 and Player 2 for Punch Type 1 = There must be distance of Blah

Too Far Away = NO HIT
What you are doing is probably more complicated than checking a few hit boxes per frame with less accuracy.
The only difference is, that you don't need to keep hitbox data, but all the other data you need to compare each frame ("standing/ducking/jumping", "attacking/blocking", "direction", etc)

And in the end it would still feel like a different game compared to Street Fighter.

Just believe me, I have been there and done that.
Tigerskunk is offline  
Old 04 March 2020, 09:29   #57
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778


Simple
BOX HIT = YES

X,Y boring
Player 1 Frame Ducking
Player 1 Kicking
Size of Frames calculate, Player 1 Deduct Player 2 = only half

Player 1 = Player 2 X,Y must be so so to make contact.

No Hit

This is all very childish and I'm not going to continue, first I don't care second I don't care.
Retro1234 is offline  
Old 04 March 2020, 09:31   #58
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Retro1234 View Post


Simple
BOX HIT = YES

X,Y boring
Player 1 Frame Ducking
Player 1 Kicking
Size of Frames calculate, Player 1 Deduct Player 2 = only half

No Hit
Doing n+1 different comparisons isn't really an "easy" way anymore
britelite is offline  
Old 04 March 2020, 09:36   #59
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,778
Nor is how advanced SF2 was coded

Anyway no more silly replys.

Ecept this one thing, with Sprite vs Sprite or Mask you would have Pixel perfect Dection, if you can't understand this basic principal that I write you would never be able to make a game like SF2, SF2 is very complicated and you wouldnt be able to map all the Hit boxes it would be beyond your capabilities.

Last edited by Retro1234; 04 March 2020 at 09:47.
Retro1234 is offline  
Old 04 March 2020, 09:44   #60
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,774
Quote:
Originally Posted by Retro1234 View Post
This is all very childish and I'm not going to continue, first I don't care second I don't care.
That's what you write every post...

add/edit: Sorry, but your system isn't in any way less complicated than checking hitboxes.
The sole problem with the hit boxes is that you need all that data. But that data exists somewhere in those game files.
The actual execution isn't that complicated.

For your system, someone would need to newly create all that data for every frame. For a lot of different cases.

I don't see how this is a viable strategy, sorry.
Tigerskunk is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Super street fighter Turbo Amiga-CD32 Akuma? seiyaps5 support.Games 1 12 February 2020 03:54
Super Street Fighter 2 Turbo - The Greatest Amiga Gaming Casualty? CU_AMiGA support.Games 103 27 May 2019 17:54
Super Street Fighter 2 Amiga Cd32 GurjSagoo request.Old Rare Games 6 31 October 2009 13:13
street fighter stuntpup project.WHDLoad 5 30 August 2007 20:45
Street Fighter 2 Poster from Amiga Force Issue March 93 grape Retrogaming General Discussion 11 08 November 2005 22:25

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 14:59.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09979 seconds with 14 queries