Hugo Open House Comp 2012 reviews

This is a discussion / support forum for the Hugo programming language by Kent Tessman. Hugo is a powerful programming language for making text games / interactive fiction with multimedia support.

Hugo download links: https://www.generalcoffee.com/hugo
Roody Yogurt's Hugo Blog: https://notdeadhugo.blogspot.com
The Hugor interpreter by RealNC: http://ifwiki.org/index.php/Hugor

Moderators: Ice Cream Jonsey, joltcountry

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Re: Hugo Open House Comp 2012 reviews

Post by Roody_Yogurt »

loafingcoyote wrote:GotoRoom.h is set up to be very configurable, so adding this feature is as simple as adding an argument that could be set to true or false by the author.
Awesome, good to know.
loafingcoyote wrote:Okay, I just realized that I didn't properly credit the use of newautomap.h in the game. I'm sorry about that. I also didn't credit the use of cango.h by Cardinal Teulbachs. I should have also mentioned that the room layout was randomized with another extension that I hope to release at some point, which I've named "mapmaker.h".
I don't mind if people don't credit any extensions I've contributed to as far as credit itself goes, but I've considered writing an auto-generating 'extensions used' page for newmenu just because it's interesting to have the behind-the-scenes workings exposed a bit. It hasn't been a priority, though.
loafingcoyote wrote:My random map generating extension is inspired by random.h but is a complete rewrite. It's still heavily under construction, but with it you can generate a random map layout that is either wide open, somewhat less wide open or a narrowly focused path.
I figured you used some variation of random.h but hearing you crafted your own extension explains why your generated maps were generally sane and seemed to have some rules applied to their layout. Sounds like it'll be a good contribution.

loafingcoyote wrote:I hadn't noticed before now, but the version in the game is 1.1. An odd thing happened when I updated to 1.3 though. Only half of the cursor and text were visible when the cursor reached the bottom of the interpreter window. I don't think this is a bug. There is a lot of code competing for the same space in "C.H.U.M.S." and I believe that Newautomap.h v 1.3 is getting into conflict with my map generating code. I'll try to release an alpha version of it soon so you can see what the problem might be.
This problem has shown up before in other things. I think it's a result of drawing windows and using locate to move the cursor around and the usage of proportional and fixed width fonts. I've uploaded a new version of newautomap.zip that takes greater care to change to fixed width before drawing windows and changing back afterwards. If that doesn't fix it, the only thing I've found to help is to play with your interpreter's font sizes and styles.

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Re: Hugo Open House Comp 2012 reviews

Post by loafingcoyote »

Roody_Yogurt wrote:
loafingcoyote wrote:I hadn't noticed before now, but the version in the game is 1.1. An odd thing happened when I updated to 1.3 though. Only half of the cursor and text were visible when the cursor reached the bottom of the interpreter window. I don't think this is a bug. There is a lot of code competing for the same space in "C.H.U.M.S." and I believe that Newautomap.h v 1.3 is getting into conflict with my map generating code. I'll try to release an alpha version of it soon so you can see what the problem might be.
This problem has shown up before in other things. I think it's a result of drawing windows and using locate to move the cursor around and the usage of proportional and fixed width fonts. I've uploaded a new version of newautomap.zip that takes greater care to change to fixed width before drawing windows and changing back afterwards. If that doesn't fix it, the only thing I've found to help is to play with your interpreter's font sizes and styles.
I'm afraid newautomap v 1.4 did the same as v 1.3, so I'm going to have to stick with v 1.1 until I have more time to figure out what's going on. I played with changing the font size and style a bit but It didn't help much.

I also noticed what might be a small bug. As I'm sure you know, when you compile newautomap without including window.h before it, you get this compiler message:
  • Include window.h first if you want to use newautomap.h's send-map-to-window functionality.
I included window.h before newautomap.h tonight and the compiler came up with this error message:
  • newautomap.h:304: routine map: Error: Expecting new line before: color
-lc

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Re: Hugo Open House Comp 2012 reviews

Post by Roody_Yogurt »

loafingcoyote wrote: I included window.h before newautomap.h tonight and the compiler came up with this error message:
  • newautomap.h:304: routine map: Error: Expecting new line before: color
-lc
Thanks, now fixed. As far as the other thing goes, good luck tracking it down. It'd be nice to be more aware of what causes that.

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Post by Roody_Yogurt »

Cyberganked (proof of concept)

From what I remember Robb saying before starting, Cyberganked, while influenced by the classic RPG Wasteland, aims to succeed in some of the areas that Wasteland faltered. For one thing, Wasteland had the player refer to a book that had a lot of extra narrative that they kept out for probably both space and copy protection-related reasons. Modern games need not be hampered like that. Also, Wasteland went wild on the character skills front, but it was a bit unclear where those skills could be used. Make fun of the “toaster repair” skill all you want, but at least you knew whether or not there was a broken toaster around. Other, more useful skills required a fair amount of luck and intuition just to find places where you could use them.

Cyberganked aims to improve on that latter point by making use of built-in object and character interaction support of the Hugo library. Interestingly enough, this proof of concept doesn’t explore that aspect yet, so it’ll be intriguing to see how non-combat skills and commands are exactly handled when that point comes.

So yeah, I think the “proof of concept” here is the skeleton of the combat, character creation, and general movement systems. As such, it’s not bad. The combat seems like it’ll be complicated enough that I’ll want to have a manual on hand to reference, which is not necessarily a bad thing. I think I had more fun poring over the high level spells in the Bard’s Tale II manual than I ever did actually playing the game, as I pretty much sucked at it. It’s been too long since a RPG had that kind of “weight” to it and look forward to the modern take on it.

The character creation system works, but it takes long enough that I end up just using the prebuilt party. Ideally, it’d allow you to make one or two characters of your own and then fill in the remaining slots with preset characters.

The first Hugo Open House release was fun to begin with, but the latest release was surprisingly more fleshed out. I don’t know if that’s just to things being really randomized in the game or due to changes between versions. Whatever the case, my first quest of the game was different in both and I’m pretty sure I saw different chatter while wandering around, too.

I’m really looking forward to playing an “ensemble cast” game like this without a single protagonist. All of Robb’s other games are fun, but some of them occasionally made me wonder why this or that protagonist attracted so many personalities. I think it’ll be a nice change of pace to see the interactions of a group without a protagonist character they all inexplicably revolve around.

I think the general display format is adequate, but I found myself occasionally annoyed by text sent to the main window. Like, when I examine a character, I thought maybe it’d be better to send the character’s stats to the “party window” instead. The combat text and text tied to graphics are fine, of course, but in other instances, it might be best to throw text to their own “page” (clearing the screen and printing them and waiting for a keypress) that’d jump back to the game after having been read.

I’m a little torn on the character creation menu, too. Part of me thinks that you should hack up newmenu so the menu starts underneath the top windows and use its functionality. The other part of it is okay with the existing format, but even in that case, you might want to use GetPrompt or something to make it look like a non-regular prompt.

Graphically and music-wise, the game is looking and sounding really sharp. Seeing black above and under the graphics doesn’t really bother me, but I know Robb has been trying to declare windows properly sized to avoid that. I think that’s kind of a losing battle, but there’s also the option of drawing the window in the same color that edges your graphic so they blend in to eachother. Of course, the graphic I was looking at was edged in a cyan color that doesn’t *quite* match my cyan color on Hugor, so choosing any non-white-or-black color might be hard to match across ports.

I’m really digging the Internet jokes. This is setting out to be a work that might be much more culturally accessible than previous games. We’re getting to the point where a lot of us can look back and see big chunks of our lives where the Internet and our relationship with it helped inform our views of our own personalities. Even when you hate every other person on the Internet, there’s a connection there that doesn’t extend to random-non-tech-savvy-guy-on-the-street, and this looks like it’ll be a great game to comment on that phenomenon.

User avatar
Ice Cream Jonsey
Posts: 28923
Joined: Sat Apr 27, 2002 2:44 pm
Location: Colorado
Contact:

Post by Ice Cream Jonsey »

In case anyone didn't see the first post or the main page, you can download the games from here:

http://www.joltcountry.com/index.php/fe ... ition-2013
the dark and gritty...Ice Cream Jonsey!

Bainespal
Posts: 151
Joined: Fri Jul 09, 2010 8:59 am

Post by Bainespal »

Great! Should we announce them on IFDB, then?

User avatar
Ice Cream Jonsey
Posts: 28923
Joined: Sat Apr 27, 2002 2:44 pm
Location: Colorado
Contact:

Post by Ice Cream Jonsey »

That's cool. If you guys could do me a favor and not make one for Cyberganked, I would appreciate that. The reason is that it really isn't a text adventure, and I don't play on keeping the proof of concept around forever.
the dark and gritty...Ice Cream Jonsey!

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Post by Roody_Yogurt »

Bainespal wrote:Great! Should we announce them on IFDB, then?
I think we'll do as we did last year, where we submit our own IFDB pages for our games. Games (with the exception of Cyberganked) should be uploaded individually to the IF Archive, as I kind of hate the minicomps folder and the way that its zips make it harder to download individual games. Plus, I figure the individual-game-upload thing offers more incentive for future updates, if anyone feels they want to do so.


This is also the post where I thank everyone for another good Hugo Open House. My two hopes for it this year were that I'd get some fine Hugo coding in before the year was up and that roodylib and other extensions would get a good testing. There were successes on both fronts.

Specifically, I'd like to thank Bainespal for his transcripts, at least one of which led to an afternoon of roodylib-improving. Thanks to Flack for finding the first CheckHeld bug. Thanks to loafingcoyote for his CheckReach problem from last year, as working together to fix that, in retrospect, was one of the final nudges before finally deciding that something like roodylib was worthwhile. Thanks to Robb for hosting the Hugo forum and a nice front page for official-sounding annoucements.

ASchultz
Posts: 1
Joined: Wed Jan 09, 2013 4:26 pm

Post by ASchultz »

Roody_Yogurt wrote:
Bainespal wrote:Great! Should we announce them on IFDB, then?
I think we'll do as we did last year, where we submit our own IFDB pages for our games.
I'm glad you guys posted it on intfiction.org. I didn't have time to do anything, because I had a couple games of my own.

Are you guys still interested in transcripts/reviews etc.? I just want to do what I can to show I'm interested in all this. I'm disappointed I didn't have the time to participate this year, but I hope I have the chance next year.

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Post by Roody_Yogurt »

Sure, we'd love more reviews and transcripts. Either post the full reviews here or post links to wherever you'd like to keep your reviews. As far as transcripts go, I guess either use the PM system on this forum or use any e-mails listed within the games themselves.

The timing for the Open House is a bit unfortunate since it's understandably a very busy time of year. If it weren't for the fact that I also use it as a kick-in-the-pants to get some Hugo work done before the year is out, I'd consider moving it. Maybe the other participants would like to weigh in? We could possibly move the Open House to the summer and then just call December "Finish Your Hugo Project" month.

In any case, I've been trying to make the Open House sound as inviting as possible, so it's nice just to hear about the interest.

User avatar
Flack
Posts: 8832
Joined: Tue Nov 18, 2008 3:02 pm
Location: Oklahoma
Contact:

Post by Flack »

Roody_Yogurt wrote:I'd consider moving it. Maybe the other participants would like to weigh in? We could possibly move the Open House to the summer and then just call December "Finish Your Hugo Project" month.
Representing the "married guy with kids" demographic, December is an impossible time of year for me to start and finish a project. I realize when it comes to IF my input carries as much weight as it does with teen pageants and running a fitness gym, but I tossed it out there anywhere because that's what I do.
"I failed a savings throw and now I am back."

User avatar
Ice Cream Jonsey
Posts: 28923
Joined: Sat Apr 27, 2002 2:44 pm
Location: Colorado
Contact:

Post by Ice Cream Jonsey »

What if it was an "end of March" thing for 2014?
the dark and gritty...Ice Cream Jonsey!

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Post by loafingcoyote »

Cyberganked (proof of concept) by Robb Sherwin

To prepare for this review I decided to do a quick replay of The Bard's Tale. I've discovered that a quick replay of The Bard's Tale isn't possible and in fact turned into an ordeal that lasted nearly three weeks. Despite the fact that I have a ton of non-Bard's Tale things to do, I couldn't pull myself away from it. I had forgotten how addicting that game is.

You might wonder why, with the huge amount of IF I have to catch up on, all the games I need to update, the several Hugo extensions that I will get ready for the archive this year and the many reviews I still have to write...why would I spend 2+ weeks of precious free time playing a game that I remember more than two decades later as being often frustrating and sometimes tedious?

The answer is that the concept is brilliant. The game is fun and flexible in ways that so many others of the era aren't. Did one of your low level characters get killed and you can't afford to resurrect him? No sweat, just make another one! Do you want to add a monk to your advanced party and need to level him up quickly? There are 396 berserkers in Harkyn's castle that can help with that. Even the combat messages, which are just simplistic so and so hits a hobgoblin for 2 points of damage are entertaining. Don't ask me why, they just are.

Just playing with all the combinations of character race and class is engaging. It was, and still is, a game that's fun to play with. It's not open ended, by any means, but sometimes feels that way since treasures and enemies re-spawn and the player isn't under any particular time constraints.

Of course, not every aspect of The Bard's Tale is positive. Many of the dungeon areas are extremely complex labyrinths. You are very likely to get lost even in areas that you are familiar with and some of the mazes have so many dark areas, blind teleports and other tricks that navigating them is difficult even with a detailed map. They are the embodiment of the phrase "twisty little passages, all alike". I can't tell you how frustrating it is for your party to be wiped out because you've been lost, wandering in the dark for over an hour.

Given this fact. It's remarkable that, as a child, not only did I complete The Bard's Tale, but committed large sections of the nearly-impossible-to-navigate labyrinths to memory. That just shows how compelling the positive aspects of this game are.

Now, this isn't a reveiw of The Bard's Tale; I just wanted to give you an idea why I'm so excited about Cyberganked. I suppose I'm envisioning the final product; a game similar to The Bard's Tale but with great writing, good music, lots of cool skills, abilities and character classes; unique enemies, interesting places to visit and, most importantly, no labyrinths that make me want to stab pencils into my eye sockets.

As to the proof of concept game itself:

I got my ass cyberganked several times trying to level up my characters before deciding that it probably wasn't implemented yet. I'll be interested to see if there's a review board of some sort or if characters level up automatically. I would tend to prefer the automatic option but I could see the need for characters having to visit special locations to improve their programing ability or gain other skills.

I love the fact that this game uses configuration files. This is an aspect of Hugo I've been figuring out lately and, although I think they're really cool, I have a few concerns. As far as I can tell, once you create a configuration file, there is no way to delete that file "in game". Therefore, if the user creates a lot of characters in Cyberganked, the only way to delete them from the roster would be to delete the configuration file manually. That really isn't a big deal and I like the fact that characters will be available for future campaigns. It's just that it would be nice to be able to do that within the game.

The menus in this game are done well, although one thing I would like to see is for menu options to be selectable with a single key press. I think it would save a lot of time over the course of a long rpg campaign and be less tedious than having to select an option, then press enter every time. This would be particularly nice for the combat sequences.

The only thing I'm slightly pessimistic about is the time it may take to make this game. I'm pretty sure I read somewhere that ICJ would like to finish it in a year and, although he certainly knows a lot more about finishing big projects than I do, I wonder if this is practical. I hope so, although I suspect that just making the RPG elements(combat, enemies, character advancement, the many skills hinted at by the character classes) may take at least a year. my own experiments with trying to create an interesting and coherent combat system for Hugo have gone well, but it's a very slow process, with lots of backtracking. Of course, it's obvious that a lot of thought has already gone into Cyberganked, so who knows how long this idea has been stewing in his head?

The other thing that may take awhile will be to write room descriptions for all the unique locations. This is an area where the makers of The Bard's Tale had an advantage. They were able to make a few graphics representing walls, doors and building fronts and then they had all they needed to make a huge number of locations with minimal effort. Compare that with the need to write many unique room descriptions for IF. It's a point that illustrates why this project has all the challenges of an RPG and IF.

To say that I'm pessimistic about the time it will take to complete this project isn't a negative thing. As Cryptozookeeper so triumphantly demonstrates, taking extra time with a piece of IF produces fantastic results. True, it's hard on the author but this, like all IF, is a labor of love. And that's the only reason to write it in the first place.


Oh, just in case anyone's interested about my progress through The Bard's Tale; I'm taking a break. I made it through Kylearan's Tower but made a wrong turn and didn't snag the onyx key. I need that key to continue and I'm not eager to reenter Kylearan's tower-maze, for reasons that anyone familiar with the game will understand all too well.

-lc

User avatar
Ice Cream Jonsey
Posts: 28923
Joined: Sat Apr 27, 2002 2:44 pm
Location: Colorado
Contact:

Post by Ice Cream Jonsey »

Wow, thank you, lc! What a nice review.
I got my ass cyberganked several times trying to level up my characters before deciding that it probably wasn't implemented yet.
Hey, sorry about that. I neglected to mention that leveling up isn't in the game just yet.
I'll be interested to see if there's a review board of some sort or if characters level up automatically.
I am going to go to the review board method, but with a slight twist!

I love the fact that this game uses configuration files. This is an aspect of Hugo I've been figuring out lately and, although I think they're really cool, I have a few concerns. As far as I can tell, once you create a configuration file, there is no way to delete that file "in game". Therefore, if the user creates a lot of characters in Cyberganked, the only way to delete them from the roster would be to delete the configuration file manually.
What I am going to end up doing is have 64 files for characters that are blank (or 128 or something) initially. So I can wipe those files clean when the player decides to delete a character. The file will still be on the disk, but just contain nothing. The game then tries to read from the file and when it can't, it realizes it can be used to save a character in the future. So the player won't have to delete anything by hand.

Hopefully. :)
the dark and gritty...Ice Cream Jonsey!

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Post by loafingcoyote »

Ice Cream Jonsey wrote:I am going to go to the review board method, but with a slight twist!
Sounds intriguing! You know, one of my favorite things about this project is its unique nature. I've never heard of anything like a near-future cyber geek CRPG. The creative possibilities are tremendous!
Ice Cream Jonsey wrote:What I am going to end up doing is have 64 files for characters that are blank (or 128 or something) initially. So I can wipe those files clean when the player decides to delete a character. The file will still be on the disk, but just contain nothing. The game then tries to read from the file and when it can't, it realizes it can be used to save a character in the future. So the player won't have to delete anything by hand.

Hopefully. :)
Alright, I didn't realize configuration files were quite this flexible. It looks like you can just wipe out all the values in a particular file and have the game reuse it later. Excellent.

One thing I've noticed about configuration files is that the Hugo Engine puts them in the same folder that it occupies. I wonder if there is a way to control where the engine puts the files?

I ask because, if other Hugo users are anything like me, they put their Hugo projects in the same place as the engine. I'm thinking that 128 or even 64 separate configuration files could potentially become unwieldy. It would be nice to be able to put them in an out of the way place.

-lc

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Post by Roody_Yogurt »

Today, I found the part in newautomap.h where the font wasn't getting reset properly. It is most likely the culprit for the line-clipping behavior you saw. Check out the new version:
http://roody.gerynarsabode.org/hbe/newautomap.zip

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Post by loafingcoyote »

Roody_Yogurt wrote:Today, I found the part in newautomap.h where the font wasn't getting reset properly. It is most likely the culprit for the line-clipping behavior you saw. Check out the new version:
http://roody.gerynarsabode.org/hbe/newautomap.zip

Yeah, that fixed it!

That odd phantom exit is still present though. I need to get C.H.U.M.S. ready for the archive but other projects have been more important/interesting. I'll work on it over the weekend and try to figure out that bug. Hopefully it's something in the game and not newautomap!

-lc

Roody_Yogurt
Posts: 2181
Joined: Mon Apr 29, 2002 6:23 pm
Location: Milwaukee

Post by Roody_Yogurt »

Awesome, good to know. I just took another look at newautomap to see if it could be responsible for that other thing. As far as I can tell, it isn't, but I don't remember what a lot of that original code does so it very well could be. Look forward to the results of your experimentations.

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Post by loafingcoyote »

The fix to my phantom exit problem was embarrassingly simple. When using newautomap, be careful how you define your directions objects. I miss defined mine like this:

Code: Select all

n_to
{
	if n_obj
		return closet_door
	else
		return closet
}
Well of course there's a n_obj, so it will always return the closet_door. Here is the correct way to do it:

Code: Select all

n_to
{
	if object = n_obj
		return closet_door
	else
		return closet
}
-lc

loafingcoyote
Posts: 89
Joined: Wed Jan 04, 2012 2:57 pm
Location: Texas

Post by loafingcoyote »

Waiting For The End by Paul Lee

This game isn't particularly dark but has a surprisingly bleak tone, depressed even. The setting is established in just a few words and there's never any question about the ultimate fate of the protagonist. This is definitely the end.

I navigated effortlessly through this work and all reasonable commands I tried were implemented. This is particularly satisfying for such a small game. I have a weak spot for small works, which is probably one reason I like ZIL so much, with its tiny initial game files(not that I'll have any serious time for ZIL until I'm retired, dead or the nature of my job changes; whichever comes first).

I was a little disappointed that there wasn't an end message but I suppose it fits the theme of the piece. The end has come, the PC is gone and what happens to him now, if anything, isn't answered or even hinted at. Much like real life, the end is abrupt and the only answers or comfort available are our own speculations.

Waiting uses Roodylib, which I think is the new standard for Hugo games. I can't imagine not using it myself. One Roodylib feature that is used effectively is STATUSTYPE4, where symbols are used to indicate the player's progress. It's a small thing and I'm sure something like it has been done before, but I thought it was innovative.

Waiting comes with its own source, which is always a nice touch. I'm amazed every time I look at the source of a game that I've just finished. I miss so much, even in a small game like this. It's one of the more disappointing aspects of IF. Authors put so much time into writing interesting and funny responses that are barely noticed. Of course, if an author gives in to the temptation to not include certain obscure responses then I guarantee that it will be noticed.

So, overall, this is a solid little game and surprisingly polished for a quick effort. Nice work!

Up Next in my belated take on the Hugo comp, I attempt to review Patty Flinger!

-lc

Post Reply