.url//GRAE
banner
grae.software
.url//GRAE
@grae.software
[GENERALLY RECOGNIZED AS ENTERTAINMENT]
http://grae.software

Currently making Tascots, a make-your-own desktop pet game!
It's necessary for sure but refactors that impact multiple systems are such a paaain nobody should make video games get out while you still can
November 13, 2025 at 6:57 AM
You can get the latest build on the backer discord via ko-fi.com/urlgrae !

TascotMaker2 is still being worked on, but the current build with TascotMaker1 still has lots of functionality to play with!
Support urlGRAE
Support urlGRAE
ko-fi.com
October 28, 2025 at 11:31 PM
This setup makes making new complex behavior easy, since it all starts with the FSM's flowchart and breaking down the specific actions from there.

TLDR FLOWCHARTS AND ABSTRACTION ARE YOUR FRIEND! /fin
October 26, 2025 at 9:49 PM
Each time a step of the flowchart is successful, the FSM asks the flowchart for the next step until the Motive is fulfilled.

If the motive is complete or wiped, the Tascot will pick a new one based on it's needs, environment, or personality!
October 26, 2025 at 9:49 PM
The Tascot is hungry, and it's spotted some nearby food! So the motive becomes EAT_FOOD_FROM_WORLD.

The MIND script sets the motive and then consults the FSM.

The FSM contains a flowchart for each behavior, and as long as the motive is set, it can check the flowchart to resume what it was doing:
October 26, 2025 at 9:49 PM
So the first step was to simplify and break up the FSM states into simpler, more specific behaviors (like HOLD and PURSUE)

Next I made their decision-making script save a MOTIVE, so they can repeatedly check on what they should be doing.

For example, Here's how they address being hungry:
October 26, 2025 at 9:49 PM
But this is very simplistic!

In the previous version, a Tascot was capable of getting food if they were hungry via MOVE, but this could be completely interrupted if they were grabbed or knocked out of MOVE.

This would require them to have to completely re-decide to find, pursue and eat the food!
October 26, 2025 at 9:49 PM
Firstly, Tascots use a Finite State Machine to drive behavior. It involves a parent "Manager" script and various child "State" scripts for each discreet behavior a Tascot makes.

These states define specific behaviors, and the Manager can switch between them. Like standing in IDLE or walking in MOVE
October 26, 2025 at 9:49 PM
Much obliged, kind skeleton
October 25, 2025 at 4:21 AM
there's a bug I didn't yet fix in this video I hope nobody points it out
October 7, 2025 at 12:41 AM
My project is still trapped in 3.2.1 so I still wrestle with this pain...
October 1, 2025 at 7:48 AM
Had a college buddy animate for them and he said their tech debt was outrageous.

They kept begging the higher ups for a chance to upgrade but they kept being forced to use extremely inefficient workflows 🤷
September 25, 2025 at 9:23 PM
Welcome aboard and enjoy! 🎉
September 21, 2025 at 9:39 PM