So Arena actually reads the literal card text, rather than you translating the card text into a machine-friendly set of rules? That's super interesting, any chance you could shed some light (or have written elsewhere) on what made you decide to do it that way?
So Arena actually reads the literal card text, rather than you translating the card text into a machine-friendly set of rules?
If by "you translating", you mean directly coding cards, this is correct.
That's super interesting, any chance you could shed some light (or have written elsewhere) on what made you decide to do it that way?
With 15 years of development on card games, it's not too hard to imagine in incremental improvements-
- Manually implement cards as code. (MTGO early days)
You get tired of doing boring work, so you move up to
- Template and generalize some of the manual coding up to a point with Regex + code generation. (MTGO modern days)
And that handles things like "Deal 1 damage to any target" or "Deal 2 damage to any target" just fine, but it doesn't handle stuff like "Deal X damage to any target, where X is the amount of damage dealt...
Read more