Git Product home page Git Product logo

assets-editor's Introduction

Assets Editor V2

Assets Editor is an open-source tool designed for modifying and managing client assets for both Tibia 12+ and Tibia 1098.

Main interface Search Window OTB Editor Sheet Editor Import and Export Dark Mode

Features

  • Support for Tibia 12+
  • Support for Tibia 10.98
  • Object Modification
  • Create/Copy/Delete Objects
  • Import and Export
  • Sprite Sheet Modifications
  • New Search Window
  • OTB Editor for Tibia 10.98
  • Import Manager for Tibia 10.98

Prerequisites

  • [.NET Framework 6.0]

Usage

  • Download the latest release from the Releases page.

Supporting the Project

If you find this project useful and want to show your appreciation or support, you're welcome to do so through PayPal. Your support is entirely optional but greatly appreciated ❤️.

assets-editor's People

Contributors

arch-mina avatar carlospess0a avatar humberd avatar luan avatar marcosvf132 avatar mehah avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

assets-editor's Issues

Improvement Idea: Independent File Path Memory for Assets Folder and items.otb

Description:
The application currently remembers the last file path location opened when locating the assets folder and items.otb file. However, this is annoying when the assets folder and items.otb are stored in different locations. It would improve usability if the application could independently remember the file path locations for opening the assets folder during launch and locating the items.otb in the OTB Editor.


Current Behavior:

  • The application currently remembers the last file path location for both the assets folder and items.otb file.

Proposed Improvement:

  • Introduce independent file path memory for the assets folder and items.otb.
  • Allow the application to remember the last accessed file path for the assets folder separately from the file path for locating the items.otb.

Benefits:

  • Enhanced flexibility for users with assets and items.otb stored in different locations.
  • Streamlined workflow by eliminating the need to navigate through the file system when launching the application and using the OTB Editor.

Problem with Infinite Looping Animation

I can't make custom sprites loop on my server. I'm using the Canary 3.1.2 distro with client 13.21 and AssetEditor.
No matter what I do, I've tried all sorts of ways to change the AssetEditor options and nothing makes the sprites I add work in a loop.
The sprites only work in "Ping Pong" mode (going back and forth), even if I select the Looping option, nothing changes.

If any AssetEditor user knows anything, please let me know. I would like to correct the functioning of these sprites, thanks.

Ping pong sprite

Sorry if I'm posting in the wrong place, but I don't know where else to turn.
I'm having trouble getting an animated sprite to work correctly. When the animation ends, it starts the animation backwards. She goes back and forth.
I already tried to leave it 'synchronized' but it didn't work, I also increased the transition time between one frame and another.
Sorry my english, i'm from brazil.
My discord: suuurf

Broken 1098 OTB compilation

When I compile a dat file and then try to open it again it throws the following error:

Unhandled exception. System.Exception: Couldn't load dat file
   at Assets_Editor.LegacyAppearance.ReadLegacyDat(String file) in D:\Repositories\Asset-Editor\Assets Editor\LegacyAppearance.cs:line 117
   at Assets_Editor.MainWindow.LoadLegacyDat() in D:\Repositories\Asset-Editor\Assets Editor\MainWindow.xaml.cs:line 116
   at Assets_Editor.MainWindow.SelectAssetsFolder(Object sender, RoutedEventArgs e) in D:\Repositories\Asset-Editor\Assets Editor\MainWindow.xaml.cs:line 171
   at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
   at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
   at System.Windows.Controls.Primitives.ButtonBase.OnClick()
   at System.Windows.Controls.Button.OnClick()

Reproduction Steps:

  1. Open 1098 dat file
  2. Compile it
  3. Open the new compiled dat file

Expected result:
Reads a compiled file

Actual result:
Throws an error and closes the program.

Original dat file: Tibia.dat
Compiled dat file: Tibia-generated.dat

Sprite Sheet

Hello, I've been using this tool for a while but I don't have enough knowledge to do it myself: is that possible to implement 128x128 sprite sheets?

Bounding Square

Bounding Square for Outfits, and sometimes is Opaque, cannot be selected/changed/saved and compiled for majority of Outfits.
Let's make an example, if next outfits from Cipsoft has everyone 0 on bounding square, they reach and can block every outfit to be imported on Object builder, "Unexpected Flag" because bounding square 0, adding any value will be fine and save it.

Or, just let's make available to edit the "others" of text proprieties of the Outfit, and insert a value here then save it.
Or, let's add a new button to "copy Flags of values for outfits (pattern, width, layer, etc).

ERROR CRASHES

The program at the time of creating a new outfits etc. always crashes, I don't know what the error could be, I'm running it as admin but even then it crashes it doesn't give any error message either.

Color of background Problem

Hello,

I have used thousands of sprites, i have decided to upgrade to version 12.60, assets editor is working perfect ( create item not works but not need it right now )
I Want replace some customs sprits to anothers, this one works with sprites extracted but sprites maded with same background not show item in game, show as a Blank Square, and some others are working, from where come the problem ? I tried to many differents background, also have imported threes with Black background and it's show correctly in game, i dont understand how it works completly
3
5

Question about sprite dimensions (3x 64x32 verticlly)

Hello, as the issue #2 says, it's not possible to go beyond 64x64, but still i have a question.

Cannot i add 3x 64x32 verticlly? like:

image

The effect i added seems to be cropped... lol

is that a miss configuration or really not possible?

[Feature request] Export item data into JSON object.

Currently the posibility to export is only the AssetsEditor binary.

I tried to achieve this myself, and was successful but only when there is low amount of items selected.

but I got ran upon error here when trying to select many items, or all of them:
image

System.NullReferenceException
  HResult=0x80004003
  Message=Object reference not set to an instance of an object.
  Source=Assets Editor
  StackTrace:
   at Assets_Editor.DatEditor.AddExportObject_PreviewMouseLeftButtonDown(Object sender, MouseButtonEventArgs e) in C:\Users\Filip\source\repos\Arch-Mina\Assets-Editor\Assets Editor\DatEditor.xaml.cs:line 1877

I modified ExportObject_PreviewMouseLeftButtonDown under DatEditor.xaml.cs as below:

        private void ExportObject_PreviewMouseLeftButtonDown(object sender, RoutedEventArgs e)
        {
            if (int.Parse(AddExportObjectCounter.Badge.ToString() ?? "0") == 0)
            {
                StatusBar.MessageQueue.Enqueue($"Export list is empty.", null, null, null, false, true, TimeSpan.FromSeconds(2));
                return;
            }

            Microsoft.Win32.SaveFileDialog saveFileDialog = new Microsoft.Win32.SaveFileDialog();
            saveFileDialog.Filter = "AEC Files (*.aec)|*.aec|JSON Files (*.json)|*.json";
            if (saveFileDialog.ShowDialog() == true)
            {
                string fullPath = saveFileDialog.FileName;

                if (fullPath.EndsWith(".aec"))
                {
                    var output = File.Create(fullPath);
                    exportObjects.WriteTo(output);
                    output.Close();
                }
                else if (fullPath.EndsWith(".json"))
                {
                    var output = File.Create(fullPath);
                    var json = JsonConvert.SerializeObject(exportObjects, Formatting.Indented);
                    var bytes = Encoding.UTF8.GetBytes(json);
                    output.Write(bytes, 0, bytes.Length);
                    output.Close();
                }
                else
                {
                    // Handle other file extensions or provide an error message
                    StatusBar.MessageQueue.Enqueue($"Invalid file extension selected.", null, null, null, false, true, TimeSpan.FromSeconds(2));
                    return;
                }

                AddExportObjectCounter.Badge = 0;
                exportSprCounter = 0;
                exportObjects = new Appearances();
                StatusBar.MessageQueue.Enqueue($"Successfully exported objects.", null, null, null, false, true, TimeSpan.FromSeconds(2));
            }
        }
        

Save Error

Well, my speechless friend for the program saved our lives.

Come on, I noticed that in this new update or in an old one, when exporting, importing and then converting to use the object builder it is shuffling the sprites of some objects, the outfit is inverted, some layers end up being deleted and a conversion of the entire outfit occurs for the blend layer.

[Question] How to export in JSON?

Hi, nice project!

Just a question, is it possible to export all items data to a JSON file?
image
I can export the items to Appearances.aec, but I can't read it like json.
I wish to export items like it appears in Full info under Other tab, like the above screenshot

Some improvement ideas

First of all thank you for updating this amazing app, it really helps a lot for us to add easier new assets to our projects.
I would like to list some features I would love to see next !

**- An option to duplicate multiple selected items (currently you can select let's say 10 items, but it will only duplicate the first one)

  • A dark theme Asset Editor (When I spend more than 30 min my eyes start to hurt because the app is so bright ! )
  • A fix when you duplicate an item the app sends you to the first ID item, it should be like when you click on duplicate you stay on the ID you duplicated or the next ID created (duplicated one) instead of bringing the User to the first ID.
  • When you change the sprite and click save, you have to scroll in order to see the item image updated (it should update the sprite image when clicking the save button, but somehow it doesn't work and you have to scroll up/down to update it)**
  • Also implement adding a 96x96 sprites!

For me that's the features/fixes, other than that it's perfect and I really appreciate the effort you're putting into !
Thanks in advance

Loop Type not supported for custom items

When new Item is created while adding the texture and setting up the Sprite Animation, the Loop Type is not saved correctly.
When it's set and compiled if the Editor is launched again the loop is back to not set. Causing the sprites to use the Ping Pong as default.

The issue appeared in the new release. In the previous version the loop type was correctly saved.

image

crash

the program crash when i try create a new object on client 12.61 and 12.64

Import itens

If you try to re-import items for new id numbers, the attributes are not adding up with the new ids, for example market and cyclopedia.

If an item had id 49000 and re-import it to 50000, the attributes do not change either.

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.