Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 3.0.0 #29

Merged
merged 471 commits into from
Jan 27, 2024
Merged

Version 3.0.0 #29

merged 471 commits into from
Jan 27, 2024

Conversation

castwide
Copy link
Owner

@castwide castwide commented Apr 8, 2023

Gamefic 3.0 is a major rewrite that includes a few backwards-incompatible changes.

Improvements

  • More reliable snapshots. The new snapshots reduce the "gotchas" involved in writing games that provde save/restore/undo features.
  • Better Opal compatibility. The opal-rspec suite ensures that the library works correctly in Opal environments, reducing unforeseen bugs in web-based game builds.
  • Improved action handling. Dispatching player actions is faster, more intuitive, and more configurable.

New Features

  • Modular architecture. The new scripting architecture makes it easier to manage shared features. Authors can include script modules into their own plots instead of adding script blocks to the base Plot class.
  • Less monkey patching. The modular architecture allows authors to extend game functionality without monkey patching existing classes and modules.
  • Entity seeds. Authors can create "static" entities with special script blocks called seeds. Narratives only run the seeds when a new instance gets created. Restoring a narrative skips the seeds to help ensure that the state of the game world in the snapshot is not changed erroneously.
  • New script methods. The base methods for creating actions, entities, scenes, and other in-game features have been streamlined for ease of use, including reduction of script boilerplate.

The gamefic.com guides are also being updated for v3 to provide up-to-date documentation and examples.

@castwide castwide marked this pull request as draft April 8, 2023 20:04
@castwide castwide force-pushed the v3 branch 2 times, most recently from 4f3d9bc to 1755532 Compare April 10, 2023 08:27
@castwide castwide marked this pull request as ready for review January 27, 2024 15:41
@castwide castwide merged commit 0662212 into master Jan 27, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant