OMFBBQ! Am I dreaming? Nope!
Pinball Dreams on my c64!
Pinball Dreams is definitly one of the demakes we all dream about since ages!
Laxity is offering us a playable version of the Ignition and Nightmare tables.
This release has been done in 2012… but… let’s have a closer look on how everything started… in 2002!
WVL (aka Werner) started to work on this demake in 2002; here is his original post on CSDb:
instead of updating my homepage all the time, I though I could open a new thread here instead. This will also allow other ppl to comment on the development.
okay, so whassup at the moment?
Well, Last month I completely restarted from scratch on the code. Why? Well, first I wanted to concentrate more on getting the game to run in less memory, also I wanted to focus more on accurate simulation of the ball and some small other things…
What I have done till now :
1 – spawned the ball
2 – added gravity to the surroundings, the gravity data is now RLE encoded, so it doesn’t take up much memory anymore. Used to eat 20 blocks of memory, now I think a map would use 3-4 blocks..
3 – I changed the gravity routine to use polar-based vectors instead of cartesean, much more accurate!
4 – added a debug mode to the movement routines, you’re able to pick up the ball with the firebutton and move it around. Let go of the button and you drop it on the table again.
5 – Worked on an accurate (within 1 ‘bradian’ degree) direction calculation routine. This routine will be used for both friction calculations and calculating new directions after collisions. So it needs to be
6 – added a (simple) friction routine.
7 – I put a small preview on the web
get it at http://www.interstyles.nl/pinball.rar
Download one of these early releases: Pinball Dreams early release by WVL
okay, what am I up to now?
1 – increase the speed accuracy to 24 bit, I need this because the friction only affects speed in the last 3 bits or so, so it’s not accurate at all..
2 – add spin to the ball, so it is allowed to roll.. (also gives effect to the ball like top-spin and such)
3 – dunno yet, I’ll see what is the next logical step after that.. probably the new method of collision detection, dunno..
I’m thinking of putting the sourcecode online as ascii file, so everyone can check it out…
Suggestions? Questions? other stuff?
It seems WVL really spent hell a lot of time on this conversion and he even kindly gave some screenshots of his dedicated softwares while he was trying to save memory to get the best!
Here are some more explanations:
This picture shows where our walls are on top of the bitmap picture. The angle of the walls is depicted with the colors.
This picture shows how the RLE-ed data in the game looks. The yellow area is empty space, while the grey-areas are solid objects. On the right you can see the data that has been created. The data can be directly copy/pasted into the sourcecode of the game.
These screenshots can be found on lemon64 forum over a long serie of pages about Pinball Dreams. WVL mentioned many times an archive with all the source code; here it is (well just showing some of the thousand lines ;))!
;if TABLE==0 => Nightmare
;if TABLE==1 => Ignition
CHANGE01 = 1 ;turn $01=#$30 on/off.. 0 => $01=#$35, 1 => $01=#$30
KEEPTIME = 0 ;keep time during game, useful for keeping track of collisions
KEEPFLIPPERHIS = 0 ;keep history of flipper collisions (needs KEEPTIME = 1)
SHOWRASTERTIME = 0 ;show used rastertime in the border
WARNLOWRASTER = 0 ;changes bordercolor if there was not enough rastertime
SENSERASTERTIME = 0 ;keep track of used rastertime
KEEPHISTORY = 0 ;keep collision history
JOYCONTROL = 1 ;make ball controlable by joystick, eats 91 bytes!
DAMPING = 1 ;turn damping on/off
PLAYMUSIC = 1 ;turn music on/off
Download Pinball Dreams for Commodore 64 source code by WVL : Dev.rar
Unfortunately, after many years working on this, it seems WVL completely lost interest (or just time) in this project. His website is just like “frozen” in time.
Laxity granted us with a new release in 2012 and it’s pleasure to play on a real Commodore 64 to this jewel!
Unfortunately(again), according to the team, it seem it’s quite difficult to add more features to the game so it probably won’t be finished… ::cry::
Original link on CSDb: http://csdb.dk/release/?id=111246
So, guys! Who is up to continue the saga…?