What should the schema look like for an API-based SaaS product?

I’m building a developer tool product, which will be accessible solely by APIs. Following are a few features I’ve identified that will be needed:

  1. Issuing/refreshing API keys
  2. Purchasing API credits
  3. Subscriptions for API credits
  4. Monitoring usage of API for each user
  5. Deducting an API credit for each call

What all considerations should I take into account when designing a schema for this? Are there any open examples of schemas for such a product? Is there a term for this?

Note that this would be quite similar to what something like Stripe or any API-based SaaS is doing.

Calculating caster level when stacking metamagic feats for spell like abilities

Level 6 warlock is able to maximize as well as empower their eldritch blast in separate rounds. If a warlock wanted to stack empower and maximize in single round, how would you calculate required caster level. Also, what would be the earliest level a warlock can cast empowered-maximized eldritch blast in a single round?

How does an FPS like Overwatch have client time run ahead of the server?

In watching the GDC talk about Overwatch netcode, it mentions that the client is always ahead of the server, that the "current tick" on the server is behind that of the client.

From their explanation this makes sense. If the client is ahead of the server, then by the time the client messages arrive at the server, the server will have caught up and can handle them when it wants them.

But how does this get setup to begin with? The client connects to the server, the server starts a game… does the client jump ahead of it’s own accord? (Server says "game is starting, I’m at tick 0", and the client is like "okay, well, based on my ping I’m going to be tick 20 then")

  • If the server is in charge of what’s going on in the game, how does the client even know what’s going on in that future tick? I would assume constant extrapolation of game events from the last server update would be bad. Having the client in the past to allow it to interpolate between server updates would make a lot more sense to me.

  • Or am I wrong in assuming that client and server tick times need to remain in sync, and it is instead more loosely based on server updates and the number of client events that happened since that update was received, rather than the client actually caring about what tick they’re on compared to the server?

It’s the time/tick synchronization, despite one or the other having to be in the past, that I can’t wrap my head around…

Looking for 5e D&D module maker software like Neverwinter Nights [closed]

I’ve written some D&D 5e adventures, and I’m evaluating building them as a third-party (second-party?) video game module. Neverwinter Nights (NWN) from 2002 has the Aurora toolset which allows third-party module creation, but NWN is D&D 3e. Does anyone know of an existing or planned D&D computer game that has a similar module toolset? It doesn’t look as if Solasta: Magister or Baldur’s Gate 3 has this type of tool.

How does Maximize Spell Like ability feat affect items that boost your damage?

Assume a level 9 warlock has following damage dice:

-5d6 from base EB

-2d6 from Mortalbane (Feat, does not require CL)

-2d6 from Greater Chasuble of Fell Power (Item – Caster level 9th)

-2d6 from gloves of eldritch admixture (Item – Caster Level: 3rd)

Maximize spell like ability feat mentions:

The spell-like ability you wish to maximize can be chosen only from those abilities that duplicate a spell of a level less than or equal to 1/2 your caster level (round down), minus 2.

If this warlock wanted to maximize their attack using all of the dice above, would he have to re-calculate the Maximize Spell Level according to formula [(CL/2) – 2]? If that is the case, would you take the item that requires the highest CL or add up all the spells that requires CL (1 for EB + 9 for Chasuble + 3 for the gloves)