2021-12-01 - 3.0 RELEASE (3.0.0) ~~~~~~~~~~ Bugfixes: * CC2Edit: Support launching CC2 via Proton instead of WINE for playtesting on Linux (Thanks @TheGLander). * CC2Edit: Fix loading maps within subdirectories from .c2g files on non-Windows systems (Thanks @TheGLander). * CC2Edit: Use compression to fix playtesting in Lexy's Labyrinth with some large/complex maps. * CC2Edit: Avoid excessive disk seeking when writing map data. * CCEdit/CC2Edit: Don't hide stdout and stderr from playtest executables. 2021-11-15 - 3.0 RC1 (2.99.0) ~~~~~~~~~~ Features: * CC2Edit: Add buttons for adding/moving/deleting individual layers in the Tile Inspector (Thanks @TheGLander). * CC2Edit: Add additional tiles for multi-direction wire tunnels to the tile picker widgets. * CC2Edit: Show the .c2g filename in addition to the name set by its script. * CC2Edit: Allow ',' and '.' keys to also cycle through Glyphs, to match CC2's built-in editor. * CC2Edit: When drawing glyph tiles, the keyboard can be used to pick a glyph value directly (this matches CC2's built-in editor). * CC2Edit: Add syntax highlighting for [COM] sections in the Notes field. * CCEdit: Add support for an Author field as field ID 9. This matches the implementation already used in SuperCC and Lexy's Labyrinth. * CCEdit: Support reading and writing tile id 0xFF (255). Bugfixes: * CC2Edit/CCEdit: Fix tileset scale setting being ignored when switching tilesets within the application. * CC2Edit/CCEdit: Fix tab widgets incorrectly rendering '&' characters as keyboard shortcuts. * CC2Edit: Drawing with a normal floor tile now pops the top layer instead of replacing the whole tile (this matches CCEdit's behavior). * CC2Edit: Don't erase clue text when drawing over clue tiles. * CC2Edit: Fix issue with rendering blocks under (X-rayed) canopies. * CC2Edit: Further improve tile layer render order, to fix some incorrectly drawn combinations from previous builds. * CC2Edit: Fix missing '_' from the Glyph tiles in both tile selectors. * CC2Edit: Improve default layer combination/replacement logic to avoid some invalid combinations and allow some valid ones which were previously disallowed in the default drawing mode. * CC2Edit: Fix regression when replacing a non-wired tile with a wire tunnel. * CC2Edit: Properly validate file headers before trying to load the rest of its content. * CCEdit: Fix some valid tile combos being rendered as invalid (Thanks @TheGLander). * CCEdit: Fix monster path visualization incorrectly treating boots as non-blocking tiles. * CCEdit: Support reading fields 1 (alternate time limit), 2 (alternate chip counter), and 8 (plain text password) from CC1 data files. * Tilesets: Fix incorrect Teeth graphic in CC2 tileset. * Windows Installer: Optionally allow associating CCEdit with .dat files. 2020-12-21 - 3.0 BETA 3 (2.97.0) ~~~~~~~~~~ Features: * CC2Edit/CCEdit: Add playtest support for Lexy's Labyrinth * CC2Edit/CCEdit: Add menu items for 150% and 200% zoom. * CC2Edit/CCEdit: Add a global tileset scale option (original or 2X) to the tileset menu for high DPI displays. * CC2Edit/CCEdit: Add a Rectangle drawing tool. * CC2Edit/CCEdit: Use a custom cursor when modal tools (button connector, tile inspector, hint editor, wire tool) are active. * CC2Edit/CCEdit: Change Ctrl+W to close only the current tab, and remap "Close levelset" / "Close game" to Ctrl+Shift+W. * CC2Edit/CCEdit: Add a Recent Files list to the File menu. Somehow this got missed in the original rewrite from 1.x to 2.0... Tilesets: * Add a 48x48 TileWorld tileset * Add a 32x32 Lexy's Labyrinth tileset (Thanks @eevee!) * Extend the WEP tileset with CC2 (CC2Edit) support Bugfixes: * CC2Edit: Always combine thin walls and canopies with existing tiles. (previously, CC2Edit would only combine with non-terrain tiles). * CC2Edit: Don't erase wires when replacing a wired tile with another wire-able tile (e.g. floor -> steel wall). * CC2Edit: Fix playtesting compatibility with old (1.x) versions of CC2. * CC2Edit: Fix for mobs unable to move when starting on train tracks. * CC2Edit: Copying and pasting hint tiles now also copies and pastes the associated hint texts from the Note field. * CCEdit: Mark keys and boots on top of elemental tiles (ice, fire, force floors, water) as invalid, and don't combine them automatically. * CCHack: Don't export section padding bytes from bitmap resources. * CC2 Tileset: Use "CC1" chip label for CCEdit tileset variant. 2020-11-30 - 3.0 BETA 2 (2.96.0) ~~~~~~~~~~ Features * CC2Edit: Implement HTML Report generation. * CC2Edit: Add some advanced (non-standard) tiles to the tile selectors. * CC2Edit: Add hotkeys (',' and '.') for rotate actions. * CC2Edit: Implement monster path drawing. Bugfixes * CC2Edit: Fix crash when modifying map properties. * CC2Edit: Don't keep showing the Save As dialog when saving new files after they have been saved the first time. * CC2Edit: Create the saves directory if it doesn't already exist when playtesting, instead of throwing an error and failing. * CC2Edit: Tiles are now rendered in the correct layer order to match CC2. * CC2Edit: Don't let x2 flags overflow in the point counter (large multipliers are now shown in exponential format instead). * CC2Edit: Fix the hint editor tool not correctly saving changes. * CC2Edit: Drawing and erasing hint tiles now correctly updates the NOTE field to keep hints in place. Text before and after the hints in the NOTE field are also correctly preserved now. * CC2Edit: The "File->Exit" menu item actually works now... * CCEdit/CC2Edit: Don't show duplicate tilesets on Linux. * CCEdit: Additional fixes for monster path drawing on ice and force floors. * CCEdit/CCPlay: Fix relative .ini path in MSCC play(test)ing when using WineVDM. 2020-11-18 - 3.0 BETA 1 (2.95.0) ~~~~~~~~~~ New Tool: CC2Edit * Features: * Editing of maps (.c2m) and game scripts (.c2g) for Chip's Challenge 2 (and the Steam version of CC1, which is based on the CC2 code base). * Playtesting of maps in Steam CC1 and CC2 (requires Steam to be running and logged in, due to restrictions in the game itself). * Many basic editing tools ported from CCEdit, including new features listed below. * Tile Inspector allows you to craft any combination of tiles, beyond those available via normal editing. NOTE: Creating invalid tiles may cause unexpected behavior or crashes within the game. * Hint Inspector allows you to directly edit hint tiles without needing to count and manually modify the NOTE field. * Import (Lynx-compatible) levels from CC1 levelsets (.dat or .ccl). Imported levels can optionally be auto-resized to fit their content. * Still missing some key features; work ongoing to complete these before the final release of 3.0. * Drawing hint tiles doesn't update the hint order in the NOTE field. [FIXED: Beta 2] * Tile errors and monster paths are not currently rendered. [FIXED: Beta 2] * Tiles are not rendered in the same layer order as CC2 in some cases. [FIXED: Beta 2] * Teleport destination highlight doesn't respect wires yet. [GH #8] * HTML Report generation is not yet implemented. [FIXED: Beta 2] CCEdit Changes: * It is now possible to playtest in MSCC from 64-bit Windows using WineVDM (https://github.com/otya128/winevdm). * Tab management is reworked for better usability (modeled after various code editors, such as vscode): - Loading a level already open in another tab will focus that tab, rather than opening a duplicate tab of the same level. - Opening a level not already open will open a "floating" tab (indicated with an italic title). This tab will be reused when switching to other levels not already open in a non-floating tab. - Making changes to a level, or double-clicking on the level or floating tab will cause the level to be opened in a non-floating mode, which means it will stay open until explicitly closed. - You can now middle-click anywhere on a tab to close it, in addition to the usual close button on the tab. * The Level Manager and the two Tiles pages now live in their own dockable widgets, and as such can be attached, detached, moved, and even hidden independently of each other. * Undo and Redo actions are now global to the entire levelset, not just the currently open level. This means you can undo changes even after closing a level's tab. * It is now possible to undo and redo changes to the levelset itself, such as adding/deleting/reordering levels and changing level properties. * Holding SHIFT (used for drawing directly on the lower layer) will now also reveal the lower layer by drawing the upper layer very faintly above it. * Copying a selection will now also copy a graphic of the selected tiles. * Add a flood-fill drawing tool. * Add a tile inspector tool, which can set any valid or invalid tile. * Fixed a crash when dragging levels in the Levelset Organizer dialog. * Fixed a crash when using Pedantic mode in the Error Checker. * Fixed a crash when rendering levels that have tiles outside of the normal 00-6f range. * Fix: Monster paths now consider tanks switching direction, and account for things that manipulate monster direction such as force floors and ice corners. * Fixed some minor issues with HTML report generation. * Fix: Level numbers are no longer incorrect in the Level Manager after deleting levels from the Levelset Organizer. * Fix: Drawing tools no longer get "stuck" when CCEdit loses focus while the mouse is pressed. CCPlay Changes: * It is now possible to play in MSCC from 64-bit Windows using WineVDM (https://github.com/otya128/winevdm). * CCPlay can now launch arbitrary Java-based tools (assuming the java executable is in your system PATH). This enables better support for tools like SuperCC and CCCreator. * The "Edit" button in CCPlay is now renamed "Open", and the list of Editors in the settings is now a list of Tools, to more clearly indicate that it can be used for more than just editors. * Levelsets are now sorted case-insensitively. * Fix: Don't throw an error trying to read an invalid .dat file (e.g. the unins000.dat that various setup programs create). * Fix: CCPlay no longer crashes when failing to parse levelset data in some more exotic levelsets. * Fix: Opening tools with a specific level selected now actually works. * Fix: Level names are now correctly interpreted as Latin-1. CCHack Changes: * CCHack is back -- ported to Qt5 with a completely new UI. This means it is now usable on non-Windows platforms without Wine. * Add support for applying and removing code patches: - Always grant First Try bonus - ccpatch (fixes crash related to two masked tiles in the same space) - fullsec (always enable full first second) - pgchips (adds ice block support) * Extend menu editing to cover full Menu (and Accelerator) resource editing / replacement, rather than just modifying strings. * Fix: CCHack properly updates the "real" and "fake" last levels in multiple places in the code, rather than just one check. * Fix: CCHack no longer pollutes your current working directory with extracted bitmaps every time you load an existing executable. * NOTE: CCHack 3.0 *should* be able to read CCHack 1.2 patches (.ccp files), but newly created patch files are are not backwards compatible with CCHack 1.2. This is intentional, since the old patch format was actually somewhat broken, and we now store replaced bitmaps directly in the patch as well for easier distribution. 2013-01-21 - 2.0.1 RELEASE (2.0.1) ~~~~~~~~~~ New Features * Package CCHack 1.2a with the Windows installer, since I haven't had time to work on CCHack 2.0 in a while. Update 2020-07-10 * Added a portable .zip file distribution for Windows for those who don't need/want the full installer. 2011-05-17 - 2.0 RELEASE (2.0.0) ~~~~~~~~~~ New Features * Mac version is now distributed as a .pkg file which puts the tilesets in a more standard/usable location. 2011-02-02 - 2.0 BETA 1 (1.99.0) ~~~~~~~~~~ New Features * Added Author info (from .ccx file) to CCPlay's GUI * Generate HTML reports in CCEdit * Add more error checking in the Check for Errors dialog * Show a visual marker for invalid tile combinations Bugfixes * Updated auto layer placement logic to correctly handle most cases * Zoom factor wasn't getting set correctly after re-starting CCEdit 2010-12-12 - 2.0 ALPHA (1.94.0) ~~~~~~~~~~ New Features * Use specialized tile widget for "all tiles" view, so all tiles are shown at the same time, instead of in a list widget. * Fit-to-view zoom support * Drag-and-drop level organizer with level previews and level copy/paste * Show button / monster movement status in a tooltip on the editor * Extended auto-placement drawing mode (NOTE: For regular top/bottom layer drawing, use Ctrl+draw or Shift+draw respectively) Bugfixes * Find more levelsets on case-sensitive filesystems * Don't prompt to save if a levelset hasn't been modified * Remember previous save/load dialog location 2010-11-12 - 2.0 ALPHA (1.93.0) ~~~~~~~~~~ New Features * Added monster path tracing * Added tool to toggle all green toggle floors/walls * Added a game-sized (9x9) box around the cursor * Error checking dialog for checking levels and levelsets for common design errors and compatibility (incomplete) * The button connector and path maker tools can now be toggled on/off like the selection tool Bugfixes * Add names to toolbars in the toolbar context menu * Launch MSCC and TWorld asynchronously so they don't block the CCEdit GUI while playtesting * Fix rounding errors with mouse positioning when using zoom 2010-09-11 - 2.0 ALPHA (1.92.1) ~~~~~~~~~~ Bugfix release * Actually save hint text in CCEdit * Update current and highest level from MSCC in CCPlay * Switch to Cocoa build of Qt4 on OSX, so 64-bit Snow Leopard works. Note that this means Tiger is no longer supported though (except in source) 2010-09-08 - 2.0 ALPHA (1.92.0) ~~~~~~~~~~ CCPlay ALPHA released * New GUI (vs CCLM) -- shows list integrated with score info * Allows (unlimited) custom editors * Can extract TWorld scores as well as MSCC scores * Configurable MSCC hacks, including ignoring passwords and always granting First Try score bonuses. * Support for CCPatch and PGChips New CCEdit Features * Zoom support in editor * Support for PGChip patching and the Ice Block tile 2010-08-13 - 2.0 ALPHA (1.91.0) ~~~~~~~~~~ New Features * Playtesting for MSCC, TWorld (MSCC) and TWorld (Lynx) * Use WINE to run MSCC on Linux / OSX / etc. platforms * Support 'make install' on source builds Bugfix * Clicking the Select button/menu item would change the GUI state but would not actually exit select mode 2010-08-09 - 2.0 ALPHA (1.90.2) ~~~~~~~~~~ Bugfix release * Fix segfault when drawing outside level boundaries * Allow middle-click mouse selection (a la ChipW) * Only obey the first mouse button that was pressed if others are pressed while drawing 2010-08-07 - 2.0 ALPHA (1.90.1) ~~~~~~~~~~ Bugfix release * Fixed Mac OSX build to work with Leopard (and possibly Tiger) 2010-08-06 - 2.0 ALPHA (1.90.0) ~~~~~~~~~~ Initial ALPHA release of CCEdit 2.0 * Everything CCEdit 1.2b could do EXCEPT level testing and zoom * Line and box draw modes * Native DAC file support (open/save it as a normal levelset, use levelset properties to modify) * Multiple tilesets (TWorld 32x32 and MSCC tilesets included)