neon.racer //working title

edited in Projects
neon.racer is something I've been working with most of my time in the last ~3 weeks. The purpose was to create something that evokes the feeling/exhilaration of speed.

The game offline solo and online multiplayer (using the free version of Photon).

image
More shots on Imgur, because I don't know how to embed gifv here.

I'm keen to hear any feedback you have (particularly suggestions for improvement).

The music was made by Driftprism for another racing-themed jam game that we worked on earlier this year, so it doesn't quite fit, and I'm aware I'm missing a bunch of sounds. The vehicle (only visible in multiplayer) was modelled by Filip Orekhov.

I'm also keen to hear if you've got suggestions for ways to iterate on a track really quickly. I'm currently using splines in a 3D app and then transferring them to Unity, but this feels pretty slow. >_<

(edit: updated links)
(Windows / Mac / itch.io)

Comments

  • edited
    It's so pretty :D

    Edit: Okay now for proper feedback :)

    - First... I had to go to lowest resolution, lowest details and windowed mode to play without it being a slideshow but I guess that's just... My Mac :P
    - The craft handling feels like it's not a racing vehicle but more a lumbering rocket. It doesn't turn very well and I get that "good handling" isn't necessarily the point of a racing game, but it feels like it's too far off the other end, especially for a "futuristic racer". I think this is super important to this, I don't want to feel like I have no chance of avoiding things. I know the answer is supposed to be "brake or slow down" but that doesn't feel right in this speed racing context, especially not when going generally straight.
    - The white beam thing looks a lot like obstacle that I want to avoid initially. Tried to a few times before recognising it's not a wall.
    - The way you can ride up a wall is interesting and I wish it felt better than it does right now, when you leave it the flip back feels wrong, but I see why you did it.
    - Stopping dead feels teeeerrrible, the way a collision is handled is pivotal to how a racer feels. Explode and reset is one way, engineering a crash and spin that feels good is another way (but because this is first person that might feel terrible in different ways). But stopping dead and having to start again feels bad. I see you've minimised the amount of completely perpendicular to the player surfaces but it still happens and so would be better handled by process than by track design alone.
    - As for iterating on tracks, I feel like the feel is more important for now, what you have in terms of tracks is fine, but the feeling of how the ship handles is going to be the more important factor, I think.
    Thanked by 1Elyaradine
  • edited
    I like the cockpit effects a lot. Reminds me of Tron meets Matrix, meets Wipeout meets Race the Sun.

    Constantly flying/riding at max speed actually detracts from the feeling of speed though as one gets used to it quickly and the effect kinda wears off? Maybe play with slower speed and acceleration/deceleration and building up to max speed while trying to hold it there by collecting items perhaps (I'm thinking multiple dots like eating in a pac-man level).

    Sticking to the optimal path (white line) could be used to reward player somehow. Shapes could also come into play (UI show triangles so avoid non-matching blocks/circles etc). Also traversing massive large areas and then seeing one or more narrow doorways ahead to choose from which lead to claustrophobic sections which lead to open sections again could be interesting. Forcing player to make fast choices could add to the exhilarating. Motion is currently one directional, adding cross flowing traffic to avoid might also give a feeling of speed and narrow misses (frogger on steroids).

    Pulling into an underground like stations between sections to drop of passengers/collectibles could also add a sense of progression.

    The ceiling loop ride upside down (corkscrew?) is interesting and could be further explored as could ramps and jumps.

    Adding more lines on the ground as well, like the dotted lines when racing on the highway could further add to the sense of speed.

    Adding a camera leaning effect when you change direction (like riding on a fast bike) could be interesting too.

    The music tempo and beat could also be tied closer to the level and the speed to further enhance the experience.

    Visually and audibly a very trippy and interesting experience so far... :)
    Thanked by 1Elyaradine
  • Um super fun! Love the wall riding and the graphics. Yes to more ramps and jumps!
    Here was my second run.

  • Is it redundant telling the best technical artist in the country that their game looks visually spectacular? Tough. I just did. :P

    As a fan of Audiosurf and Wipeout the visuals generally strum all the right chords for me, and your choice of music really helped. I really can't fault the theming and presentation overall here, although I did have a couple of niggles. Let me tell you them:

    - My machine struggled with the game, alas. That's to be expected with all the neat postprocessing and reflections, though.
    - I loved the sense of speed, but found the handling on the ship very sluggish - I never felt like I could react in time to turns. Whether that's down to my needing to get used to the control scheme or a deeper issue can only be answered by more playtesting. :P
    - I honestly felt that there was a little *too much* motion blur. It's a personal preference, but all that blur in combination with already-abstract visuals meant I really struggled to see what was going on at times. Perhaps my low frame rate was also to blame here, but yeah.
    - Occasionally I found I would flip onto vertical walls and stick there, unable to recover. It didn't happen often, but alas, that was game over for me. :P

    As for track construction, I assume you're spline -> polygonning stuff in your 3D app and importing it wholesale, yeah? Some sort of edit-time procedural system comes to mind, where you specify the general contours of a track using a node-based tool in Unity and then generate and procedurally create a mesh using prebuilt segments that get extruded/deformed then stitched together. You could then flesh that out with prefabbed obstacles (or swap out segments as needed by modifying node parameters). It's the old procedural-tool-dev vs. hand-authoring time equation, but there's not a lot else I could recommend that would beat authoring everything manually.
    Thanked by 1Elyaradine
  • Played a little, the prototype looks wonderful, it left me wanting for more.

    [-]Opening screen mode selection buttons' text is barely visible on windowed 720p.
    [-]There seems to be no way of going back to the opening screen, [Esc] does nothing.
    [-]It's possible to fall off the track, leaving you floating forever.
    [-]Controls feel very awkward, it comes off as having a hard angle clamp which makes it impossible to navigate some parts of the track without hitting the walls, there just isn't enough time to turn at the current max turn rate.
    [-]Controls feel like they are lagging behind, like they are being snapped to some angle.
    [-]As you said, the music is a bit off, this type of game screams for dynamic music.
    Thanked by 1Elyaradine
  • Thank you for the feedback!

    I'm work on the turning/movement today. I made a lot of the movement limitations based on visuals hoping for the best, so I'll revert to what's probably more correct in terms of gameplay. :D

    This isn't well explained, but the blue trail that you sometimes see is a trail that is left by players. In a multiplayer game, it's supposed to be sort of a catch-up mechanic, where if you follow the trail left by your opponent, you get a speed boost. In an offline game, when you see the trail your own trail from when you previously crossed that level piece. It doesn't play a defined role there, except that maybe in theory you might be able to plan how you traverse a track to make it easier to do exactly the same in the next run. (I don't think the single player version is fun though.)
  • Oh man, this is so my jam :D Redundent as Gazza said but good grief this is gorgeous.

    The feeling of speed is really effective, like approaching Phantom class in wipeout effective though not quite there. I don't agree with Gazza on the too much blur, it seemed great to me but then my machine didn't struggle at all so perhaps a performance thing.

    As others have mentioned, the controls need tons of work. Realistically anything moving that fast is going to have limited maneuverability, but that's just not fun. There definitely needs to be less of a lock on the turn, but it also feels like some mechanism to explicitly handle sharp turns (drifting or something) is needed.

    I was actually quite enjoying trying to bring my run times down, but then I generally enjoy that in racers, it's probably not going to engage most players. So you definitely need some kind of incentive to keep playing. Traditionally this would probably be racing other human or AI players, but that need not be it. Two games that come to mind for influence here are Thumper (obstacle avoidance) and Breakneck (escaping some nefarious pursuer).

    Random thought on the trail and what @konman said about overusing the speed. Perhaps that trail could act as a boost powerup, and is persistent and cumulative. So you'd have a limit on the speed you could reach on the first lap, but once you get to the second lap, you'll be trying to follow the trail which would speed you up. By the third lap, if you've been really good at following the trail, you'll have a stacked trail to follow which will boost your speed even more. That could really lead to an amazing sense of mastery. It'll also get progressively tougher because of the way a vehicle handles any given track changes vastly as they speed up. So you'd actually need to be quite strategic from the first lap, anticipating that change.

    On music, this absolutely screams to be more tightly tied to the music. So either somehow generating tracks based on the music or as @critic suggested dynamic music based on the track and speed

    For editing the spline, are you generating your track automatically from the spline? If so, why not just edit the splines directly in the world? We use that at Luma for our spline stuff. if we were editing those splines externally it would kill our productivity. I don't think you'd struggle too much to implement in-world spline controls. That way you could literally do this stuff real-time
  • edited
    I've uploaded new builds to itch. (Windows / Mac / itch.io)

    I removed the real-time reflections (they're from the Unity Adam demo, so I don't think they were ever really meant to be used for a production game...), and went through and did some optimizations that I didn't care about doing while prototyping, so it should generally be running quite a lot smoother.

    I made the vehicle turn faster, have the turning not be dependent on framerate (oops), and make driving along trails give a bigger boost to speed. And some other minor things that I don't remember.

    I'm not that happy with the current direction, in the sense that it feels like a lot of the enjoyment of the game will rely on creating interesting tracks, and I'm not really interested in spending another while making an in-editor track-building solution. I'd rather work on making the vehicle itself feel interesting, and am pivoting and making a parallel prototype this week. :)

    Out of interest, one of the tweets I made about the game blew up quite big (for me, anyway), which is nice. I'll want to keep the work that I did on the fx, try keep that feeling of speed, but try out another set of mechanics.
    mattbenic said:
    For editing the spline, are you generating your track automatically from the spline? If so, why not just edit the splines directly in the world? We use that at Luma for our spline stuff. if we were editing those splines externally it would kill our productivity. I don't think you'd struggle too much to implement in-world spline controls. That way you could literally do this stuff real-time
    I'm currently creating the tracks in my 3D application outside of Unity. I'm helped somewhat by a UnityMeshSync plugin that Unity Japan made (it allows changes I make in my viewport outside of Unity to happen in Unity too -- live!), but the downside is that the mesh that gets synced in Unity becomes forced to be a SkinnedMeshRenderer. I mean, it works while I iterate, but it's not ideal. I thought about making a tool in Unity for making tracks (or looking on the Asset Store for one to prototype with). I think that making a spline that's just a bendy flipped-normal cylinder would be easy, but making anything more interesting (tracks that split, have holes, change in radius, etc.) don't seem to exist on the Asset Store. I could build it myself, but I'm thinking of exploring other options first (like game mechanics that don't need those kinds of tracks).
  • Ok, yeah it sounds like based on the direction you want to take (not building tons of tracks), the solution someone mentioned above where you have a couple of track pieces you can slot together would be your best option. That opens up the possibility of dynamic level generation as well which could lead to something cool.
  • I've uploaded new builds to itch
    Yeah now it's gone completely over in the opposite direction. The craft is so responsive it's impossible to make useful inputs. Did you both increase the turn rate and remove the turning limit? Removing that limit would already have been a big win, with a tiny increase in the turn rate. As it is now it's impossible to control (and yes I did try it on a controller for analog).
    I assume you removed the curved and obstacle track segments to test the trail boosting?
  • edited
    mattbenic said:
    I've uploaded new builds to itch
    Yeah now it's gone completely over in the opposite direction. The craft is so responsive it's impossible to make useful inputs. Did you both increase the turn rate and remove the turning limit? Removing that limit would already have been a big win, with a tiny increase in the turn rate. As it is now it's impossible to control (and yes I did try it on a controller for analog).
    I assume you removed the curved and obstacle track segments to test the trail boosting?
    Oh gosh, I was actually testing, and then forgot to put them back. I'd made it as sort of a "this was what it was before I started the parallel prototype" thing, and... foolishly didn't test the new one. :( Sorry! I've re-uploaded them with the tracks re-added and a slower turn.

    I'll be dedicating this week to the parallel prototype.
  • I'm currently creating the tracks in my 3D application outside of Unity. I'm helped somewhat by a UnityMeshSync plugin that Unity Japan made (it allows changes I make in my viewport outside of Unity to happen in Unity too -- live!), but the downside is that the mesh that gets synced in Unity becomes forced to be a SkinnedMeshRenderer. I mean, it works while I iterate, but it's not ideal. I thought about making a tool in Unity for making tracks (or looking on the Asset Store for one to prototype with). I think that making a spline that's just a bendy flipped-normal cylinder would be easy, but making anything more interesting (tracks that split, have holes, change in radius, etc.) don't seem to exist on the Asset Store. I could build it myself, but I'm thinking of exploring other options first (like game mechanics that don't need those kinds of tracks).
    What programs are you using for the 3D model creation? I can recommend Rhinocerous and Grasshopper to make quick work of tracks, splits, holes, changes in radius etc. Can share more if interested.
  • edited
    Thaaaaaaaaaaaaaaaaaaaaaaaaaaaaat's better. The game runs beautifully now using Ultra settings on my machine, and the handling feels perfect. I still think there's too much blur, but hey, I'm biased. :P (BTW, please humour a dumb tech question: are you using SSRR or just planar reflections?).

    Being a Wipeout fan I wouldn't mind AI opponents, but I'm with Matt that simply trying to beat my own time/ a leaderboard and mastering the tracks is pretty compelling. I agree that what you need now is track variety. It's a pity that your authoring pipeline isn't as fast as you'd like, but I'd argue that because the track segments are so short, a collection of them is something you could expand upon fairly easily as dev continues. I see no harm in taking a reasonably large number of authored segments and generating a randomized sequence of them per run. You could have the player select a run length (number of segments) and complexity (which is something you could create metadata for per chunk), so you could weave the progression together procedurally to have a nice engagement/difficulty curve. I ramble, but if your constraint is track chunk authoring, that's a good way to make it work for you in a way that's easily extensible as you go.
    Thanked by 2mattbenic Elyaradine
  • I just tried this now (Core i-7, 8 GB RAM) and it is super sluggish even on the lowest setting and in window mode. Maybe it feels different at speed but as is it felt as if I was trapped in a motion blurred synthwave haze. I couldn't tell what was going on besides sort of knowing where the optimal/centre area was and assuming some things were walls or tunnel sides or something but I seemed to oversteer just with a key press (in slow motion) so I was all over the place.

    Having said that I'm still really excited about this as I am a huge Wipeout fan.
    Thanked by 1Elyaradine
  • watman said:
    I just tried this now (Core i-7, 8 GB RAM) and it is super sluggish even on the lowest setting and in window mode. Maybe it feels different at speed but as is it felt as if I was trapped in a motion blurred synthwave haze. I couldn't tell what was going on besides sort of knowing where the optimal/centre area was and assuming some things were walls or tunnel sides or something but I seemed to oversteer just with a key press (in slow motion) so I was all over the place.

    Having said that I'm still really excited about this as I am a huge Wipeout fan.
    Erk, sorry about that. Out of interest, what graphics card do you have?

    There's a whole lot I can optimize further for lower settings, but it's usually best to leave optimization until I actually know what the game is. That's not really the case for me yet, so I'm spending most of my time figuring that out. But if it's something that'd lock a large number of people out from playing, then I can do some quickie things to fix that.

    @Gazza_N: I was using the Adam Demo Plane Reflections, because those were rendered with actual cameras and therefore had really great fidelity on the floors. But when I started adding curvy tracks, that obviously messed it up a bunch, and so I've just opted for SSR, even though the results are rather blurry and jittery and don't really work so well on the mirror-like surfaces that I've got. :/ I don't know of a good way to get accurate reflections on curvy surfaces, and I don't really have any interest in getting my hands on an RTX. :P I do work around a little bit of it by having a reflection probe on vehicle itself to get fairly accurate (or, at least, not visibly inaccurate) reflections on the car. These may or may not be spilling into the environment around it. (I... mostly don't know what I'm doing, and am just figuring things out as I go... :D)
    Thanked by 1Gazza_N
  • Is it not possible to force/default players to lowest detail settings and/or resolutions? I think that worked for even my ancient macbook :p
  • I knew I forgot to tell you something. This is interesting. This is a borrowed machine so I don't know it well. There's "Intel Graphics Family" (whatever the hell that means - there's no deeper info in Dxdiag) with 2 GB RAM, which is Display 1, and then there's supposedly AMD Radeon HD 8750M with 4 GB shared and 1 GB VRAM, which is Display 2.

    The game won't let me select Display 2 so perhaps the game is being forced onto the Intel Graphics system?
  • (I... mostly don't know what I'm doing, and am just figuring things out as I go... :D)
    Story of our lives. :P

    Thanks for humouring me - I was curious what you'd changed between the versions. I think the reflections add a lot to the look of the game, but I can understand your frustrations - you're just not going to get the same look, and SSR is... spotty for complex geometry.

    The planar reflection approach still strikes me as a good one, depending on what's actually causing the slowdown with Adam. I dunno what the vert counts of your tracks are, but I'm curious as to whether it's the rerendering or the postprocessing that's causing the overhead on that shader. If the latter, I'm sure keeping a slightly lower-res or more lightly processed planar reflection is a good compromise. I'd hate to see you lose the reflections outright. T_T

    Thanked by 1Elyaradine
  • This shit dope!

    I played it over and over for awhile. Really enjoy the speed sensation with the effects you got going on. The turning seems really hard because of it's sensitivity.

    What I really like are the places you can go on the walls and ceilings. I feel that the game should focus on a more straight track with more hilly feel. So, the player plays more with intense speeds.

    Keen to see whatever direction this goes.

    :)
    Thanked by 1Elyaradine
  • Whoooh!! Haha so trippy. It's got like a psychedelic / cyber-punk feel to it.
    My heart was jumping out of my chest!

    Will this eventually become a multiplayer experience?
  • edited
    I've put this on hold for now to make some other prototypes. (I spent about 5 weeks on it, and didn't quite reach the point where I was convinced that it'd be something worth spending another while on.)

    I may continue on it at a later date, but I'll be posting some other work in the mean time. :)
    Will this eventually become a multiplayer experience?
    It technically already has networking/multiplayer built in (via Photon), but in retrospect that ate a lot of time and I'm not that sure it was worth it for a prototype. (It made iterating more time-consuming, which made exploring other things more difficult.)
  • Thank you for posting your project, I was really amused and entertained while playtesting.

    What I enjoyed the most was the trail mechanic, being able to trail your previous lap for a speed boost creates more focus on the race course as well as the timer. It goes without saying that I absolutely loved the neon atheistic, the bright fast colours make for great eye candy.

    What I did dislike is mainly 3 points. The steering is a bit too sudden and crashing generally breaks the game (falling out the world, riding upside-down), certain parts of the music are quite unpleasing and after playing for hours, it seemed as if no matter how well you preformed or messed up, your end time would generally fall between 48 to 52 seconds.

    I would suggest a reset function, to either reset the whole race or the player position. I feel the end time variation could be improved by making it harder to reach max speed, this would also create a greater focus of the boosts around the course.

    I would also like to ask if you've considered randomizing the race course? That would increase player retention
    Thanked by 1Elyaradine
Sign In or Register to comment.