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

CRAB: Add engine #5229

Merged
merged 477 commits into from Aug 10, 2023
Merged

CRAB: Add engine #5229

merged 477 commits into from Aug 10, 2023

Conversation

hax0kartik
Copy link
Contributor

Hi all,

This PR integrates the CRAB engine made by Pyrodactyl Games in ScummVM, with the goal of supporting the game "Unrest" created by the same studio. Unrest is an adventure RPG that adapts to death, failure, and the choices you make.

I have tested and am able to play the game from start to end without any major issues.

image

The following list of things need to be improved or are missing:

  • Filenames are inconsistent.
  • Unimplemented "fade-in" effect of music.
  • Saving/Loading is only available through GMM load/save menus.
  • "Options" menu selectable from main-menu is broken.
  • Keymapper needs improvement to make the game fully playable using only keyboard.

Thanks!

Copy link
Member

@sev- sev- left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I completed my review

engines/crab/detection.cpp Outdated Show resolved Hide resolved
engines/crab/filesystem.cpp Outdated Show resolved Hide resolved
engines/crab/music/musicparam.h Outdated Show resolved Hide resolved
}

void scanDir() {
Common::String res = "CRAB_*";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mentioned that the savefiles are named UNREST.###. Is this a leftover, then?

}

void KeyBindMenu::initMenu(const int &type) {
warning("STUB: KeyBindMenu::initMenu()");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I understand, you rely on our keymapper. Should this be cleaned up, then? Or do you plan to connect them together, so they stay in sync?

engines/crab/ui/hud.cpp Outdated Show resolved Hide resolved
engines/crab/ui/map.cpp Outdated Show resolved Hide resolved
engines/crab/ui/map.cpp Outdated Show resolved Hide resolved
engines/crab/ui/textarea.cpp Outdated Show resolved Hide resolved
}

void saveState(rapidxml::xml_document<> &doc, rapidxml::xml_node<char> *root, const char *name) {
warning("STUB: Vector2D::saveState()");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unstub or cleanup?

@sev-
Copy link
Member

sev- commented Aug 10, 2023

Thank you!

@sev- sev- merged commit a85cd0f into scummvm:master Aug 10, 2023
5 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GSoC Part of a Google Summer of Code project
Projects
None yet
2 participants