Login
Back to forumReply to this topicGo to last reply

Posted By

Stinaris
on 2020-03-29
14:16:20
 Atic Atac

For all those that aren't on Facebook here is a little update for Atic Atac on the C16.
Please, no comparisons with the awesome C64 version!

https://youtu.be/9I5jQEE2tP0

Posted By

RoePipi
on 2020-03-29
15:18:47
 Re: Atic Atac

It's awesome!! Sounds great and feels great.

Posted By

Luca
on 2020-03-29
16:54:33
 Re: Atic Atac

Come on, that's great stuff!

Posted By

Mad
on 2020-03-29
18:16:28
 Re: Atic Atac

Wow incredible stuff!

Posted By

Sidney
on 2020-03-30
18:23:28
 Re: Atic Atac

I want this!!

Posted By

Stinaris
on 2020-03-31
17:10:55
 Re: Atic Atac

It won't be long now.
I've just finished the beta. Although I have a little issue. You don't get any score if you kill one of the bosses.
The reason is.........I have zero bytes free! :-/

Need to look at areas of memory below $1001. I've optimised the arse off this and I've got very little left to trim, if any.

Posted By

Luca
on 2020-03-31
18:29:34
 Re: Atic Atac

Stinaris if you still have to look under $1001...you still have a lot of memory to use! In order to stuff all that code into 2048 Octaluxe, I had to use almost all the zeropage and the main slice of the stack, once I calculated which was the maximum stack used by the worse longer routine of the game. And more: the two $18 long areas at $07E8 and $0FE8, the $0600-$06FF area, and still most of the resting memory. In my case, I had to preserve all the locations used by KERNEL in order to load/save records.
Another good technique is to 'destroy' all the initial setting code, if you have some: execute the code you won't need after the first run in a memory zone where it can be swept away. Also, you can use "very hard" memory zones under $0800 by saving code into the screen area $0800-$0FE7, and copy those ones by in the indexed respective ares at very first run, before starting anuthing of the game settings: the screen area will be cleaned and set later on in the beginning of the game wink

Posted By

Stinaris
on 2020-04-01
12:25:27
 Re: Atic Atac

Thanks Luca.

I'll have look now, I don't need massive amounts but if I can move my variable storage to those areas it will free up enough to add the last couple of bits I need to complete the game.

I need to be a bit careful as I use Novaload and I can't rely on anything existing as Novaload sits low in memory. It's probably possible to relocate it but I don't need to spend that long on this.

To busy planning the next game.

Posted By

Luca
on 2020-04-01
12:53:00
 Re: Atic Atac

Stinaris: then, move the code you need to set under $0800 right into the screen area $0800-$0FFF, wherever you want, set again there the code that will copy the indexed selected slices of code into the areas located below $0800, to be run right after Novaload finishes, and you can also re-gain graphics you had to cut off, for example wink Novaload runs, then JMP$0[8-F]XX moving the codes under $0800 and it finally JMP[>]$1001 where it sets the screen destroying all that useless code ;)

Posted By

KiCHY
on 2020-04-01
13:39:43
 Re: Atic Atac

In UWOL I used almost every last bytes under $1000 and over $1000 happy I disabled ROM and took over all the IRQs with $FFFE-F, so I could use the $03xx page as well. Also, I used Exomizer to compress data and gfx and uncompress it right before I had to use it.
Did you know you can compile and store the game between (for example) $0400-$3FFF? Compile it, compress it with Exomizer (set a non-flashing effect, or a custom text), then it becomes a runnable PRG and NOVALOAD can load that file...?

Posted By

Stinaris
on 2020-04-01
15:00:22
 Re: Atic Atac

Kichy - No, I didn't know that. Sounds pretty sweet.

Luca - I think the main problem I've been having under $1001 is I didn't know how to get to the memory using CBMPrgStudio. I kinda didn't read the manual. Just dived right in with Gridiron and never really stopped to take a breath. So I was basically doing it wrong. :-/

Now I've got loads of extra memory. I can start adding stuff back in happy

Thanks again.

Posted By

MMS
on 2020-04-01
18:13:29
 Re: Atic Atac

Wow.
You guys seem to live on sunlight.
When you face the fact there is no more RAM available, then you just create more RAM.
Respect!

Posted By

Stinaris
on 2020-04-02
11:00:15
 Re: Atic Atac

Hi Kichy,

I think I'll have to give it a go. I'm already compacting and compressing the largest data sets.
I might be worth running Exomiser to see what difference it makes.
If nothing else I might get it to load faster.




;
; Atic Atac Map Database
;

;+-------+---------------------------+---------------------------+
;| Byte | UPPER NYBBLE | LOWER NYBBLE |
;+-------+---------------------------+---------------------------+
;| 0 | |
;+-------+---------------------------+---------------------------+
;| 1 | North Door | South Door < DOOR_TYPE> |
;+-------+---------------------------+---------------------------+
;| 2 | East Door | West Door < DOOR_TYPE> |
;+-------+---------------------------+---------------------------+
;| 3 | North Door Destination Room No |
;+-------+---------------------------+---------------------------+
;| 4 | South Door Destination Room No |
;+-------+---------------------------+---------------------------+
;| 5 | East Door Destination Room No |
;+-------+---------------------------+---------------------------+
;| 6 | West Door Destination Room No |
;+-------+---------------------------+---------------------------+
;| 7 | Trap Door Location |
;+-------+---------------------------+---------------------------+


;
;+--------+--------+--------+--------+--------+--------+--------+--------+
;| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
;+--------+--------+--------+--------+--------+--------+--------+--------+
;|Food | 111 - Attic |Food | Trap | 00-Square Room |
;|eaten | 101 - First Floor |Availabl| Door | 01-Horiz Room |
;|0=No | 011 - Ground Floor |0=No | 0=No | 02-Vert Room |
;|1=Yes | 010 - Basement |1=Yes | 1=Yes | |
;| | 000 - Cellar (Cavern) | | | |
;+--------+--------+--------+--------+--------+--------+--------+--------+

; NOTE The deeper the level the lower the luminance


;
;
;0000 – None
;0001 – Empty
;0010 – Red
;0011 – Green
;0100 – Blue
;0101 – Yellow
;0110 – Timed
;0111 – Clock
;1000 – Bookcase
;1001 – Barrel
;1011 - Main

INTO THIS

ATIC_ATAC_MAP
; Room ID : 0
; Room Location : Ground Floor
; Room Type : Square
; Door : North
; Door Type : Blue
; Destination : 16
; Door : South
; Door Type : Timed
; South Door Destination : 25
; Door : East
; Door Type : Main
; East Door Destination : 150
; Door : West
; Door Type : Timed
; West Door Destination : 19
BYTE $30,$46,$b6,$10,$19,$96,$13,$00


The room graphics are compressed using a 7 bit RLE

; Compression is handled as follows.
; All graphics to be compressed must be less than 127
; bit 8 is the compression notification bit
; byte 1 = compression bit + graphic
; byte 2 = iterations (only if compression bit is set)
; e.g.
; 7 6 5 4 3 2 1 0
; | | |
; | +-----+-----+
; | + Graphic
; |
; + Compression bit
;
; 128 64 32 16 8 4 2 1


Posted By

gerliczer
on 2020-04-03
00:13:47
 Re: Atic Atac

Hey Stinaris,

Nice tables but bloody hard to read. You should've put them in < p r e > < / p r e > tags so they would be displayed in monospace font. (Although even that not helps enough; I tried it that way and still somewhat broken.)

Could a kind forum administrator help him reformatting his post, please?

Posted By

Stinaris
on 2020-04-03
04:54:05
 Re: Atic Atac

Oh. Formatting is the bane of my software life.

I will be creating a how and why I developed Atic Atac, probably on my YouTube channel. Assuming I can stand hearing my own voice.
I have a face for radio so I'll be keeping it voice only. Although I have a voice for silent film!


I would show you the XML but every attempt to set the formatting just goes to s#it!


Posted By

Chronos
on 2020-04-03
04:55:12
 Re: Atic Atac

Stinaris: Why do you choose the 16k restriction for this project?

Posted By

Stinaris
on 2020-04-03
07:28:43
 Re: Atic Atac

Chronos - A couple of reasons

1) I was trying to see what I could achieve based on, typically what programmers at the time were producing, which was predominately 16K. There were some absolute abominations like GNG, Commando and Green Beret and I was seeing if I could capture the essence of much larger games so they were more like the originals than the examples I gave. However I obviously am using much more advanced dev tools and no ludicrous schedules to adhere to. Although my total dev time (on 8 hours a day) for Atic Atac would be about 6 weeks, which I'm quite pleased with.

2) Have you seen what the assassins are doing and the rate they are producing it at?
As a lone coder (and a very poor artist and musician and for that matter an average coder) I cannot even think about releasing something of that level. If I wrote Atic Atac in 64K, the expectation would be the C64 version, which is pretty special. That version has a coder, musician and artist working on it. Way out of my scope.
So for my own self respect, I'm leaving the Plussy to the experts.

Posted By

Chronos
on 2020-04-03
08:53:39
 Re: Atic Atac

Stinaris: Thank you for this detailed answer!

Posted By

Gaia
on 2020-04-03
18:19:16
 Re: Atic Atac

Atic Atac was the only reason I had been contemplating about getting a Spectrum back then happy

Posted By

MMS
on 2020-04-04
18:17:46
 Re: Atic Atac

OFF
Actually my very first gaming experience was on ZX Spectrum Jet Set Willy.
Fortunately it was named as the 6th best game of all the time by "Retor Gamer", so it was a pretty good start happy

BTH I tried Atic Atac on ZX Spectrum, but was too fast for me :-) Seems I was too slow as a young boy, too. :-D

Posted By

gerliczer
on 2020-04-05
03:25:33
 Re: Atic Atac

Stinaris wrote: If I wrote Atic Atac in 64K, the expectation would be the C64 version... So for my own self respect, I'm leaving the Plussy to the experts.

All respect to you (bows) for squeezing the whole game into 16k, but that somehow resembles to bollocks to me. Anyone expecting the level of quality and detail of a seriously polished C64 game just because large amounts of RAM needed to run a programme is an idiot, period. So, if you have the inclination to convert or write games for the 264 series machines, please do so. And if your project needs more than 16k then do it in more RAM. Unless you specifically target the low memory requirement, please respect your own desire to create and don't repress it out of some imaginary lack of necessary expertise.

But seeing that the game was compressed into this small memory footprint the question comes naturally if it would be possible to make a 16k cartridge game out of this for the C64? If it could be done, you should enter it into the next RGCD C64 16k Cartridge Game Dev Compo.

Posted By

Stinaris
on 2020-04-05
15:04:00
 Re: Atic Atac

Gerliczer - Having seen the work assassins produce would you really be an idiot to think they couldn't do something resembling the C64 version. Maybe I'm an idiot.

Lack of expertise is definitely something I lack. I didn't even know how to get to the memory below $1001 without tanking my program until this week. I've been using CBMPrgStudio for over a year. It seems I am an idiot happy

Yes I could convert it to cartridge. I already converted GridIron to C64, it took about 6 hours.

Posted By

gerliczer
on 2020-04-06
01:03:35
 Re: Atic Atac

Hi Stinaris,

There must be some sort of miscommunication. I wasn't saying that you are an idiot. I said that those who expect the exact same quality from a Plus/4 game as a C64 just because both use the same amount of RAM are idiots. (By the way, most of us always learn something new about the C16 and Plus/4. Only the masters know TED's and the system's every nook and cranny.)

You see, RAM won't help with the lack of sprites. Much, much harder to do a lot of quick, arbitrarily moving objects on screen without them. And you simply lose the possibility of high resolution and high colour count inside of a single moving object without sprites.

You may lose a lot of CPU cycles if you have to move colour attributes as there are twice the colour memory areas compared to C64 and their layout is a minor horror. You cannot control the third background colour as finely as in the C64.

And of course sound is quite lacking too. It is nice what the musicians do but, unfortunately, only in terms of the system's capabilities.

Obviously, you can do many nice things like Bauknecht , Assassins, Csabo or Luca prove, but in a sense those will still be behind in quality compared to C64 games. E.g. watch Ati's Last Ninja Preview. It's cool that there is a slight chance that the game at least partly will land on our machines, but graphics will inevitably be lacking. Boy, am I glad that it is already at that level, but if I want to be brutally honest, I must say that it will be somewhat ugly. Try asking KiCHY if the exact same level of graphics could be achieved in any form on a 264 series computer you see in the C64 Atic Atac game. He will have to reply with a simple no.

Please, don't be disheartened. It was never my intention to offend you. All I was trying to say was that you should not sell yourself short. It is good what you are doing and there's (hidden) value in the way you do this project.

Posted By

Stinaris
on 2020-04-06
08:54:05
 Re: Atic Atac

No offense taken.

There's always good, robust, conversations on this forum. I like straight talking.
But you are wrong, I really am an idiot happy

I don't think I've quite got the hang of the differences between the C64, of which I'm a bit familiar and the 264 series. Probably as I wasn't using the C64 fully. I did all the usual nonsense, stick sprites in the border. 4 way hardware scrolling. split screen raster jobbies with multi sprites, but never in a game. Just little demos.

My next game may well be 64K compatible, in fact it's very likely to be. Due to the type of game it is.
It will also be simultaneous 2 player. Not that many multi player games around as far as I can tell.
The name I've come up with is Dunduon. It might give a clue. The duo bit relates to the 2 player capabilities. The whole thing is a play on words.



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024. Support Plus/4 World on Patreon