Finish Your Game Jam Update


This page and post was made for the PIGSquad Finish Your Game Jam, and serves as a demo of this game's capabilities and current progress.

Psycho Stolen (tentative) is an RPG inspired but not beholden to Paper Mario, Chrono Trigger, and Dragon Quest.

One of the main design objectives for this game is to take a traditional RPG and simplify as much of what I perceive to be unnecessary and unwieldy for the scope of my game. I want to avoid adding stats to my characters like defense or agility which may make balancing hard to do, and leave mechanics like that to equip-able item effects. I also want to reduce time wasting aspects like stopping the player to pick up unimportant items and splitting party management operations across multiple menu pages.

All functions to Use, Discard, and Equip items to the player are in a single menu

Psycho Stolen has a traditional turn based combat system, but with two added twists:

  • Positional Combat.
    • Position is randomly determined with every battle using a set of rules that group enemies and allies roughly together.
    • Position has rigid restrictions such as LOS to every other character in the battle
    • Position will make certain attacks with AOE or Cone attributes more or less viable in different situations
  • Quick Time Inputs
    • Like in Paper Mario, you benefit from hitting button prompts on time with additional damage and other effects dependent on the attack.


This leads into some design and scope challenges, because attacks are more than just a damage number, I must dedicate a lot of time to designing interesting and engaging attacks that reward the player well for remembering inputs, I also have to organize my development of these attacks in a way that doesn't overwhelm me when this project gets to the scale that any other RPG will get: large.

To deal with the scope of building an entire RPG in unity, I've employed a Scriptable Object architecture with the aid of an open source package called Unity Atoms.

Attacks are stored as Scriptable Objects which store data such as damage, animation name, animation curves, and easing times. I then take that data, and instead of using Unity's keyframe Animator, I use DOTween Sequences and program out an animation that takes these parameters and plays them out in a controllable way. Using a tween instead of keyframes allows for programming an animation that works across any distance. Another advantage with using Sequences is that I can call any method during the sequence without using Animation Events, which are sometimes frustrating to assign in the inspector. The controlled sequential nature and callback functionality that DOTween provides will allow for much tighter control over animations than the Animator.

I can write a function to move a Transform in a parabolic shape and then call it during any animation

The next steps for future updates of this game is to finish programming the combat engine and its API. I must add API that can apply the effects of attacks and equip-able items, and I also need to come up with a system that will yield until the input prompt is a success or failure, as right now it's simply manually timing the button prompts, which is prone to race conditions. Building a combat system that I can be confident in its long term ability to support programming a wide variety of attacks is absolutely essential to completing the game in a timely way. Support for spritesheets is already in place, but I have not implemented it yet, which is something that I will need to do to make sure people are attracted to the visuals during early development.

Files

Psycho Sphere Alpha 0.1.0 43 MB
Nov 29, 2022

Get Psycho Sphere

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.