A collection of answers on identity subjects.
Originally published in 2019, updated in 2022.
Continue reading⚂ Tell your friends!
A collection of answers on identity subjects.
Originally published in 2019, updated in 2022.
Continue reading
(mouseover/click to play GIF)
Script in action. See: Full-sized version; that wallpaper
If you have a display-less Wacom tablet (Wacom One/Intuos/etc.) and a large enough monitor (or monitors), mapping screen space to tablet can be a bit bothersome. But that can be fixed.
Continue readinglabel hello: select dialog("Hello! What would you like to do?") { option "Count to 5": for (var i = 1; i <= 5; i = i + 1) { wait(1); trace(i + "!"); } return 1; option "Nothing": jump yousure; } label yousure: select dialog("You sure?") { option "Yes": trace("Well then,"); return 0; option "No": jump hello; }
Example of supported syntax
As some might remember, earlier this year I have published a small guide on writing interpreters, which went over the process of implementing a basic interpreter capable of evaluating expressions consisting of numbers, operators, and variables.
This continuation of the guide further expands upon concept, outlining how to support calls, statements, and branching - enough for a small scripting language.
Continue reading
Some things are numbers, some aren't
GameMaker Studio 2.2.2 released few days ago, bringing, among improvements, "GML consistency", which changes how automatic type conversion works in corner cases.
A little less known thing, together with that it also changed how GameMaker's string-to-number conversion function (real) works, having it throw an error if your string is definitely not a number.
A slight inconvenience, given that there is not a function to check if a string is a number before attempting conversion.
But, of course, that can be fixed.
Continue reading
My online multiplayer mod for Caveblazers was released last week[1]!
You can download it via Steam
for free if you own the game.
This is a post about how that went.
Continue reading
Recently someone pointed out that they never knew that GMEdit was made in Haxe, and that you often don't even know that something was made in Haxe. Which is a pretty good point - for instance, you might suspect that a lot of things that I do have some parts of them written in Haxe, but never exact.
So, as for my activities, I looked over the local projects and formed a semi-comprehensive list of which of my works to date were made in Haxe, and to what extent (excluding ones still under non-disclosure agreements, obviously).
Also includes an opening on why I like Haxe anyway.
Continue reading
Occasionally you may want to get current script's name/current line for debug purposes.
This post is about a small trick to have just that.
And a bit on debugging ds_grid out-of-bounds warnings.
Sometimes people ask me what programming languages I know / started with / have worked with in past, so this is a small post about that that I could link later.
Continue reading
(click for full-window version)
As it becomes increasingly more apparent that many people are completely unware of GameMaker Studio 2 having a light skin and fail to recognize it as being GameMaker as such, I have decided to stop using it for screenshots in my assets/blog posts.
However, the default dark skin is a little boring, so I decided to make a custom one with a familiar yellow tone for accents. This also doubles as a general explanation on how to make skins.
Continue reading
This is a small post on how to conveniently and optimally pack an arbitrary number of incoming script arguments into an array.
Continue reading