Version 4.00
Another RPG Engine » Devlog
- The
isDoneproperty has been renamed toactiveand its logic has been flipped, e.g. situations that would have setisDonetotruenow setactiveto false. Apologies for any problems this causes, but it will make code clearer going forward for other initiative models. - Battle passages have been renamed for greater clarity and consistency. "Battle!" is now "Player Phase", "Preparation" is now "Battle Preparation", "end of round" is now "RoundEnd", and all phases are now capitalized.
- The
endOfRoundwidget has been renamed to "endTurn" for consistency withnewTurn. The existingendturnwidget has been renamed to "endRound" for clarity. - Code used in
newTurnandendTurnhave been compartmentalized into additional widgets to reduce code redundancy. This will also allow you to more easily implement these features in other contexts. - Characters will no longer regenerate HP if they are under a
healBlockeffect. - Energy stats have been made default properties of the
Actorconstructor, but they will only be defined if anenproperty is defined in the corresponding database entry. Default values can also be provided through thesetupvariablesMAX_ENandEN_REGEN. - Energy regeneration has been added as part of the core
newTurnwidget. If you want to opt out, simply deleteMAX_ENin your custom StoryInit section. - New action function:
cancelAction. It will remove the target's readied action if they have one. - New
Actorproperties: noENregen: Similar tohealBlock, it will returntrueif the character has an effect with the same property, and will disable Energy regeneration innewTurn. It will also returntrueif the character isdeador has noenproperty. The core effects "Winded" and "Petrified" have been modified to use this property.interruptGuard: Checks if character has an effect with the same property. If true, protects againstcancelAction.- Corresponding property getters have been added to the
Effectclass. - Action execution code has been compartmentalized for greater modularity. Pre-action code can now be found under the
preActionpassage, and post-action code under thepostActionpassage.custom end of action effectshas been renamedpostAction customfor readability and consistency with other custom passages. - Selecting an action now forwards the player to an "Action Handler" passage instead of directly to the action phase. This allows you to perform pre-processing and rerouting before executing the action itself. Currently, it exists to check for actions with
waitTimeunder the timeline model, and otherwise forwards the player straight to the action phase. - New
Actionproperty:base. This is a flat value added to an action's damage output, and is 0 by default. - Default damage formulas have been adjusted to incorporate
basedamage, and a new formula has been added that just uses base damage with no other fluff. - Action tooltips have been redone with snazzy images to convey important information. Images were taken from The Noun Project, with attributions listed on the game's page.
- The damage formula
switchnow converts the input to lower case before reading it. This avoids potential errors arising from mixed case. - Stat names have been standardized as part of a
STAT_NAMESobject, which is part ofsetup. - Stat minimums and maximums have been implemented. These can be defined in StoryInit as part of the
STAT_MINandSTAT_MAXobjects. Returned stat values will be clamped between these two values. - If exceptions are necessary, such as e.g. the Forsaken effect, a new
Actorproperty has been added:noMinimum. This is initialized as an empty array for all new Actors, and will ignoreSTAT_MINfor any stat names included within. In the core code, Forsaken has been modified to use this property instead of aforsakenflag. - Shorthand functions have been created for accessing
STAT_NAMES,STAT_MIN, andSTAT_MAX. Seesupport_functions.jsfor details. - The functionality of the "Protector" effect has now been generalized to a property, "
guard", that can be enabled in effect definitions. Iftrue, the target of the ability will be flagged as protected by the subject. - Instead of manually checking in both damage and effects, protection is now checked only once, in the "action effects" passage before an action is executed.
- Accuracy, shield, and multiple hit logic have been changed. An action's
actfunction is now executed once for everyhitproperty (default 1), and accuracy and shields are checked on every iteration. As a result, themultihitaction function has been depreciated. - Spread and noRedundant behavior have been changed to Action properties instead.
- New
Actionproperties: finisher: Function that executes only on the final hit of an action. Emulatesmultihit's previous rule for extensions (running only after all hits have been executed). Note that this finisher occurs instead of the regularactfunction.onMiss: Function that excecutes if an action misses. Increase the risk to your reward. Perhaps if your character attempts a bombastic jumping attack but misses, they land poorly and sprain an ankle?- Fixed an error in
Effect.calculatePower.
Files
rpgengine source.zip 6.5 MB
Dec 31, 2021
Get Another RPG Engine
Another RPG Engine
Engine for creating RPGs in Twine 2 and SugarCube.
| Status | In development |
| Author | Another RPG Enthusiast |
| Genre | Role Playing, Interactive Fiction |
| Tags | Game Design, Game engine, Minimalist, Singleplayer, Text based, Turn-based, Turn-Based Combat, Twine |
| Languages | English |
| Accessibility | Color-blind friendly |
More posts
- Version 6.00Jan 04, 2024
- Version 5.01Aug 27, 2022
- Version 5.00.1 hotfixAug 08, 2022
- Version 5.00: Inventory OverhaulAug 07, 2022
- Version 4.03Jul 16, 2022
- Experiment 03: It's About TimeJun 12, 2022
- Version 4.02.1May 26, 2022
- Version 4.02May 22, 2022
- Version 4.01Jan 31, 2022
Leave a comment
Log in with itch.io to leave a comment.