RoyAwesome / WorldSmith

Open source Dota 2 Mod Editor
MIT License
59 stars 28 forks source link

Investigate rewriting the DOM to turn DotaObject types into thin wrappers around Key-Value trees #57

Open RoyAwesome opened 9 years ago

RoyAwesome commented 9 years ago

@Penguinwizzard mentioned doing this. Investigate it's viability and how much it would take to break them apart.

RoyAwesome commented 9 years ago

Possible option: Modify the DataClassGenerator to output properties that get/set from the Key-Value tree.

Penguinwizzard commented 9 years ago

The core idea behind this is that we should be able to have multiple views on a particular data set, for example, a unit, without having to care as much about syncing them up. KeyValues view, Object view, and so on can all just be interpreted as different interpretations of an underlying dataset. Instead of having them actually have different data sets, they should, as close to the actual interface as possible, share the data, so that updating one updates the others (in real time, if possible (and it's possible)). This also gives benefits later on; with the goals in some other issues of having better auto-suggest for various things, or automatic analysis of code, having a more readily workable data representation would be beneficial.

AntonAderum commented 9 years ago

This is a really good idea, definitely something we should do.

Also +1 for tossing in some lisp-styled comments @Penguinwizzard

RoyAwesome commented 9 years ago

So, as we discussed on IRC and some thinking on my part, the things that we need to look into: