MindRage
Toss Me
- Joined
- Nov 11, 2008
- Messages
- 474
- Reaction score
- 71
Im currently making a tool i call Minotaur.
Minotaur is a Integrated Development Environment that enables you to access the entire data from one program.
Here is a early screenshot.
As you can see its not as detailed as i want it to be but teh picture explain a bit better than my words XD..
I will discuss the things in detail later.
Here is a list of what i will try to create:
Let me explain the interface so far:
The Toolbar
Since i think its boring to have the old menu/toolbar style i will use a menu style where you can access things as quickly as you want.
For example, To switch between editors, they will be placed in the first place of the toolbar where there will be a list of available editors,
Plugin editors will be added to the list ofc but to enable editors they have to be enabled trough options. Due to they often can be corrupted.
Security in this case can be a mess..
But anyways everything will be accessed trought menus in the toolbar.
The Data browser
This sidebar will make you able to browse all of you data.
There will be two modes.
XML mode and Directory mode.
XML mode will read all you XML files and allow you to manipulate all XML values and also add/remove things.
This is the thing that i think will be most used for newbies, since they can access anything they want and avoid errors.
The directory mode gives you the ability to browse entire folders and scripts that arent within the XML files read.
This is mostly for those who can and uses multiple files for large systems, For a beggining this will be the Python way of editing before i integrate a way to find registered items/actions trough pure file reading.. though.. it would take alot of time...
The workspace
In this place all the open windows will be placed and accessible. The plugin windows will only appear in this place to make it easier to collect everything.
Since every editor is open on its own instance it will be able to open how many windows as you want of any kind :3
Even two map editors if you would want that... exept it will take alot of memory opening two maps..
The status bar
In the first bar called "label1" will be placed as a "Help" menu. It will show general information about the tool.
Instead of "tooltip" this will also be expanded futher descriptions.
Next there will be a progress bar for large processes such as loading XML files or maps. All these processes will be threaded if possible or runned to not make the applcation lag, It might take longer to run. but it will ensure the data to be safe and not be lost due to an "Doesn't respond" message.
And to experiment i will use a certain GUI option system i call "orbit selection".
Holding in right click will be opening a kind of "Right click" menu that you simply can select by moving the mouse.
it might not fit in very good, but it will be useful when mapping, You could basically map with only your mouse XD..
If you are interested in helping in this project since it is QUITE big. Just PM me. I could use some help in development when it comes to loading OTBM and .Dat files :3
Minotaur is a Integrated Development Environment that enables you to access the entire data from one program.
Here is a early screenshot.
As you can see its not as detailed as i want it to be but teh picture explain a bit better than my words XD..
I will discuss the things in detail later.
Here is a list of what i will try to create:
- Scripting Enviorment
This means syntax highlighting and function list. - Scripting Interface
Lua will be integrated in this enviorment as a scripting system for the IDE, or as a syntax checker for the script editor.
Will maybe add plans to integrate more with IronPython once PyOT gets more usage. - Map Editor
The map will be loaded to be able to edit as in regular map editing programs.
Since the map editor will also have APIs as plugins. - Plugin System
This is what makes the editor so good.
The program is designed in the .net framework and will be able to extend anything as its tool.
Every "Editor" window will be created. will be a DLL plugin that will be loaded so you can add any extra tool into the enviorment.
All APIs allowed to access things in the editor such as XML file info and Map Editor will be accessed from a general DLL.
Options such as Get .Dat info, Sprites or core features will be accessed trough the general dll. - Compability with many verisions as possible
The entire scripting system and XML loading system will be overrided with certain client verisions and TFS/opentibia verisions.
This will also be extended to make PYots override to a python based system. - XML Reading and integrating
All XML files will be placed in a tree where they easily can be edited and read. Since this allows you to know all hidden features for creatures and NPCs even Item attributes with ease. - [Optional] Server-based access, allowing secure way of development and live editing
This is a hard but very very useful feature which i MIGHT integrate.
A login based system that makes people able to access the data from another computer to ensure a secure way of making stuff.
There will be a "Access" list for each member or group that allow them to edit maps and read maps on certain sections, or edit certain scripts.
Let me explain the interface so far:
The Toolbar
Since i think its boring to have the old menu/toolbar style i will use a menu style where you can access things as quickly as you want.
For example, To switch between editors, they will be placed in the first place of the toolbar where there will be a list of available editors,
Plugin editors will be added to the list ofc but to enable editors they have to be enabled trough options. Due to they often can be corrupted.
Security in this case can be a mess..
But anyways everything will be accessed trought menus in the toolbar.
The Data browser
This sidebar will make you able to browse all of you data.
There will be two modes.
XML mode and Directory mode.
XML mode will read all you XML files and allow you to manipulate all XML values and also add/remove things.
This is the thing that i think will be most used for newbies, since they can access anything they want and avoid errors.
The directory mode gives you the ability to browse entire folders and scripts that arent within the XML files read.
This is mostly for those who can and uses multiple files for large systems, For a beggining this will be the Python way of editing before i integrate a way to find registered items/actions trough pure file reading.. though.. it would take alot of time...
The workspace
In this place all the open windows will be placed and accessible. The plugin windows will only appear in this place to make it easier to collect everything.
Since every editor is open on its own instance it will be able to open how many windows as you want of any kind :3
Even two map editors if you would want that... exept it will take alot of memory opening two maps..
The status bar
In the first bar called "label1" will be placed as a "Help" menu. It will show general information about the tool.
Instead of "tooltip" this will also be expanded futher descriptions.
Next there will be a progress bar for large processes such as loading XML files or maps. All these processes will be threaded if possible or runned to not make the applcation lag, It might take longer to run. but it will ensure the data to be safe and not be lost due to an "Doesn't respond" message.
And to experiment i will use a certain GUI option system i call "orbit selection".
Holding in right click will be opening a kind of "Right click" menu that you simply can select by moving the mouse.
it might not fit in very good, but it will be useful when mapping, You could basically map with only your mouse XD..
If you are interested in helping in this project since it is QUITE big. Just PM me. I could use some help in development when it comes to loading OTBM and .Dat files :3