MCPcopy Index your code
hub / github.com/bladecoder/bladecoder-adventure-engine

github.com/bladecoder/bladecoder-adventure-engine @v4.4.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v4.4.0 ↗ · + Follow
2,967 symbols 11,711 edges 346 files 213 documented · 7%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Bladecoder Adventure Engine

The Bladecoder Adventure Engine is a set of tools to create interactive graphic adventures (classical point and click games).

I think that this type of games are a great medium to tell stories and mobile devices provide a big opportunity to rebirth and evolve them.

By creating the Bladecoder Adventure Engine, I want to create a platform to tell stories. Interactive stories with modern graphics, animations and music.

The Bladecoder Adventure Engine is composed of the following subprojects:

  • adventure-editor: the graphical editor for creating point and click games.
  • blade-engine: the engine to run the games created with adventure-editor.

The Bladecoder Adventure Engine has been developed using the LibGDX framework and the project generates a layout similar to any LibGDX project. This lowers the learning curve and eases development and deploy on several platforms.

Adventure Editor

The Adventure Editor is a graphical editor to create full point and click games with minimal programming.

adventure editor 2014-09-26

Blade Engine

The Engine has the following features:

  • Multi platform support: Android, IOS and Desktop (Windows, OSX and Linux)
  • Several animation techniques: sprite/atlas animation and Spine (cutout) animation
  • Multiresolution to deal with different densities and screen sizes
  • Multilanguage support
  • Use of the Ink language to create dialogs and puzzles easily.

The Goddess Robbery

The Bladecoder Adventure Engine is currently under continuous development and it's ready for production. The Goddess Robbery is a test game created to show the features of the Engine.

The source of The Goddess Robbery can be downloaded here and it's useful to learn how to use the Adventure Editor.

The Goddess Robbery is also available for Android devices at the Google Play Store.

The Goddess Robbery on Google Play

Documentation

All available documentation is in the wiki page. The documentation is not good enough and needs to improve, we are working on it. Meanwhile you can download and look into the test projects.

Download latest release

Check the release page to download the latest version.

For Linux users, there is a Flatpack package with all the dependencies included.

Download on Flathub

Building and running

In order to compile, build and run the engine, the Java platform is necessary. The project uses Gradle to build and package.

Build:

$ ./gradlew build

Run the Adventure Editor:

$ ./gradlew run

Create a distribution package for the Adventure Editor:

$ ./gradlew distZip

A zip package ready for distribution is created in the folder ' bladecoder-adventure-engine/adventure-editor/build/distributions'

License

The Bladecoder Adventure Engine is licensed under the Apache 2 License, meaning you can use it free of charge, without strings attached in commercial and non-commercial projects.

Extension points exported contracts — how you extend this code

VerbRunner (Interface)
Interface to define the methods needed to handle and execute verbs. @author rgarcia [6 implementers]
blade-engine/src/com/bladecoder/engine/model/VerbRunner.java
StartVisitor (Interface)
(no doc) [9 implementers]
adventure-editor/src/main/java/com/bladecoder/engineeditor/qa/StartVisitor.java
ITextManagerUI (Interface)
TextManagerUI draws texts and dialogs on screen. @author rgarcia [16 implementers]
blade-engine/src/com/bladecoder/engine/ui/ITextManagerUI.java
ActorVisitor (Interface)
(no doc) [6 implementers]
adventure-editor/src/main/java/com/bladecoder/engineeditor/qa/ActorVisitor.java
ActionCallback (Interface)
(no doc) [14 implementers]
blade-engine/src/com/bladecoder/engine/actions/ActionCallback.java
UndoOp (Interface)
(no doc) [39 implementers]
adventure-editor/src/main/java/com/bladecoder/engineeditor/undo/UndoOp.java
Action (Interface)
(no doc) [118 implementers]
blade-engine/src/com/bladecoder/engine/actions/Action.java
OptionsInputPanel (Interface)
(no doc) [11 implementers]
adventure-editor/src/main/java/com/bladecoder/engineeditor/ui/panels/OptionsInputPanel.java

Core symbols most depended-on inside this repo

equals
called by 310
adventure-editor/src/main/java/com/bladecoder/engineeditor/common/OrderedProperties.java
getText
called by 283
adventure-editor/src/main/java/com/bladecoder/engineeditor/ui/panels/InputPanel.java
get
called by 279
blade-engine/src/com/bladecoder/engine/model/UIActors.java
add
called by 267
adventure-editor/src/main/java/com/bladecoder/engineeditor/undo/UndoStack.java
setText
called by 183
blade-engine/src/com/bladecoder/engine/ui/ITextManagerUI.java
getInstance
called by 169
blade-engine/src/com/bladecoder/engine/assets/EngineAssetManager.java
getStage
called by 161
blade-engine/src/com/bladecoder/engine/ui/defaults/DefaultSceneScreen.java
getWorld
called by 155
blade-engine/src/com/bladecoder/engine/ui/SceneScreen.java

Shape

Method 2,572
Class 341
Enum 27
Interface 27

Languages

Java100%

Modules by API surface

blade-engine/src/com/bladecoder/engine/model/World.java75 symbols
blade-engine/src/com/bladecoder/engine/model/Scene.java56 symbols
adventure-editor/src/main/java/com/bladecoder/engineeditor/ui/panels/FilteredSelectBox.java49 symbols
adventure-editor/src/main/java/com/bladecoder/engineeditor/model/Project.java46 symbols
blade-engine/src/com/bladecoder/engine/ui/defaults/DefaultSceneScreen.java44 symbols
adventure-editor/src/main/java/com/bladecoder/engineeditor/common/OrderedProperties.java43 symbols
blade-engine/src/com/bladecoder/engine/model/TextRenderer.java41 symbols
blade-engine/src/com/bladecoder/engine/assets/EngineAssetManager.java39 symbols
blade-engine/src/com/bladecoder/engine/ui/retro/RetroSceneScreen.java37 symbols
adventure-editor/src/main/java/com/bladecoder/engineeditor/scneditor/ScnWidget.java32 symbols
blade-engine/src/com/bladecoder/engine/model/SpriteActor.java31 symbols
blade-engine/src/com/bladecoder/engine/ink/InkManager.java31 symbols

For agents

$ claude mcp add bladecoder-adventure-engine \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact