B: Happy Driving Bloodbath

Name courtesy of the Video Game Name Generator :P

So I was thinking what games I'd really enjoy so I could strip them down, and Need for Speed Most Wanted came to mind (the original one). Car chases were best, nobody played that game for the racing...(though it was a nice added bonus). But then there is the issue of a car controller (which I have no understanding of and I don't really feel like going through the whole unity car tutorial at the moment). But thinking back to a warcraft 3 map (specifically Uther Party 2, if anybody else knows what I'm talking about) where your character ran around and would only turn at an intersection if you had told it to (so you pressed left and it turned left at the next intersection if it could).

So that's what I plan on doing! (Or plan to, feel free to tear this to shreds, I'm sure theres a number of issues with it).
I plan to have a 2D "map" on roads/paths that the player can move around in, and the idea is to escape from the police (or whatever it ends up being that is chasing you) and the only way you control yourself is by telling your character to turn either left or right at the next intersection (I guess I might implement U-turns somewhere...).

All I have to do is give myself a full education on AI for enemies :O
Also not sure exactly how I'll define being "caught" because there'd be no (or at least less, in my opinion) fun in car chases if you couldn't ram straight through a blockade of SUV's with a Lotus Elise :P

Play:
There's no download at the moment, only web player, so just...use the arrow keys to tell it where to turn at the next intersection (IE you can press left ahead of time and it will try to turn left at the next intersection)
Build 1
Thanked by 1Denzil

Comments

  • edited
    I've been humming and hawwing for ages about doing a car chase game in the vein of Most Wanted, *super* keen on seeing this concept being tried! :D

    I wouldn't worry too much about sophisticated AI, there's a helluva lot of ways that you could cheat and I think one majorly important thing is not getting too caught up on realistic car movement -- if allowing an instant turn (for example) works out to be more fun and it's easier to gel with an AI, go for it!
  • On one level... I guess this is like a hyper pac-man! :D Sounds like fun, let's see how the collision works out. The traditional damage route is one way to go, otherwise... Well, let's see :)
    Thanked by 1Denzil
  • @Tuism I was going to mention pac-man, but then you did it first. Damn :P

    @D3zmodos Uther party for the win! And yeah, you probably won't need tron AI for this. Keep us updated, I might have some ideas that you maybe you will like. Or maybe not :P that's for you to decide.
  • edited
    Ooooh! This does sound cool!

    This game had wall grinding:


    What is cool here, is that when you've chosen to turn in a direction (which can be long before the actual turn) is that you visibly start grinding (with sparks) and it heats you up so that you go faster (but if you heat up too much you can take damage, though I'm not sure that's a good thing).

    [Edit] [i]Looking at this again I think heating up through wall grinding in Forget-Me-Not makes you able to damage enemies by touching them. I know wall grinding for speed makes less sense in a car chase game but it might add something[i]

    So it means, making a decision early about your next turn is advantageous, but of course, making a decision early is more difficult. Which has a nice reward-for-greater-risks dynamic.

    That's just an idea, it seems to fit into what you're thinking. And I think it'll really benefit from the being chased elements you've suggested.

    Also, just turning left or right is so simple anyone can play, and the system you've suggested sounds like it could result in some brilliant emergent gameplay, like the police cars that are chasing you might collide if you lead them into doing so.

    Some very popular games have come out of this kind of design:



    (I mean simplifying the controls but still giving an intense challenging experience, although I think there are better and far more interesting examples than Temple Run). Seems like your ideas for this game could produce something really brilliant.

    Good luck with the implementation! (and I hope this doesn't negatively affect your exams)
  • That grind-pac-man was epic! So much variety in it though, bombs and everything :) Looked like fun. Left right runners are fun if you get the balance right. Super Hexagon was a left right game :)
  • Yay for a build that is actually interactive, finally! :D (Available in the original post, or here.

    So basically use the arrow keys to tell the car where to try to turn at the next intersection (it will follow the curve of the road automatically, you only need to tell it where to turn when it has to turn away from "straight"). No enemies yet though, you just get to take a peaceful drive through what I'm calling Cloud City (because the not-road textures are made from just a cloud texture).

    Things to note about this build:
    - This level was hand built, which took forever, but is faster than making a random generator to automatically generate levels that provide for interesting "roads" to evade enemies on.
    - Remember to use the arrow keys, I spent upwards of 15 minutes trying to "debug" the game not turning when I was using WASD (pretty much without realising that WASD != arrows)
    - It lets you make a U-turn at intersections (apparently my checks for this exact purpose don't work and so far I haven't been able to puzzle out why), I don't really plan on letting the player do this in later builds though.
    - There are lines between the sprites... Why are there lines between the sprites?...This is built using SpriteManager 1 (which I'm very slowly building stuff on top of to make it easier to use), but still, I haven't modified the actual SpriteManager code and the sprites are positioned exactly the correct distance apart from each other so that there is no gap. It seems to make the very edges of the blocks have a bit of a fade on them (I didn't tell it to do that :O) which I think is causing the issue.
    - It currently does not show you what your "order" to the car currently is. For instance I plan on having some sort of visual indicator showing that at the next intersection you will turn left, or whatever the case may be.

    Gogogogogo comments/criticisms/techsupport/rage!
  • edited
    Awesome level design. It seems like there is a lot of potential for meaningful decisions at every intersection :) It would be awesome if well timed turns were rewarded with a speed boost.

    I have a silly technical grip with the gaps occurring between the tiles. It looks like rounding issues caused by storing the tile/map offset as a floating point. If this is the the case then it can be easily fixed by rounding the offset to the nearest pixel before drawing the tiles.

    I agree with @BlackShipsFilltheSky in that there is a lot of potential for radness :) I look forward to playing with bots, though I don't think that there is a need for fancy AI, you can get pretty far by just telling the bots to move to the adjacent tile that is closest to the player. It might be worth looking at this awesome article describing the different chase personalities of the Pacman ghosts.
  • I keep getting told to install the webplayer, and I followed the link and installed it but that's all I get :(
  • @aodendaal, I'm guessing your using chrome. I can't remember what to do to fix it, but maybe try firefox.
  • This looks really fun! Are you going to have barricades and bonuses to drive through?
  • @aodendaal Maybe? I dunno, but I'd need to wait and see how the AI works out because I'd wanna work that into the whole "plan your route" thing, which is what I'm trying to get it down to. I think I am going to implement rewards (speed boost) for making a decision earlier rather than later though (as suggested by @BlackShipsFilltheSky).

    I added in simple AI that just always goes to whichever path is closer to you....makes it impossible to get them to be further away from you...ever :P I guess I should give them some reaction time as well. Possibly make them try to cut you off later on the road you're currently on? That'd take quite an amount of extra coding to let them pathfind to the next intersection though....I'll take a look at the article @Merrik posted (haven't yet :O)

    I think a lot of the interesting-ness/challenge of this comes from how the AI responds to what you do, so I imagine that I'd need to have an AI that does at least a few unpredictable/varied things so that they don't always just sit on your tail and never get closer or further behind.
  • What @aodendaal is saying about barricades and such is probably one of your safe bets for shaking up the AI behaviours, either by temporarily blocking a route entirely or just slowing down any AI that goes through it. On the flipside, AI may be able to take "shortcuts" by passing over blocks that give them a temporary boost.

    For the endgame condition, it may be nice if you simply keep the U-turn mechanic in (you can always give a temporary speed penalty to discourage using it too often: doing a 180 would effectively slow your vehicle overall, anyway). The "lose condition" would then be running into a cop car that blocks the FRONT of your vehicle and makes it impossible for you to move. So ideally, your danger situations are when multiple AI drones are closing in on you from different sides, yeh?
  • Actually my idea for roadblocks or bonuses was so that you could temporarily by-pass building the AI and give the player something to do in the prototype; i.e. collect all 10 bonuses on the map. You could always remove it later once you have AI working or experiment with different ways of playing with collectable bonuses
  • edited
    I'm actually not too familiar with how the Most Wanted chasing behaviour worked. I imagine because the game was from the car's perspective a lot of how the cops behaved was fudged.

    One thing I'd suggest doing, because you are showing the player what the cops are doing all the time (because in Happy Driving Bloodbath the player has a birds-eye-view) is experiment with simulating cop-like behaviour. It's really fun for a player to learn a system, and quite often just the interaction of a few simple, but consistent, rules can produce something really interesting (especially when those rules are intuitive).

    For instance. We all know cops have about 0.5 second reaction times (slightly greater than the average human due to donut consumption and the malaise of the working class). So a cop that is right on your tale when you make a turn is always going to carry on going straight because they didn't receive enough warning. Which can be exploited.

    Another possibility. If a cop loses you they will try circle back to where you were (instead of following you). Again, this can be exploited.

    Another possibility. If one cope sees you they may alert a cop nearby about your position. To achieve this you would have to have alerted cops (with red/blue lights), who maybe drive a bit faster, and patrolling cops (who have their lights off). You would need this visual cue to be able to teach the player about this sort of behaviour.

    However I'm not sure if outsmarting the AI is something you want to be a feature in this game (it's a big feature of Broforce so I might be trying to force it on this regardless of how well it fits).

    Another thing. IS there going to be a blood bath? Will there be the running over of troops of Elvis impersonators, Joggers, Nuclear Power Protesters, Trekkies, Tourists, Other Car Thieves, Steve Hofmeyers, Tandem Cyclists, Clowns or at the very least pedestrians? (this is important to me).

    If you need to flavour these as Pac-Man dots that leave squishy red marks then I'm okay with that.

    If there are special dots, like in Pac Man, that flip the tables and allow you to destroy cops with immunity how will that be flavoured? As a bribe of government officials? Triggering spontaneous blanket police incompetence? Spurious lies that cause the police to go on strike?

  • Splattering a Steve Hofmeyer should get you a blue light brigade. And a free upgrade to your house, at the taxpayers' expense.
    Thanked by 1EvanGreenwood
  • @BlackShipsFilltheSky Yes well as I mentioned before, I think a very large part of why escaping police is fun, is because you have to outsmart the cops, and so how interesting the game is, depends greatly on what the AI does. I would certainly LIKE to implement a fair variety of behaviours for the cops (for instance having them just roam until they get within a certain range and "discover" you, or having them try to cut you off by moving to an intersection ahead of you instead of to your position).

    Regarding the existence of a bloodbath, the game doesn't really support a pavement or any form of sidewalk at the moment , so I don't think so (although as you say, pac-man-esque dots in the road would probably suffice). I might end up with cops that get out of their cars though...maybe...if I get there....Far too much time is being spent playing the actual Most Wanted and far too little time is spent making the game any better (although trying to force the user's car to be controlled by the same script as a police car and just only ever try to move to a position right in front of it, is probably a bad idea, so I'm going to stop doing that now).

  • edited
    I think the most powerful thing you could do in terms of AI for the cops is have the cops only be able to spot you if they have line of sight.

    Line of sight for enemies very quickly adds a lot of outsmarting options for players. Especially if they can lose track of you if you take several quick corners and they only know where they saw you last. I imagine that's kind of how cops work in real life (I participate in very few real life cop chases and can only rely on movies).

    Something I say at Free Lives a lot: It's always EASY to make a game harder, so don't worry about giving players more opportunities to win because you can just up some enemy values and it'll balance out (except that the player will now have more options and that is inherently fun).

    Like if it gets easy add patrolling helicopters that sometimes fly over and track you a bit better (but are slow perhaps).
  • And your LOS calculations can be really dumb-simple, too, just project a straight line in the horz/vert direction they're facing, have it terminate at a road and have a last-known x,y stored with each o' them and BOOM! Sorted.

    Better still, giving them an internal alertness cooldown clock means that if you evade a particular cop for long enough, they can revert from their fast, agitated mode to something a lot more chilled again (unless you want them to all be quite well-coordinated, but I'm already getting the feeling that it'll make things a little too challenging for the player in the environment you have, depending on numbers, etc).

    @BlackShipsFilltheSky I'd be hesitant to base any game models on real-life cop chases. They tend to wear you down through attrition and hardly ever ram the vehicle, meaning that it's more of a grind session. Police really need to rethink how they conduct their chases, IMO, if they ever want to make an impact with the media and their broader audience.
  • edited
    AAAAAAAAAAAARGH! Good lord why is it so difficult to make cops not U-turn! >:O Making them move via pathfinding was meant to make things easier....in a sense...
    I should really just throw together my own simple rendition of A* for this...I really don't need all the power that the A* Pathfinding Unity package provides....and I could seriously do with the flexibility/I-can-do-whatever-I-want-because-I-know-how-my-own-code-works.

    They don't really need to not be able to U-turn though I guess...and I should really move on to some form of actually-getting-somewhere development instead of repeatedly causing cops to not be friends with intersections.
    Police really need to rethink how they conduct their chases, IMO, if they ever want to make an impact with the media and their broader audience.
    I couldn't agree more.
  • @D3zmodos: A relatively painless way to prevent u-turns is to have each car "tow" an invisible path-blocking object behind it, that's only active while that specific car is doing its pathfinding.
  • @Nandrew Also, regarding what should really be described as a "poverty of entertainment" involved in real lift cop chases, I've never seen any criminal use oil-slicks to avoid pursuit.

    If GTA1 taught me anything it was that oil-slicks were very likely to disturb normal cop chasing behaviour, to the benefit of the criminal, but also, perhaps more strikingly, they were jaw-achingly hilarious.
    Thanked by 1Nandrew
  • @dislekcia I tried that with the package...ended up doing funny things with which bits of path it blocked, interfering with other car's pathing no matter what I tried.

    Anyways, got my own pathfinding going and its working now (after a LOT of infinite loops....sigh), busy giving the AI some love.
  • edited
    Ok so most people are making posts about their ludum dare entries but seeing as though what I did was pretty much re-do this exact project, I'll just continue here (because it contains useful info/suggestions too).

    You can download it it here.

    @BlackShipsFilltheSky and @dislekcia You'll notice I changed the name, it no longer gets the player excited about a non-existent bloodbath, and it no longer makes ill-use of the video game name generator :)

    I was initially not gonna post this (like my previous 2 ludum dare entries...because you know: "omg they'll think I'm dumb/useless/bad/etc") but then I saw a comment on my game's page:
    "Not bad at all for 48 hours."

    Really? Somebody really thinks that? Surely they have some distorted ideas for what to expect from 48 hours? I mean I literally spent maybe 2 hours working on this on Sunday (and certainly not more than that this afternoon, just to finish it off for jam entry...I blame lack of motivation, game didn't seem that fun to me at all) so this was basically all done on Saturday... no ways this is good given an entire weekend to work on it (not to mention the Monday afternoon of extra time for the jam).

    Anyways, yes I do realise it's fairly buggy and has a number of features missing that would have been very, very nice (my only comment on that page so far consists almost entirely of excuses =/), and I wanted to add more pickups/powerups (namely dynamite and oil drops) but the collision was doing really funny things so I just dropped it.
    Also the AI in that build is essentially non-existant, the cops are supposed to begin chasing you if you enter their line of sight, leaving the chase if they lose track of your for a long enough period...but currently they either dont see you, or they just bug out and stand still (perpendicular to the road... road block :D?) when they lose track of you.
Sign In or Register to comment.