The official modules are ready-made parts for your games, such as pathfinding, inventories, quests, save games and camera rigs. They come with Blitz3D+, and each is written in Blitz3D+ itself, so you can read its code. They need Extended mode.
Import the module at the top of your program. As gives it a short name to use in your code:
Dialect "modern" Import blitz.tweening As T
Each module's page explains how to use it, and lists its examples: complete programs that you can open in the IDE and run straight away. The official modules are version 0.1.0 previews, so their commands may still change before version 1.0.
The modules all work in the same way. How Modules Work explains how, and the words their reference pages use.
See Modules in the Language Reference for how Import finds modules, and Organising Projects with Modules for writing modules of your own.
| Module | What it does |
|---|---|
Animationblitz.animation | Picks idle, walk and run animations from a character's speed, and plays one-off actions such as attacks. |
Camerasblitz.cameras | Follow and orbit cameras for third-person games, with smoothing, shoulder views, obstacle clearance and shake. |
Steeringblitz.steering | Seek, arrive, flee, pursue, wander and flocking movement for agents, as velocities your game applies. |
Tweeningblitz.tweening | Animates numbers, entity positions and alpha over time, with easing curves, repeats and sequences. |
| Module | What it does |
|---|---|
Dungeonsblitz.dungeons | Generates connected rooms, caves and mazes from a seed, all at once or a little each frame. |
Gridsblitz.grids | Square and hex grid coordinates, movement ranges, line of sight and fog of war. |
Mapletblitz.maplet | Builds interiors from carved and filled shapes, with Maplet+'s geometry: rooms, doorways, stairs and any convex shape, checked and saved as a model. |
Noiseblitz.noise | Seeded Perlin, value and cellular noise in 2D and 3D, with fractal layers and domain warping. |
Pathfindingblitz.pathfinding | Finds routes across weighted square grids or your own waypoint graphs, at once or a little each frame. |
Spatialblitz.spatial | Quickly finds the game objects near a point or within a box. |
| Module | What it does |
|---|---|
Decisionsblitz.decisions | Behaviour trees that decide what game characters do, with optional utility scores to pick the best choice. |
Randomblitz.random | Repeatable random numbers from seeded streams, with weighted choices, shuffles and encounter bags. |
Statesblitz.states | State machines whose states enter, update and exit, with state changes made safely. |
| Module | What it does |
|---|---|
Craftingblitz.crafting | Recipes, instant crafting and timed crafting queues that set aside their ingredients in an inventory. |
Dialogueblitz.dialogue | Branching conversations with choices, variables and effects that your game carries out. |
Inventoryblitz.inventory | Bags, item stacks and equipment slots, with safe transfers and reservations. |
Questsblitz.quests | Quests with ordered stages, objectives that run side by side, and rewards to claim. |
Cloud savesblitz.savecloud | Explicit cloud upload, import and conflict resolution for named local saves. |
Savesblitz.saves | Save games in named slots, with recovery from a damaged save and upgrades of old save formats. |
| Module | What it does |
|---|---|
Audioblitz.audio | A game audio director: sound variations, voice limits, music crossfades, intensity levels and playlists. |
Game UIblitz.gameui | Panels, labels, buttons, sliders and lists drawn inside your game's window. |
Input Actionsblitz.inputactions | Named actions such as "jump", bound to keys, the mouse and gamepads, for several players, with rebinding. |
Localisationblitz.localisation | Text in several languages by message ID, with placeholders, plurals and a fallback language. |