log in | register | forums
Show:
Go:
Forums
Username:

Password:

User accounts
Register new account
Forgot password
Forum stats
List of members
Search the forums

Advanced search
Recent discussions
- Elsear brings super-fast Networking to Risc PC/A7000/A7000+ (News:)
- Latest hardware upgrade from RISCOSbits (News:)
- Accessing old floppy disks (Gen:3)
- November developer 'fireside' chat on saturday night (News:)
- RISCOSbits releases a new laptop solution (News:4)
- Announcing the TIB 2024 Advent Calendar (News:2)
- RISC OS London Show Report 2024 (News:1)
- Code GCC produces that makes you cry #12684 (Prog:39)
- Rougol November 2024 meeting on monday (News:)
- Drag'n'Drop 14i1 edition reviewed (News:)
Latest postings RSS Feeds
RSS 2.0 | 1.0 | 0.9
Atom 0.3
Misc RDF | CDF
 
View on Mastodon
@www.iconbar.com@rss-parrot.net
Site Search
 
Article archives
The Icon Bar: The Playpen: Slightly cold news on page 10! Phlamey breaks the server.
 
  Slightly cold news on page 10! Phlamey breaks the server.
  This is a long thread. Click here to view the threaded list.
 
Andrew Poole Message #72497, posted by andypoole at 19:41, 7/12/2005, in reply to message #72495
andypoole
Mouse enthusiast
Web
Twitter

Posts: 5558
I've started work on the collision detection routines :)

Ped -> ped/car/object collisions are working. Next will be object -> ped/car/obj, then finally car -> ped/car/obj.
So when do we get a rough playable demo, then?
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72503, posted by Phlamethrower at 22:22, 7/12/2005, in reply to message #72497
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
It'll be a few weeks, at least. Before it's in any reasonably playable state, the following needs to be done:

* Finish the collision detection routines
* Modify the object code to use the collision detection
* Write the car movement function and handling code
* Flesh out the car definition files to contain all the handling info
* Add the damage system, so that peds/cars/objects can take damage from other peds/cars/objects
* Write a load of new script commands to allow the manipulation of peds, cars, and objects
* Write some script commands to attach/detatch events to peds/cars/objects, and modify the ped/car/object code to trigger the events (Shouldn't be too hard once the collision detection & damage system are implemented)

At that point the engine will be pretty much functionally complete. But in order to have a playable demo, it would also need:

* The ped AI system, starting with the mission controlled peds. These peds just have to perform the simple tasks the mission scripts tell them to, such as chasing people or driving towards map coordinates.
* The free-roaming ped AI system; these peds will have to make up their own goals as they go along. Luckily they can just reuse many of the AI behaviours coded for the mission peds.
* The spawning/despawning code for the free roaming peds. This must decide when and where to spawn a ped/car, and when to remove ones that have moved too far away from the player.
* The getting-in-and-out-of-cars system. In particular, the code which works out which car the player wants to get into, and which map coordinate it should approach in order to do that.
* A load of artwork, ped/car definition files, etc. need to be produced. Obviously simple stuff like UI sprites and fonts can be rough drafts, but for ped/car sprites it would be nice if they were detailed enough to be used in the finished game.

At this point in time, the game will be in a very playable state. However without the map generator coded it will likely be a rather boring test map that you get to play on, or a map built using a very slow algorithm written into the mission script.

So the list of missing features are likely to be:
* The map generator
* The map region naming system
* The automatic modification of gang respect levels, and spawning of gang members.

At the moment I'm thinking that each map region can be given a name and gang ownership; when you're in that region the game can then spawn the appropriate ped types for that gang. Also I need a way of specifying what gang members look like, and what cars they drive; this can probably be done as part of the ped/car definition files.

Once all that (and anything else I've forgotten) has been done the engine will be feature complete, so the only stuff left to do is write a load of mission scripts, do a load of final artwork and ped/car definitions, and do a load of playtesting.

Oh, and I need to add the code which interfaces the sound system with a suitable player module, and hope that the system I'm using won't die horribly if an object gets deleted before a sound it was scheduled to play gets copied into the sound buffer :P
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72506, posted by Phlamethrower at 22:33, 7/12/2005, in reply to message #72503
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Once all that (and anything else I've forgotten) has been done the engine will be feature complete, so the only stuff left to do is write a load of mission scripts, do a load of final artwork and ped/car definitions, and do a load of playtesting.
+ a load of optimisation :)

Currently though it does hit the 25fps target while running at 320x256. That's plotting the map display using pointer math in C, so when I switch to fixed line length plotters in assembler it should run even better.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72507, posted by Phlamethrower at 23:27, 7/12/2005, in reply to message #72506
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
+ rewrite the rendering code so that peds/cars/objects are correctly occluded by the map.

All collision detection apart from car v. car has now been done; I'm currently making general ingame graphics (weapons, bullets, explosions, pickups) so that I can add the code for pickups, weapons firing, explosions, etc. to the game and link the object collision detection functions into the object code itself.

Of course, having !Paint randomly crash the machine doesn't help much :)
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72516, posted by Phlamethrower at 01:35, 8/12/2005, in reply to message #72507
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
You can now pick up guns and shoot stuff :E
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72517, posted by Phlamethrower at 02:36, 8/12/2005, in reply to message #72516
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Ah, that's why it's already using over 1MB of RAM, I have over 400KB of sprites, 259KB of which get converted to 16bpp :P
  ^[ Log in to reply ]
 
Adrian Lees Message #72518, posted by adrianl at 02:39, 8/12/2005, in reply to message #72507
Member
Posts: 1637
Of course, having !Paint randomly crash the machine doesn't help much :)
But that's its job! :P


If you want/need some help tuning the code, shout.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72519, posted by Phlamethrower at 02:42, 8/12/2005, in reply to message #72518
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
If you want/need some help tuning the code, shout.
*starts uploading source code to send to adrian*

"Tuning" does include finishing all the nasty functions that I don't want to write, and rewriting all the bits which need rewriting, right? :P
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72552, posted by Phlamethrower at 17:23, 8/12/2005, in reply to message #72517
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Ah, that's why it's already using over 1MB of RAM, I have over 400KB of sprites, 259KB of which get converted to 16bpp :P
And I guess that giant font I'm using to say "Woot!" doesn't help much :P

I should probably change that code to use a regular size font, plot to a sprite, then enlage the sprite/plot scaled to the screen.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72559, posted by Phlamethrower at 20:57, 8/12/2005, in reply to message #72552
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
*finsihes writing an improved version of the collision code*

The more I work on this, the more it's starting to seem like I'm morphing the peds, cars and objects into subclasses of one superclass, because they all have common components of event/trigger lists, a visible sprite, sound sources, a collision volume, etc.

Which is exactly the kind of thing I tried doing in Dark Matter (Having everything descend from one superclass), and is part of the reason why that project became so complex that I've essentially abandoned it.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72560, posted by Phlamethrower at 21:00, 8/12/2005, in reply to message #72559
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
I just killed myself :(

*makes note to upgrade new collision code so that bullets ignore collisions with their owners*
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72561, posted by Phlamethrower at 22:40, 8/12/2005, in reply to message #72560
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Getting peds to slide over cars is tricky :(
  ^[ Log in to reply ]
 
Adrian Lees Message #72563, posted by adrianl at 23:45, 8/12/2005, in reply to message #72561
Member
Posts: 1637
I'm almost tempted to write a game :o
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72564, posted by Phlamethrower at 00:11, 9/12/2005, in reply to message #72563
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Do it, you know you want to :)

(erm, after releasing Cino first :P)

*waits for the new code to compile so he can test prototype car entering code*
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72565, posted by Phlamethrower at 00:24, 9/12/2005, in reply to message #72564
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Well, I think it worked, but I forgot to change the camera code to focus on the car's coordinates instead of the player's (Because when peds are inside cars, their coordinates are changed to their location relative to the car. Which would place the camera somewhere inside a wall at the edge of the level if it tried treating them as absolute coordinates.)

*adds the newly designed sliding-around-between-seats-in-cars code while he fixes the camera*
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72566, posted by Phlamethrower at 02:00, 9/12/2005, in reply to message #72565
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
And one and a half hours later, the seat sliding code is (just about) working :P

Although I did add the getting-out-of-car code as well, which lead me on a bughunt trying to work out why the seat/door/etc location marker sprites weren't working.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72574, posted by Phlamethrower at 15:25, 9/12/2005, in reply to message #72566
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
I think it's about time I got the sound system finished :)
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72576, posted by Phlamethrower at 15:34, 9/12/2005, in reply to message #72574
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Each handler is called with when the current driver is called if the handler is an immediate handler or on call back if the handler is either a call back or process handler.
StrongHelp at its finest, there :P
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72581, posted by Phlamethrower at 19:26, 9/12/2005, in reply to message #72576
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
I *think* that's the buffer fill routine written. It should hopefully take a list of sounds and mix them into the buffer supplied by SharedSound, applying different pitches and volumes to each. (plus all the code around it has been written, apart from the bit to load samples from disc and the other bit to make sure sounds which aren't scheduled for playing still get their sample positions updated.)

[Edited by Phlamethrower at 19:36, 9/12/2005]
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72582, posted by Phlamethrower at 19:39, 9/12/2005, in reply to message #72581
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Plus I could do with writing a few signal handlers so that the buffer fill routine gets removed if the program dies unexpectedly. Which it will do :P
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72583, posted by Phlamethrower at 19:51, 9/12/2005, in reply to message #72582
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
*compiles it anyway*
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72584, posted by Phlamethrower at 20:01, 9/12/2005, in reply to message #72583
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Seems to be working so far.

*attaches sounds to the flying blob things*
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72585, posted by Phlamethrower at 20:09, 9/12/2005, in reply to message #72584
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Hmm, it doesn't appear to be scheduling the sounds for playing.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72586, posted by Phlamethrower at 21:49, 9/12/2005, in reply to message #72585
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Hurrah! I have "sound" :P

*goes to fix*
  ^[ Log in to reply ]
 
Ian Cook Message #72587, posted by ilcook at 22:47, 9/12/2005, in reply to message #72586
trainResident idiot
Posts: 1077
*goes for a fix*
Pardon? :)
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72588, posted by Phlamethrower at 23:41, 9/12/2005, in reply to message #72587
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
I think these headphones are too good for the RiscPC's sound system, I can actually hear the time changing on !Alarm's iconbar display :P (Amongst other background noises depending upon momentary CPU/memory/bus/etc usage)

*makes note not to try ctrl-delete in netsurf either, since the last 3 times he's tried it it's crashed the browser*

[Edited by Phlamethrower at 23:41, 9/12/2005]
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72589, posted by Phlamethrower at 00:04, 10/12/2005, in reply to message #72588
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Stereo effect is working nicely now :)

I'll need to add a simple pitch shift as well, for sounds which are moving towards/away from the camera.

But first... CD music!
  ^[ Log in to reply ]
 
Adrian Lees Message #72591, posted by adrianl at 00:40, 10/12/2005, in reply to message #72588
Member
Posts: 1637
*makes note not to try ctrl-delete in netsurf either, since the last 3 times he's tried it it's crashed the browser*
Luckily for you, I'm actually working on NetSurf again atm.


Unluckily for you, it isn't the textareas that I'm working on! :P




because that would be useful ;)
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72592, posted by Phlamethrower at 02:17, 10/12/2005, in reply to message #72591
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Hmm, the radio is kind of working.
  ^[ Log in to reply ]
 
Jeffrey Lee Message #72593, posted by Phlamethrower at 02:25, 10/12/2005, in reply to message #72592
PhlamethrowerHot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot Hot stuff

Posts: 15100
Ah, I had a subtraction the wrong way round, and was calculating track lengths as negative numbers :P
  ^[ Log in to reply ]
 
Pages (22): |< < 7 > >|

The Icon Bar: The Playpen: Slightly cold news on page 10! Phlamey breaks the server.