PDA

View Full Version : Ruleset creation timeframe ;)



LilCthulhu
January 11th, 2010, 19:06
Hi,

First I'd like to acknowledged the fabulous work done by SmiteWork and those who have been providing new rulesets since day one ;) Also, the invaluable support of some of the members here, especially Foen who seems to always have good pointers for the newcomers to the workshop, including myself ;)

The Base Ruleset created by Foen has been a lot of fun to work upon !

I've started working on the Cortex Ruleset about halway through december, there's been the holidays and I've got a young family at home (two kids under 7)... so there's not a lot of time spent coding. Being a software developer by day, I sometime get tired of being in front of a computer ;)

But none the less, things are going well so far. Cortex is dice-based stats and skills, so not lots of numberfield here, everything is almost redesigned from scratch ;) So far, the character main page, skills and feats are almost 100% done. Combat sheet being worked, etc, etc you know the drill...

I've tried to do everything with lot's of inheritance in the templates and the lua script files. This has saved me a lot of time / and code copying !

My main question here... for those who have created rulesets ? how much time have you spent coding per ruleset ? Was this all-day coding or only evening coding ? Was this only changes to an existent ruleset OR complete ruleset development from scratch (either foundation or base) ? Have you finished what you started ? Was it only the character page OR complete ruleset including combat tracker/module support (drag drop) ? etc...

I'd like to know what was it like for you ?

Spyke
January 11th, 2010, 19:15
The GURPS ruleset came together mainly in a period of about three months, when I had time to spend frequent full days at it, but the overall development before a reasonable release version took longer, perhaps about 9 months.

It's also really important to have a good playtester who can spot the bugs that you, as developer, are blind to. I was very fortunate that Demonsbane in particular took the time to test run all my updates.

The GURPS ruleset was based on the d20 ruleset at the time (this was before Foundation was created). I began by stripping out all the d20-specific code, then built up the GURPS versions for all elements bit by bit, starting with the character sheet, but then moving onto the NPC sheets, item sheet and combat tracker. The adventure notes and images weren't touched.

I've since gone back and reworked it so that as many of the files as possible now match Foundation, to make it easier to include any changes added by Smiteworks.

Spyke

Foen
January 11th, 2010, 22:53
I think it is hard to say how long a ruleset takes, as it tends to take as much time as I can spare. When time is tight, I focus more on getting a functional character sheet (just the fields for recording information, not any automation), and then I generally expand it piecemeal afterwards.

Items and images are usually fairly close the foundation and hardly need changing (although a lot can be done to enhance items and make them integral with the inventory, if you have the time and patience), NPCs are easier than the PC character sheet, and the combat tracker can be quite tough - especially as this is where you would run into potential race conditions (simultaneous updates by multiple users, which then clash) and infinite loops.

Graphics can also be a real pain, and can take a heck of a long time to finish (100s of individual pieces of artwork if you want to do a complete re-skin).

Finally, for a professional ruleset, converting the reference manual(s) is a very long and tedious task. I always promise myself 'never again' once I've finished a reference book conversion.

As I can't spend 100% of my time on ruleset development (I have a day job and RL stuff too), rulesets can take some months of elapsed time. A simple one (like Labyrinth Lord) might take me 6 months, and a fully-blown one (like Rolemaster or BRP) can take upto two years, even with other folks helping out.

Stuart

Valarian
January 12th, 2010, 08:56
As Foen says, a functional character sheet can take a few days of tinkering in the evening to bring together something that will allow you to play. An NPC sheet can quickly follow. It's the combat tracker, with its linking of PCs and NPCs and drag/drop functionality that is going to take the time.

I've mostly concentrated on character sheets myself, to get games up and running. I used to do more in my older rulesets, when I was running larger campaigns rather than one-off games.

I've just started my first professional ruleset, so I can't say yet how long it takes to produce that standard of work. Foen's experience in this area tells me a lot longer than I thought. I agree that modifying the graphics is a pain, especially as I'm completely artistically incompetent.

Brenn
January 14th, 2010, 04:30
I've been at my Reign/ORE ruleset for about 2 years, but that hasn't been steady during that time period RL and just needing a break now and again. And since my planning was poor out of the gate, I'm now on the first stages of totally restructuring the code.

The bulk of the time I have spent has been consumed by developing a good way to handle the One Roll Mechanics between host and clients. If it were simply a matter of something that could be handled somewhat close with the existing tracker, I'd probably be done by now.

Graphics are a huge pain and the actual GUI layout in XML is tedious as hell. Oh for a visual editor.

LilCthulhu
January 14th, 2010, 19:01
Thanks for all your replies, I find it interesting to see where others have gone through to do their ruleset ;) I'm not sure I want to tackle the combat tracker yet ;)

Could you explain the One Roll Mechanics ? and how it was difficult to implement it in your ruleset ?

The Cortex system has plot points which allow to buy plot dies, depending if the points are spent before a skill roll or after a skill roll... the plot dies applies differently... I found a way to implement it ;) but I'd like other pointers ;

Chris

Brenn
January 14th, 2010, 20:33
With ORE, as with say a Storyteller game, you have a dice pool that you roll (Stat+Skill usually). This is where it diverges though. You make sets out of the dice to determine success. So if your pool were 8 you might roll 2,3,4,4,6,7,7,7. The sets would be notated by their widthxheight. In the case of the prior roll it would be a 2x4 and a 3x7. The width (number of dice in the set) in most cases determines the timing of the roll (i.e. initiative) and the height (face value of the dice in the set) determines the quality. It goes on from there but that's the basics.

Now rolls can be manipulated during resolution, so you have to allow for that in the ruleset. Also there can be special dice that might be set to a specific value before or after the roll.

Also the waste dice (those not part of a set) in some cases can be used for other stuff.

EDIT:
To add (sorry was at work and had to make it brief): The main difficulty I had in implementation was the distribution of data. I wanted the clients to be able to modify their rolls (or at least have that option available at times). Also any changes to rolls needed to be pushed to all parties. Since the structure of the roll dictates a table, the construct is not compatible with the database so the built in ability to transfer and update data can't be used. I ended up writing a parser that would deconstruct any table into a string, then I sent the string down the chat interface (at this point I could have used the database- and still might try that) and reconstructed it on the receiving end. I ended up using this for more than just the one rolls. The parser itself is recursive so I was a bit worried about problems arising from that, but I haven't had any to this point.

Oberoten
January 14th, 2010, 22:58
Let see... I have been working on my Ars Magica ruleset adding features, removing some others, changing due to houserules etc for 3 years I think?

But then I am not a GOOD dev like some of the people around here, I am a mediocre programmer, but I am STUBBORN.

Of course I also tend to go away from programming and projects for long time-streaks since I get distracted by my job. (it finally opened up some time so I will put some work into Warhammer V 1.0 )

- Obe

Doswelk
January 15th, 2010, 18:49
The only rulesets I did were D20 Modern, and Arcana Evolved (with others). These of course were just hacked about with versions of the SRD ruleset.

The only real coding that needed to be done I could not get to work some it was farmed out to someone (I forget who now) to enable psionics/magic to fit onto the same FX page.

The graphics were not done by myself.

That said it still took some months (learning how not to break things to begin with) of 7-10 hours a week to get D20 Modern done (but that did include the MSRD or PDF conversion as well!)

These days I just crank out Savage Worlds books and Slipstream (still not released!) took me 12 months!

LilCthulhu
January 15th, 2010, 20:01
With ORE ...

EDIT:
...


Thanks for the explanation, I might be interested in taking a look at that part of the code eventually ;) seems interesting to see how everything is deconstructed and reconstructed in order to be displayed properly to the user...

If I understand correctly the distribution of those "die" ends up being similar to an histogram... am I right ?

LilCthulhu
January 15th, 2010, 20:02
Doswelk, thanks for sharing that info...

I understand what you mean by "break things to begin" and as of 7-10 hours/day, I wish I had that to spent coding... I usually end up coding around 10:00pm to 12:00pm ;) But each time I progress ;)

Brenn
January 15th, 2010, 22:26
If I understand correctly the distribution of those "die" ends up being similar to an histogram... am I right ?

Yep. Hopefully it won't be too terribly much longer before I have some kind of basic ORE stuff out there. But if you want to have a look at how I handled it I can provide it. There's probably much better ways to do what I did- I'm a very casual programmer, and I know that there might be localization issues with it because of some of the ascii control characters I used for the parser.