No announcement yet.

[PC] Nebulas Lasso - To all fans of intergalactic human hunting!

  • Filter
  • Time
  • Show
Clear All
new posts

    [GAME] [PC] Nebulas Lasso - To all fans of intergalactic human hunting!


    This is Yasir from STON Games. We are a tiny indie Game developing house that is new to the Gaming scene. And we’ve been developing our first major title for the PC and hopefully the Nintendo Switch. It is a multiplayer Game called Nebulas Lasso.

    Our Game Nebulas Lasso is nearing beta version at %85, the remains are mainly SFX, visuals, audio, testing, debugging, balancing/tweaking. We are still working on a trailer. I'm here to announce our Game, and ask everyone for feedback and/or even ideas to help make Nebulas Lasso better! We are totally green when it comes to PR stuff. So, all help is appreciated

    Here is our Discord, Twitter, and website. We’d love to hear what you think!

    We highly appreciate all the help and feedback we can get! Best wishes, Yasir

    Here is a link to the Gameplay.

    WARNING! The sound can get noisy, so please make sure to put the volume down.

    The below is to anyone interested in learning more about our humble Game, Nebulas Lasso

    Nebulas Lasso is a Game where players control flying UFOs and compete against one another in capturing humans. It describes an intergalactic sport. A sport that was created by a mighty galactic ruler that pits the most skilled pilots of the Nebulas against each other. The pilots battle each other in this sport of capturing humans by utilizing their piloting skills and advanced weaponry.

    Nebulas Lasso is a local multiplayer Game, where each player pilots a UFO with it’s unique pilot and unique style to capture people of Earth. The Game relies on mechanical skills, and good understanding of each UFO’s strengths and weaknesses. Nebulas Lasso is aimed for players who enjoy classic local multiplayer Games of all ages. It has no gore, nor any explicit content.

    We're avid fans of Twisted Metal, the unique characters, the unique specials, the closed combat were all parts that we loved about Twisted Metal. And, an oldie called Death Tanks was also a Game that we enjoyed, and admired the format of everything happening in one screen. Both of these Games have inspired Nebulas Lasso's design.

    Thank you for reading!

    SFX Anticipation – Freezing Time:

    In our previous post titled SFX: Anticipation – Adding Juice, we talked anticipation that is added ahead of an action to give it that extra punch. Then, we spoke about the techniques implemented, such as freezing time, which is our focus in this post. For Nebulas Lasso, we also want to add that juice to the UFO’s Special attacks to make them felt further. We began with freezing time. So, in this post will try and explain how to implement this in Nebulas Lasso.

    In Unreal Engine 4, there is a function called GlobalTimeDilation, which gives the ability of manipulating length of a single Tick (Game Frame). For example, GlobalTimeDilation default value is 1, so if that value is reduced to 0.5, execution is slowed down by half. That yields a slowed down effect. The opposite is also true. Here is a great tutorial on how to use it. A complimenting function is also available, which is called CustomTimeDilation that modifies a specific Actor. This become useful when you need everything to slow down for the player ALONE, then you do a Global Time Dilation of value x, then do a CustomTimeDilation of value (1/x). Based this, to freeze time for ahead of an action, we use a GlobalTimeDilation. However, in our Game, we have several issues we had to deal with before freezing time would operate as we need it. The issues were mainly three; User-Input Buffering, UFO Movement and Nozzle Rotation to be Time based, transforming Firing Special Weapons to be a sequential waterfall execution that is placed within the EventGraph.

    User-input buffering is the act of buffering is basically gathering and holding commands for delayed execution. This was needed to be added because User-Input in Unreal Engine 4, and in general, is asynchronously gathered, meaning, it follows no time frame, as soon as a user inputs a command it immediately fires the event.
    When time is slowed down, so should User-Input, for that we added a buffer (array) to hold user input, and then executed as a bulk during each EventTick.

    Buffered inputs getting executed in a bulk means that pressing left 3 times in a row will be executed in sequence within the same Tick. This yields sudden bursts of movement after the time stops freezing and returns to normal. To remedy this, we rewrote UFO movements and Nozzle rotations to be DeltaSeconds– the time duration since the past Tick until the current one. Therefore, if movement was 30 units per second, and time was dilated to be shorter, it will always be multiplied by the DeltaSeconds to yield the proper movement speed.

    Finally, the need to implement firing special weapons to be in a sequential manner is a little indirect in affect. Say, we want freeze time for 1 second then unfreeze. This means we do it as follows:
    GlobalTimeDilation(0.001) -> Delay(1 second) -> GlobalTimeDilation(1)
    In Unreal Engine 4, Delaying time can only be executed in the EventGraph scope. So, if we use an Event to FireWeapons, but want to freeze time before the shot is actually fired, we must delay in between the User’s Fire command and the actual shot getting fired. For example, in Ryu’s Shinku Hadouken, a user will do the double quarter circles+punch, but before the Hadouken is thrown, the anticipation frames must be shown first.

    Here are two videos showing examples of the special weapon not having an anticipation (first) and having it (second).
    The Special weapon fired without Freezing Time (Time Dilation).
    The Special weapon fired with Freezing Time (Time Dilation).

    We understand that the impact is not as detailed as in MVC2 yet. But, if you compare you can observe the wind-up before the punch, so to speak

    We expected this post to be more graphical than this. So, our apologies for this long wall of text… We will continue by implementing dimming of the everything aside from the executing Actor next.
    Thank you for reading!


      SFX: Anticipation - Spotlight

      In our previous post, SFX: Anticipation – Freezing Time, we explained how we implemented the time freeze effect to emphasis UFOs’ Special attacks and make them standout to be felt further. In this post, we examine how to add a spotlight effectto give those UFO Specials focus during Gameplay and add further emphasis!

      This one was much easier than freezing time; not literally. The steps we carried out to create a spotlight on a Paper 2D Actor were as follows:
      1- We created an
      Actorthat would act as a transparent veil that shall sit between the orthographic camera and the world. It will be there to cover up everything so that we can set a spotlight on the focused Actor.
      2- We implement functions within the to be spotlit Actor that puts the Paper 2D components slightly ahead of the
      Veil Actorand towards the camera so that they stand out ahead of the veil and not be darkened out by it.
      3- We call the Veil to darken, and call the focused Actor to be uncovered by the Veil with the functions from the previous step.

      The setup of where to call the above functions were already setup from the previous post, so it was rather simple to extent. Below you can see the difference between a Special being fired without any effects, and the below is a Special being fired with both the Time Freeze and the Spotlight.

      A Special getting fired without any added effects:

      A Special getting fired with two effects, Time Freezeand Spotlight:

      This addition is pushing the Special to appear impactful further! We have other visual effects planned to help give the Special the juice it needs!