PDA

View Full Version : What is an Empty Ruleset



Nickademus
September 26th, 2015, 04:30
While I know that the CoreRPG ruleset is a great foundation to build a d20 ruleset from, I'm curious. What actually is in an 'empty ruleset': a ruleset that has no content and displays/does nothing but doesn't throw an error on startup due to missing resources? (The ruleset won't actually be empty since the application program requires some resources be present.) I guess the inverse of this question would be what does FG absolutely require to be in a standalone ruleset?

Trenloe
September 26th, 2015, 05:39
I'm confused what you're looking for here.

Do you mean a completely empty desktop? No buttons down the right hand side? Or are there some buttons that you want, but some that you don't? How far do you go to truly create an "empty" ruleset, and then is it pretty useless?

CoreRPG is really as close as you can get - with blank PC and NPC records, and a basic combat tracker to get you started. Do you want to remove all of that? If so, how far do you go? Do you then remove story entries? Dice? The Chat window?

And, re-reading your first line, I don't think that CoreRPG is just a foundation to d20 based games, it's a great foundation for most RPGs (with the odd exception of some dice mechanics).

Perhaps some context to the question might be handy?

Nickademus
September 26th, 2015, 06:35
You are confused, and that is probably my fault. I'm not looking for something handy or usable. I'm asking for reference, in a ruleset that is just a blank screen with no UI elements, no events, no desktop image. Just a black box in a window name Fantasy Grounds. If you try to make this, FG will throw a bunch of errors because there are actually components required (or assumed). My question is, what is there when all of and only these required elements are there.

The errors give some hints, some icons and fonts, maybe the chatwindow and hot bar elements. The root of the question is, what does the application program assume and try to interact with, and what is actually in the purview of the ruleset. For example, an empty ruleset seems to still require radial menu elements meaning the radial menus must exist in all rulesets. What else must exist?

dulux-oz
September 26th, 2015, 06:38
Actually, I think I get what Nick is getting at - I've been thinking along the same line for a project I'm going to tackle.

FG will run with just the blank Desktop: no Chatbox, no Menubar, no Hotkey Bar, no Dice, no Identities (top-left corner), no Modifier Box - but all you'll be able to do is close the software down, That's about as basic as it gets.

From a practical POV, you probably need the Chatbox and some sort of Menubar (or at least a Button of some sort) as the bare minimum, plus at least one Die. From there the Modifier Box is probably too handy not to have, and the Hotkey Bar is also very useful (but not essential).

BUT for an RPG then I think the CoreRPG is about the minimum you can practically get away with - and with the ability to use "delete" tags in the class/template definitions its certainly easy to get rid of things you don't need/want.

Have a look at the various "desktop" files - the ones with the panel and windowclass definitions - they're the ones that FG loads by default so they're the ones to look at to eliminate, if that's what you're trying to do

Cheers

Nickademus
September 26th, 2015, 12:21
FG will run with just the blank Desktop: no Chatbox, no Menubar, no Hotkey Bar, no Dice, no Identities (top-left corner), no Modifier Box - but all you'll be able to do is close the software down, That's about as basic as it gets.

I don't think this is entirely accurate. FG will start with none of these, but will throw errors to the console as it tries to load fonts and icons for some of these elements. FG assumes you will have some of these. But for the most part, you get what I'm asking. It was more a design question to Smite Works though. What did they program the application program to interact with upon starting FG. It is also interesting to see what a ruleset is not allowed to change in the application (such as radial menu defaults).

I guess I'm just curious what the lowest common denominator is among rulesets.

dulux-oz
September 26th, 2015, 12:25
I sort of assumed the including of some of the resources - sorry to mislead.

ut what I said is true - start with the "desktop" files and look at the various definitions. They'll also have a lot of the required resource references as well - not all, no, but a lot.

I've got to do it anyway so I might post here what is and isn't needed - when I get to that part of the the project, or course. :)

Cheers

Nickademus
September 26th, 2015, 20:48
That would be smashing. Nothing worse than being curious.

Moon Wizard
September 27th, 2015, 07:06
I would probably figure it out the same way; by starting with an empty ruleset, seeing what errors are generated, add the minimum to satisfy errors, and try again. It would actually be faster than reviewing all the code.

That said, the next version will support more global control settings, and will use defaultstringcontrol or defaultnumbercontrol as the fallback value for all font names.

Cheers,
JPG

dulux-oz
September 27th, 2015, 08:36
Ask and ye shall receive!

Here it is: what I've determined is the absolute minimum Ruleset code - its brutal, not pretty, and all you can do is Maximize/Restore the window and Close it, but it doesn't throw any Errors or Warnings

Enjoy!

Nickademus
September 27th, 2015, 11:40
Interesting. Your time will not be in vain.

dulux-oz
September 27th, 2015, 12:14
Interesting. Your time will not be in vain.

It never is :)

Nickademus
September 27th, 2015, 22:49
Yeah, that is pretty much what I came up with when I was looking through. I was afraid there might be more layers of components that would try (and fail) to initialize after the initial wave. It still seems odd to me that the application program tries to manipulate components without first checking if the objects they belong to exist.

Oh well. At least if someone wants to make a new ruleset that doesn't have certain features, they know now what resources they still need to include to prevent errors.