Bocco's adventures

Want to talks about games you like, would like to see developed on the Oric, it's here.
trrerr
2nd Star Corporal
Posts: 17
Joined: Tue Jul 24, 2018 3:16 pm

Bocco's adventures

Post by trrerr » Sun Aug 11, 2019 11:31 pm

Hello everyone 🙂 ,

A few months ago, I decided to try something in graphical mode. I got ideas from the internet and drew a few figures. Then I decided to create game with them.

I decided to try the C again. Yes I know (+1 for assembler) 🙂

There were many things I had not foreseen.
I have changed the concept several times during implementation, but I am not happy with the end result.

At one moment memory space over with osdk. I was thinking of canceling the project. But it turned out that there was another solution to this problem.

Many thanks to the ISS for helping me to pass the code to cc65. He motivates me to move on. Thanks again ISS for the aspiration.

Тhe game might still have bugs in it.

Now I have another big problem. The game has only 3 levels. There must be different levels to make the game interesting. I don't have enough ideas. If anyone wants to help with the levels, it would be grateful. I can prepare a brief instruction. Then these levels will include them in the final build.

The game has no background music, because of the lack of space... again 🙂.

Game link:
https://github.com/raxrax/oricBocco/raw ... /bocco.dsk

Regards

User avatar
Symoon
Archivist
Posts: 1730
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: Bocco's adventures

Post by Symoon » Mon Aug 12, 2019 12:41 am

Gave it a quick try, impressive! Funny as it doesn't look as anything we've seen before - maybe has a Stormlord look? Nice little animations everywhere.
The main problem I get is that I still can't figure out much what I'm supposed to "use" (space), or what I'm supposed to "bomb". I've tried to use many things to no avail, and tried to bomb an ennemy, without success it seems. :?

So far I didn't manage to collect a key, thus no door opening - it's too late maybe, I souhld get some sleep :lol:

trrerr
2nd Star Corporal
Posts: 17
Joined: Tue Jul 24, 2018 3:16 pm

Re: Bocco's adventures

Post by trrerr » Mon Aug 12, 2019 7:53 am

Yes, i need to specify: the bombs only affect the walls but not the enemies :)

User avatar
Dbug
Site Admin
Posts: 3026
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Bocco's adventures

Post by Dbug » Mon Aug 12, 2019 4:35 pm

trrerr wrote:
Sun Aug 11, 2019 11:31 pm
At one moment memory space over with osdk. I was thinking of canceling the project. But it turned out that there was another solution to this problem. (...)Many thanks to the ISS for helping me to pass the code to cc65
Just for information, what was the actual difference in memory usage between the OSDK and CC65 versions of the game?

trrerr
2nd Star Corporal
Posts: 17
Joined: Tue Jul 24, 2018 3:16 pm

Re: Bocco's adventures

Post by trrerr » Mon Aug 12, 2019 11:01 pm

Hi Dbug :),
I don't know why this is happening.

I needed 27k for the game:
/*
screen 18 x 14 = 252 bytes
rooms 3x3 = 9
level 9 x 252 = 2268 / #8dc bytes

#6f00 - #77db level (rooms data)
#77dc - #77FF author name 35 bytes

#7800 - #9800 tileset
#9800 - #9FFF chars
#A000 - #BFDF hires

game - #503-#6eff (69ff - 27,135 bytes)
*/

I did a little test. These are the values from the current build:

"Bocco's adventures":
------------------------
cc64
bocco -> bocco.tap : 25496 bytes

osdk -O2
bocco -> bocco.tap : 47193 bytes

osdk -O3
bocco -> bocco.tap : 42691 bytes


Another test with "Ascii moon buggy":
-------------------------------------------
cc65
moonbuggy -> moonbuggy.tap : 19302 bytes

osdk -O2
moonbuggy -> moonbuggy.tap : 40031 bytes

osdk -O2
moonbuggy -> moonbuggy.tap : 35724 bytes

Regards

User avatar
iss
Squad Leader
Posts: 900
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Bocco's adventures

Post by iss » Tue Aug 13, 2019 12:02 am

Congrats for the great game, rax!
Incredible AIC graphics, nice puzzles to solve (not easy but fun) ... and everything in pure C!
The DSK image contains level editor too - from main menu press '!' to exit the game and start editor with BOCCOED.

Here is some clue for the first level 3x3 screen matrix :mrgreen:
bocco-level-0.jpg

User avatar
iss
Squad Leader
Posts: 900
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Bocco's adventures

Post by iss » Tue Aug 13, 2019 1:22 am

... and the first level walk-through played by rax ;)

User avatar
coco.oric
Flight Lieutenant
Posts: 490
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: Bocco's adventures

Post by coco.oric » Tue Aug 13, 2019 6:01 am

Congratulations, it's a big surprise. As it was said, a good AIC graphic game.
I'll put it on an sdcard to make a test with my pure oric. As it's a dsk file, may be you can use the switchable memory banks to include more sounds and music
coco.oric as DidierV, CEO Member
Image Image

User avatar
Dbug
Site Admin
Posts: 3026
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Bocco's adventures

Post by Dbug » Tue Aug 13, 2019 7:26 am

I needed 27k for the game:
From 27 to 42k, that's quite a difference, I suspect some section problem.
Do you have the project source code somewhere so I can look at it?

User avatar
Chema
Game master
Posts: 2495
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Bocco's adventures

Post by Chema » Tue Aug 13, 2019 8:39 am

Impressive graphics indeed! Congratulations. I cannot test the game in the next days, but the screenshots look incredible.

There are several things you could do. You can, as it's been said, use the 16k of overlay ram (as long as you don't call the rom) and also load different levels from disk.

And, of course, rewriting some core routines in asm would boost them incredibly, both in speed and in space.

I am sure you can find help for that purpose in this forum.

I know how difficult AIC graphics are, and you've made an awesome work. Again congratulations.

User avatar
ibisum
Wing Commander
Posts: 1125
Joined: Fri Apr 03, 2009 8:56 am

Re: Bocco's adventures

Post by ibisum » Wed Aug 14, 2019 2:01 pm

A really nice, beautiful game! I hope to see it progress further with more levels and sounds ..

trrerr
2nd Star Corporal
Posts: 17
Joined: Tue Jul 24, 2018 3:16 pm

Re: Bocco's adventures

Post by trrerr » Wed Aug 14, 2019 10:22 pm

Thank you all for great feedback.

I chose to use the SEDORIC so that I could then easily subtract the levels from the image and make the final build. I'm thinking of doing a few more levels, or someone else to try.
Using SEDORIC everyone will be able to make their own levels. But this way, i can't use the overlay ram.

Тhe code is uploaded to: https://github.com/raxrax/oricBocco

Thanks Chema, that means a lot to me.

User avatar
retroric
Pilot Officer
Posts: 90
Joined: Sun Nov 22, 2009 4:33 pm
Location: Paris, France

Re: Bocco's adventures

Post by retroric » Thu Aug 15, 2019 1:34 pm

Hi there trrerr / Rax,

Congratulations for this AWESOME game, it was indeed a complete and very welcome surprise for the end of the summer, I think we should give you the "Oric 2019 Game Award" !!! :D

I am really amazed at the amount of work you put in the game and the graphics (and sounds too!), and you also included a full-featured level editor, that's really great !!

I may have a go at designing a level for you if I get some time after the end of the summer, but if I may make a little criticism, I think you need to rework a bit the way your editor handles user input, because if you make a mistake the program ends with an error message, and you lose all your work...

This little point aside, I didn't find any bugs in the game so far, and I find the screen redraw, animations and movements quite quick and smooth bearing in mind it is all done in C rather than asm...

Also, I was really interested in the code size comparisons between the OSDK's lcc65 and cc65 compilers, it looks like cc65 is much more memory efficient, I really need to have a go at it and test it with some of my programs (I will myself very soon release a nearly final version with full source code of my "Electr'Oric" little logic puzzle game I contributed for the NY 2019 CEO award, that is also coded almost entirely in C).

I saw you posted some of the source code on your Github repository, many thanks for this, it is very nice of you, and I hope you can post the rest of the code (I think your repository is missing a couple of assembler .s source files referenced in the Makefile).

EDIT: in hindsight, I assume the "compat.s libsedoric.c libgraphics.s " asm files mentioned in the makefile are libraries provided with the cc65 distirbution for Oric machines?

Now, thanks to ISS also for posting a walkthrough video for the first level, this was extremely useful because without this I could not have guessed how to play the game !!

I have now completed level 2 all by myself and I am about to start playing level 3 !

Thanks again for this masterpiece, and I hope many people will be willing to contribute new levels to the game ! :)

Cheers,
Laurent

PS:

- one little thing in the game: I know there is a special sound when you collect the last treasure so you know the level exit is open, but it would be nice to add a display of the number of treasures remaining to be found alongside the display for the number of bombs and keys, but I suppose you could not do it for lack of space on screen...

- last thing, I have a question: what does the 'T' key do exaclt ??? It looks like it switches the drawing of the hero in front or behind the backgrounds graphics, but I'm not sure whether it's supposed to have another purpose?
Last edited by retroric on Thu Aug 15, 2019 10:29 pm, edited 1 time in total.
flag_fr RetrOric, aka laurentd75 flag_uk
            GitHub - RetrOric

User avatar
retroric
Pilot Officer
Posts: 90
Joined: Sun Nov 22, 2009 4:33 pm
Location: Paris, France

Re: Bocco's adventures

Post by retroric » Thu Aug 15, 2019 2:10 pm

Ok, I've just finished level 3, I spent some time trying to figure out how to progress until I found the wicked little trick to get to the switch !! :lol:

Now I will get some graph paper and a pencil and start thinking of a new level design for you!! :)
flag_fr RetrOric, aka laurentd75 flag_uk
            GitHub - RetrOric

User avatar
Dbug
Site Admin
Posts: 3026
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Bocco's adventures

Post by Dbug » Thu Aug 15, 2019 4:34 pm

So, I took a look at the source code, and I managed to rebuild it with the OSDK (I had to fix a number of prototyping errors), and I used the mapfile converter to generate the list of symbols with their size.

I've not used CC65 much, but would be nice if you could generate a symbol file (name + label), in the same format as what Oricutron/Euphoric accept, that would make it possible to compare the actual generated code and see where all the room is wasted :)

For what I can see, the largest routines are: (name / size in bytes)
_playerUpdate 7581
_emenyLeftRightUpdate 3247
_addObjectInEngine 3070
_animator 2066
_enemyUpDownUpdate 1712
_printKeysScreen 1512
_input 1376
_addObject 1216
BoccoSymbolsOsdk.zip
(11.99 KiB) Downloaded 65 times

Post Reply