botder

[Preview | Development] Debug Console

Recommended Posts

Hello everyone.

I am scripting a debug console, which should seperate the 3 types, info, warning and error and it allows custom types too.

Github: https://github.com/Necktrox/debugconsole

Take a look:

Small Preview (to fit forum width):

RTrejLh.png

Original size:

RzJD2Gh.png

Features:

  • 3 Standard tabs for info, warning and error
  • Custom tabs for other purposes
  • Pause the debugconsole whenever you want (per tab)
  • Copy the debugmessage on click
  • Switch tabs using mouse
  • You can move the complete window
  • You can scroll with mouse wheel
  • Caches debug messages for tabs, which aren't visible
  • Ability to hide tabs by pressing on a text-button 'X'
  • Scrolling with click-and-move

Planned:

  • API

Edited by Guest

Share this post


Link to post
Isn't that what the debugscript pretty much does?

Yes, but seperated.

It's useful when you have 5 resources, which output debug information, because you have either 5 tabs for each resource or an other tab solution.

Share this post


Link to post

Had not that much time in the last days. The resource needs refactoring for some parts to avoid code repetition.

I added a close text-button (see 2nd image in the first post) and changed the code structure.

Just some questions:

• Should a tab get auto-created when outputting messages to an unknown tab name (my opinion: no)?

• Would you add something to the planned features?

Share this post


Link to post

Perhaps log the information to a lua table, so that if you DO add the tab, it's backlog exists. Otherwise, I'd agree with no.

Share this post


Link to post

There will be 2 functions: One function deletes the tab (and keeps the messages) and the second function clears the tab (deletes all the messages, but keeps the tab)

Share this post


Link to post
There will be 2 functions: One function deletes the tab (and keeps the messages) and the second function clears the tab (deletes all the messages, but keeps the tab)

What I mean is for a new message type. Don't auto open the tab, but log that in case I decide I want to open it.

Share this post


Link to post

Update

As mentioned last time, I am not investigating all my time into this resource, so don't expect fast development.

Anyway, I added today the scrollbar inclusive scrolling with the mouse wheel. Going to add the click-and-move scrolling and API functionality later and finally release it.

Pictures from scrollbar (small & original):

RTrejLh.png

RzJD2Gh.png

P.S. I hope that no moderator will strike me down for double posting (after 1 week)

Share this post


Link to post

if you could make a tab for all this will be good :)

Share this post


Link to post

Why not make it so you can have any tab have what you want? Do it like MMOs do where you have a popup that has some checkboxes to choose what is displayed on said tab. That way you could have the user choose what they want.

Share this post


Link to post

Great job, Neck. I do like the fact you also put down comments to help others understand how things are working, and even more so that you're spending so much time refactoring.

This looks like a very useful resource to me, especially if you have a few resources running and they all spit out various shit. I've never been a fan of the default debugscript, especially if something goes wrong with a render event :P

I'd agree with what Woovie said, also another suggestion I'd have is;

For example when something goes wrong with a function attached to a render event, it'll spam several of those warnings/errors per second - could you make it so they show up as one line? But the ability to collapse it?

Other than that, great work!

Share this post


Link to post

I didn't do much in the last time (to be honest, nothing yet). Was only thinking about how to split the code actually and keep it simple (the current version is a 774 line long piece of code in one file).

What I am going to add

+ Resize (still not sure)

+ Tabmoving (e.g. split debug into 2+ windows with different tabs)

+ Remove the long "Server/Client" and time indicators

+ Add right-click-action for messages (where you can see some info (time received, server/client) in a hover-window)

+ Prevent spamming

+ Make scrollwheel jump page-wise

Should I add logging for the custom tabs, because right now only the default tabs (info, warning, error) have the MTA file-logging available.

Share this post


Link to post

So basically you're using onDebugMessage in a more advanced way along with dx functions, eh well, good job, I still rather the default debugger, no offence.

Share this post


Link to post

The regular debugscript does a great job if you are not going to spam it from different sources.

Share this post


Link to post

It's not only about debugging resource warnings/errors/bugs, you can also use it to show useful information when something happens without editing the resource (which output the debug message). And that's where the debugconsole has it advantage - you can seperate the messages into tabs.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.