Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user phase ! (Registered 2019-03-21) You are not logged in 
CSDb User Forums


Forums > C64 Productions > Eye of the Beholder
2018-06-16 06:41
JackAsser

Registered: Jun 2002
Posts: 1490
Eye of the Beholder

Resumed. Easy Flash.

https://youtu.be/dvWrimZUk40
2018-06-16 12:10
Stinsen

Registered: Feb 2012
Posts: 49
As a long time fan of dungeon crawler type games, I must say this looks sooo fantastic. :)
2018-06-16 12:28
Oswald

Registered: Apr 2002
Posts: 4371
crazy man, this must be the most complex game up to date even in this state.
2018-06-16 12:49
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: crazy man, this must be the most complex game up to date even in this state.

That depends on how you define complex. A good platformer such as Turrican is imo alot harder to implement given real time requierments, full screen scrolling, stable multiplexer, complex IRQs. This game has nothing of that, it’s just a lot of, uncomplicated, code.
2018-06-16 14:25
MagerValp

Registered: Dec 2001
Posts: 952
❤️
2018-06-16 14:51
ChristopherJam

Registered: Aug 2004
Posts: 909
Sooo much work. Respect.
2018-06-16 15:32
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Sooo much work. Respect.

Massive thanks to Illesh, Mirage, Veto and TwoFlower for helping out with graphics. And massive thanks to Algorithm for providing the sound routines and batch compressing all original samples.
2018-06-16 16:00
cadaver

Registered: Feb 2002
Posts: 1106
Much respect, the data wrangling, level scripting and UI interface code involved certainly add up complexity. I'm suprised how well the bitmap graphics work without colorclashing like hell.
2018-06-16 16:41
Oswald

Registered: Apr 2002
Posts: 4371
Quote: That depends on how you define complex. A good platformer such as Turrican is imo alot harder to implement given real time requierments, full screen scrolling, stable multiplexer, complex IRQs. This game has nothing of that, it’s just a lot of, uncomplicated, code.

yeah, but all that code fits easily on the back of a stamp compared to what I think you have here. and certainly doable on a vanilla c64, unlike your effort which would be a suicide.
2018-06-16 16:47
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Much respect, the data wrangling, level scripting and UI interface code involved certainly add up complexity. I'm suprised how well the bitmap graphics work without colorclashing like hell.

Bitmap with sprite overlay. Chars not 100% solid, i.e edges on items and monsters uses the sprite layer. Fullt opaque chars are in plain mc bitmap
2018-06-16 16:50
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: yeah, but all that code fits easily on the back of a stamp compared to what I think you have here. and certainly doable on a vanilla c64, unlike your effort which would be a suicide.

Nah, it’s just 29k lines (hand written) of asm so far. ;)
2018-06-16 18:55
Oswald

Registered: Apr 2002
Posts: 4371
jesus christ, I dont have so much in p1 src, which is a bloated vb6 shit :)
2018-06-16 19:16
Oswald

Registered: Apr 2002
Posts: 4371
how do you manage to handle the huge code size ? breaking it down into bigger chunks, oop like thinking?
2018-06-16 19:27
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: how do you manage to handle the huge code size ? breaking it down into bigger chunks, oop like thinking?

Like any big project. Separation of concerns. Proper segments. Bank-agnostic jsr-macros that automatically bank switch when needed etc etc. Strict calling conventions between routines. Proper event driven main loop to avoid concurrency issues (i.e. classic UI coding). But even with all that there sneaks in hard to get bugs, mostly because I accidently reuse ZP-vars as loop vars and then two routines are connected and the other messes with the loop index in the former. Totally annoying but I don’t want to waste new ZP per sub routine since it’s a scarse resource.
2018-06-18 10:24
HCL

Registered: Feb 2003
Posts: 679
Unbelievable!!
2018-06-18 18:00
Shadow

Registered: Apr 2002
Posts: 319
I already commented on the FB post, but I got to say it again - amazing!

How are you implementing all the rules/game-logic? Is the original game reverse-engineered so you have something to work from?

And the bitmap+sprite overlay does a splendid job with the graphics, nice to see what can be done when 50 fps isn't a requirement!
2018-06-18 18:42
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: I already commented on the FB post, but I got to say it again - amazing!

How are you implementing all the rules/game-logic? Is the original game reverse-engineered so you have something to work from?

And the bitmap+sprite overlay does a splendid job with the graphics, nice to see what can be done when 50 fps isn't a requirement!


I spent 4 months in IDA Pro disassembler disassembling the DOS version and reimplemented it in Java and iOS. Years later ScummVM did the same so it’s a good reference to double check when I find my own sources weird. Though most often in those cases it has been bugs in the original.
2018-06-18 18:53
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: I already commented on the FB post, but I got to say it again - amazing!

How are you implementing all the rules/game-logic? Is the original game reverse-engineered so you have something to work from?

And the bitmap+sprite overlay does a splendid job with the graphics, nice to see what can be done when 50 fps isn't a requirement!


Regarding the bitmap, yes I’m amazed myself. Initially I had plans to let opaque chars to use the overlay also giving 3 variable and 4 global colors per char but it ate twice the memory natrually and was much slower to render.
2018-06-19 07:13
TWW

Registered: Jul 2009
Posts: 445
Personally, this is a work of art. Coding that UI stuff is a nightmare and making it that smooth (also the quality of the gfx) is very good to say the least.

Congrats!
2018-06-19 08:12
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Personally, this is a work of art. Coding that UI stuff is a nightmare and making it that smooth (also the quality of the gfx) is very good to say the least.

Congrats!


Thank you for the kind words! The UI is not so much a nightmare to code. It’s rather simple and straight forward but the sheer amount of it and the fact that it’s utterly boring makes it extremly tedious to do. I have UI stuff on the top of my todo. I just want to be finished with it asap. Sooooon done (working on the camp menu now)!
2018-06-19 22:40
WVL

Registered: Mar 2002
Posts: 842
Is looking wonderful! How many kb's are already used?
2018-06-19 22:43
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Is looking wonderful! How many kb's are already used?

Around 800kb (still no intro, ending or chargen) but all other data is in. About 1kb ram left.
2018-06-20 09:20
WVL

Registered: Mar 2002
Posts: 842
So there's 200kb left, that should be plenty!
2018-06-20 09:28
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: So there's 200kb left, that should be plenty!

Should be ok. I want to reserve 64kb for a quick slot save game though, but I might give the user to ditch the intro if they want to use the quick save option. We'll see.
2018-07-04 22:19
JackAsser

Registered: Jun 2002
Posts: 1490
Indie Retro News did an interview: http://www.indieretronews.com/2018/07/eye-of-beholder-dungeon-c..
2018-07-04 23:08
Oswald

Registered: Apr 2002
Posts: 4371
36342 lines of assembler code atm

wow :)
2018-07-05 10:35
Mr. SID

Registered: Jan 2003
Posts: 358
Nice interview.
PoP is 28796 lines of code, btw... :)
2018-07-05 10:42
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Nice interview.
PoP is 28796 lines of code, btw... :)


Awesome! :D
2018-07-05 17:49
Frantic

Registered: Mar 2003
Posts: 1372
Quote: 36342 lines of assembler code atm

wow :)


?OVERFLOW ERROR
2018-07-10 23:14
JackAsser

Registered: Jun 2002
Posts: 1490
Got my EasyFlash 3 cart yesterday and after some bug fixing this is the result. The colors are way saturated though because I didn't bother adjust my monitor.

Graphics by: Twoflower, ilesj, Mirage and Veto
Audio by: Algorithm
Music by: Linus
Code by me

Video from real HW: https://www.youtube.com/watch?v=nqgoKB8KMT4

Screen shots from real HW:







2018-07-11 08:22
WVL

Registered: Mar 2002
Posts: 842
Nice!
2018-07-11 18:12
v3to

Registered: Feb 2005
Posts: 145
Well, my monitor settings are similar since the 80ies. Looks good to me :)
2018-07-12 12:18
Tom-Cat

Registered: Apr 2003
Posts: 17
Can't beleive this is on C64. AMAZING work everyone!

Also to compare.. Ghosts'n Goblins Arcade is around 13.000 lines all together.
2018-07-12 12:46
Copyfault

Registered: Dec 2001
Posts: 252
This looks so uber^3 !!!

Let's hope that gfx mode makes it into some upcoming 3d demo part ;)
2018-09-24 21:53
JackAsser

Registered: Jun 2002
Posts: 1490
ilesj (wallsets) and Mirage (chargen screen) kindly provided some new graphics. Work continues with the Character generation screens and intro.

Featured on Indie Retro News: http://www.indieretronews.com/2018/09/eye-of-beholder-c64-work-..
2018-09-24 21:56
Slator

Registered: Jan 2002
Posts: 265
awesome! who needs lousy amiga or pc if you can have it on c64? :D
2018-09-24 21:59
Raistlin

Registered: Mar 2007
Posts: 151
That looks amazing! Fantastic use of colour. Can't wait to see the finished thing.

Please change Drawf to Dwarf before release though or i'll rage quit the game with my OCD ;-)
2018-09-24 22:05
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: That looks amazing! Fantastic use of colour. Can't wait to see the finished thing.

Please change Drawf to Dwarf before release though or i'll rage quit the game with my OCD ;-)


ZOMG!!! Didn't notice it! THANKS! (Fixed)
2018-09-24 22:29
Raistlin

Registered: Mar 2007
Posts: 151
Clearly you guys should supply G*P with copies for beta testing ;-)
2018-09-25 02:55
Jazzcat

Registered: Feb 2002
Posts: 966
Awesome work Jacky!!! Really looking forward to the finished product. Keep going!!
2018-09-25 12:36
Frantic

Registered: Mar 2003
Posts: 1372
It looks fantastic!
2018-09-25 16:22
TWW

Registered: Jul 2009
Posts: 445
Damn!

Next Lands of Lore?
2018-09-25 17:48
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Damn!

Next Lands of Lore?


Haha no. :) EotB II might be possible with a 2mb cart.
2018-09-25 20:50
Carrion

Registered: Feb 2009
Posts: 238
Quote: Awesome work Jacky!!! Really looking forward to the finished product. Keep going!!

@jazzcat
sorry couldn't resist...
looking for new product or first release?

@jackasser
you are going to do the best game ever on c64. keep doing it!
2018-09-30 23:40
Oswald

Registered: Apr 2002
Posts: 4371
holy shit, already at character gen :) if this comes out I promise I will play it trough :)
2018-10-01 01:04
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: holy shit, already at character gen :) if this comes out I promise I will play it trough :)

Almost done with chargen. Hopefully tomorrow or on Tuesday. It's exceedingly boring to code. I hate it. :)
2018-10-01 06:36
Oswald

Registered: Apr 2002
Posts: 4371
but you're doing it, you're awesome man %)
2018-10-01 08:44
Krill

Registered: Apr 2002
Posts: 1159
Quoting JackAsser
It's exceedingly boring to code. I hate it. :)
Skills required to be a good coder:
1. Frustration tolerance
2. Patience
3. Good coding skills

In that order. :D
2018-10-01 08:47
Groepaz

Registered: Dec 2001
Posts: 9086
3. would be be "persistence" though :)
2018-10-01 08:55
Krill

Registered: Apr 2002
Posts: 1159
Dunno, overlaps a bit with 1. and 2. - Just like "resilience". They're not orthogonal. :)
2018-10-01 10:45
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Quoting JackAsser
It's exceedingly boring to code. I hate it. :)
Skills required to be a good coder:
1. Frustration tolerance
2. Patience
3. Good coding skills

In that order. :D


Skills required to be a good coder on a dead platform:
0. Extreme stupidity
1. Frustration tolerance
2. Patience
3. Good coding skills
2018-10-01 10:47
Groepaz

Registered: Dec 2001
Posts: 9086
then again, we are not talking about amiga coding here :o)
2018-10-01 11:49
Krill

Registered: Apr 2002
Posts: 1159
Yeah, if anything, C-64 is undead, with a very much alive scene and audience. :)
2018-10-01 15:26
Oswald

Registered: Apr 2002
Posts: 4371
0. Frustration tolerance
1. Frustration tolerance
2. Frustration tolerance
3. Good coding skills
2018-10-09 23:04
JackAsser

Registered: Jun 2002
Posts: 1490
Update
-------

Highlights are:
* Character generation completed
* Load and Save to disk completed
* 48k lines of code

Unfiltered git-log since last update just to show you what I'm going through here:
* Added load and save facilities.
* Simplified kernel mode and optimized buffers. Added proper directory scanning.
* Moved io code to own segment. Asserts for start segment going outside ultimax range. Added error handling to saveing. Fixed drive motor stuck problem.
* Shuffled banks around to free up some memory on the cart.
* Restructured the memory layout so that all gamestate that has to be saved is continious. Added kernel save. Relocated sids to not collide with BSS.
* Optimized rendering and memory consumption of the big glimmer effect.
* More bugs found.
* Fix big glimmer animation when casting Wand of Silvas and Turn Undead
* Regression with item throwing, items are duped on throw
* Why can't rangers use the knife?
* NPC Dialogue crashes when pressing keys that are not part of the 1/2/3 menu
* Fixed further bugs
* Spears flying towards the party are rendered flat which is a bug
* Improved 6581 sounds
* Character generation play button
* Pressing camp->pray for spells w/o clerics and the click to dismiss the popup won't dismiss it visually.
* Improved Drow doors
* Fixed severe buffer overrun bug in memorize menu.
* Added default party to a fake load game function.
* Character geneation complete except for the play button.
* Fixed the flip with floor render bug. Fixed overlay ui render bugs.
* Began party finalization on creation
* Fixed bug with extra strength accidently was available to all classes.
* Simplified text rendering.
* Adjusted character name boxes in character generation
* Added tool to generate ascii to font index mapping
* Added name rendering on the character generation. Expanded the font to include more characters.
* Continue on the character generator
* Modify stats almost complete
* Restructured the makefile to use the new dog-tool. Fixed centering of class and race strings.
* Added the fadetab tool
* Massive work on the character generator
* Found two more bugs, added to the list.
* More of chargen implemented. Gamestate now cleared before chargen instead of after.
* Fixed alignment values
* Fixed jitter filtering.
* Fixed allowing new events to be generated even when shift and other modifiers are pressed
* Added support for frame wait. Refactored the keyboard handler to support arrow keys etc. Created the menu handler for the chargen. Added the three menus to chargen.
* Respond to mouse buttons during the intro.
* Bug when HP is >255
* Optimized framebuffer blitting a bit
* Restructured the TODO-file
* Fixed game screenmode sprite multiplex timing bug
* Fix flip-with-floor status on floor decorations
* Added proper launch sequence
* Added new chargen graphics and began text rendering.
2018-10-09 23:59
Raistlin

Registered: Mar 2007
Posts: 151
Can't wait for this! Any sort of ETA for finishing it?
2018-10-10 00:17
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Can't wait for this! Any sort of ETA for finishing it?

Main game in a month or two. Then intro and ending might take a while since they're extremely graphics heavy.
2018-10-14 21:59
JackAsser

Registered: Jun 2002
Posts: 1490
New footage: https://youtu.be/SEWrACmFRGw
2018-10-15 14:15
AlexC

Registered: Jan 2008
Posts: 256
Quote: New footage: https://youtu.be/SEWrACmFRGw

This looks simply amazing, and this will be the best game on C64 possibly while I am sure this will be port I will play most. Really looking forward to buy it.
2018-10-15 14:46
AuMTRoN

Registered: Sep 2003
Posts: 35
Highly, very.
2018-10-15 15:46
WVL

Registered: Mar 2002
Posts: 842
Looks very nice!!! Saving to disk looks a bit painful though! Is there still memory left to add some button animation (pressing it) in the character generator?
2018-10-15 16:22
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Looks very nice!!! Saving to disk looks a bit painful though! Is there still memory left to add some button animation (pressing it) in the character generator?

Maybe. :)
2018-10-15 20:23
JackAsser

Registered: Jun 2002
Posts: 1490
Live coding in a few minutes: https://m.twitch.tv/ja_boozedesign
2018-10-15 21:36
dano

Registered: Jul 2004
Posts: 173
cool! :D
2018-10-16 12:01
oziphantom

Registered: Oct 2014
Posts: 274
pity it wasn't saved :( for us in other timezones.
2018-10-16 12:09
Krill

Registered: Apr 2002
Posts: 1159
Most of it was Java prototyping and toolmaking, anyways. Later on a bit of 6502 ASM goodness, accompanied by coding tips of varying quality in the chat. :) Made for good background noise while doing some chores and other stuff, though.
2018-10-16 12:22
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Most of it was Java prototyping and toolmaking, anyways. Later on a bit of 6502 ASM goodness, accompanied by coding tips of varying quality in the chat. :) Made for good background noise while doing some chores and other stuff, though.

Hehe. Sorry for the tooling stuff. This is how modern C64 development looks for me. 95% tooling..
2018-10-16 12:48
Krill

Registered: Apr 2002
Posts: 1159
Which is a-ok. However... i believe the better Java aka C# has been ported to work on *NIX systems. ;)
2018-10-16 12:54
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Which is a-ok. However... i believe the better Java aka C# has been ported to work on *NIX systems. ;)

Pfft! Java 8 was awesome. Java 10 even more so.
2018-10-16 14:16
oziphantom

Registered: Oct 2014
Posts: 274
pfff C# + XAML is voodoo, data binding just makes stuff soo easy. Oh and the JSON lib that makes your entire save code 1 line, and your entire load code 1 line .Chefs Kiss, Edit and Continue nectar of the gods!
2018-10-16 17:03
ChristopherJam

Registered: Aug 2004
Posts: 909
cjam dons JW outfit and knocks on the door

Could you spare a few minutes of your time for me to talk to you about our Lord and Savior the Rust Programming Language?

cjam ducks and runs

cjam continues to write most of his c64 tooling in Python anyway unless he really needs moar performance. (3 ofc)
2018-10-16 17:15
JackAsser

Registered: Jun 2002
Posts: 1490
Aaw you cute minions who thinks choice of language would make a difference on this project. <3 ;)
2018-10-16 17:42
JackAsser

Registered: Jun 2002
Posts: 1490
Last night streaming session was all about understanding the particle effects, simplyfy them, isolate and adapt for the display on c64. It ended with an embryo for the plot routine and ideas how to render it good enough.

If I find time I might continue tonight.
2018-10-16 17:44
ChristopherJam

Registered: Aug 2004
Posts: 909
I kid, I kid.

I did catch the beginning of yesterday's stream - only stopped because I'd a long drive ahead of me today. Thanks for sharing, it's interesting to see how you work.
2018-10-17 08:49
JackAsser

Registered: Jun 2002
Posts: 1490
The particle effects was successfully implemented last night during the stream: https://www.twitch.tv/videos/323511482##
2018-10-17 09:13
dano

Registered: Jul 2004
Posts: 173
Ah cool, i did not miss that much after i had to close the laptop for sleep. :)

It's really fun to watch how you approach things.
2018-10-17 09:16
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Ah cool, i did not miss that much after i had to close the laptop for sleep. :)

It's really fun to watch how you approach things.


Haha thank you. I appreciate that some of you like it. Personally I hate watching such streams. ;)

Would be interesting to hear how you would approach it. I'm quite hands on and just try "something" then refine.
2018-10-17 11:47
Mr. SID

Registered: Jan 2003
Posts: 358
I think it's really cool that you stream your work like that. It immediately makes it very easy to understand how things are done.
But personally, I could never work this way... :)
2018-10-17 12:59
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: I think it's really cool that you stream your work like that. It immediately makes it very easy to understand how things are done.
But personally, I could never work this way... :)


You mean work with people seeing and listening on you, or work using my methods and tools? :)
2018-10-17 13:28
Mr. SID

Registered: Jan 2003
Posts: 358
Your tools and methods are fine... :)
2018-10-17 19:26
JackAsser

Registered: Jun 2002
Posts: 1490
The result of the last two streaming sessions with particle systems in place: https://youtu.be/TgYvU_ac0hs
2018-10-17 20:14
Frantic

Registered: Mar 2003
Posts: 1372
How many people were involved in creating the original game? I'm mainly wondering about the coding part now.
2018-10-17 20:31
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: How many people were involved in creating the original game? I'm mainly wondering about the coding part now.

Don’t know
2018-10-18 07:36
Mr. SID

Registered: Jan 2003
Posts: 358
There was just one programmer, Phil Gorrow doing the main work. They had a second guy, Bill Stokes, doing the Amiga version.
2019-01-17 23:47
JackAsser

Registered: Jun 2002
Posts: 1490
Intro in the making: https://youtu.be/4bl-X3dT6OU
2019-01-18 00:29
Raistlin

Registered: Mar 2007
Posts: 151
Woah, fantastic work! There’s some serious code pron going on there that i’m not sure everyone will quote understand the complexity of! Which makes it even cooler!
2019-01-18 01:46
Compyx

Registered: Jan 2005
Posts: 432
Is Mirage still involved?
2019-01-18 04:14
JackAsser

Registered: Jun 2002
Posts: 1490
Quote: Is Mirage still involved?

Yes
2019-01-18 06:13
Compyx

Registered: Jan 2005
Posts: 432
Cool.
2019-01-18 12:50
Oswald

Registered: Apr 2002
Posts: 4371
its crazy you can keep it up for so long, hey hope you plan to sell it ? as SAM showed some cash can be made of hi quality games :)

edit: ah darn, copyrights..
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
map
McMeatLoaf
Guests online: 22
Top Demos
1 Uncensored  (9.7)
2 Unboxed  (9.7)
3 Edge of Disgrace  (9.7)
4 Coma Light 13  (9.6)
5 Comaland 100%  (9.6)
6 Lunatico  (9.6)
7 The Shores of Reflec..  (9.6)
8 X Marks the Spot  (9.5)
9 Old Men in Used Cars  (9.5)
10 C=Bit 18  (9.5)
Top onefile Demos
1 Bad Boy  (9.7)
2 Smile to the Sky  (9.6)
3 Daah, Those Acid Pil..  (9.5)
4 Dawnfall V1.1  (9.4)
5 FMX Music Demo  (9.4)
6 Rewind  (9.4)
7 Crystal Gazer  (9.4)
8 Official X2018 Report  (9.4)
9 Arok 20 Invitation  (9.4)
10 Pandemoniac Part 2 o..  (9.4)
Top Groups
1 PriorArt  (9.7)
2 Oxyron  (9.5)
3 Booze Design  (9.4)
4 Censor Design  (9.3)
5 Performers  (9.3)
Top Coders
1 Axis  (9.8)
2 CRT  (9.8)
3 Graham  (9.8)
4 Lft  (9.8)
5 Crossbow  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2019
Page generated in: 0.15 sec.