Chris Hopkins's Adventure Creation Kit v3.251 March 1, 2009 Release Notes ----------- Changes in v3.251: Fixed the sound-skipping problem! However it requires that your BMP and RAW files be named only with the number (no description), for example use 123.BMP instead of 123-fruitbowl.BMP. (The skip is caused by the directory search -- and the slower the drive, the worse the skip.) This patch will automatically fix the names in the U4PART2 adventure, if you have it. Sometimes a step-macro would trigger a screen refresh that was triggering another step macro. This should be fixed. The 'Use' command was triggering extra NPC moves -- they should only get one move after you 'Use' something, not two. Fixed. Both of the above fixes also end up fixing a number of screen-flickering problems. ----------- Changes in v3.250: Fixed another bug with dialogues longer than 255 lines. Made yet more fixes to the clock routines that would cause things like animation to freak out every so often when the clock would run backwards in DosBox. ----------- Changes in v3.245: Vehicle exit macros now support the "success" feature, and now allow you to check what's under you before you dismount w/ MAPCHK. Previously they would return the vehicle you had just dismounted, and would ignore the success variable. ----------- Changes in v3.244: Found and fixed a math bug with the % coverage of armor and the % usage of ammo -- values under 100% weren't working properly, now they should be. Note that this may change the difficulty of encounters, as overall armor will be much more effective now. There was a bug with portal triggering in room maps: portals should only be triggered when the player moves on top of it. Being placed there by another portal shouldn't do it, but in room maps it was. Fixed. ----------- Changes in v3.243: You can now set the sound volume during play: Press Control-V, and enter a number from 0 (mute) to 5 (full volume). You can also press M to toggle the music sound channel on/off. Toggling the music off no longer causes the engine to slow down. Certain IF commands would cause problems if the macro did not end with a "STOP". Fixed. SHOWBMP now will clear the screen if the new BMP palette is different, or not clear the screen if it's the same. This should reduce flicker. Sometimes attacking prompted you "select direction, or [D] to destroy". While that's the purpose of attacking, it wasn't supposed to say that. Fixed. Now only items with an action will show up in the "Use" list. (No more being given the option to "use" your arrows.) Portal macros that did any map edits would prevent the portal from working. Fixed. Region enter and exit macros couldn't make changes to the map. This should be fixed. Dialogues were messing up if they had more than 255 lines. Fixed. Dialogues were allowing you to manually enter queries like "(INTRO)". The player shouldn't be able to do that. Fixed. Removed the "press a key to continue" from look-triggered actions. If you want a pause, use an "examine" short message for the terrain. Trying to "get" from an empty space would cause strange things to appear. Fixed. ----------- Changes in v3.242: Fixed a bug with SETV in dialogues, it was sometimes setting variables to an incorrect value. Fixed a bug with picking up currency in worldmaps, it was always having you pick up "10" no matter how much was actually there. Made macro SHOWBMP sequences smoother, assuming they use the same palette from picture to picture. New feature to make transparent tiles easier: Alt-E will now auto-edge a tile. For example: take an old creature tile with a black background. Use Set/Replace to turn the black background to your mask color. Set color 1 to your "edge" color (whatever you want to outline the creature with, so it stands out from the background.) Now hit Alt-E, 1. It will outline the creature tile for you, so you don't have to do it by hand. Dialogue skins (and only these skins) now load that BMP's palette, instead of ignoring it like most skin files do. Now you only need to make sure all the text colors match in your game and skin BMP palettes. This should make portraits in dialogue skins (which was the original purpose) much easier. ----------- Changes in v3.241: Had to rewrite some code that handles very short delays, as the clock seems weird in DosBox: sometimes it runs backwards (this may be a synchronization with the host OS). Redid the "dot" and "ball" projectile animations, they look a lot smoother now. Creatures no longer increment the "aggro" counter (and trigger combat music) if they're hidden by opaque terrain. Picking up money in room maps now tells you how much you picked up. Made some changes to how creatures move -- you can now limit creatures to a particular terrain or make them fly (pass any SPACE terrain). Also fixed some bugs in the play engine related to creature movement. Adjusted the prices used by merchants: the "ripoff!" setting wasn't enough of a ripoff. Creatures no longer use area-of-effect weapons like they used to; there were too many conflicting issues with friendly fire, etc. They should still be constrained to the range, but the attack will now just show on the intended target. (I may fix this, or at least make them more visually spectacular again, in a later patch.) Updated the manual to reflect the new creature limits/options and new HELLO variable. ----------- Changes in v3.240: The big change in this version is to creatures and how many you can have: * Number of creatures (in creature editor) changed from 64 to 128. * Number of creatures active on map, per region, changed from 64 to 254. * Number of wandering creatures defined per region, changed from 32 to 224. Note that wandering creatures, when they spawn, have to be added to the "active creatures" table, and if there's no room there, they won't spawn. Some other changes: Added another text report export, this time to the map editor. Useful for seeing how you're doing on portals, creatures, and wandering creatures -- not to mention being a quick place to check things like "what music do I have in all my regions?" Fixed a bug with the room map editor not displaying the "set later" tiles correctly. The "Options" section in the map editor is now just 'O', instead of 'Alt-O'. Same with "View", for worldmaps. Increased the light range of the "torchlight" action slightly. Made another attempt at fixing the clock issues (occasional animation freak-out, etc.) I think it might be fixed this time. There were a few (rare) situations where you could step on creatures. They complained, so I fixed it. If a creature doesn't have a clear shot to its target, it won't even try. This fixes an issue where creatures who couldn't possibly hit you (on the other side of a wall or locked door, and not even visible) would still slow the game down by trying to take that shot every turn. This also effectively means that NPCs will no longer shoot (and potentially destroy) objects that you're hiding behind. If there was a project to port Space Invaders to ACK, I just broke it. ----------- Changes in v3.234: Fixed an issue introduced in 3.233 (creatures started shooting themselves) and also made an improvement to NPC AI: now a creature will always shoot, if they have a ranged weapon and a target but are unable to move. Before, it would decide "will I move or will I fight?" and then would stick with that decision, even if it meant doing nothing if the attempt to move was unsuccessful. This will result in creatures shooting more often than they used to, so you may want to re-check the difficulty of some encounters. ----------- Changes in v3.233: * The difference between obstacles and spaces is now as described in the manual: obstacles now always block talking and shooting. Previously you could shoot through obstacles if they were transparent, this was a bug. Also: added the ability to talk to someone on the other side of an opaque space. * Added a new macro variable array: HELLO[d], where d is a dialogue number. Allows you to set or check the "hello" setting on that dialogue, which determines how the conversation starts. Typical values are 0 for (INTRO), for someone the player has never spoken to; 1 for (HELLO), for someone the player has already spoken to; and 2 or 3 for (BEGINQ) or (ENDQ), typically set by BEGINQUEST and ENDQUEST dialogue commands. Too limiting? Now higher values will load a dialogue into topics (H4) through (H255). Note of course that a single dialogue can't have that many topics. An example of this feature in use: an NPC with dialogue 25 normally loads (INTRO), which says "Hi!". You kill his dog, which has a death macro that does: SET HELLO[25]=4. Now talking to him will load topic (H4), which says "I no like you, you kill my dog!" and does a TERMINATE. So he won't talk to you anymore because you killed his dog. * The game now makes an effort not to give you the same "smalltalk" response twice in a row. * Fixed a bug with transparency: sometimes it was active even when it shouldn't be. * Also fixed some more keyboard buffer issues, and a minor bug with the merchant editor. ----------- Changes in v3.232: Fixed a bug with transparency: certain things would show up even if they should have been hidden by "opaque" terrain. The illumination range for "lightsource" terrain has been increased from 1 to 2 squares. ----------- Changes in v3.231: New operators for macros: & (and), and | (or). Useful for bitwise operations, allowing you to store lots of yes/no values in a single variable. For example, "SET A = A | 64" and "IF A & 64 THEN..." Macros now clear the keyboard buffer when they start, and then whenever they call for a keypress. This prevents situations where the player was holding a key down (to move, perhaps) and a macro happens, but flies past too fast because the macro used PAUSEK for pacing. The manual has been updated to describe the new "transparency" feature. ----------- Changes in v3.230: Transparency is here! You can now select a "transparency" color that, for items and creatures (and the player icon) will now display the underlying terrain graphic instead. This is an optional setting. To turn it on, select a color in the graphic tile editor's color chooser, and press Alt-T. You will be asked whether you want to enable transparency using that color: press Y to turn it on. (Or press N to turn it off.) That color now becomes the mask color -- it will show in a checkerboard pattern to remind you that it may be transparent. If there is a stack of items, then you will see the top item with the terrain graphic under it, you will not see items within the stack. For terrain graphics, if you are using the mask color it will still show as a normal color; terrain is not transparent. Three places where transparency *doesn't* work: First, transparency does not appear in the map editor. You will see the tiles just as they appear in the tile editor. Second, transparency does not work over the new "set graphic later" objects introduced in v3.220. Third, animation works with transparency (assuming all the frames have the mask color set) BUT animation will be disabled for "darkened" tiles if you use the transparency feature, they'll be transparent but non-animated. ----------- Changes in v3.221: * Instead of just having "the saved game", you now have 9 slots in which you can save/load "the saved game," and even give it a short description. If you had a game already in progress before this patch, you'll find that saved game in the "quick save" (slot 0). * Yes, these new "save game" and "load game" screens are skinnable. Look at ACK\SKINS\SAVEGAME.BMP and LOADGAME.BMP. Copy these to your adventure folder and edit them if you want to customize them for your game. * Note that one of the "cheat" features, namely the ability to edit maps and player data of the game in progress, will only edit the quickslot saved game. So if you want to use this, make sure to first save to (and load from) slot 0. * The "Delete saved game" feature (under the import/export module) now deletes all saved game slots too. * The promise of "Those new tiles will show up in the map editor..." from the last patch has been made good. No more question marks all over the place, everything should show up properly in the editor. ----------- Changes in v3.220: More useful tiles! What I've done is add an option for normal spaces and obstacles where you can set the graphic tile to "Set when placed". Then each time you place the object, you will be prompted for a tile to use. The tile must come from the "secondary" (formerly called "animation") set. I'm using this set because most of it is typically unused. What this means is that you not only have 100-200 more tiles to play with, but you can potentially play with them all by just creating one new object. For example, an Ultima game could have words on the shop counters (like in Ultima II through IV) and you could do this by just making one object and then using up tiles that would have gone unused otherwise. Fun! But there are two limitations: The first is that these objects can't be animated. The second is that they currently don't show up in the map editor (well, they do, as little question marks) although they do show up properly during gameplay. Expect that second issue to be fixed in the next patch. Some other minor changes in this patch: * A few minor bug fixes to the player and the macro editor. * Replaced the "show player handbook" option (seems silly now) with a "about this game" option, which appears if there is an ABOUT.BMP file in the game folder. This shows at the same menu as the "start new game" or "continue saved game" options. * Macro export wasn't exporting macros longer than 64 lines. Fixed. ----------- Changes in v3.217: * Added a new macro variable: LASTMOV. Returns the last direction the player tried to move. (1-4, N/S/E/W). Useful if you have something like a portal that would behave differently if you entered from different directions. * The "Inventory" screen in the player has been rewritten. It now shows weapon damage, armor value, and item description (if you've set an "examine" message.) * Room map editor now shows X,Y location. ----------- Changes in v3.216: * Bug fix to macro editor: the cut/paste options were sometimes causing macro lines to be orphaned. Fixed. * Fixed another bug with the macro map editing commands, where locations off the screen (but within the section of map loaded in memory) weren't working. Fixed. This means that in a 32x32 map, any location can be edited from anywhere. For anything else, just playtest it with the adventure in "debug mode". If the location is too far away, it will say so in the log. * Fixed an old bug in the map editor where "tab" would change the coordinate display. Fixed. Tab now does data-sync, and backspace now changes the coordinate display. ----------- Changes in v3.215: * Added a "NO DROP" setting to items. Just enter the weight as "00" and it will give the item a weight of zero, and "NO DROP" status, meaning the item will not show up in the list when the player uses the "drop" command or tries to "sell" to a merchant. Macros, dialogues, or actions can still cause the loss of the item, but this allows you to prevent plot-critical items from being accidentally lost or destroyed. * There were bugs with the (BEGINQ) and (ENDQ) dialogue topic feature. Fixed. * Fixed a bug with the macro map editing commands: certain locations relative to the player's position weren't working correctly. Fixed. ----------- Changes in v3.214: * The handling of the "Death macro" has been improved (and in the config editor, enabled. Oops.) It's now possible to have the death macro "resurrect" the player and transport them to another place. * Minor tweak to the dialogue processor: the up/down arrow keys now cycle through your previous queries. * New "passable to" settings for terrain: "If variable is/isn't zero". You can now use all 52 variables (A-Z, A2-Z2) to determine if a door (or whatever) is passable, instead of just A-D. * Fixed the table of contents in the manual. ----------- Changes in v3.213: * Improved the dialogue ITEM-TAKE command, to allow specifying an amount (up to 9999) of money to take. (Note it will show up as "CASH-TAKE" after you set the amount.) * Added an "append" key (Alt-A) to the dialogue editor, so you can add lines to the end now. Finally. * Fixed some alignment issues with the SAYVAL macro command. ----------- Changes in v3.212: * The (HELLO) dialogue feature still wasn't working quite right, especially through a game save. Fixed. ----------- Changes in v3.211: * Fixed a looping problem with music track #53. * Fixed the display bug with scrolling dialogues. * Fixed a bug that didn't allow you to create the (HELLO) dialogue topic. * Fixed a bug that made highlighted words unreadable in the dialogue export. ----------- Changes in v3.210: * Normalized the volume on the Ultima music. Some were too quiet, some were too loud -- fixed. * When placing a portal, the location chooser now shows a mini-preview when choosing a location in a worldmap. * Cursor location when choosing where to start editing a worldmap was crazy -- it's not perfect yet, but it's slightly less crazy. ----------- Changes in v3.209: * Macro teleportation via the "use" command was not working properly in some situations. Fixed. * You can now have up to 999 short messages, but messages 256+ are only accessible to macros. ----------- Changes in v3.207: * Custom terrain objects were not working properly if triggered by the "look" command in room maps. The previous fix didn't fix it. Fixed the fix. * Look command would see "nothing" on worldmaps sometimes because it was confused about which squares were being masked by "opaque" terrain. Fixed. * There were situations where creating a portal with MAPSET could make a macro reference an invalid portal number. Fixed. * If you have an adventure in DEBUG mode, the .LOG file will now reset each time you launch the player. Previously they were growing to unmanageable sizes. * Pressing arrow keys at the main menu of the worldmap editor would do strange things. Fixed. * Fixed some bugs in the macro editor (like the ability to delete a line in a one-line macro) ----------- Changes in v3.206: * Fixed several bugs with the "Drop" command. You can no longer drop things onto opaque spaces to see through them. * The MAPCHK command was not working in room maps. Fixed. * The macro editor still had a display bug where IF statements didn't display properly. Fixed. ----------- Changes in v3.205: * Actions can now trigger dialogues. * When selecting actions in the object editor, you can now enter the two-digit number. For example, instead of having to scroll all the way from "do nothing" to "run macro", you could just hit "37" and it would go there. Action numbers are in the manual, in the "object editor" section. * Macro syntax change: if you omit the destination line for an "if" statement, it will execute the following line if the condition is true, or skip it if false. So the following usage is now permissible: 1 IF A = 2 THEN 2 SMSG 16 3 ...execution continues You can also nest them: 1 IF A = 2 THEN 2 IF B = 1 THEN 3 SMSG 16 4 ...execution continues Always try to have a command (even if it's just "STOP") after the command used by the "IF" line, so when the execution leaps over that command, it has somewhere to land! * New macro command: GETADJ. Prompts for a direction (via arrow key) and then sets two variables with the X and Y coordinates of the map location adjacent to the player in that direction. Takes an optional 3rd argument, that tells it what to do if the player presses the ESC key. (If 0, it will abort the macro; otherwise, it will GOTO that line number.) For example, you could have the "use" of a lockpick item prompt the player for a direction, and then if there was either a #18 LOCKED DOOR or a #26 LOCKED DOOR at that spot on the map (let's say you have two different types of locked door, because they take two different keys) it would replace it with #31 DOOR. The macro might look like this: 1 GETADJ X Y 0 2 MAPCHK X Y M 3 IF M = 18 THEN 4 MAPSET X Y 31 5 IF M = 26 THEN 6 MAPSET X Y 31 7 STOP Before these macro changes, a macro to do this would have probably been about 30 or 40 lines long! ----------- Changes in v3.203: * The "room placement" tool in the map editor has been rewritten. You can now place room corners in any order. Several bugs have also been fixed, and it looks better now, too. * The "room delete" option in the room layout editor has been re-enabled, and several (hopefully all?) room data corruption errors have been fixed. The bad news is, some of you may be working with room maps with data corruption issues. To address this, the room delete tool now does a "sanity check" on your region data. If you want to perform this test on your existing regions, just go into the "room delete" option. (You can always press ESC when it asks which room to delete.) It will scan for duplicate pointers and delete offending spots, so you may end up with holes in your map. If you want to see this tool in action before you try it on your own maps, try it out on the "ROME" region in the CARAVAN adventure, it has a few errors. Note that this tool creates a "REGIONx.LOG" file in your adventure folder when run. If you have recurring corruption problems, I'll want to see this file. ----------- Changes in v3.201: In addition to a brand new TUTORIAL adventure, there were several enhancements to dialogues and macros for this version: * Entering a blank query no longer quits a dialogue. It was too easy to accidentally end conversations. Now use the ESC key, or 'BYE'. * In addition to the (INTRO) topic, you can now also have a (HELLO) topic which will be used instead if the creature has already met the player. You can also have (BEGINQ) and (ENDQ) greetings that will give an alternate intro if these flags are set by the BEGINQUEST and ENDQUEST dialogue commands. For example, you could have someone greet the player with: "Hi, my name's Bob! Nice to meet you." or "Hello again." or "Hi there. Do you have my drink yet?" or "Hey buddy, good to see you again. Thanks again for that drink." as appropriate, without having to use macros to do it. * If you play a new music track during a dialogue, it will automatically end it (and restart the region music, if applicable) when the dialogue finishes. * The macro editor is now easier to use. Editing a line doesn't erase it, and there are new keys: Del (erase line), Control-C (copy line), Control-X (cut line), Control-V (paste line). There were also several bug fixes, mostly to do with how actions are processed. Events that previously didn't show up right away (like map changes) should now show up properly. Creature summoning should also be working (at least in more places than before). ----------- Changes in v3.10: * New sound engine! Now all ACK sound is done with .RAW files: these are headerless, 8-bit signed, 11025Hz sound files; there are several free programs available that can convert other formats (WAV, MP3, etc.) to this new format. ACK comes bundled with the Windows command-line versions of SoX and LAME, and some scripts to make the conversion process easier; see the manual for details. Unlike the previous sound formats (VOC, CMF, MP3, WAV, OGG), which had to be carefully used based on their various and often severe limitations, .RAW sounds in ACK can be used for anything: sound effects, music tracks, even spoken dialogue. They don't pause the game during play, multiple effects can play simultaneously, can loop (for music), and they can be as long as you want. This change required that the old formats no longer be supported (it wasn't possible to run both engines) but most of the previously bundled sounds have been converted. Other changes: * A rudimentary "patching" engine was put in place, so that in the future you will be able to apply ACK updates by just throwing a single file into your ACK folder, and letting the game do all the work. * "Small talk" dialogues, allowing easy creation of NPCs that give random quick responses like "Some weather we're having!", have been implemented -- see the manual for details. * New macro commands (MAPSET, MAPADD, MAPTAKE, MAPCHK) allow macros to directly manipulate data on the map. * The map editors now show a mini-map when you are looking at the overall layout for the region (useful for seeing the contents of rooms or giant worldmaps at a glance.) * The object editor now allows you to set the mini-map color for each object, so you no longer have to live with psychedelic mini-maps. * You can now convert regions freely between custom and standard worldmap mode. * The sounds from the Ultima kit were moved from the kit to the main sound index, meaning you can now use them from any adventure, not just the Ultima kit. A few more sounds were added as well. * New commands have been added to the dialogue editor to take advantage of the new engine: SOUND and SONG. Both use the same sound pool, the difference is in how they are played; the manual has details. * Map editing is slightly easier: When you press Alt A-D to set the drawn objects, the "object chooser" now starts the selection at whatever your map cursor is floating over. So to "pick up" the object type you're hovering over, just press Alt-A, Enter. * Control-V can now also mute music or sound during play. With all this extra sound being thrown in, I figured I owed everyone an easier way to shut it up if desired. (The debug-mode option to set variables was moved to control-P) * Combat speed (the speed at which messages play, projectiles travel, etc.) can now be adjusted with the + and - keys. * Control-L (playtesting command) now gives you the location in SETPORT format too. * There was a bug with spells that let you fire weapons -- certain terrain actions could interfere with their functioning. This should be fixed. * Maximum range was being ignored by NPCs, but minimum range (which has been eliminated) was still being enforced. Both should be fixed. NPCs will now attack point-blank with their ranged weapon unless their melee weapon is better. * "SOUND 0" in macros was not working properly if called early in an adventure session. Fixed. * Terrain can now have "death macros" similar to creatures, where they run a macro if they are destroyed by an attack. This is independent of whatever other actions the terrain may have. * The view-radius was not returning to normal if you exited a dimly-lit region, if the "day/night" setting was turned off for the adventure. Fixed - the "outdoor" setting now assumes full daylight if you have the day/night feature disabled. * When creatures die, item loot can now drop with a configurable random chance, instead of always dropping. Currency and terrain remains still always drop, if set. * Macro IF statements can now perform a "not equal" comparison with "!". * Macros over 64 lines weren't running properly -- fixed. * The LOC[X] and LOC[Y] variables were not working in room maps. Fixed. * Vehicle exit macros can now set the VEH variable to put the player into another vehicle. * Many bug fixes to the ULTIMA kit. ----------- Changes in v3.03: There was a bug with a file copy routine, causing large map sizes to not work properly during play. Fixed. ----------- Changes in v3.02: A missing file in the ULTIMA kit was causing the kit import (non-launcher) to crash. Kit import through the Windows launcher was not affected. Replaced the missing file, and changed the kit import to handle these problems more gracefully. Fixed a money exploit with the drop command. It's still a little crude (the map only lets you drop currency in multiples of 10) which means sometimes you can't drop ALL your money, but the exploit is gone. Clarified the wording on room creation so you know to select the top-left corner first. Fixed some issues with the TAB-key sync (Maps weren't saving from the map editor, creatures weren't loading in the object editor) Added a Tutorial walkthrough to the manual. Improved the Moongate instructions in the "tips and tricks" section of the manual, and added the macros to the ULTIMA kit. ----------- Changes in v3.01: The new "touch macro" creature feature wasn't properly initialized for all the kits and games, so they were running touch macros when they shouldn't have been. Fixed. And if you have a game where you need to apply the same fix, entering "000" for the touch macro number for any creature will reset it to 0 for ALL creatures. ----------- Changes in v3.00: Thanks to Joshua Lawrence, for extensively playtesting the new changes and helping out with adventure kit content! Version 3.0 is intended to expand the capabilities of ACK, including making it more capable of Ultima-like adventures with the increase in available graphic tiles, overhaul of the "darkness" features for nighttime and dungeons (and adding torches), addition of experience and levelling up, and new features that allow many Ultima features previously impossible in ACK. More customization, including the ability to 'skin' an adventure, is also added. Some of the changes are so extensive (older clients might crash if they try to play a game made with the new editors) that the version number has been rolled to 3.0. In addition to all the changes within ACK, it also now comes with... New launcher! Joshua Lawrence has developed Windows and OSX launchers for ACK! The ACK distribution is now a complete custom DOSBox + ACK package that should work 'straight out of the box' for anyone by using "ACK Launcher.exe" You can run the main ACK menu fullscreen, or launch the individual editors in separate windows. Major changes: * Adventures can now have two sets of graphic tiles: the Normal set and the Animation set. The Animation set is used for any objects or creatures that are animated: the first tile for anything is drawn from the normal set, but the 2nd (and 3rd, and 4th) tiles are drawn from the animation set. If you hit "T" in the graphic editor, it will toggle between tilesets. The first time you do it, it will copy your existing tileset over, at which point you can delete duplicates. * Daytime/nighttime features have been overhauled. New actions, new variables, and new graphics have been added to allow you to implement temporary light (torches, etc), and terrain light-sources (streetlamps, etc.) Also, unlit squares now show up as dim, instead of black, to give more a "night" feeling and less a "stuck in a hole" feeling. Regions can be set to have region-specific light settings, including "outdoor", "all lit", and varying "indoor" light levels for dungeons, etc. And for macros, new TORCHL and TORCHV variables were added. * Experience and levelling up has been implemented. The player starts at level 1 with 0 experience, and you set the required exp for each new level (up to 10 levels) and you set a macro that runs when the new level is reached. In the macro you can then make any fanfare or stat changes automatic, or set variables so that a future macro (a trainer, etc) can perform stat changes. New LEVEL and EXP macro variables added. You will have to set the adventure version to at least 2.5 to take advantage of this, so the table can be initialized. * You can now make a custom 'skin' for an adventure. You can customize the menu and screen background, if/how it displays the time, and you can make icons display on certain areas. The title sequence now comes before character creation, instead of after it, and the character creation now can be done on a skin image. * Combat mechanics were rewritten. No more hitting the wrong tile when you miss. Also, the numbers are a little easier to understand. When an attack is made, it checks for the chance to hit: weapon skill up to 100 determines the chance (so 50 will hit 50% of the time, and 100+ will always hit.) If the attack hits, it calculates the damage: a random number between 1 and the weapon's damage value. For weapon skills over 200, there's a chance for a critical hit. Weapon skill (minus 100) determines the chance of double damage (so 150 minus 100 equals 50, a 50% chance of double damage; and 200+ minus 100 equals 100, a 100% chance of double damage). For weapon skills from 200 to 255 (the max) the same thing happens again, for quadruple damage. Once this damage is applied, the armor is then factored in: for any armor worn, there is a chance of it absorbing damage, and then an amount of damage it will absorb. If all the damage is absorbed, the attack becomes a miss. * Major improvements to the "dialogue" engine -- responses can scroll, words can be highlighted, and dialogues can be much, much longer. Dialogues can also be skinned now, meaning you can have portraits; check out the dialogues in the Brigands sample game. * The kits have been entirely replaced, and now an ULTIMA kit is included that does as much Ultima V content as the ACK engine allows. * The manual has been rewritten, with many more techniques described in the "tips and tricks" section. Learn how to do tricks like flying vehicles and invisibility spells. Here are the specific changes: Gameplay changes: * The player can now be poisoned, and HP and MP regen speeds can be changed during the game. * Mouse now defaults to off, instead of on. You can turn it on by hitting Alt-M from the main menu or while playing. (Or by launching ACK or ACKMOD with the -mouse switch) * Key commands can optionally be consolidated: instead of "Ready" and "Use" and "Cast", everything is done with "Use". The "Status" key has been changed from S to '?', and the "Wait" command has been removed. This frees up more keys for "extra command" macros. * HP and MP regeneration formulas have been changed: it's now a number, instead of a yes/no. The number determines how fast you regenerate HP or MP. It's still based on STR or INT, but now it's ((regen_rate times ability_score) divided by 2000), per turn. It also no longer requires the "wait" command, it happens every turn. If you'd rather handle this other ways, just set the rates to zero. * Display of HP and MP is now numbers, rather than the tiny little bar graphs. They are also now normally on, instead of only displaying when there's damage. (You can still hide them if you want. MP won't display if you have a max of 0, and HP if you have a max of 1) * Hits and misses during combat are now displayed on the screen. * Music (or all sound) can now be muted during play: Press Alt-V. * Readying a weapon no longer takes a turn. * Looping music can now be configured for combat and for walking around, per region. Alt-V can mute it. Editor changes: * Keywords can now be highlighted in dialogues with F5, instead of having to type THEM in CAPITAL letters. * Wandering life can now be placed on room-type maps. * Added a new setting for spaces and portals: "Disappear while impassable". If the terrain is currently impassable, the terrain will act as whatever the "replacement" object is. Note that this isn't "stack-aware", even if it's on a stack, it will still display blank if the replacement object is set to "eliminate". (Beta note: Situations that don't involve tile display or stepping on -- like examining, or actions triggered by dropping things onto the space, etc -- aren't tested yet and might not be practical to implement.) Check out the DEMO2 adventure for the new setting in action: Ultima-style moongates are implemented, and only appear when the moon is full. * Instructions for making standalone adventures are also included in the manual. * The configuration editor has been totally rearranged, to group features by category, rather than by "when I happened to come up with the idea to put that in there." * Moving the selector over a portal in the map editors will show the destination in the new SETPORT syntax. A few portals created before 3.0 might show up funny (they still work, though) but all new portals will display fine. * Wandering life now shows up as a "W" on the map display. * Region "step time" settings have been switched to a different scale to allow times shorter than 1 minute. Existing adventures will need to be re-tuned (at the Alt-O menu in the map editor) * The action trigger "if attacked" for terrain can now require a specific weapon. * You no longer have to leave tile #240 blank. (I'm still tracking down everywhere that this has to be changed) * Playtesting/cheat keys have changed, more have been added, and a configuration option has been added to disable them. Check the manual. * Combat hit and miss sounds can be set in the configuration editor. This requires an adventure be set to v3.0 or higher. * Melee weapons can have sound effects now too (although now that there are hit and miss sounds, there's not much reason to do so.) * Adventures used to default to prompting for a name, but this seems silly since it's unused in the adventure. It now defaults to not prompting. If you want it to prompt for a name on character creation, set the default name (in the adventure config) to PROMPT and it will do so again. * "Palette mixing" (customizing the last 6 colors) has been removed, and replaced with total palette customization (if you want) by placing a BMP file called "PALETTE.BMP" in your adventure folder. Setting the palette on this BMP can be done in your picture editor of choice (Photoshop, etc.) This should make skins easier to use. * Animation graphic tiles are now selected with a separate key (Alt-G) in the object and creature editors. Macro changes: * You can now have four "extra command macros" instead of just two, and can assign them to any unused keys. Since more keys have been freed, available keys are now C, E, F, H, I, J, K, M, N, O, P, Q, R, S, V, W, Y, Z. If you use a BMP skin, you can put these on your menu. * In addition to the Daily macro, which runs at midnight, now you can have an Hourly macro that runs once per hour. * The format of the SETPORT command has changed! It didn't quite work before anyway, so this shouldn't be a big deal. Syntax is now SETPORT x TO region room x y. Previously it asked for chunk numbers, but these numbers were hidden from the player (the map editor shows absolute numbers) so it made no sense. * New macro variable: PORTAL. If a portal calls a macro (through an action triggered by stepping here) then this variable gives the portal number. Can be used in the SETPORT command: SETPORT PORTAL x x x x will perform a last-minute destination change. * New macro variables: HPREGEN, MPREGEN, POISON. These variables affect how HP and MP regenerate or decay. * New macro variable: CRIM. Represents the "criminal mode" the player goes into; setting it to 0 should clear the "good creatures are mad at me" effect (which also clears when you leave the region). * New macro variable: AGGRO. Allows testing for whether player is "in combat" (has hostile NPCs in view). * New macro variable: SUCCESS. See the below three points for how it's used... * Vehicles can now have boarding and exit macros. In addition, if you SET SUCCESS=0 in the boarding macro, the player won't board. * Spells now have two actions instead of one, and if the first action calls a macro, SET SUCCESS=0 can suppress the 2nd action. This will allow more complex checking of conditions, reagents, etc. * Portals now properly perform actions when stepped on, and if the action is a macro, you can SET SUCCESS=0 to make the portal not transport the player. * Regions now can have entrance and exit macros. * New macro variable: ESCKEY. Determines what happens if someone hits ESC during a PAUSEK. If 0, does nothing. If a value, pressing ESC during a PAUSEK delay will goto that line number. Used to allow aborting intro sequences, cutscenes, etc. Defaults to 0 on each macro execution. * Variables H-Z can now have values 0-65535 in macros, instead of just 0-255, but this only works within macros (dialogues can't see the higher values, for example). * New macro command: INVERT. Inverts the screen colors (black becomes white) -- useful in a macro to flash the screen to indicate spell casting, etc. * New macro command: QTILE. Allows you to place graphic icons (quarters of graphic tiles) onto the top row of the screen. Bug fixes: * Sometimes the ranged-weapon pathing (the routine that checks if there's something blocking a shot) would loop for too long, and the game would lock up for about 10 minutes before resolving the shot. Shooting arrows into low earth orbit and back seemed unnecessary, so this was fixed. * Game content bugs that made Brigands and Caravan unplayable have been fixed, and walkthroughs have been added to the manual. * The damage-absorb effect of armor was sometimes healing creatures, if it was absorbing more damage than the player was inflicting. Fixed. * If you deleted an object and created something else in its place, and the player had that object in inventory, they'd become encumbered (apparently replacing a helmet with a mountain range is heavy). Fixed -- now invalid inventory objects are ignored. * If you deleted a region, wandering life didn't delete, and would end up on any new region created in that slot. Fixed. * Casting a spell with the "let player fire weapon" action was taking two turns. Fixed, now it only takes one. * Targeting a ranged weapon at yourself could lock up the game. Fixed. * Wandering life on world maps should be working now. Note that there can only be 32 per region. * Macro location changes (changing player's location with SET) should work now. Macro portal changes (changing a portal's target with SETPORT) should work now, too, but note the new syntax. * If you play an adventure and you don't have sound or music enabled due to a configuration issue, it will now let you know. * ACK and ACKMOD is now launched by ACK.BAT and ACKMOD.BAT instead of .EXE files, in order to load the SBFMDRV music driver. If you run ACK and the old EXE files are still present, it will let you know that they need to be deleted. * Bumping into something if there was no "bump sound" set wouldn't say "BLOCKED", but it would still pause. Fixed - it says BLOCKED now. * Hitting F10 to quit playing and then saying "Yes" to the save game prompt would save, but it wouldn't quit. Fixed. * Custom content filenames can now just be number.extension, in addition to number-description.extension. * Hostile creatures in "stop" mode (as opposed to move or wait) would go on strike if they didn't have ranged weapons, and the negotiations were slowing the combat engine to an unplayable crawl. Fixed. * If you tried to play an adventure that had no maps (or objects, or creatures) yet, you would get the error "FILE COPY ERRORS: 2,2,0", which made perfect sense to me, but Josh seemed to feel that this error could be a little more clear. Now it will tell you exactly what's missing. ----------- Changes in v2.404: * Fixed a crash that would happen if music support was not enabled. ----------- Changes in v2.403: * The graphic tile editor now lets you grab from BMP files. (320x200 256 color BMPs, just like elsewhere in ACK) The manual has details. * The mosaic editor no longer resets your tile choices each time you enter a mosaic. * Replaced Sound #71 with an actual sound, and now sound #0 is the "stop music" sound. And, now it actually works. * Took an unnecessary "press a key to continue" and some other unnecessary messages out of the character creation sequence. * Macros can now be up to 99 lines long, instead of 64. * Object editor would display junk for certain "passable" settings. Fixed. ----------- Changes in v2.402: * Control-V will also paste in the Graphic Tile editor, and copy/paste now works in select mode, too. * New macro command: TBMP. Like SHOWBMP, but any color matching the edge color will be transparent. Best used for displaying another BMP with the same palette, but feel free to play with it. * New macro command: PAUSEK. Like PAUSE, but lets you skip the delay with a keypress. * You can now have more than 255 BMP and VOC/CMF files -- 64,000 of them in fact -- but actions are still limited, so you'll have to use macros to call higher ones. * Custom VOC and CMF files weren't working; fixed. * Converting MID to CMF was always a very iffy procedure with the old Creative Labs tool, so I found a much better set of tools, these written by Rocco Loscalzo. They're in the UTIL\CMFSTUFF folder. ----------- Changes in v2.401: * The GETKEY macro command wasn't working properly. Fixed. * The "remove object from area" action wasn't working properly in room maps. Fixed. * Short messages would leave junk on the screen sometimes; fixed. * The player should auto-equip a ranged weapon when starting a new game, if there is one in inventory (and no regular weapons). That wasn't happening. Fixed. * Added DEMO1 adventure -- just a short little demo of using macros in dialogues (to implement multiple choice menus) and also using macros with the QA command -- interesting things happen if you attack the computer terminal. (The one in the adventure, not the one you're using now.) Referenced in the "Tips and Tricks" section of the manual. * The SPACEKIT kit was missing its 1-INTRO.BMP. Fixed. * Documentation talked about a dosbox.conf file included with ACK, but the file was missing. Fixed. ----------- Changes in v2.4: This release of ACK is being further optimized for running in a DOSBox and Windows environment: specifically, taking advantage of the ability to have multiple windows (and multiple copies of ACK) open at the same time. Some previously tedious chores having to do with tracking your macro and message numbers or object definitions have also been relieved by adding text-file exporting. General changes: * The ACK User Manual has been rewritten and reorganized, and is much better (and much longer) than before. * "Pictures" in ACK used to be a crude ACK-specific image format, and ACK had its own crude editor. This has been thrown out, and now anything that uses a "picture" or "picture message" will use a custom BMP file instead. The BMP must be 320x200 256 color Windows format; refer to the manual for info on how to use them. This of course means that the "intro picture" and "title picture" settings in the adventure config are now useful. * Module Sync: You can now hit the TAB key (from most places) to immediately save and load files used by that module. This allows running different editors simultaneously, if you can run multiple windows of DosBox. For example, you could make new objects and then sync them in the object editor, then sync the map editor to make the new objects immediately available. A successful sync will beep, if you have the PC speaker enabled. This should make editing much easier. Editor changes: * Text File Export: The "Copy Files" editor module now has an "export" option. It will create text reports with the contents of all short messages, long messages, and dialogues (to MESSAGES.TXT), macros, exec table entries (to MACROS.TXT), object definitions (to OBJECTS.TXT), creature definitions (to CREATURE.TXT) and game configuration (to CONFIG.TXT). Note that you can't make changes by editing these files -- you still need ACK to make any changes -- but they make it much easier to get an at-a-glance view of your adventure. * Removed the "copy" and "delete all" functions from the "Copy Files" module, as copying or deleting the adventure folder from Windows (or whatever OS you use) is easier and faster. * Added two more fonts available for import in the "Copy Files" module. * Alt-M now toggles mouse support at the main menu, to be consistent with the player. * PgUp and PgDn will now cycle through pages in the Configuration Editor. (Alt-1 through Alt-4 also still work.) * Changed the way custom content is named. You used to have to rename custom BMP files as .P# files, custom VOC files as .V# files, etc. Then you had to keep a separate list of what was what. This was crazy. Now you name your custom files as #-Description.BMP, #-Description.VOC, etc: where # is the file's number, and "Description" can be anything you want, it serves as your reference. (The new method is described in the new manual, as well.) ACK of course can't see the whole file name, but it shouldn't matter because ACK is only looking at the first part of the name. This assumes that DosBox is good about translating long filenames like Windows does (LongFilename becoming LONGFI~1) on all platforms. If you find situations where this isn't the case, let me know. Note that the old naming method will still work, if you are playing a game written in an old version. * New macro command: PICTURE. The old SHOWBMP command is still there, but it's tedious as it requires waiting for a keypress, clearing the screen, and fixing the palette all be done manually. The PICTURE command will handle all that for you. * New macro command: QA (Queue Action). Queues an "action" (the ones objects use) to be performed after the macro ends. This is a work-around for the fact that macros cannot perform many things that actions can. They only work if the macro itself is called by an action; macros called other places (creature death macros, intro macros, step macros) will not be able to queue actions. For more details, see the manual. * Graphic tile editor: Under "setcolors" you could use the "R" key to replace one color with another on the current tile. Alt-R now does the same for ALL tiles. Be careful with this. * Graphic tile editor: "Copy" and "Paste" are now the Control-C and Control-P keys. The 'P' key now pastes only the current pixel from the clipboard. * Kits have been separated out into their own subdirectories, and each has been given an "intro picture" to draw attention to the new picture functionality. This means that importing a kit will now bring in custom content in the kit, if any. * F10 will now quit from the main menu of ACK, to be consistent with the editors. Player changes: * The function call that performs a time delay (i.e. display a message, wait for one second, remove the message) doesn't work properly in DosBox, so I replaced it with one that does. This should fix some issues with messages erasing too fast. * Conversation has been improved slightly, to make it more clear what you just said. * The problem with animation going hyper every once in a while should be fixed now. * Player Sync: There's a limited sync ability in the game player too, but it only reloads graphic tiles, fonts, objects, and creature definitions. The current map and game config are not reloaded; and messages, conversations, and macros don't need to be, as they're loaded from disk as needed anyway. This should make playtesting easier. * Added a playtesting option (press Alt-F8) to run a macro by typing the macro number. You should still test your macros by playing them through normally, but this will help work bugs out. * Added a playtesting option (press Alt-F4) to view or set the contents of an A-Z variable * Automatic equip of starter weapons/armor: Now if you start a game where your character starts out with weapons and armor, you will automatically equip it. * Alt-M now toggles mouse support in the player. * F10 will quit just like Alt-Q, to make the player more consistent with the editors. * The mouse is temporarily turned off when macros are running; this will solve a long list of mouse-pointer display problems with long messages, BMP pictures, etc. * Bumping into things now makes a brief delay and clears the keyboard buffer, so you don't chain-bump into things if you had a key held down. Installation changes: * Added a command-line ability to load individual modules. ACKMOD will load an adventure from your GAMES folder (or prompt for a name, if none is specified) and will run the specified module. This means you can create DOSBox shortcuts that directly load the individual ACK editors. Refer to the user manual; these changes are documented at length in the appendices. * Removed ACKPLAY.EXE. Functionality has been replaced by ACKMOD.EXE. (Check the manual for syntax, or run the command with no arguments) * Removed ACK.BAT, replaced it with ACK.EXE. The purpose of the batch file was to load the music driver (sbfmdrv.com), and that really belongs in the user's dosbox.conf. The manual now explains how to do this. * Created Windows icons representing the various ACK modules. You'll find them in the ACK\ICONS folder. ----------- Changes in v2.3: This release of ACK has been optimized for running in the DOSBox environment: the old install method was discarded, mouse support can be disabled, and sound support has been modernized. A few other minor changes and bug fixes were also made. Installation changes: * Removed the "install" programs -- nobody's going to be installing this off floppy anymore, and all paths are relative to the ACK folder anyway, so "installing" ACK now just means putting the ACK folder where you want it, and running ACK.bat. * New files: "ACK User Manual" is a full user manual, and the UTIL folder has some 3rd party utilities for converting sound formats. * New adventures: Two user-created adventures, TOCASIA and STRATUS, are included. Unfortunately I don't have the details on who created them, and I don't even know if they're complete, but they're an added source of inspiration so I'm including them. If the authors of those adventures see this, please drop me a note at chris903@gmail.com so I can give you proper credit. * Removed adventure: The demo adventure CIRCLE (which was never anywhere close to being finished) has been removed. Launcher changes: * Removed the check of system requirements, as it seems unlikely that anyone will lack a VGA card or 640K memory. * Removed all the "registration" junk -- it no longer checks. ACK has been freeware for years; now it knows it's freeware. Sound card support: * Music support requires that you manually run SBFMDRV -- it's included in the ACK folder. You can do so right before you run ACK, or you can put it in your DOSBox autoexec (end of dosbox.conf). * If sound card support wasn't present, it would beep or click through the PC speaker for a couple of the sound effects. There's no point in leaving PC speaker sound effects in the game, so they have been removed. * Previously user customized sounds were hard-coded to be .S## files, with 1-50 as VOC files, and 51-70 as CMF files. Now they can be either, depending on whatever's present, and they don't need the special extension. * Sound effect for melee attacks was hard-coded. Fixed, now it uses VOC 98, which means it can be customized with your own sound. * Sound effect for player death (unless of course you used a macro) was hard-coded. Fixed, now it uses VOC 99, which means it can be customized with your own sound. If all you want is your own sound effect, you no longer need a death macro to do it. * Added support for more sound formats available to macros: WAV, MP3, and OGG. Support is through an external program called MPXPLAY, you can find it in the UTIL folder. * WAV2VOC can't read modern WAV formats, so I found another program that will still run in DOS but can handle the conversion. It's called SOX, you'll find it in the UTIL folder. * MID2CMF still seems to work, but I moved it to the UTIL folder to be consistent. Game engine changes: * Projectile weapons visual effects were incomplete: both "ball" and "dot" were a slowly creeping cube, and the effects disappeared too quickly. They've been greatly improved. * Projectile weapons would hang room-type maps -- they would wrap around the screen forever. Fixed. * Player death was only processed by NPC attacks; HP decrements from object actions or macros would not kill the player and in fact would sometimes roll the HP counter like an odometer. (Some other variable decrements in macros were also rolling.) Fixed, fixed, and fixed. * If the player is killed in combat, the HP display wasn't updated first, so it appeared that the player was dying with hit points still left. Fixed, it refreshes it before running the death event. * When creating a new character, it would skip over the intro long message because the "wait for keypress" event wasn't happening. Fixed. Editor changes: * When stacking objects in room-type maps, you could always use PgUp/PgDn to cycle through a stack, but it never said this anywhere. It says it on the screen now. * WAV, MP3, and OGG commands added to the macro editor. * Macro editor is now available to everyone.