Start typing to search packages!
whim
By @th3pr0fessor
Roblox
MirroredWhimTune Framework
WhimTune is a modular, object oriented, data-driven framework designed for Roblox developers, inspired by The Sims' tuning system. This framework allows you to easily configure and control the behavior, interactions, and states of objects, characters, and environments within your Roblox games.
Table of Contents
Features
- Modular Design: Easily add or modify game content without altering core scripts.
- Data-Driven: Define behaviors, interactions, and states using Lua tables.
- Flexible Interactions: Create complex interactions between characters and objects with minimal coding.
- Autonomy System: Implement NPC autonomy based on traits and needs, similar to The Sims.
- Extensible: Designed to be extended with custom modules and systems.
Getting Started
Installation
-
Clone the repository to your local machine:
git clone https://github.com/YourUsername/WhimTune.git -
Import the cloned folder into your Roblox Studio project.
-
Place the
WhimTunefolder inReplicatedStorageorServerStoragedepending on your needs.
Basic Setup
-
Load the Framework: In your main script, require the
TuningManagermodule to access the framework's functionality.local TuningManager = require(game.ServerStorage.WhimTune.TuningManager) -
Define Your First Object: Create a new tuning module for an object, such as a chair, and place it in the
ObjectTuning.luafile.local ObjectTuning = { Chair = { Name = "Comfortable Chair", Components = {"seat", "comfort"}, Interactions = { SitOnChair = { Type = "Sit", Animation = "SitOnChairAnimation", Effects = { {Type = "CommodityChange", Commodity = "Comfort", Amount = 15}, }, }, }, States = { Default = "Clean", Broken = { Animation = "BrokenChairAnimation", InteractionsDisabled = {"SitOnChair"}, }, }, }, } return ObjectTuning -
Initialize Objects: Use the
TuningManagerto initialize the objects in your game.local chairTuning = TuningManager.GetObjectTuning("Chair") -- Apply the tuning to the in-game object
Tuning Modules
Object Tuning
Object tuning allows you to define the properties, interactions, and states of in-game objects. For example, a chair can have different interactions like sitting and different states like "clean" or "broken."
Trait Tuning
Traits define specific behaviors and buffs for characters. These can influence how characters interact with the world and other characters.
Interaction Tuning
Interactions control the actions between characters and objects, defining the conditions, outcomes, and associated animations.
Central Tuning Manager
The Tuning Manager is the core of the WhimTune framework. It loads and manages all tuning data, providing easy access to object, trait, and interaction tunings.
Autonomy System
The autonomy system allows NPCs and characters to make decisions based on their traits, needs, and available interactions, similar to the autonomy seen in The Sims series.
Contributing
We welcome contributions to the WhimTune framework! To contribute:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Submit a pull request with a clear description of your changes.
License
WhimTune is released under the MIT License. See LICENSE for more information.
Package Details
Install command (Click to copy)
Version
0.2.5
License
MIT
Safe for commercial use
The package archive does not include its license text; the license is declared in its manifest metadata.
Automated license review — not legal advice.
