So, over the weekend, I perused the intfiction.org forums for the first time in years, catching up on new and old news. I caught this thread, where a maintainer of the Babel tools was trying to detect the IFID from Hugo games that declare one. I think he got it working? I'm not entirely sure.
But it got me thinking about how it'd be nice if the Hugo compiler generated an UUID-style IFID string constant for the game if the source doesn't already declare one, and since people who read this board (and if not here, people we know) are basically the maintainers of the Hugo compiler now, maybe we should discuss this and any other possible compiler improvements we can think of. Of course, if any idea got that far, I'd still want to ask Kent for his blessing before we implement it, but I figured a post here would be a good place to start.
Does anybody have anything they'd want to see? (*)
Would the IFID idea be worth the trouble of getting someone to implement it?
* - Of course, I'm not looking for big feature updates to the compiler that would require updated interpreters- just things that would work with the existing file format.
Hugo compiler wish list
Moderators: Ice Cream Jonsey, joltcountry
-
- Posts: 2255
- Joined: Mon Apr 29, 2002 6:23 pm
- Location: Milwaukee
- RealNC
- Posts: 2301
- Joined: Wed Mar 07, 2012 4:32 am
Re: Hugo compiler wish list
How do you even add an IFID to a Hugo game?
- Ice Cream Jonsey
- Posts: 30175
- Joined: Sat Apr 27, 2002 2:44 pm
- Location: Colorado
- Contact:
-
- Posts: 2255
- Joined: Mon Apr 29, 2002 6:23 pm
- Location: Milwaukee
Re: Hugo compiler wish list
In the past, I have used the IFID Generator site:
http://www.tads.org/ifidgen/ifidgen
And then I add it to the game source as an IFID string constant.
http://www.tads.org/ifidgen/ifidgen
And then I add it to the game source as an IFID string constant.
- Tdarcos
- Posts: 9556
- Joined: Fri May 16, 2008 9:25 am
- Location: Arlington, Virginia
- Contact:
Re: Hugo compiler wish list
UUIDs - also called GUIDs - were all but {00000000-0000-0000-C000-000000000046}* at the time Hugo was created. They are only needed when the game is either finalized or ready for posting to the IFID. It's such a bespoke and irrelevant task to the game's development, that I think it's not important
enough to justify the time used to develop a generator. As noted, there is already an online generator, and Microsoft includes the guidgen program for C compilers. It's a lot of work for very little return. Upgrade work should be the things that are important for game developers and that they would use regularly, either when writing and playtesting or when released.
- - - -
* This is the UUID for "iUnknown".
enough to justify the time used to develop a generator. As noted, there is already an online generator, and Microsoft includes the guidgen program for C compilers. It's a lot of work for very little return. Upgrade work should be the things that are important for game developers and that they would use regularly, either when writing and playtesting or when released.
- - - -
* This is the UUID for "iUnknown".
"When I die, I want it easy and peaceful in my sleep, like my uncle.
Not screaming and crying like his passengers."
Not screaming and crying like his passengers."
- RealNC
- Posts: 2301
- Joined: Wed Mar 07, 2012 4:32 am
Re: Hugo compiler wish list
That's not the...
Never mind.
Never mind.
-
- Posts: 2255
- Joined: Mon Apr 29, 2002 6:23 pm
- Location: Milwaukee
Re: Hugo compiler wish list
Just updating this thread to say that it looks like they got the scraper working.Roody_Yogurt wrote: Mon May 16, 2022 7:42 pm So, over the weekend, I perused the intfiction.org forums for the first time in years, catching up on new and old news. I caught this thread, where a maintainer of the Babel tools was trying to detect the IFID from Hugo games that declare one. I think he got it working? I'm not entirely sure.
Code: Select all
/* We look for the pattern XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX (8-4-4-4-12)
* where X is a number or A-F.
* One Hugo game, PAXLess, uses lowercase letters. The rest all use uppercase.
*/