Are remote events a valid way to execute a turn based system?

Hello. While I do not have a script available at the moment, I want to ask what would be the best way to approach a turn-based system with a variety of mechanics. Here was my thought process initially.

A table would store current running battles, each with their own information. At specific times, a remote event/function would be triggered, editing the battle that the player was in via table, for example, switching the player’s position in the following turn, etc. Would this be a valid approach?

1 Like

Your idea appears to be pretty broad, but from the sounds of it, your approach is certainly one that could be done. The thing with remote events is that they are inherently meant to communicate over the client-server boundary, so you should be using them in cases where the server needs to tell clients to update something specifically. In the context of your idea, the remote event would be ideal if the “battles” you’re describing is mostly held via UI elements for each player. However, if the positions you describe are meant to be shown to everyone, a purely server-side approach might be ideal.

I’m aware that my answer might not be particularly useful as it isn’t really definitive, but if you had some more details to share about your project I might be able to provide some more specifics!

1 Like

I can share some of my plans if that will help! If so, this is kind of what I am wanting to include.

-Fluctuating turn order. Current turn and next turn order displayed.
-A guard mechanic. When the player is struck with a specific type of attack, their “Shield points” lower. Once depleted, they are unable to act for the following turns.
-Status effects that decay over each turn.
-Abilities
I’d list more, but I believe you get the point!

1 Like

Starting to make more sense! Is this game meant to be played by having players interact in the 3D space, or is it meant to be a GUI-based game?

1 Like

It’s going to follow a traditional turn-based system. A player selects from an action shown on screen and executes the action.

Alright, then from the sounds of it using a RemoteEvent to communicate to the server the player’s intentions as well as send any updates to the game state to each player would be appropriate!