English Amiga Board


Go Back   English Amiga Board > Other Projects > project.Amiga Game Factory

 
 
Thread Tools
Old 08 March 2010, 13:06   #1
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Psycheual

Hello

This thread is about full version of shareware game Psycheual.

On the basis of source code from author of game I will make full version of this game + improvements.

Any comments, ideas, improvements, found possible bugs are welcome.


Backgrounds:

Original source code contains only core of game and following this were missing:
- comments in core source ( obvious )
- all binary data ( gfx, music, sfx, levels )
- two source codes ( music player, sub game invaders )
Asman is offline  
Old 08 March 2010, 13:13   #2
TCD
HOL/FTP busy bee
 
TCD's Avatar
 
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 31,529


Sorry, couldn't resist Keep it up Asman
TCD is offline  
Old 08 March 2010, 13:29   #3
Peter
Still an Amiga user
 
Peter's Avatar
 
Join Date: Nov 2006
Location: Kent
Age: 55
Posts: 2,715
Asman - I thank you for your dedication
Peter is offline  
Old 08 March 2010, 20:45   #4
nujack
Zone Friend
 
nujack's Avatar
 
Join Date: Apr 2005
Location: Leipzig/Germany
Age: 49
Posts: 458
Great News!!!
Would be fun to play the finished game. Good luck!!!
nujack is offline  
Old 08 March 2010, 21:02   #5
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Very first full version of psycheual in the zone ( early alpha ). Enjoy. There is no warranty any kind.

Screen shots. First one is from sub game invaders. Second from terminal, Third after destruction sequence.

Click image for larger version

Name:	0_008.png
Views:	454
Size:	2.0 KB
ID:	24525Click image for larger version

Name:	0_009.png
Views:	480
Size:	35.5 KB
ID:	24526Click image for larger version

Name:	0_010.png
Views:	545
Size:	20.1 KB
ID:	24527

Cheers.

EDIT: I've no idea but on WinUae there is fire when player shoots but on my a1200 030 there is no fire. Time to fix this

EDIT2: After problem with uploading should be in the zone now.

Last edited by Asman; 08 March 2010 at 22:02.
Asman is offline  
Old 09 March 2010, 13:36   #6
Peter
Still an Amiga user
 
Peter's Avatar
 
Join Date: Nov 2006
Location: Kent
Age: 55
Posts: 2,715
Played this via WinUAE this morning and it is looking great - I am looking forward to a day when I can put the full version into a real Amiga!!

I wish I had some talent at coding rather than just a trigger finger!
Peter is offline  
Old 09 March 2010, 20:28   #7
nujack
Zone Friend
 
nujack's Avatar
 
Join Date: Apr 2005
Location: Leipzig/Germany
Age: 49
Posts: 458
I tried out the version from The Zone and died in Level 2. Is the highscore saved? How can I exit the game back to AmigaOS?
nujack is offline  
Old 09 March 2010, 22:19   #8
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Quote:
Originally Posted by Peter View Post
Played this via WinUAE this morning and it is looking great - I am looking forward to a day when I can put the full version into a real Amiga!!
I don't have good news yet if you want to play on real Amiga. I played on my a1200 blizIV 030/50 32mb and there are glitches/artefacts on sprites. Because as I discovered few minutes ago author of game write sprite pointers into the copperlist and then ( very quickly ) set position/control in sprite data. The best way ( as I know ) to fix this shitty situation is to make second copperlist and swap them for every frame ( but this need much more effort ). Author approach with sprites was good on ECS machines ( i think! ).
Asman is offline  
Old 09 March 2010, 22:34   #9
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Quote:
Originally Posted by nujack View Post
I tried out the version from The Zone and died in Level 2.
As I know aliens are stronger on next levels, but you can find better weapon on next levels . Furthermore in demo version there is no few samples ( four: autogun, elcgun, clank, shot ) and I use some random sfx weapons like ( autogun - zwip, elcgun - laser, clank - clang, shot - machinegun ). I will try to find later more accurate samples. Now you know why you hear laser sfx when shooting end

Quote:
Originally Posted by nujack View Post
Is the highscore saved?
Will be. Furthermore I can make WHDLoad slave for this game with highscore save support


Quote:
Originally Posted by nujack View Post
How can I exit the game back to AmigaOS?
There is one posibility. You can do this only when you're playing. Just press right mouse button. For sure I will add keyboard support ( cd32 pad probably too ). There is more things which I want to do.
Asman is offline  
Old 09 March 2010, 22:53   #10
StingRay
move.l #$c0ff33,throat
 
StingRay's Avatar
 
Join Date: Dec 2005
Location: Berlin/Joymoney
Posts: 6,863
Quote:
Originally Posted by Asman View Post
I don't have good news yet if you want to play on real Amiga. I played on my a1200 blizIV 030/50 32mb and there are glitches/artefacts on sprites. Because as I discovered few minutes ago author of game write sprite pointers into the copperlist and then ( very quickly ) set position/control in sprite data.
Nothing wrong with that.

Quote:
Originally Posted by Asman View Post
The best way ( as I know ) to fix this shitty situation is to make second copperlist and swap them for every frame ( but this need much more effort )
This is not needed for simple sprites. Care to share the source so I can have a look?
StingRay is offline  
Old 09 March 2010, 23:10   #11
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Quote:
Originally Posted by StingRay View Post
Nothing wrong with that.
Even if sprite is animated ?


Quote:
Originally Posted by StingRay View Post
This is not needed for simple sprites. Care to share the source so I can have a look?
I will prepare some source package tommorow evening.
Asman is offline  
Old 10 March 2010, 12:42   #12
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
@StingRay

I forget mentioned that hero in game is made from 4 sprites ( 32pixel wide 16colors attached 2 sprites ). I hope you will understand my silly explanation
Asman is offline  
Old 10 March 2010, 13:05   #13
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
Quote:
Originally Posted by Asman View Post
write sprite pointers into the copperlist and then ( very quickly ) set position/control in sprite data
(was already replied but it didn't really explain anything )

This works fine as long as you do not modify sprite data when sprite DMA reads them. Sprite DMA engine fetches first sprite words when vertical position is 25 (PAL) or 20 (NTSC). Lots of time to update. Nothing to do with when/if sprite pointers are updated.
Toni Wilen is online now  
Old 11 March 2010, 09:48   #14
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
@StingRay

Sorry I didn't make sources yesterday, coz other things eat all my free time.

@Toni

Thank you for answer. But if I understand correctly that I can do something like:

wait for vertical beam, set sprite pointer in copperlist and set sprite data ( position ), right ?
Asman is offline  
Old 11 March 2010, 11:03   #15
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
Quote:
Originally Posted by Asman View Post
Thank you for answer. But if I understand correctly that I can do something like:

wait for vertical beam, set sprite pointer in copperlist and set sprite data ( position ), right ?
Yes, it is always perfectly safe as long as you do it before sprite DMA starts. (line 25/20)

Updating coordinates while sprite DMA is fetching SPRxPOS/SPRxCTL data will cause glitches because sometimes DMA gets new SPRxPOS data and old SPRxCTL data or vice versa and sometimes both registers gets old data or both registers gets new data. 3 different glitches possible (Sprite DMA always has priority over CPU)

This is something that isn't very well explained in HRM.

Sprite DMA is idle until line 25/20, all sprites' POS and CTL are updated by sprite DMA during line 25/20 (if DMA bit in DMACON is set). DMA goes back to idle mode until current vpos matches vstart, sprite is enabled, disabled when vpos matches vstop, during following line POS and CTL are updated again and back to idle again and so on..
Toni Wilen is online now  
Old 11 March 2010, 12:41   #16
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Quote:
Originally Posted by Toni Wilen View Post
Yes, it is always perfectly safe as long as you do it before sprite DMA starts. (line 25/20)

Updating coordinates while sprite DMA is fetching SPRxPOS/SPRxCTL data will cause glitches because sometimes DMA gets new SPRxPOS data and old SPRxCTL data or vice versa and sometimes both registers gets old data or both registers gets new data. 3 different glitches possible (Sprite DMA always has priority over CPU)

This is something that isn't very well explained in HRM.

Sprite DMA is idle until line 25/20, all sprites' POS and CTL are updated by sprite DMA during line 25/20 (if DMA bit in DMACON is set). DMA goes back to idle mode until current vpos matches vstart, sprite is enabled, disabled when vpos matches vstop, during following line POS and CTL are updated again and back to idle again and so on..
And this is very interesting, coz I still have sprite glitches ( I do: wait vertical beam, set sprite pointer to copper and then set sprite data ( DMA sprite on ofcoz ) . Glitches appears when I have for example 2 frame animation.
I will check again source ( maybe I still doing something wrong ) and I if find something interesting then I will post source.
Asman is offline  
Old 11 March 2010, 12:44   #17
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Is there someone which tested psycheual from the zone on the real amiga ? I mean about A1200. Can someone also confirm sprites glitches on real machine ?
Asman is offline  
Old 11 March 2010, 15:33   #18
Graham Humphrey
Moderator
 
Graham Humphrey's Avatar
 
Join Date: Jul 2004
Location: Norwich, Norfolk, UK
Age: 37
Posts: 11,167
I've just tried this on my '040 and have had the same problems with the glitching sprites (on some of the enemies but not all of them) and invisible bullets. Also sometimes firing causes the logo at the bottom of the screen to glitch slightly.
Graham Humphrey is offline  
Old 11 March 2010, 16:00   #19
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Thank you so much, I have exactly same glitches on my 030 machine.
Asman is offline  
Old 12 March 2010, 13:54   #20
Asman
68k
 
Asman's Avatar
 
Join Date: Sep 2005
Location: Somewhere
Posts: 828
Yesterday I found some time and make simple source with game sprites and everything is ok ( there is no glitches on gfx data there is no problem when I set sprite pointer and sprite data right after vertical beam wait). So it must be as Toni said: mean game modify sprite data when sprite DMA reads them.
Asman 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
Does anyone have Psycheual? Peter request.Old Rare Games 70 03 January 2015 03:16

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 21:51.

Top

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