Jump to content

MCGUFIN

  • entries
    8
  • comments
    0
  • views
    146

About this blog

Monoman's Common General Utility Framework & Interface Node

(MCGUFIN or MGF for short)

 

Because MGF's application has become very broad I've decided to create this blog to serve a number of purposes: 

  • Introduce the various aspects of MGF in a more approachable fashion. 
  • Ease you in, hopefully without scaring the bejesus out of you. 
  • Serve as a sort of entry point lookup for MGF - "I'm looking for location information. Where do  I start?". 
  • Showcase the frameworks wide gamut of capabilities. 

 

I'll upload more stuff or flesh out the various existing sections as I go. 

There's still quite a bit left out at this point. I'll add more as I'm more confident in a feature or make it a bit more presentable/organized. 


Note: All of this is subject to change! 

Entries in this blog

LocOps

LocOps - Location Operations - The yellow pages of Skyrim.  Get information about the area you're in. The system is data driven and can be expanded via Json. I've already got one for JK's Skyrim. Multiple jsons are 'rolled together' for a complete picture.    Highlights:  Look up people by roles/location, Jarl's, Stewards, House carls, Court wizards, Inn keepers, blacksmiths, shop keepers, etc.  Respects civil war status.  Location agnostic. You don't need to

Monoman1

Monoman1 in LocOps

ConstructibleObject Functions

A pretty comprehensive array of ConstructibleObject functions.    Highlights:  Crafting event. Other mods have crafting events. This one includes the exact recipe used.  Find every recipe for an item or ingredient.  Recursively calculate what your ingredients can ultimately produce. Iron Ore -> Iron Ingot -> Iron Dagger.  Check craftability (what you can actually craft right now with what's in your inventory), includes perk and condition checks. 

Room Mapping System

Just wanted to show off a little something I've been working on. This is the Room Mapping system in MGF. Does what you think it does. What you see is the ActorRoomChange event being received which triggers a RoomMap() for the current room using static soul gems as navmesh vertex markers to visually define the room (for debugging purposes).    API surface thus far:    

LocTrack

A location tracking system with several layers:    Mcgufin player position tracking system.     There are 3 different player position tracking systems in Mcgufin you may find useful.          1. Cell change tracker:              Just a straight up cell change event. If you're using Mcgufin as a master and need cell change events then might as well use Mcgufins'.         It's implemented natively so no magic effect and no invisible object following you around.          

Monoman1

Monoman1 in LocTrack

Fork Pregnancy

Pregnancy Fork is an interoperability adapter layer that presents a single unified surface for modders to use.  Single surface interface to 2/3 backend pregnancy mods. Modders don't need to know anything about the underlying pregnancy mod a user has installed.    Another great feature of this approach is that expanding the system to include another pregnancy mod simply involves authoring a new backend interface. Once that backend interface is in place then any mod accessing pregnancy

Monoman1

Monoman1 in Fork Pregnancy

Fork Needs

Fork Needs is similar to ForkPregnancy - A interoperability adapter layer that presents a single unified surface for modders to integrate with.    ForkNeeds grants seamless access to Rnd, iNeed, Last Seed & Sunhelm without the modder needing to know or understand the underlying mod. Expanding the system to include another needs mod simply involves authoring a new backend interface. Once that backend interface is in place then any mod accessing Needs functions via MGF is automatical

Monoman1

Monoman1 in Fork Needs

Array Utilites

Massive library of native array functions and I'm still fleshing out types and adding new function types. There's so many now that I recently had to split _MGF_Array to _MGF_ArrayCreate, _MGF_ArrayEdit, _MGF_ArrayQuery due to function declaration overload...   Super boring but also extremely useful.    _MGF_ArrayCreate:   _MGF_ArrayEdit:    _MGF_ArrayQuery:       

Monoman1

Monoman1 in Arrays

×
×
  • Create New...