Posts

Showing posts from August, 2017

Gamemaker: Quirks

In working with Gamemaker Studio, while it's built-in language, GML, is very much like C# with training wheels on, it just does some things differently from other programming languages.


An obvious example is that it doesn't need type declarations, and couldn't give less of a shit about line endings. The following would be required in C# and most programming languages:

string name = "Joel";
int age = 32;

In GML, you can get away with:

name = "Joel"
age = 32

While this is great and makes things quicker, it does kind of foster bad habits.


A less obvious example is that Gamemaker Studio treats strings as non-0 indexed char arrays, which is surprising in itself, but also that index 0 will return the data for index 1, rather than an error.

This was an infuriating quirk that messed with a text rendering script for like, ages. If I had the string "Peter Piper Picks Peppers" and tried to copy it out one character at a time from index 0, I'd get:

PP…

PowerDVD

Gods, I hate PowerDVD. It's best summarized as "Hot garbage that someone was paid to make", and it is quite literally one of the worst media playback programs I've ever had to use. I think I'd have to deliberately hunt for a broken media player to find worse.

But if I want to play Blu-Ray DVDs, it's one of the only options I've got, as it's sadly one of the few programs capable of doing so, due to security encryption and such, and it's either use Powershite, or swap disks in my PS4 all the time.

But I digress.


The problem is that once installed in Windows 10, no matter what defaults I set or how I set up auto-play, double-clicking the icon for a DVD just opens it in PowerDVD.

The solution was in a forum thread; the subject of editing registry keys to remove references to PowerDVD was mentioned.

A Cyberlink rep in the thread said to remove:


HKEY_CURRENT_USER\\Software\\Classes\\SystemFileAssociations\\Audio\\Shell\\PowerDVD13CommandVerb
HKEY_CURRE…

Fun with OTRS: Generic Agent

We use OTRS in a professional capacity, and over time, the database of tickets has gotten rather unruly.
To reduce this, we'd have to a) corral "junk" tickets better, and b) remove them from the database more permanently.
Both can be achieved with the "Generic Agent" in OTRS. As a test, I was hunting for bounce-back notices that were older than 30 days so they could be moved to a spam queue and safely deleted there.

To delete tickets permanently, the solution was easily found; under "Execute Ticket Commands" in the Generic Agent, "Delete Tickets" can be enabled, which will drop all affected tickets from the database.
For safety's sake, I configured a Generic Agent that only targeted tickets in the spam queue older than 30 days.

Targeting the correct tickets was a little harder, and searching on google yielded no swift results as apparently I was the only person who would dare try to do such a thing.
I could find tickets older than 30 day…