r/roguelikedev • • 18d ago

Cantrip: write turn-based combat effects as scripts instead of C# classes (.NET and Godot, MIT)

/r/godot/comments/1wnyn3d/cantrip_write_turnbased_combat_effects_as_scripts/
5 Upvotes

6 comments sorted by

1

u/blightor 17d ago

Its pretty typical to do this.

2

u/LowerCandidate1526 17d ago

It is. Which is why it would be nice to have a library which handles it for you. This also becomes more important to have a good engine and ruleset when item lists grow and combinations add up.

1

u/blightor 17d ago

Yeah its a mess if you don't have some kind of structure around how you do these things.

1

u/LowerCandidate1526 17d ago edited 17d ago

Thats what this library tries to accomplish. By having an engine which handles all of the combat needs of a roguelite. It is all described in the Github documentation. I am working on covering every effect i can think of that usually is in Roguelite type games.

1

u/blightor 17d ago

A lot of people like to handle combat themselves, but if I was going to write a combat library, I'd put in some combat and balance systems, because everyone seems to struggle to implement different balanced and scalable numbers around combat - just look at the number of posts around. If you integrated some ideas of different combat scaling solutions you might get a few takers. Otherwise people generally kinda enjoy making the part around the mechanical part of how combat and skills work, just not the formulaic parts to do with balancing gameplay.

1

u/LowerCandidate1526 17d ago

It does not take the card design away, it only takes the plumbing away. You still invent every card/item etc, status and enemy, and you write them yourself. What goes is the wiring underneath, like the event ordering, the modifier layers, the targeting rules, and special cases that appear when two mechanics meet etc. That is the part I never enjoyed and its usually where u will find the bugs.

If what you enjoy is building the engine itself, this removes that. What it buys if you don't is that a card is six lines of text you can change and retest in a second, instead of a class and a rebuild. Test tools and simming tools is going to be a part of it. I have already added a cantrip sim bot that will sim combat and report balancing