The Mudlet Crucible
Posted: Thu Jan 14, 2010 6:33 am
I've been working on a personal system, but its not really designed to be a complete "system" in the general sense. Its more of a framework, to abstract common and useful needs into a library, to call and use as one sees fit.
Note, this is primarily designed for Lusternia, but there's no reason it can't be applied anywhere.
Its a meta-system, a set of tools meant to provide well-designed tools to individuals crafting their own needs and to larger systems to allow them to do things in a way which will interact with other systems in a well-defined way.
For example, queues are an important part of many systems; every system can re-invent the wheel, but then you can only ever have one in charge of 'what to do when you have equilibrium'. What if one person has a set of behaviors they want to activate when equilibrium is gained, and then adds another-- they'll step on each-other's toes.
The Crucible project is meant to be more of a foundation then a final product; or a tool for people to add things to an existing system in a well-defined way which is guaranteed to be compatible.
An example is prompts. There's countless things out there which respond to prompts, store variables, and react. I'm currently actively using three different projects which all respond to the prompt to store stuff in their own variables. That's not very ideal, its a duplication of effort and work. If a single prompt-handling system gathered everything and stored it, then raised an event-- everyone could do whatever they want when prompts happen and cooperate.
The types of tools I envision in such a system are, stat gathering (from prompt, score, and such), queue handling (any kind of balance, be it equilibrium, balance, arms, potion, etc), and a system for dynamic actions which are automated aliases which allow one to create commands for users in a way which is easier and automatically ties into the other properties that Crucible supports and tracks.
Is there any interest in others, in participating in this and doing this? If we worked on such a framework, would you be interested in using it as a dependency to your project to ease your life? Or would you prefer to roll your own?
Basically, "systems" have a lot of common requirements. Is there interest in the community in building a foundation together which handles the basic needs, which systems can build upon to provide real value?
If there's no interest, I'll still end up releasing Crucible. People can just incorporate the code they like, ignore the rest. But if there's interest, I'm interested in working with those interested parties in trying to find a best-practice solution to the common needs of system builders and casual users alike.
Thoughts?
Note, this is primarily designed for Lusternia, but there's no reason it can't be applied anywhere.
Its a meta-system, a set of tools meant to provide well-designed tools to individuals crafting their own needs and to larger systems to allow them to do things in a way which will interact with other systems in a well-defined way.
For example, queues are an important part of many systems; every system can re-invent the wheel, but then you can only ever have one in charge of 'what to do when you have equilibrium'. What if one person has a set of behaviors they want to activate when equilibrium is gained, and then adds another-- they'll step on each-other's toes.
The Crucible project is meant to be more of a foundation then a final product; or a tool for people to add things to an existing system in a well-defined way which is guaranteed to be compatible.
An example is prompts. There's countless things out there which respond to prompts, store variables, and react. I'm currently actively using three different projects which all respond to the prompt to store stuff in their own variables. That's not very ideal, its a duplication of effort and work. If a single prompt-handling system gathered everything and stored it, then raised an event-- everyone could do whatever they want when prompts happen and cooperate.
The types of tools I envision in such a system are, stat gathering (from prompt, score, and such), queue handling (any kind of balance, be it equilibrium, balance, arms, potion, etc), and a system for dynamic actions which are automated aliases which allow one to create commands for users in a way which is easier and automatically ties into the other properties that Crucible supports and tracks.
Is there any interest in others, in participating in this and doing this? If we worked on such a framework, would you be interested in using it as a dependency to your project to ease your life? Or would you prefer to roll your own?
Basically, "systems" have a lot of common requirements. Is there interest in the community in building a foundation together which handles the basic needs, which systems can build upon to provide real value?
If there's no interest, I'll still end up releasing Crucible. People can just incorporate the code they like, ignore the rest. But if there's interest, I'm interested in working with those interested parties in trying to find a best-practice solution to the common needs of system builders and casual users alike.
Thoughts?