What are you working on currently? (2024)

I’ve been working on a open world sandbox space game called Project: Interstellar for the better part of 4 months now with two other people… Here’s some screenshots and a link to check out our progress!

image





image

Here’s a link to our Public Testing Server if you’d like to support us:

4 Likes

Gyutaro Slash VFX

2 Likes

alright, here we go:

and probably much more that i havent listed here because its a little too technical to write

3 Likes

:hotel: :ocean: :palm_tree:




12 Likes

Working on a Horror Co-op/Action game, with the priority to differentiate this project from other games in the horror genre.

There’s a lot of work to do behind the scenes (been at this project for just over half a year now) with my team of developers but as of now I’ve been doing the modeling and building myself.


4 Likes

Diceboy Sunshine models were remade recently :slight_smile:


3 Likes

Working on this discovery/mystery game called Above The Clouds. It’s a terrain based game and is my first proper take at such a game with 3 years of terrain modelling done in commisions.

Here is the game if you want to check it out ! : Beyond The Clouds - Roblox

1 Like

Modified ACS war roleplay game, It’s unfinished.

In pre-alpha currently.

A small futuristic city showcase:


image

Still going with Guardians: Battle Arena, focusing on PC/Console/Tablet now. Just introduced ranked games:

7 Likes

made some ivy yesterday

10 Likes


2 Likes

League of Legends in Roblox, nice

1 Like

new global illumination module i’ve made for my gfxs
pre-existing modules on the devfourm didn’t meet my needs, they all had bad results

2 Likes

Made a gun in raw studio just for fun, gotta love unions then meshing from exporting obj and then optimizing.

Named it the GS-P21, the name a secret, the reason, yes.

image

image

4 Likes

I am currently working on an Dungeons type game which uses an isometric camera system.

5 Likes

What I’m working on? :world_map:

Well… I introduce to you my “rosebud” and beloved project; breezy isle. :coconut:


The reason why I call it my rosebud is due to it being the best experience I’ve ever taken out of paper so far. Apart from it being a stand-alone project, it’s meant to be a realistic/vibe-styled experience, having more mechanics than in any other project I’ve ever constructed! :hammer:

I’m very proud of myself and how this is turning out, as it is a giant step-up in my career as a Roblox developer. Regardless of it still not being finished, my expectations to release it out in the seven seas lie around late January and mid March of 2025. Why? Simple. There are unfinished mechanics — or they require polishing —, uncompleted scripting, my list goes on.

Anyhow, I’ve decided to break down some of my favorite mechanics I’ve introduced into this experience, together with an array of photographs! Drum roll, please.


drum roll :drum:

I) Favorite mechanics!

When I said I created stacks of mechanics, I wasn’t joking. Here are a few — or maybe a couple — of mechanics I’ve designed! Some are unfinished, some need polishing, and some are completed. :beans:

  • Treasure hunt/Daily rewards | Self-explanatory, but they’re a bit different. The treasure hunt isn’t looking around sand for a prompt or click detector, but you need a key hidden inside a shipwreck — undergoing investigation — and locate a treasure chest scattered in one out of five manually chosen locations — also inside the shipwreck! :coin:
  • Realistic swimming | I’ve decided to introduce a depleting oxygen — client-sided — system to the game, for that pinch of realism. It’s also presented with bubble confetti! :bubbles:
  • Seashell collection | Walking around pointlessly in a beach is boring, right? Well, not with this mechanic! You’ll eventually bump into seashells lying around the shore, just waiting to be collected! (Influences the fishing mechanic) :ocean:
  • Fishing | Self-explanatory, though you can buy rod upgrades — like a simulator — for your fishing rod, explore deeper oceans with fishing boats, and sell that fish for some useful goodies! :fishing_pole_and_fish:
  • Scuba-diving | Who said you couldn’t explore corals around these parts? Buy better swimming gear, say hi to dolphins, and enjoy the waters! (Impacted by the Oxygen mechanic). :diving_mask:

II) Gallery!

Give your eyes a little treat — varies from person to person!

These images may contain bright light that may impact certain individuals. Viewer discretion is advised.


Looking forward for more amazing content! Might as well ask for public testing later when this experience is up and running. Regardless…

Cya around! :desert_island:

4 Likes

Working on a souls-like, here’s some stuff from our latest dev blog:

Sprint animation showcase


Custom animation editor I made to ease our animators workflow

In-game environment screenshot

13 Likes

an algorithm to encode binary voxels (essentially a 3-dimensional table storing booleans) into a buffer, which can then be further serialized to JSON via base64.

It uses LZW compression to store the coordinates of the voxels. Best case scenario it uses 3 bytes to represent each voxel regardless of location, although it is limited by the 32 bit signed integer limit.

buffer format explanation for nerds

The buffer format is [flag][size][dictionary][data]

  • flag is a u8 representing the format to use for decoding the data, which is either u8, u16, or u32 (8, 16, or 32 respectively)
  • size is a u32 representing the length of the LZW dictionary, which is just a stream of numbers where the index is the ID
  • dictionary is 4*size bytes long because all elements use i32 (4 byte integer)
  • data takes up the remaining buffer, and depending on the flag it uses either u8, u16, or u32 to represent IDs from the dictionary.
    • it is read in groups of 3 to represent the coordinates (X, Y, and Z) so the length of data is always a multiple of 3.
Code snippets

Encoder:

...
	local b: buffer
	if i < 2^8 then -- unsigned 8 bit encoding
		b = buffer.create(5 + i*4 + #data)
		buffer.writeu8(b, 0, 8)
		buffer.writeu32(b, 1, i)
		for j, v in mapList do
			buffer.writei32(b, j*4+1, v)
		end
		for j, v in data do
			buffer.writeu8(b, j+i*4+4, v)
		end
	elseif i < 2^16 then -- unsigned 16 bit encoding
		b = buffer.create(5 + i*4 + #data*2)
		buffer.writeu8(b, 0, 16)
		buffer.writeu32(b, 1, i)
		for j, v in mapList do
			buffer.writei32(b, j*4+1, v)
		end
		for j, v in data do
			buffer.writeu16(b, i*4+j*2+3, v)
		end		
	else -- unsigned 32 bit encoding
		b = buffer.create(5 + i*4 + #data*4)
		buffer.writeu8(b, 0, 32)
		buffer.writeu32(b, 1, i)
		for j, v in mapList do
			buffer.writeu32(b, j*4+1, v)
		end
		for j, v in data do
			buffer.writeu32(b, i*4+j*4+1, v)
		end			
	end
...

Decoder:

...
	local t: Tensor.Tensor<boolean> = Tensor.new()
	
	if intLen == 8 then
		for i = 1, mapLen do
			map[i] = buffer.readi32(b, i*4+1)
		end
		for i = mapLen*4+5, buffer.len(b)-1, 3 do
			local x: number = buffer.readu8(b, i)
			local y: number = buffer.readu8(b, i+1)
			local z: number = buffer.readu8(b, i+2)
			t:Set(map[x], map[y], map[z], true)
		end
	elseif intLen == 16 then
		for i = 1, mapLen do
			map[i] = buffer.readi32(b, i*4+1)
		end
		for i = mapLen*4+5, buffer.len(b)-1, 6 do
			local x: number = buffer.readu16(b, i)
			local y: number = buffer.readu16(b, i+2)
			local z: number = buffer.readu16(b, i+4)
			t:Set(map[x], map[y], map[z], true)
		end
	else
		for i = 1, mapLen do
			map[i] = buffer.readi32(b, i*4+1)
		end
		for i = mapLen*4+5, buffer.len(b)-1, 12 do
			local x: number = buffer.readu32(b, i)
			local y: number = buffer.readu32(b, i+4)
			local z: number = buffer.readu32(b, i+8)
			t:Set(map[x], map[y], map[z], true)
		end		
	end
...

:warning: base64 may unintentionally spell out profanity

2 Likes

1 Like