Coder Social home page Coder Social logo

polydes's People

Contributors

coryalexmartin avatar darioseidl avatar hectate avatar justin-espedal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

polydes's Issues

Multiple Text Effects of One Type

Let users create and define their own text effects in the same way they can create and define their own window tweens.

For example, you could have multiple sine tweens with different values.

Themes

We have a dark theme. Provide a light theme.

For Data Structures at least, allow custom themes.

RTL/conditional-form character support (esp. Arabic)

RTL support for displaying Arabic text, and conditional-form characters.

If this is required editor-side as well, tag aliasing will probably be desired to replace LTR English dialog tags with RTL equivalents.

More GUI control for Structure Definitions

Potential GUI additions:

  • Select a component for editing by direct mouse selection
  • Collapsible Panels
  • Group element
  • Column Element
  • Big idea: Placement mode. Instead of everything in a list, place editors wherever, choose label and hint positions, restrict editor sizes.

Common Extension Manager

An extension manager that can detect when updated are ready for installed extensions.

  • Don't offer the update if the current Stencyl version wouldn't support it.
  • Show changelist for offered update.

Better external editor support

Allow arbitrary editors to be set based on file extension? (Except right now it works off of detected mime type)

Multiple editors per type

Block getters and setters for each data type

ds-samplestructure-get-field
ds-samplestructure-set-field

setter has one field, getter returns one object.

Transformers are also supplied:

  • (x, y, w, h) (creates object with specified values)
  • x of (rectangle)

Ex: Insets object

set insets for window to [insets]
get insets for window
set insets for window to [(top, bottom, left, right)]
top of [get insets for window]

Freeform code interface

Create a set of tags to work with freeform haxe code.

<msgcode Classname functionName [arguments]>

Linking Scenes in Engine

Based on UI links, or based on position if certain rules are followed (Next to each other in a MetroidVania layout), make transitions between scenes automatic.

Map Type

Create a Map data type with two generic types, key and value.

Wrap large editors in a scrollpane

Right now, this would be useful for:

  • Lists of Radio Buttons and Checkboxes, if there are a lot of them
  • Simple Arrays and Expanding Strings

PropertySet Type

Ex: [1: Attribute/Condition]โ†’[2:A,B,C,D,E]

Creates a grid/list of elements, and each one has a cycle button or dropdown next to them to assign some property to them

  • Property: Editor {List, Grid}

Same way Set does, allow some specific dataset as the source.
Then have a second set of data for the allowed values for each item in the source.

  • Property: Control (Cycle, Menu}
  • Property: Enum/Property Source

Spreadsheet-like Structure editor

Bring together any number of structures with the same definition to be edited in an excel-like manner.

Use a Java table or something, display every value by its toString (or toDisplayString is that's still a thing). Make it a joy to edit.

Look into data integrity

Game is opened with dialog info (and perhaps dialog extension) but no structures extension, is dialog info wiped upon save?

What happens when you open the game and the structures extension tries to load dialog info if the dialog extension isn't enabled?

Revert changes

There's no way to go back except close and reopen the game without saving right now.

Easier Image Selection

Have an import image button next to an image selector.

Also let an image be chosen in a different way:

  • From a Stencyl Resource (Actor Type + Anim + Frame)
  • From an arbitrary function that returns a BitmapData

Ctrl+f

Allow a global dialog lookup.

Maybe have a filtered tree above the normal one to show results in.

Quick Create/Edit shortcuts next to select editors

Any editor that's just a selector for resources with their own editors should have controls near them to create a new item or edit the selected one.

  • All Stencyl Resources
  • Structures
  • Images, Controls, etc

GUI Editor

There are many different ways for Stencyl users to visually display things, but none really work for designing persisting GUIs.

We currently have two general methods for interface building:

  • Placing actors on the screen. This generally works really well for single-scene menus. Place button actors in the scene and then use events to code each button. This is limited to only that one scene though.
  • Creating a behavior that creates actors and attached them to HUD, or uses the Drawing or Image APIs. This can be reused across scenes, but there's no visual feedback until you test.

The idea for this extension is to allow all of these elements to be combined with immediate visual feedback, and for the result to be accessible from any scene.

  • Place actors, labels, images, drawings, special pre-made GUI elements (all the common ones) in a WYSIWYG editor.
  • Allow this system to be flexible and powerful enough that a full-fledged, say, RPG Menu System can be created with it.
  • Proper support for transitions and tweening of GUI elements.

How exactly it would work, I'm not quite sure. This would be getting fairly close to the level of a live preview of the game itself, but it can also be done by re-implementing each of the possible ways of displaying elements in a Java-based preview.

Start polling extras folder

If we relied on the extras manager extension, this would be extremely easy. Just start a HierarchyModel on a SysFolder, and you'll hear about all changes.

Extension dependency seems to cause issues though, so it might be better if we can pull the filesystem polling and SysFolder/SysFile aspects into the common code. Then it's more accessible to Scene Link and Paint as well.

Saving/loading support

Allow structures to be saved/loaded in-game.
Maybe set certain fields not to save/load.

Singleton structures

Allow structures for which only one instance exists.
Fields can be added to them and the value of those fields can be set all at once.

Tag aliases

Allow tags to be aliased. Make certain tags much shorter.

<blue> == <color 0x0000ff>
<fast> == <typespeed 0.01>
<scene "Scene Name"> == <msgscene "Scene Switcher" switchScene "Scene Name">

Consider scalability

Cache thumbnails in a file, don't keep all large thumbnails in memory, only when the page with that thumbnail is open.

Generate and cache thumbnails, use png with metadata? Or binary data. Make sure this is hidden. Store it somewhere else than the folder?
File changed, created, deleted, marks thumbnail cache as dirty

Instantly open folders, read in thumbnails in another thread, cancel it if the folder is left
Keep a low priority background thread running that keeps thumbnails refreshed?

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.