GM-EzConsole-v1.3.1 - A lot of bug fixing


GameMaker’s EzConsole v1.3.1

A bug fixing update!


Since major update v1.3.0 lauched a few weeks ago I’ve been receiving a some complaints and bugs to be fixed. Hopefully this version solves all the problems.

Here is a small list of bugs that I remember this version fixed:

Code changes:

  • Fixed blur effect doing weird flickering on fullscreen.
  • Fixed blur effect should now work correctly on different resolutions.
  • Fixed Console instance appearing outside view when changing resolutions.
  • Fixed Draw_End event not working properly when choosing an instance.
  • Fixed an error that made game silently crashing on YYC when ezConsole_callback_onClose was executed.
  • Fixed issues after trying to create console without ezConsole_prop_start_open being true.
  • Fixed an issue making the game randomly crashing after toggling visible state.
  • Reduced default ezConsole_prop_typeahead_elements from 20 to 10 for performance reasons.
  • Added a new editable prop ezConsole_prop_blur_multiplier to modify the amount of backdrop-blur to use on console.
  • Console instance will not be set to x:200 y:200 by default after creation. (I forgot to remove this after testing on v1.3.0).
  • Some variables optimization on Console instance.
  • You can now keep scrolling on type-ahead options by keep holding the navigation keys.
  • Added ezConsole_custom_themes to ONLY EDIT HERE folder.
  • Maximum number of type-ahead instances suggestions increased from 128 to 256.
  • Console messages will now remove all multiple spaces between arguments and at the end of the message (So i.e: delete test will now be send as delete test).
  • debug_view base command now works properly.
  • Added “Malformed instance_id” message when choosing instances already deleted.
  • Fixed an issue that crashed the game when choosing objects that had no sprite with type-ahead suggestions enabled.
  • Removed some left-over show_debug_message lines from previous versions.
  • Added no_output argument to ezConsole_log, ezConsole_info, ezConsole_warn and ezConsole_error functions to disable logging on IDE’s output tab.
  • Performance improvements.
  • Fixed some issues with base commands.

Documentation changes:

  • Added missing documentation for ezConsole_key_nav_*, ezConsole_key_auto_complete and ezConsole_key_send_line editable props.
  • Added !important notes for stuff added on v1.3.0+.

Hopefully this update fullfill your requests. Remeber that you can ask me for features or submit bugs on the comments of the main page or in the github repository.

Happy Gamemaking!

Files

GM-Debug-Console-demo-v1.3.1.zip 4.1 MB
Mar 21, 2024
GM-ez-Console-v1.3.1.yymps 167 kB
Mar 21, 2024

Get GM-Ez-Console

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

Hey there! I'm in love with newly updated EzConsole!!!
It feels so much smoother and nicer to use in general now. 

A special like and thanks for adding that goto command which I suggested!

Now, time for some questions and suggestions =)

1. New typeahead for assets works as a charm. My only question is about 256 typeahead limit which is mentioned in this devlog. Let's say I have 300 instances of oWall and 1 instance of oPlayer. Will I still be able to do "set oPlayer:<id> ..." if those 256 typeahead options are all occupied by walls?

2. I really appreciate you made it possible to add custom options. Anyways, there is still no way to create those options dynamically. Let's say I'm making an rpg game where I create npcs with randomly generated names. And now for debugging purposes I want to add a custom command which will find and npc by his name. For that I'd want my command to be able to look through all the npc instances and collect all their names. And show them in typeahead for me.  The easiest way of doing this (as I see it) is simply pass a callback function to EzCommand which will do the job every time I use this command

P.s. I would like to become a contributor for this project. I do believe such projects provide a great opportunity to learn skills from each other and develop this cooperative programming flexibility, setting common coding conventions... and things of that nature =) 

Also you seem to be a nice and responsive person, so it'd be cool to chat. Feel free to reach me at DC _gavrik_

(1 edit)

Hey there! Sorry for not answer before, I move out from my country and haven’t been on a PC since the day I posted this.

About the questions, I’ll try to answer as best as I can remember, but we can talk later on DC if I’m wrong about it :)

  1. The 256 should only be the limit of instances to index at the same time, so, if you have more than 256 instances of “oWall”, then looking for an specific wall would be a pain, but if you are looking for oPlayer, as soon as you write “oP” the oPlayer instance should pop in (if there’s no 256 “oP” instances before it).

  2. I have thought about it when I was developing the feature, but I’m still not sure how to implement it, I thought on some possible implementations but yours seems very reasonable, what I could think now is:

  • An extra callback parameter for ArgumentWithOptions constructor. But this would mean to create a new parameter for JSON files.
  • A new ArgumentWithDynamicOptions constructor. This may change the Argument struct.
  • A rework of the Argument constructors leaving on one “Argument” constructor, but using a enum of types (DEFAULT, WITH_OPTIONS, DYNAMIC_OPTIONS, etc) to simplify everything in one struct.

Btw, would love to have contributors to the project! Thank you for your interest, I may not be too responsive these first weeks, but I would love to have a chat with you, will add you to DC nos :)