Ectoplasmic

Screenshots

Description

Disclaimer: This project is still being worked on, and is not complete.This is by far, my most impressive project yet, mostly because of ectobot. My current dev team is me, an animator, a modeler, a VFX artist, and a builder (who I am still looking for). I have done all the programming for the game, as well as all the ui.The game is a ghost hunting game inspired by Phasmophobia. I did take some core mechanics from Phasmophobia such as ghost types, evidence, and hunts, but I made most of the rest unique. I am adding spells, exorcisms, a completely different system in place of sanity, and much more. Your job is to enter a haunted location, find evidence to distinguish the type of ghost you are dealing with, then exorcise it... while doing your best to survive.When you join the game, you can create lobbies with your friends, buy and add items to bring to your investigation, check out your spells, and start the investigation. The lobby has already been made. As for making the actual investigation portion of the game, progress is moving relatively slowly due to a lack of a builder on our team. I am currently trying to find builders however it is hard to find anyone at the skill level I'm looking for. Although this part of the game is nowhere near complete, most of the core mechanics of it have already been done, such as smart ghost pathfinding and attacking, cancelable ghost kill animations, a full inventory/item system that is easy to modify, a first person viewmodel system, a door and drawer opening system that works similar to phasmophobia's, and much more.But what makes this project truly special? Well that would be quite a few things I have added. Firstly, the game is linked to a discord bot called ectobot (with its own page on my portfolio). It acts as a js webserver that my game can send requests to. This enables me to add a lot of features such as discord voice chat integration and ways to view your in-game stats with the bot. But that's not it. I also used some advanced game development techniques that I very rarely see roblox games use. For example, the first person viewmodel is heavily scaled down. This doesn't make it look different to the player, but it prevents the viewmodel from clipping into walls. If you look at large roblox games such as Arsenal, you will find that they did not take the time to add this, and you can easily clip your viewmodel into walls. My game also has rebindable keybinds and just a generally really fleshed out settings page; something else you don't see in most roblox games.Yet another unique thing I added was a system to sync data between games. My game has settings that control how graphic or violent the game is. At minimum settings, the game would be rated All Ages by roblox's standards, however at maximum, it would be rated 13+. I was going to lock those settings to the minimums if you are <13 so I can keep my game rated all ages, but roblox only judges the age rating of the game based on the most graphic it can be and doesnt consider whether or not what makes it like that is restricted. My solution to this was to make two separate games: Ectoplasmic Jr, and Ectoplasmic. They are exactly the same, except in Ectoplasmic jr, those settings are locked to the minimum. That way <13 players can still play the game, and 13+ players can still have the more violent settings available. But what if a 13 year old and a 12 year old want to play together? If the 13 year old has been playing on Ectoplasmic, and now they have to play on Ectoplasmic Jr so they can play with their friend, won't they lose all their data? Well, they don't have to. Using Ectobot, I can use roblox's datastore APIs to retrieve data from one game and load it onto the other. This did take a while to code, however I have gotten it to a fully functional state. Now players can swap between Ectoplasmic Jr and Ectoplasmic seemlessly.Everything I have listed that sets my game apart from other roblox games I have already scripted, and some of it will be showcased in more detail in the Ectobot section of my portfolio.