Giter Site home page Giter Site logo

objecteditor's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

objecteditor's Issues

Move settings.json file to users' Documents folder, or similar

Currently the settings.json file that this program uses to store its settings is saved in the binary/executable folder itself. When I deploy new versions, those new versions will check its binary file location and if the settings file doesn't exist (which it won't in that specific folder) then a new file will be created, effectively meaning the user 'loses' their settings unless they copy across the file. OS's have ways to solve this, eg common folders like AppData or MyDocuments, etc.

Move image creation to a cross-platform library (ie not WinForms)

Currently this tool uses WinForms' Bitmap class to create images from the graphics data in objects. This works great but is not cross-platform, and additionally prevents image creation in the 'Core' part of the codebase as that part does not reference WinForms dlls. In short, image creation currently happens on the UI layer, not at the core/business layer, and this needs to change.

Ensure zeroed fields are zero

I'm unsure if many locomotion objects rely on object packing into saves to function but this is something that rct2 players used a lot. (There were some popular objects in the rct2 community that violated the following and it caused much annoyance) For object packing to work all object header fields that are populated on load must be zero. For example the string id is usually offset 0 in an object header these are populated on load. Therefore they must be zero. I would suggest having a warning on objects that violate this.

Flag editing support

Many objects have flag types, where you can select 1-to-many values for the property. Currently the WinForms property grid does not support proper editing of these. The easiest solution is to add a custom type converter to handle it.

Validation of objects/detection of bugged objects

OpenLoco has many validation checks for objects to ensure values don't pass certain hard limits. Currently this tool does not enforce any limits and does not really care if the object is 'valid but has insane values'. Adding some kind of buggy object detection and warning would help a lot in cleaning up old community objects and prevent creation of new bugged ones.

Dark mode

Dark mode would greatly improve the visual look of the tool and not burn people's eyes late at night.

Palette/exported images are not correct

Looking closely at the images exported by this tool, it seems the exported images are not pixel-perfect recreations compared to the originals. It appears to be a palette issue.

Zoomed in image of the fence object type icon:

Original:
image

Tool:

image

Station Image Error

Hey LeftofZen, I've really been enjoying using your tool :-)

I found four station objects from Wisim-Welt that your tool cannot open the images. Then when I clicked "export to directory" your tool exported the images of the next object up in the main list. The status window at the bottom just displayed loading object... and saved images to... no errors
Maybe it needs an error message when it can't find the images. And it's a bug if it's exporting the wrong images.
Probably the objects are faulty too... I don't have time tonight to load them up, and edit them into my trackst.dat file

I hope you can make some sense of this ;-)

station files.zip

Cross-platform support

Windows is great but I'd like to open this tool up to all users on Mac and Linux as well. This will be require ditching WinForms entirely and using something like AvaloniaUI.

Allow use to create objects from blank templates

Currently the only 'way' to use this tool is to load an existing object and edit it from there. I'd like to add a 'blank template' for each object type so that users can create new objects from scratch rather than editing existing ones.

Implement ObjectManager

We need a central 'repo' of all objects so that dependent objects can find their dependencies here.

Bundle object type icons with the program

The tool does display little icons for each object type, but this requires loading G1.dat (ie set a Data directory in the tool). In future I'd like these graphics (or at least an open-source non-copyright version) to be bundled with the app.

Support editing maps/savegames

This is a big feature, but would be highly useful. It would basically be a map editor in-tool, but a good first step would be loading the save/scenario files and displaying basic info like map width/height, etc.

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.