Giter Club home page Giter Club logo

ldtk's Issues

Documentation

  • API comments
  • README
  • Screenshots
  • Animated GIFs
    • VScode completion
  • Better doc table-of-content (keep on all pages)

Tileset reloading

Design decisions

  • avoid integrating image data inside the project file?

Todo

  • auto reload when image changes while app is running
  • auto reload when image changes while app is closed
  • remap tile IDs if image width changes
  • add a manual reload button?

Level custom fields

Allow creation & editing of custom property values for Levels, in the same way as Entity fields.

  • cleanup & separate field def form
  • add level fieldDefs to project
  • add fieldInstances to levels
  • add level field instance form
  • display them in world view

Keyboard issues

  • Alt not releasing on alt-tab / window focus lost
  • Ctrl-Alt click stuck in free mode when starting on no element

RC1 tasks

Bugs

  • Fix GMTK bugs (see #4 )
  • Move grid spacing to RC2 (remove it from current editor)

Missing features

  • Haxe client API (see #7 )
  • Quick save using last filename
  • Implement Tileset deletion
  • Implement Entities sorting
  • Implement Levels sorting
  • Implement Level deletion
  • Level resizing
  • Entity "Enum" values (see #5 )
  • Project "save as"

Enhancements

  • Add Pivot coord for Tiles when layer grid differs from Tileset grid
  • Add a special "one-last-chance" Undo for critical changes (level deletion, layer deletion etc.)

File format

  • Replace Enum serialization with more human-readable values
  • Avoid duplicate identifiers (see #9 )

Packaging & distrib

  • Decide between electron & NWJS
  • Package a redist

World editor

  • Add X,Y coords to levels
  • Generate a level preview
  • Display levels in a world view

Add Save Changes feature on file close attempts

Closing a file that has not been saved already gives you a prompt to ignore map changes or to cancel the close attempt. It seems strange to me that direct Save functionality is not in this prompt as well.

Choose framework

Electron

  • ~Easier to package
  • Quite heavy
  • Popular

NWJS

  • Heavy (~230Mo)
  • Easy to setup

Neutralino

  • Super lightweight
  • Experimental
  • not NodeJS

Haxe client API

  • Build a runtime typed structure using macros
  • Added API methods comments
  • Write README
  • Link imported HX enums to their corresponding code enums?
  • Better tileset reloading (see #6 )
  • Add tileset methods

Performances & optimizations

  • Faster layer rendering using TileGroups
  • More selective invalidate/re-render for LevelRender
  • Better HTML cursor rendering in Tileset picker
  • Better rules re-evaluation
  • CPU/GPU usage (#331)

Fill area

  • Shift+click to fill a tile layer area
  • Shift+click to fill an intGrid layer area

Source-control & multi-users issues

  • the nextUid in Project is a central conflict point
  • rework all UIDs to only work locally (ie. UID is no longer globally unique, but locally unique)
  • move definitions to external files ?
  • remove levels array from the main project JSON completely ?
  • move each level to an individual file (all stored in a fixed directory structure)

Parallax layers

  • Add a custom parallax factor to layer settings
  • Display layers in editor using parallax factor
  • Edit layers using actual parallax factors

Automatic rule-based tile layer

  • Pattern editor
  • Support multiple random tiles for 1 rule
  • Seed random
  • Support symmetry
  • Optimize using bit masks?
  • Optional rule break
  • Pattern folders/groups
  • Move rule matching to a pure-data storage
  • Update auto-layer to use pre-cached data
  • Export data in JSON for easier parsing

GMTK jam issues

BUGS

  • Fix alt+click shortcuts not working properly sometimes (steps to reproduce: CTRL-ALT-drag outside of an Entity)
  • Entities disappearing
  • Background not updating
  • Viewport improperly positionned after resizing window or using Compact mode
  • Fix zoom attach point coords when using mousewheel on viewport

EXTRA FEATURES

  • Add global enums
  • Better level selection window (move level settings form to another panel)
  • Tileset reloading
  • Add Entity field "over" position
  • Entity icons
  • Better indicator of the current active layer (fade others)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.