Prelude: A dream or two

Prelude Is My Most Ambitious Project ever, and my only ROBLOX game.
I Would Love Feedback on the Basic Mechanics and UX.
Sorry if there are really obvious mistakes! Started coding 2 months ago.
I Script, Animate, Make GFX and VFX. Please only provide Feedback I can use
Game Link:

Showcases:
Dash.wmv (1.9 MB)
Crouch And Slide.wmv (3.5 MB)
Settings Menu.wmv (2.6 MB)

2 Likes

im getting hints of underlying horror somehow, and my character is pretty big so maybe allow zooming in and out of camera a bit, otherwise it’s really well made

1 Like

Use MP4 format to post your videos.

2 Likes

I’m sorry I thought they were lol but I’ll make sure next time!

1 Like

Your correct! It kind of does underlying horror like bloodborne and Elden ring. I am unsure what to do with the character covering slot of the screen though lol will work on that

1 Like

do you have any idea where you are taking this game?

1 Like

Zero :sob:I’m thinking about a open world like Elden ring and progression like sekiro but besides that no idea

1 Like

i was thinking something similar to that like a nice calm game but has elden ring type bosses
if you have any questions on how to implement any of the features then do let me know and i will try to help

1 Like

I need some help with the combat system. I can make the vfx and have lots of sfx but I have no framework or idea how to make it. I’ve looked at open source battleground games and their code… sucks.
I like the combat in aetherfall battlegrounds and ultimate battlegrounds.
Love how the moves are animated with strong sfx and vfx.
Thinking about using wcs framework for just ability’s but idrk.

1 Like

i’m currently using wcs combat framework for my game, it’s nice and handles most of what you could need, ability usage, cooldowns, status effects, and if you use refx (created by the same guy) it just makes combat and vfx replicated so much easier
here is what this guy achieved with wcs and refx WCS - A combat system framework - #99 by Bartokens

2 Likes

welp since I got the notification, I’ll also suggest using WCS. I’ve been developing for over a year now, and I’ve tried making 3 different combat systems from scratch on my own. Let’s just say its not worth it unless you have a very high understanding of OOP concepts within studio. I wasted the vast majority of my development time making combat systems barely functional, which is why I still have yet to release my first game. So I highly suggest using WCS, as it handles essentially everything you could want within a combat system framework. And I would also recommend pairing it with refx, as it is like the most intuitive VFX handler on the server that I’ve ever seen.

1 Like

Thank you! But unlike Elden ring and sekiro I want a focus on complicated m1 system. Like different variations of the basic m1 combo and a down slam as well as a pounce etc kind of like mortal kombat
Going to start implanting wcs into my game.

1 Like

Thank you for the advice barto!
I love how your games combat looks
The ui Is nice as well
Do you mind giving me an example place of how to utilize it just to speed up progress?

1 Like

Unfortunately I don’t really have anything like that which I could share with you. I suggest just looking through the documentation and questions people have on the original forum post.

1 Like

No problem barto!
Thanks for your recommendation of WCS
Your game looks AMAZING by the way.

Thank you,

2 Likes

Hey Verm, been trying to set up WCS but my English is not great in terms of reading. Do you mind if you gave me the basic server side and client side setup?
I’ll figure out the rest it’s just annoying me.
Thank you,

1 Like

it’s pretty basic just to set up
server setup

local Players = game:GetService("Players")
local wcs = require(path-to-wcs)

local Server = wcs.CreateServer()
local Character = wcs.Character

Server:RegisterDirectory(path-to-skills)
Server:RegisterDirectory(path-to-statuseffects)
Server:RegisterDirectory(path-to-movesets)

Server:Start()

Players.PlayerAdded:Connect(function(player)
    player.CharacterAdded:Connect(function(characterModel)
        local wcs_character = Character.new(characterModel)

        -- you can use
        -- skillname.new(wcs_character)
        -- or wcs_character:ApplyMoveset() or wcs_character:ApplySkillsFromMoveset()

        local humanoid = characterModel.Humanoid
        humanoid.Died:Once(function()
            wcs_character:Destroy()
        end)
    end)
end)

client setup

local UserInputService = game:GetService("UserInputService")
local wcs = require(path-to-wcs)

local Client = wcs.CreateClient()
local Character = wcs.Character

Client:RegisterDirectory(path-to-skills)
Client:RegisterDirectory(path-to-statuseffects)
Client:RegisterDirectory(path-to-movesets)

Client:Start()

local function GetCurrentWCSCharacter()
    local characterModel = Player.Character or Player.CharacterAdded:Wait()
    if not characterModel then return end

    return Character.GetCharacterFromInstance(characterModel)
end

UserInputService.InputBegan:Connect(function(input,gp)
    if gp then return end

    if input.KeyCode == Enum.KeyCode.K then
        local char = GetCurrentWCSCharacter()
        if not char then return end

        char:GetSkillFromConstructor("skillname"):Start(args)
    end
end)
1 Like