Pages:
1
2
3 |
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Rip Off Revectored
Welcome to Rip Off 3 REVECTORED ...AGAIN
[Edited on 27-3-2019 by dom cook]
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
So lets begin with a brief description of what Rip Off is all about.
From the web;
Game Introduction
One or two players attempt to protect fuel canisters from groups of invading pirate tanks that appear from the edges of the screen. There are six
styles of pirate tanks in the game worth 10 to 60 points each. The value of each style is determined by its speed and strategy. Low point value tanks
are very slow and generally head directly for the fuel. Higher point tanks are much faster and may work together to lure a player to destruction.
All pirate tanks are armed with short-range lasers, while player tanks are equipped with a cannon. Invading tanks are destroyed when they are hit by a
cannon shot. Enemies can also be destroyed by a collision with a player's tank. There is no penalty to the player for destroying enemy tanks this way
except for the brief period of time he is out of the game. When playing a two-player game, it is not possible to shoot the other player, although you
will both be destroyed if your tanks collide.
The game is organized into waves and bonus levels. Two or three enemy tanks attack in each wave. A wave ends when all the pirate tanks have either
been destroyed by the players or have dragged a fuel canister off the screen. After a number of waves, the bonus level increases 10, 20 ... and
another round begins, starting with 10-point tanks. Each successive round is slightly faster and harder than the one before it. The bonus level gives
additional points for each enemy tank destroyed. The game proceeds in this manner until all fuel canisters have been "ripped off" by the pirate tanks.
Awesome or what?
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
If you chase two rabbits, both of them will escape.
PART 1 Getting started.
I've downloaded the original game. It comes with the PRG file which is editable in DIV studio. However, it can't be played because the media has
been packed up using some strange magic.
The first thing to do then is to run through the code and identify all the missing media.
Once that's done I'll produce some simple place holders - beeps and boxes. This should get the program runnable through DIV studio.
In terms of game states, this will already be a finished game. Although perhaps a bit rough around the edges, it will already be playable and that's
something that can't be said for anything else I've uploaded here recently.
In a way, that's the point of starting this project. To get something finished. I see my other projects stretching away into the future and I want
to finish something.
PS. What's a paradox?
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Back to basics
Stage 1 complete.
Objectives complete:
Ripped out the Mode 7 and converted coordinate system back to screen type
Neutralized sound commands
Set up some place holder graphics
The essential functionality of the game is now in place and it is even kind of playable even in this state.
The next step is to make some blocky graphics for the individual game elements so that I can employ the DIV collision detection functions for report
various relevant events in the game (Moslty being shot.)
After that I need to determine the size and shape of the game area. As I want to make this game switchable between 2d and 3d, I need to figure out
an arena form and size that works well in both formats. For a non scrolling top-down 2d game a rectangle that corresponds th the screen works best..
But for 3d a circular arena is perhaps more suitable. The original 2d game also featured wraparound gameplay (going off one side and coming on the
other) this doesn't obviously translate into 1st person 3d. For 2D there's also the option of a scrolling screen to consider.
Attachment: RIPOFF301.PRG (20kB) This file has been downloaded 3834 times
Attachment: RO.FPG (1.1MB) This file has been downloaded 4187 times
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
DIV doesn't do collision detection in mode 7 so in the original version of this game collisions are reported when two objects get within a distance of
less than the sum of their radii.
I've now realised that it's actually possible and quite easy to use DIV collisions even in Mode 7 or 3D. There's a demo of this in the code snippets
thread on mode 7 setup.
So I've now stripped out the old collision detection routines and replaced then with DIV's collision(type process type) function. This required some
slightly more beefy place holders so I've upgraded the graphics to rectangles. And for now I'm working with a rectangular game area.
As a bonus, thanks to Mike I've got to restore a lot of the original sound. The files are in the .zip
The game is starting to shape up. Go on, give it a go.
Attachment: RO.FPG (84kB) This file has been downloaded 4124 times
Attachment: RIPOFF302.PRG (18kB) This file has been downloaded 3823 times
Attachment: ripoff3.zip (79kB) This file has been downloaded 3785 times
|
|
MikeDX
|
|
Very cool DOM
Problem with PRG though, EXP.WAV needs to be EXP3.WAV (or rename the file, either is good)
Little swines keep robbing all the goods though, I'm pretty useless at this game. Also I can run faster than my bullets so that keeps it interesting
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Yes bullets are a bit crap I think it's because they are copied from the white ball from billiards game in the example programs. Pirate lasers seem
to come out of odd places too. And the tanks turn really slowly.
It will get better, I promise, Bullets and movement are up next for the treatment.
Even with usable armaments, it's still going to be very hard for one player. The original at least was definitely meant for 2 players. It's the
original survival co-op. That's why you can expect me to plague you at some point for networking help.
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
This one's a bit more like it. And here's the missing WAV, I think.
Attachment: RO.FPG (83kB) This file has been downloaded 3842 times
Attachment: EXP.WAV (27kB) This file has been downloaded 3792 times
Attachment: RIPOFF303.PRG (17kB) This file has been downloaded 3777 times
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
This version has graphics for the tanks based as best as I could manage on the original game. I'm not that keen on them myself but for out of
respect and all that.
The point of it was to have something to build a vector model from. If you run the game you'll get 2 renders. the DIV one and a scaled vector one,
They both use the same position data.
I got the vector data by plotting the vertices into the graphs and then reading them off in the program using get_real_point() and map_get_pixel()
The advantage of vectors is demonstrated as they scale nicely. Scaling a one pixel thick line drawn on a sprite by 50% makes it degenerate and
scaling it up makes it fat.
Attachment: RIPOFF306.PRG (25kB) This file has been downloaded 3485 times
Attachment: RO.FPG (117kB) This file has been downloaded 3872 times
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Now where was I?
What's needed for this and for any other potential 3d vextor games is a simpe way to make the models. Once you move beyond cubes and boxes it gets
seriously tedious typing out the model coordinates by hand.
For that reason I'm trying to knock together a (very) simple 3d model editor prog which will be able to save and export files in a custom format.
This too is tedious but once it's done it will be worth the effort. With Mike's blessing it could even possibly end up as an integral part of DIV,
Here's a shot of what I've got so far.
If there's anyone out there with any suggestions regarding potential features please let me know.
[Edited on 12-9-2016 by dom cook]
|
|
MikeDX
|
|
Yes. We need this! Could be awesome for us as it would work well for making retro vector games especially mobile and web
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
time for a post
I've been pottering with this editor and it's coming on slowly. My problem is that I can't focus on it so I'm just doing the odd bit when I've got
the time at the mental energy.
Seeing as it's been a while since I contributed anything here, I've decided to post what I've got so far.
You can't do much editing with it at the mo, apart from rotating, scaling and changing color of bodies. You can also delete objects and add blank
ones.
Keys that do stuff are _n, _b, arrows, _1 to _5. _f1 to _f5. letters, backspace and enter (when you name a new object.).
Attachment: editorprg.zip (19kB) This file has been downloaded 3452 times
|
|
MikeDX
|
|
And here it is as a web app in all its glory
http://js.mikedx.co.uk/domcookeditorprg.html
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Hey Mike I've been adding a tool which creates new objects and I'm encountering a problem where the program will just shutdown without warning or
error message. I guessing that it's because the program is exceeding the maximum allowed number of processes. Is that feasible? I've upped the
maximum number of allowed processes using the compiler_options and it looks like this might have solved things but it would be nice to know what was
causing the problem.
PS Now you've made it into a web app I'm more motivated to get on with it. I'm a bit embarrassed with it as it is now.
|
|
MikeDX
|
|
I think the max number of processes is pretty high in modern div.
The debugger should show you some stats. Also i think max processes is based upon how much memory div is allowed to use, so local vars really bump
this up and lower the amount of processes you can actually use.
I should really change this and make it "infinite"
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Quote: Originally posted by dom cook |
PS Now you've made it into a web app I'm more motivated to get on with it. I'm a bit embarrassed with it as it is now. |
Famous last words.
Three years later...
|
|
MikeDX
|
|
What on earth are you doing up at 4am
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
it was 5 where I am. Still a bit too early though, I admit.
[Edited on 27-3-2019 by dom cook]
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Ok so the 3d editor thing was a bit ambitious.
This time I'm focussing on making the game.
In getting familiar with the code again, I've already managed to break a couple of things but, not to worry, I've added a cool camera whose height can
be adjusted by dragging a billiard ball.
Try it here..
Attachment: RIPOFF.zip (112kB) This file has been downloaded 919 times
[Edited on 28-3-2019 by dom cook]
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
OK I've got some baddies to shoot again. I had the bright idea of purging the prg of user defined local variables. Not surprisingly this got me into
a mess but I'm back on track now.
|
|
MikeDX
|
|
http://js.mikedx.co.uk/ripoff010419.html
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Right I'm at the point where everything seems to be working ok in 2D. This is pretty much a complete remake of the original Rip Off game now (minus
any as yet undiscovered bugs). It's missing explosions and maybe some other effects and the pirates are terrible shots but it's the same gameplay.
The next thing to do is swap the font for a vector based one and then I can start to 3d things up a bit.
Attachment: RIPOFF403.PRG (28kB) This file has been downloaded 914 times
Wow, that was relatively painless.
[Edited on 5-4-2019 by dom cook]
Attachment: font0.FPG (15kB) This file has been downloaded 920 times
[Edited on 5-4-2019 by dom cook]
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
Slowly but surely, 3D is on the way.
|
|
dom cook
Div Pro
Posts: 387
Registered: 4-3-2016
Member Is Offline
|
|
The 3D effect in the last picture was a result of perspective. The camera itself was fixed directly above the centre of the game area and pointing
straight down.
This image, although not a lot more to look at is more complex, the camera can be tilted moved and translated so the view is from above and to the
side. Of course not everything is getting the 3d treatment yet. I'm proceeding with caution. If this breaks badly, I don't think I have the
resolve to try to fix it.
This is also a significant improvement on Div Tank Arena because the camera in that was locked in a horizontal plane. That's been something I wanted
to put right for a while now as I quite like the idea of a wireframe dogfighting game and that would require a free camera.
So, at last I'm getting round to it, this time round, the biggest problem with making this step has been that I've had flu and fever for about two
weeks and even the most simple concepts have been beyond my grasp. Trying to manipulate a bunch of vectors in my head has been horrificly difficult.
[Edited on 8-4-2019 by dom cook]
|
|
MikeDX
|
|
This is very cool
Dom I've got a WIP page for uploading a zip of prg + assets, that creates a html file. Maybe we can use your WIP as a test for it
|
|
Pages:
1
2
3 |