What are you working on currently? (2019)

Added controller support in;

Not at all smooth, but still functional! Playing around with this made me realise how difficult it was to turn the camera while jumping with my preset controls, so in order to get around this I’ve now made the L2 button also act as a jump button. Further down the line I’ll be adding binding so it should be easier for players to change it until it feels just right.

2 Likes

Started working on the map for the RPG project “Tales of Zinovia”

3 Likes
  • Worked on the Menu UI and a demo of the upcoming shop/plane customizations system.
  • Rockets!
  • “Return to combat zone system,” before it was just an invisible wall that people crashed into
  • made a dev panel and suggestion system
  • speed/throttle control

(my video recorder sucks so the ingame FPS is actually much higher )

click this to see how rockets are secured, I made the system myself and im excited to see if there are any loopholes. If so, please tell me

rocket security:

for the rocket system I’m using projectiles created on every client + client sided hit detection. This means that:

  1. there is no projectile on the server, making it impossible to secure via normal raycasting/touched events
  2. exploiters can simply teleport their rockets to enemy players, or even just skip the whole projectile system and just fire a remote with location data.

So how could I secure it? Heres how the final system works:

[PREREQUISITES]

  • all rockets travel at the same speed, 100 studs per second. This is important.
  • all rockets explode on impact (no heatseeking, bias for anchored or unanchored parts, enemy aircraft, etc.)

[TIMELINE]

  1. client creates a projectile, then sends start position of rocket to the server, as well as the command “Start”

  2. server receives data, checks if the start position is close enough to the player’s aircraft. Then, server stores a table into a database consisting of {StartPosition = starting position, Time = tick(), Player = player, ID = id} the ID is the order in which the rocket is fired (if rocket is the fifth rocket out of 10, then id will be 5).

  3. server tells other clients to render projectile (visual purposes only)

  4. client handles hit detection, and once something is hit it sends the rockets position, the rockets ID, and a command of “Finish” to the server.

  5. Server receives data, then does the following calculations.

  • creates a tick() variable called finishtime
  • creates a endposition variable from the position send by the client
  • looks up the rocket data in the database, creates a variable called “rocketdata”
  • calculates the time it would take going 100 SPS from rocketdata.StartPosition to the given end position, then compares that time with the actual elapsed time from rocketdata.Time to finishtime (tick())
  • casts ray from rocketdata.StartPosition to the endposition variable to check it the rocket’s path was legit (ignores all moving aircraft to make sure nothing is obscuring the path)

so overall, even though the server can’t see an actual projectile, it uses minimal data from the client + real data from server to secure

  • elapsed time, so that exploiters can’t instantly fire a rocket and make it hit people (they gotta wait the actual time)
  • position/rocket path, so that exploiters can’t simply teleport their rockets to enemy gamers. (there must be an actual path from start to finish)
  • ammo amount, server keeps an ammo count to make sure exploiters arent firing more rockets than they are allowed.

so, to spoof a request, an exploiter would have to:

  • teleport their aircraft so that they are facing the enemy gamer, and are correct distance away
  • send fake rocket data to server and actually wait 3 or so seconds until rocket would reach the target, THEN send the finish data to create an explosion.
  • By this time, the enemy gamer has flown away and the rocket has hit nothing. The spoofed request didnt really give them an advantage over firing a rocket the legitemate way!
4 Likes

I love the comedic look of this trailer.

Not Roblox, but still game dev related: currently working on a decent mod manager for Sims 4 for my bf. Will release it on GitHub when done. It will be Windows only.

Left column is functional; displays installed content packs. Right column currently showing a placeholder.

4 Likes

I’m pretty stoked, after many hours of bashing my head against my keyboard I finally figured out a decent pipeline for converting asset store characters into custom rigs, and then importing those animated rigs into roblox. For someone with not much animating talent I think this will be a huge boost to productivity.

https://i.gyazo.com/9d0ced645420d4de44f4353d386b0822.mp4

For anyone looking to do this themselves, this is a great place to start :Blender rig exporter/animation importer

I haven’t been able to get importing rigs working 100%, so I build the rig in roblox and then import that to blender.

24 Likes

Very cute, what asset store is this?

Unity, but pretty much any model that uses a single texture and doesn’t rely too heavily on cloth / deforming animation should work on Roblox.

The team and I brought in a new airport and put in a couple of aircraft to see how it all would look. We were very impressed with the end result!

5 Likes

I can’t decide if I should be proud of this

9 Likes

Looks neat! Something like a belt or a plant or something around the waistlines would probably help the visual transition from skin to scale.

2 Likes

Cool but also

uncanny valley achieved for the second image at least

Final results of a showcase I’ve been working on.

15 Likes

Looks really cool. Of what i can see in the pictures maybe you could add some more variants of trees so it isn’t the same trees everywhere

1 Like

I’ve been writing a code framework that allows the creation of custom Enums, DataTypes, Libraries, and Services (with extensibility for other object formats available). Featuring identical behavior and access syntax to those in the Roblox API.

Since the core of the framework is now complete, I’ve begun writing a Studio Plugin to smooth out the workflow. And I’m writing it with the framework! I love cyclic productivity. :smile:

2 Likes

Looks pretty cool actually!
However, I think there should be a smoother transition from the torso to the tail part like ScriptOn said. Honestly a big fan of your realistic character models.

1 Like

Wrote a BSP (Binary space partitioning) dungeon generator for my game, outputs as an array so I can easily rebuild it as pre-built wall segments. Still gotta do some work on making it how I want but im happy with the results so far.

20 Likes

Some of you will remember this GUI

I’ve moved it to the bottom of the screen so it’s a bit less obnoxious

17 Likes

Actually bringing so many memory’s one of my very first games I played on Roblox back in 2009 was a train driving game. Amazing work making it look back then :)))

3 Likes

You wanna fight?

Wonderful job lol.