This is a site for discussing roleplaying games. Have fun doing so, but there is one major rule: do not discuss political issues that aren't directly and uniquely related to the subject of the thread and about gaming. While this site is dedicated to free speech, the following will not be tolerated: devolving a thread into unrelated political discussion, sockpuppeting (using multiple and/or bogus accounts), disrupting topics without contributing to them, and posting images that could get someone fired in the workplace (an external link is OK, but clearly mark it as Not Safe For Work, or NSFW). If you receive a warning, please take it seriously and either move on to another topic or steer the discussion back to its original RPG-related theme.

D&D Virtual Table is dead

Started by Rum Cove, July 09, 2012, 11:15:37 PM

Previous topic - Next topic

estar

Quote from: StormBringer;559848Come on, this isn't like decrypting RSA messages.  The business logic can be recreated, and it's probably a good time to get rid of a bunch of cruft and streamline the processes anyway.  Hell, I would wager at least 30% of the core code functions haven't been used in decades anyway.

Decrypting RSA messages is easy from a design standpoint. The math may not but in the end what you have a stream of encrypted message coming in one end along with passing the private key and a decrypted stream of message coming out the other end. The number of interactions is limited and it is straightforward to test.

The problem with type of software that John is talking about it that it is a system with many elements that combine to make up what the company uses. There are thousands of interactions that make up the system and the increase in complexity is not linear but increases geometrically.

There is always cruft but it tangled up in hard won process knowledge. The cost of recreating business logic in anything but the most trivial example is always as least two orders of magnitude more than refactoring in incremental steps with stringent testing.

estar

Quote from: StormBringer;559848At any rate, this little nitpicking "prove StormBringer wrong" session is fun and all, but WotC has none of these problems.  It really doesn't matter if it costs a bank $33trillion dollars to install a CD drive, or if COBOL becomes the only computer language in existence tomorrow.  But these last few posts are demonstrating that inertia appears to be a much larger problem than programming languages or legacy systems.

Wizards problem is probably because Whiteboard software is one of those vertical market app that require highly specialized skills to do it right and they picked a programming team that started from scratch. Along with a moving setup of requirement starting with an overly ambitious initial set.

flyerfan1991

Quote from: jgants;559793No one upgrades an enterprise level software system to save money on programmer salaries.

Oh, I wish that were true.  I've seen enough evidence to the contrary in my line of work.

thedungeondelver

Quote from: StormBringer;559845Excellent.  I would like to see what you have in mind.

There's more I want out of it than just to duplicate the functions of the original DOS programs (but with mouse clicks).  Like, for example, I want the different methods of character generation (man sorting out roll 4d6 drop lowest die keep highest was a huge pain - Robert S. Conely wrote a code sample and let me use it).

I want the "Generating a party on the spur of the moment" system for creating a character at a given level - the DMA2 almost does it but it doesn't account for magic items.

Trying to think what else...I'll dig up my design document; it's been a few months since I looked at the project truth be told.
THE DELVERS DUNGEON


Mcbobbo sums it up nicely.

Quote
Astrophysicists are reassessing Einsteinian relativity because the 28 billion l

StormBringer

Quote from: thedungeondelver;560015There's more I want out of it than just to duplicate the functions of the original DOS programs (but with mouse clicks).  Like, for example, I want the different methods of character generation (man sorting out roll 4d6 drop lowest die keep highest was a huge pain - Robert S. Conely wrote a code sample and let me use it).
I've got that last one solved in a program I have been fiddling with.  Store each result as an array element, sum the whole thing, then subtract element
  • .

QuoteI want the "Generating a party on the spur of the moment" system for creating a character at a given level - the DMA2 almost does it but it doesn't account for magic items.
Adding appropriate magic items for a party sounds like a very interesting problem.

QuoteTrying to think what else...I'll dig up my design document; it's been a few months since I looked at the project truth be told.
Excellent.  Are you viscerally averse to C#?  Prototyping is easy, and throwing it on the web for stress testing is a breeze.  Java has waaay too much baggage for my liking, and the Mono framework does C# pretty well.  I haven't tried VB.net in Mono yet, but I can see how it goes if you are determined to use it.

Drop me a PM.
If you read the above post, you owe me $20 for tutoring fees

\'Let them call me rebel, and welcome, I have no concern for it, but I should suffer the misery of devils, were I to make a whore of my soul.\'
- Thomas Paine
\'Everything doesn\'t need

estar

Quote from: thedungeondelver;560015I want the "Generating a party on the spur of the moment" system for creating a character at a given level - the DMA2 almost does it but it doesn't account for magic items.

True so how do you propose generate magic items for a party? There were several methods in the DMG that one could choose from.

thedungeondelver

Quote from: estar;560197True so how do you propose generate magic items for a party? There were several methods in the DMG that one could choose from.

There were two for characters: one for when you encounter an NPC party and one for the spur-of-the-moment character creation (e.g., at a convention).

I use the latter's system to allow for whether or not PCs have any "relics" from home that they've inherited (it usually creates a set of +1 armor of a given type, a +1 ring of protection, a low-level scroll or potion).  Adds to starting character resiliency without introducing game-breaking levels of Christmas-tree syndrome.
THE DELVERS DUNGEON


Mcbobbo sums it up nicely.

Quote
Astrophysicists are reassessing Einsteinian relativity because the 28 billion l

Justin Alexander

Quote from: Opaopajr;558295I hope they weren't stupid enough to dream they could start it as a for-profit service...

They didn't need it to succeed as a solo for-profit service, but it was supposed to be a major tentpole in justifying and selling the D&D Insider service. The failure to deliver it in 2008 was crippling; the decision to shut it down now probably has as much to do with the eminent shutdown of 4E as anything else. (But also ranks as yet another horrid failure in WotC's inexplicable inability to deliver even the simplest of digital products without completely bungling it.)

I see that some people are arguing that VTT's are really, really difficult. But there are teams of two people who are turning out highly effective and fully-functional VTTs at this point. There's really no excuse for WotC's inability to execute this project. (Not to mention all of the other projects they've failed to deliver or delivered in a piss-poor fashion.)
Note: this sig cut for personal slander and harassment by a lying tool who has been engaging in stalking me all over social media with filthy lies - RPGPundit

Justin Alexander

Quote from: bryce0lynch;559565I also believe there's a quote somewhere from Ryan (or someone else at WOTC) that they never anticipated/intended the release of rule sets ...

Probably somebody else. On Usenet back in '99, Dancey was talking about having other companies release D20 games as a feature. (And it was a feature. It would have been an even bigger feature if WotC had followed through on the original business plan of re-leveraging the best OGC back into their products.)
Note: this sig cut for personal slander and harassment by a lying tool who has been engaging in stalking me all over social media with filthy lies - RPGPundit

Philotomy Jurament

#129
I wrote a basic dice-rolling DSL/parser library in Scala.  It lets you say things like:

"4d6 drop lowest"
or
"5d12 keep highest 2"
or
"2d6+2"
or
"2d6 + 1d3"
Et cetera

and have the library return the result.  Since it's Scala it requires a JVM, but is usable from pretty much any JVM language (e.g. Java, etc).  I guess it could be used with .NET if you use IKVM.
EDIT:  Actually, I forgot that you can compile Scala source code to target the CLR, so the code below could be compiled directly for .NET.

Posting the code, since it's short:

Die.scala
package com.philotomy.dice
import scala.util.Random

object Die {
  val Generator = new Random
}

case class Die(sides: Int = 6, modifier: Int = 0) {

  def roll: Int = {
    generator.nextInt(sides) + 1 + modifier
  }

  private def generator = {
    Die.Generator
  }

  override def toString = {
    if (modifier == 0)
      "d" + sides
    else
      "d%d%+d".format(sides, modifier)
  }
}

Dice.scala
package com.philotomy.dice
import scala.collection.mutable.ListBuffer
import scala.util.parsing.combinator.JavaTokenParsers

object Dice {
  // for testing/example of usage
  def main(args: Array[String]) {
    val dice = new Dice("4d6 drop lowest")
    println(dice roll)
  }
}

class Dice(val expression: String = "1d6") extends JavaTokenParsers {

  def roll(): Int = {
    parseAll(expr, expression).get
  }
 
  private def expr: Parser[Int] = (
    term ~ opt("""[\+-x\*]""".r ~ term) ^^ { case x ~ o => parseExpr(x, o) }
    | term)

  private def term: Parser[Int] = (
    wholeNumber ~ "d" ~ wholeNumber ~ opt("""(drop|keep)""".r ~ """(lowest|highest)""".r ~ opt(wholeNumber)) ^^
    { case qty ~ "d" ~ sides ~ mods => parseTerm(qty.toInt, sides.toInt, mods) }
    | wholeNumber ^^ (_.toInt)
    | "(" ~> expr <~ ")")

  private def parseExpr(x: Int, opt: Option[~[String, Int]]): Int = {
    if (opt.isEmpty) x else {
      val opr = opt.get._1
      val y = opt.get._2
      opr match {
        case "+" => x + y
        case "-" => x - y
        case _ => x * y
      }
    }
  }

  private def parseTerm(qty: Int, sides: Int, mods: Option[~[~[String, String], Option[String]]]): Int = {
    var rolls = new ListBuffer[Int]
    val die = new Die(sides = sides)
    for (i <- 1 to qty) {
      rolls += die.roll
    }
    rolls = rolls.sortWith(_ < _)
    //print("Rolls: " + rolls)
    if (mods.isDefined) {
      val o = mods.get
      val dropKeep: String = o._1._1
      val lowHigh: String = o._1._2
      val num = o._2.getOrElse("1").toInt

      dropKeep match {
        case "drop" => if (lowHigh == "lowest") rolls.trimStart(num) else rolls.trimEnd(num)
        case "keep" => if (lowHigh == "lowest") rolls.trimEnd(qty - num) else rolls.trimStart(qty - num)
      }
    }
    //println(" Kept: " + rolls)
    rolls.sum
  }
}
The problem is not that power corrupts, but that the corruptible are irresistibly drawn to the pursuit of power. Tu ne cede malis, sed contra audentior ito.

Justin Alexander

Quote from: estar;559558It took both, the OGL and the incompatible design. If 4.0 was similar in design like Pathfinder (i.e. a 3.5e variant) then it would be a vastly different situation. You would still have the retro-clones (including 3.5e) but it would have been far less impact.

Yes. The OGL created a vast pyramid of support material with WotC's books at the top of it. That entire pyramid funneled sales straight into WotC's pockets.

Other people had attempted to create products that directly competed with the core rulebooks of D&D. None of them succeeded...

... until WotC vacated the top of that pyramid. Once they did that, there was a vacuum. Paizo stepped in and filled that vacuum. And now all of that support material funnels up to them.
Note: this sig cut for personal slander and harassment by a lying tool who has been engaging in stalking me all over social media with filthy lies - RPGPundit

estar

Quote from: thedungeondelver;560203There were two for characters: one for when you encounter an NPC party and one for the spur-of-the-moment character creation (e.g., at a convention).

I use the latter's system to allow for whether or not PCs have any "relics" from home that they've inherited (it usually creates a set of +1 armor of a given type, a +1 ring of protection, a low-level scroll or potion).  Adds to starting character resiliency without introducing game-breaking levels of Christmas-tree syndrome.

Download and Install Inspiration Pad Pro 2.0 from Nbos
http://www.nbos.com/products/ipad/ipad.htm

In the folder where you installed it there is a generator folder. Download the following and unzip it into there.

http://www.batintheattic.com/downloads/AD&D.zip

Run Inspiration Pad Pro, select AD&D and pick Character Magic Item.

In the lower left corner select what level to generate.

Enjoy

P.S. I also coded up the Personae table from the DMG and then made another one that merged some Paizo Gamemastery NPC tables.

Aos

Quote from: Justin Alexander;560213Yes. The OGL created a vast pyramid of support material with WotC's books at the top of it. That entire pyramid funneled sales straight into WotC's pockets.

Other people had attempted to create products that directly competed with the core rulebooks of D&D. None of them succeeded...

... until WotC vacated the top of that pyramid. Once they did that, there was a vacuum. Paizo stepped in and filled that vacuum. And now all of that support material funnels up to them.

Honest question, is there still a lot of 3.x/d20 stuff/support material being made by third party publishers or whatever?
You are posting in a troll thread.

Metal Earth

Cosmic Tales- Webcomic

jeff37923

Quote from: Gib;560336Honest question, is there still a lot of 3.x/d20 stuff/support material being made by third party publishers or whatever?

There is a significant amount. Not as much as during the d20 glut, but enough to define a cottage industry.
"Meh."

thedungeondelver

Quote from: estar;560219Download and Install Inspiration Pad Pro 2.0 from Nbos
http://www.nbos.com/products/ipad/ipad.htm

In the folder where you installed it there is a generator folder. Download the following and unzip it into there.

http://www.batintheattic.com/downloads/AD&D.zip

Run Inspiration Pad Pro, select AD&D and pick Character Magic Item.

In the lower left corner select what level to generate.

Enjoy

P.S. I also coded up the Personae table from the DMG and then made another one that merged some Paizo Gamemastery NPC tables.

holy sheepdip this could be everything I'm looking for.

Where do you learn how to write the scripts?  I opened one up in notepad; it didn't look terribly difficult...
THE DELVERS DUNGEON


Mcbobbo sums it up nicely.

Quote
Astrophysicists are reassessing Einsteinian relativity because the 28 billion l