[Prototype] Jack King

edited in Projects
So I've been learning Unity, and needed a project to learn it with. So this is what I've been doing :)


A to control your booster (fly up or don't)
Mouse click to shoot (aiming up and down to come)

JACK KING is a runner. Well, a jacker. On the run.

You just busted out of Space Prison and need to:
Make your escape
Make moolah
and make MAYHEM!

You can hijack any vehicle in the game and ride it instead of being just you. Hijacking is as yet not implemented yet, but you can see that when an enemy is damaged a few times a circle comes up - you fly into that zone to hijack it. The more damage it's received the bigger the circle gets. I may yet implement that you have to click a few times while in that circle to jack the vehicle, or do some other stuff (kinda like quicktime events). But keeping it simple as I want to A ) have multiplayer and B ) build for mobile :)

The ultimate vision is that you can jack trucks, mechs, blimps, flying limos, circus trailers, military tanks, ambulances, even boss vehicles, and they'd all do different things and have different scales :)

Early days! Lemme know what you think :)



  • Jet packs are cool...really cool. This looks like it can be fun. Can't wait for you to implement the jackin' part. Take it you are planning to make the vehicles perform differently to the jetpack? Also, at the moment you have the ships moving behind the player, think it would be cool if they could hit him. Anyway, I know it is still a VERY early build, but looks good.
  • Very cool concept and prototype! I love the purposefully restricted movement. I think once you've implemented aiming, the game's gonna become one crazy, involved, super fun.... thing! Oh, and I concur with @FanieG's sentiments. Like a sir!
  • I like the concept, like Jetpac Joyride meets GTA V :)

    The shooting part and the fact you can highjack vehicles is going to be super fun. Also the variety of vehicles will have a huge impact on the game, you could really take it to the extreme. (Like AT-AT walker, etc)

    Lastly in Jetpac joyride for instance , you also only had a thrust key, but the control/interaction changed with each vehicle you got in, so the gravity suit A switched gravity field, while in the Bird, A flapped the wings for instance. Would you implement something similar?

    Then also, since you are making your escape, would you have some sections like a barricade, that you would need a heavier vehicle to plow through?
  • Hey guys thanks for the feedback! :)

    Yes different vehicles will definitely handle differently, fire differently, and just be plain different. There will be big vehicles and small vehicles, and the game scale will change accordingly too, so you could be in a giant mech that gets pulverised cos you can't dodge anything or a zippy plane that is fragile but hard to hit. There'll also be different weapons with different firing modes, all dependant on the vehicle.

    I actually haven't played Jetpack Joyride yet :P

    Barricades sounds good, I'll have different obstacles that affects different vehicles differently, I'll have to get the mechanics and design going to see how it goes! :)

    Also thinking of a money mechanism, cos you're a criminal hijacker after all :) So jacking an armoured money truck will get you lots of money but the truck doesn't do much. And other vectors that affect which vehicles to jack :)
  • I actually haven't played Jetpack Joyride yet :P
    Get it today. The PSN version is awesome. This little gem stole more of my time than I would ever like to admit. Also:

    And other vectors that affect which vehicles to jack :)
    Sure you meant factors - Unity has you speaking in vectors :)
  • edited
    Well by vectors I mean different things... directions... quantifiers... I think vectors does work, metaphorically speaking :P (factors work too :P) like some could be purely ground based and could jump, some could take more damage, some could have a shield/deflectors, some could enable jacking something bigger... etc :)
  • @Tuism

    Cool concept; I like the flow and controls so far; well done. And how clean and clear it is.

    I of course played without reading your post first, so the vehicles puzzled me (they looked a bit like flying animals that I could ride, so I tried to get onto them - I hope the hijacking mechanic works like that, rather than getting "in" the vehicle :P).

    Look forward to see where it goes.

    (Also, if you don't mind a tech question, is the city procedurally generated? Care to share some details? It's really effective creating a futuristic city atmosphere, even in this simple form).
  • edited
    Thanks! I'll try and get the player to remain sticking out the vehicle :P

    As for the city - I have 3 basic models made of blocks block blocks. Then I just make them at random intervals at two different z axis. The buildings themselves move along the x axis to the left at a set speed, and self destroys at x position of -20 or something like that.

    Here's what it looks like in the scene - buildings get made on the right, destroyed on the left :) Very much a cheat :P

  • edited
    The game's been updated to demonstrate the jacking mechanic :)


    If you fly into the target zone when a vehicle has been damaged past a certain threshold, you will jack it. Actually should change that graphic cos people want to shoot it.

    Been largely trying to figure out how to do things so the progress is slow...

    Next things to add:
    1. More/better balanced enemies and enemy movements
    2. Player damage + eject when player vehicle is destroyed
    3. Loss condition ("naked" player is 1 hit kill
    4. Pickups

    Having trouble with collision detection... Right now you can "sit on" an enemy shot if you move onto it from above - yet it will hit if it hits face-on (more obvious if you're in the vehicle)... Strange...

  • @Tuism - the shoot seems delayed somewhat. You right click mouse but then waited a few secs before it fired. This however got better as I played. Weird? Is there a way yet to eject from a vehicle in lieu of another? As for the collision with the enemy bullets, have you played around with the centre position of the colliders? Could be that the collider just needs to be moved slightly, although this is purely a guess at best.
  • @Tuism I have the same problem with bullets. I got the impression it got better as I jacked a vehicle.

    I like the jacking mechanic... but I think you should play a bit with the vehicle settings (physics / movement). Personally I'd like the vehicle to accelerate faster than I can normally ... I'd like to feel the power. Maybe... add a bit of forward and backwards acceleration as well?

    Nice update man :)
  • @FanieG what you're experiencing is the firing rate - You can hold down the button to keep shooting, but only at a certain rate. I capped it explicitly - I originally had it more "responsive", which meant holding the button down was auto fire, but if you tapped the button, each button would be a shot. But that made it too easy as you could exceed your shooting rate. The human player shoots slower than the vehicle player.

    @hermantulleken Definitely more variety in vehicle settings will be the spice of life :) Right now I'm building different settings into the system so it's easy for me to generate a few different vehicles. The vehicle right now is heavier and is harder to fly up with than the human. I will also have different "scales" to the game with different vehicles, so you could end up jacking something super big and the game changes "scale" :) The forward and back acceleration... Do you mean the speed that the game moves at or physically moving the player back and fourth? I wanted to specifically stay away from that cos I want this to be a mobile game and that means one touch controls = king :) Moving the game speed faster for the vehicle is definitely coming in :)
  • @Tuism - your game needs Star Wars like walkers (2-legged and 4-legged ones). Also, Back to the future skateboards and TRON bikes.
    Thanked by 1Tuism
  • That's the plan! :P mechs will be in ALL my games EVER :P
  • @Tuism I know this is a fairly old post and your Unity skills have improved since. (PS: I have just completed the space shooter tutorial on the Unity site, yeeeha).

    I like the title "Jack King" and launched this proto in my browser just now.

    Just a thought on performance. The background (which is non-interactive) consists of mesh objects. Surely this impacts performance? Wouldn't it be better to have some kind of parallax background displaying textures on a quad instead of having physical objects that are randomly generated on the right and scrolled to the left where they are destroyed?

    Also I have purchased GameMaker Pro and haven't even touched it. I come from a C#/MonoGame background , but am moving into Unity now due to the powerful features, asset store and its rapid development capabilities.

    I am just curious to know if you're dropping GameMaker now in favour of Unity and if so, why? Just weighing up the various tools here ;)


  • Well, that's a really good point :)

    Jack King was the very very first Unity thing I ever made so it's obviously rough. As for performance and meshness, I really wasn't thinking of that at all - plus if I wanted to go for the effect of 3D buildings in the background I'd had to stick with that :)

    Also, lately, I've been feeling quite clearly that GMS is simply the faster engine to make stuff go with, at least with me it is. Unity is great for production, and GMS is great for prototyping. Again, for me. For me, just picking up a simple "where the mouse is clicking" is a huge massive bloody chore for me. So I think I'm going to stick to GMS for prototyping for the simple fact that I could put out 10 GMS prototypes in the same time as I could 2/3 Unity ones. And only if something is seen to be successful, should I venture into Unity - or maybe partner up with someone to do the Unity port. Currently I'm working with @Loet on Unityness and other than the fact that he's extremely busy (yes that's not a minor issue :P), he's been awesome, as is evident by Dead Run :)

    If you come from a C# background already, there's no reason not to continue in Unity - that's pretty much what it is :) Don't bother with GMS if you already know Unity! Unity is great for 3D, for production, for having a web build, and various things like that. It's just not speed and beginner friendly. For me.

    I still want to carry on with Jack King but I might just continue with it in GMS first XD
  • @konman: Er... I just want to clear something up about 3D cubes being better than quads "for performance".

    A rough analogy for "good performance" is the grades a kid needs to pass the year at a hypothetical university. She might take several courses. The pass mark for each course is 50%. If she gets 50% for every single course, she passes. If she gets 100% for almost every course... but gets 49% for one course, she doesn't pass. Furthermore, you might argue that if she got 100% for every course, she was working too hard and neglecting her quality of life, and that it might have been better to get 75% for every course and see her friends and family more often, or take up some other hobbies or something.

    In game development, how long one frame takes to execute could roughly be seen as the same thing. Your "pass mark" is somewhere between 30 and 60 fps (though it depends on the game). Any number of things could cause you to fail, but they happen in parallel. So if you switch from 3D geometry to quads, you might speed up the renderer, but if your game's performance is being bottlenecked by your physics, or other stuff in your main thread, switching to quads will have NO EFFECT. And even if your bottleneck is in your rendering, if your bottleneck isn't vert count, cutting down on verts will also have no effect. (Sometimes, counter-intuitively, you actually have to add more verts for things to run faster!) And lastly, if everything is super optimized, and your game is running 300 fps... well, that's nice, but if your target was 60fps you've wasted your time optimizing what didn't need to be optimized, or alternatively you're not living up to the quality of content you could have created with all of the extra milliseconds of frame time you could have spent juicing things up.

    So while it's good to think about performance when you're creating content, switching from 3D cubes to quads in this particular game because of performance is likely to have no effect. (Chances are that at this point @Tuism's programming is more expensive than his art right now.) If you're going to make a change like that at this point, it should be because of gameplay, or art direction or something. (It could start becoming a more valid consideration if we're talking about millions of cubes though, or if there are many, many layers of cubes drawn over one another, or if you were trying to make something that would run on a potato.)

    Hope that helps!
    Thanked by 2hermantulleken Tuism
  • edited
    @Elyaradine It does help, thank you.

    I do think it is worth the time to at least think about optimizing performance, without going overboard as you mentioned. A game tends to get more complex as we keep adding components which exponentially could add to performance overhead, so it is worth considering performance as one creates lower level components.

    I think my observation was valid with regards to questioning complex meshes versus a simpler background scroll. How much of a performance increase one would get I do not know. I did stumble upon a thread that seems to indicate that Cubes are better than Quads for some reason in Unity which seems strange to me from a geometric complexity perspective...

    Anyhow, @Tuism did indicate this is a prototype and he will be going GMS to productionize, so I guess performance is not a high priority in this case?

    Can I just say I have fallen head-over-heels in love with Unity this weekend and I think she is batting her eyelids at me too... not sure. I hope I am not mistaken... :)
  • edited
    Well, I'm not actually 100% sure where it will go - maybe I do continue in Unity, maybe not, I dunno really. Right now I'm too busy on Dead Run and Bear Chuck to look at anything else sooooo :P

    And to be clear - I wouldn't be be going to GMS to "productionize" - I would be going to GMS to prototype, not to produce. Unity is much better at that. GMS is good for speed, Unity is good for production. For me.

    But yes if you're comfortable in Unity there's no reason to go anywhere else :)
    Thanked by 1Bensonance
Sign In or Register to comment.