Skip to content

Commit

Permalink
📝 doc updates
Browse files Browse the repository at this point in the history
  • Loading branch information
james-rae committed May 30, 2023
1 parent 7e506bb commit eb01c24
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 8 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

A homebrew attempt at recreating classic [Solforge](https://en.wikipedia.org/wiki/SolForge).

- [Play the game](https://grousewood-games.github.io/solforge/play/)
- Read the [Rules](docs/rules.md)
- [Play the Game](https://grousewood-games.github.io/solforge/play/)
- [How to Play](docs/rules.md)
- Additional [Info and FAQ](docs/faq.md)

## Current Release

### (Forge Guardian) Beta `v0.1.0`
### (Forge Guardian) Beta `v0.1.1`

- All cards in Sets 1 & 2 freely available.
- Constructed and Draft modes.
Expand Down
12 changes: 7 additions & 5 deletions docs/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,9 @@ Perhaps when I am "finished". Right now only the minified build will be public,

### Will You Implement Online Play?

Unlikely. Originally I focused on single player as I did not have permission to make this public (July 2022). When it was revealed that this type of thing would be allowed (April 2023), it became an option. I had some hesitation due to the effort level and the likely scenario that [nobody would play it for long](https://www.reddit.com/r/SolForge/comments/tiv839/what_would_it_take_to_get_you_to_play/). Shortly after (May 2023), Kaelari [announced](https://www.reddit.com/r/SolForge/comments/13c7ahd/kaelforge_a_solforge_revival_attempt/) he was ressurecting his own effort. He is the people's champion of Solforge (a title well earned through colossal efforts over years; I enjoyed many a tourny on `solforgeladder.com`), and his server kung-fu is better than mine. Competing with him seems a questionable time investment; there are a number of other projects I'm itching to get to. If he aborts his initiative, then I'll re-evaluate things.
Unlikely. Originally I focused on single player as I did not have permission to make this public (July 2022). When it was revealed that this type of thing would be allowed (April 2023), it became an option. I had some hesitation due to the effort level and the likely scenario that [nobody would play it for long](https://www.reddit.com/r/SolForge/comments/tiv839/what_would_it_take_to_get_you_to_play/). Shortly after (May 2023), Kaelari announced he was ressurecting his own effort. He is the people's champion of Solforge (a title well earned through colossal efforts over years; I enjoyed many a tourny on `solforgeladder.com`), and his server kung-fu is better than mine. Competing with him seems a questionable time investment; there are a number of other projects I'm itching to get to.

Here is a post containing links to play the current version of [KaelForge](https://www.reddit.com/r/SolForge/comments/13uukrm/kaelforge_set_1_and_15_done_you_can_play_solforge/).

### Does This Work On A Touchscreen Tablet?

Expand Down Expand Up @@ -102,7 +104,7 @@ Reports of incorrect text/stats on cards (or cards not doing what they are suppo

You can. I make no promises that it will get get done, but no harm in asking. Please review this FAQ and the [issue log](https://github.com/grousewood-games/solforge/issues) first as it may already be addressed. Give a :+1: reaction to existing entries you want. Otherwise feel free to [open a new discussion](https://github.com/grousewood-games/solforge/discussions), or message me about it if you don't have a Github account (see the [Contact](https://github.com/grousewood-games#contact) page).

### Do You Plan To Add More Cards
### Do You Plan To Add More Cards?

Yes! Would like to get them all implemented. Set 3 should happen for sure, barring any disasters. Shortcomings of the UI will likely be prioritized first (some Set 3 cards also require a discard picker which needs to be built).

Expand All @@ -122,11 +124,11 @@ Certain mechanics found in the original game have been slightly changed for my o

- `Lvl3 Lyria, Muse of Varna` now places creatures all at once, not in sequence.
- An example: if Lyria brought back four `Lvl1 Spring Dryads`, in the original game you would end up with a 4/4, 5/5, 6/6, and 7/7 set of Dryads. In this edition, you will end up with four 7/7 Dryads.
- Batch resolution is not randomized. The actual order is likely too convoluted to describe here, but it is deterministic.
- Batch resolution is not randomized.
- An example: a 5/5 `Lvl1 Spring Dryad` is on board, `Lvl2 Weirwood Patriarch` is forged.
- In the original game, the effect that triggered first was random. You could end up with a 6/6 Dryad or a 9/9 Dryad.
- In this version, the order will be the same if the initial conditions are the same. When I run out of real work I might attempt to distill the algo into something understandable.
- For the real keeners, the order likely depends on both creature position relative to each other, and which event gets generated first. In this case there is one event (Creature Enters), so Dryad to the left of WWP is _probably_ 6/6, to the right is _probably_ 9/9.
- In this version, the order will be the same if the initial conditions are the same.
- For the real keeners, actual order somewhat explained [here](rules.md#trigger-resultion-order). In this case there is one event we care about (Creature Enters), and Dryad had to exist first. Thus Dryad will always trigger second, resulting in a 9/9.
- `Brightsteel Gargoyle` does not change image when in defender mode. The amount of trickery to make this one card act fancy is currently in the "not worth it" pile.
- When playing `Metasight`, once a first card is selected for leveling, it is leveled. You cannot cancel back and re-pick as you can in most multi-select operations.
- There is currently no "sudden death" mode. If you both die and have the same health in death, you both win :trophy:.
Expand Down
16 changes: 16 additions & 0 deletions docs/rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,8 @@ Dinosaurs, druids, forest creatures, and very angry plants.

## Advanced Event Timing

None of the following is required to enjoy the game. However understanding the advanced quirks can help you determine if a certain actions will play out in the order you expect.

### Typicial Events

- Creatures entering the field, being replaced, being destroyed, or moving.
Expand Down Expand Up @@ -318,3 +320,17 @@ During battle, the activities are split into three batches. Death is checked at
3. A batch to process any death related events from the battle. Again, they apply even if the creature has been dead since the first batch. E.g. `Graveborn Glutton` killed in combat will perform its Vengeance damage in this batch.

Any new and unhandled events raised in the second and third batches are processed in a fourth batch, which is a normal batch.

### Trigger Resultion Order

The order in which triggers resolve is deterministic, but can be difficult for a person to track in more complex scenarios.

The primary determining factor is the order in which events entered the batch. This is not obvious since non-interactive and combo'd things happen in order dicated by the code. In our `Dreadbolt` example above, it is not clear which event is generated first (spoiler, it's the Creature Destroyed event). For spells, the Card Played event is typically last, and forging creatures the Card Played event is usually first. But there are many other permutations that I won't list out.

The secondary factor is the order creatures appeared on the board. On the same event, triggers on a newer creature will be processed before an older creature. Again, this can be difficult to track in cases with multiple Spawns.

The third factor is the order a creature gains triggers. This can matter when a creature has two triggers that react to the same event. As an example, if `Spiritflame Mystic` has `Shallow Grave` casted on it, and then dies later in the turn, will the resurrected Mystic get hit with the original Mystic's `Vengeance` effect? Triggers are also processed in a newest-first order, so in this case, yes. The Vengeance trigger was assigned at creature creation, the Shallow Grave was assigned on a later play.

Remember the three batch piles triggers fall into will also influence the order in which things occur.

The main takeaway is if encountering similar board state, the trigger resolution should be the same. Basic interactions can be predicted, complex cascades of triggers not so much.

0 comments on commit eb01c24

Please sign in to comment.