Duck! Me? – A text adventure in PunyInform – Call for beta testers

development and releases of new/rewritten text adventures
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

Bug fixes, built using --OSRDCH so that one can paste in test commands under emulation.

Jeremy
Attachments
ADV1-Beta-12-20210712.ssd
(125.5 KiB) Downloaded 7 times
iamaran
Posts: 473
Joined: Tue Mar 14, 2006 8:08 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by iamaran »

EdwardianDuck wrote:
Mon Mar 15, 2021 4:13 pm
On the off-chance anyone is still interested in this, I've uploaded Beta 10 to the top post. Hopefully this will be the final beta. Mostly just internal fixes to the skeleton code & enhancements for the future. Other than a few text changes, there are no changes to actual game play.

Jeremy
I'm interested, but very time-poor atm and can't see this changing in the foreseeable, otherwise I'd have definitely been there from the start. Sorry.
fredrikr
Posts: 65
Joined: Sat Jul 18, 2020 11:20 pm
Contact:

Re: Duck! Me? – A text adventure – Now in PunyInform

Post by fredrikr »

EdwardianDuck wrote:
Sun Jul 11, 2021 7:05 pm
Compared to the original version, it is a lot slower, but should run on a wider range of machines.
You should probably read the Game Author's Guide, available in the "documentation" folder of your PunyInform directory, to get some ideas for things you can do to make the game smaller and faster. Making a game smaller actually makes it faster as well, since a smaller game means less swapping.

I'd be happy to have a look at the source too, if you want, to see if I spot anything you can do in a more efficient manner. Let me know if you're interested.
fuzzel
Posts: 818
Joined: Sun Jan 02, 2005 1:16 pm
Location: Cullercoats, North Tyneside
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by fuzzel »

I'm lucky enough to have a bit of free time for the next few weeks so I'm intending to play a few adventures. First up is Duck! Me? And duck me, what a cracker it is! So far I've spent a couple of hours wandering around, getting a feel for the game and testing a few ideas out. I've made a map of the easy to reach locations with objects and puzzles noted down and I'll be taking this away with me on a short break so I can have a good ponder and hopefully come up with a decent list of things to try out when I get back. I have to say, I've played a lot of BBC games since getting back into the beeb a few years ago and this one is right up there with the likes of Locks of Luck, What's Eeyores? and It's Magic for sheer un-put-down-able-ness. Something about it reminds me of Infocom, not sure whether it's the high quality prose, the slight unease you get that perhaps you're the victim in some horribly mad science experiment or maybe it's just the sheer originality. Whatever, it's a damn good game. Looking forward to seeing how far I get before I'm back begging for clues.
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

@fredrikr Thank you for the input. I went through the GAG at the weekend and applied the recommended optimisations saving about 3Kb (down to about 80Kb now). I'm still working on other tweaks, so this hasn't been released yet.

@fuzzel I'm glad you're enjoying it so far. I have some time off work next week so I'm hoping to give this a final polish and get back to the sequel.

I'm also interested to know if players think the PunyInform version (latest beta) plays at an acceptable speed on whatever configuration you are using, even if players just try a few locations to gauge speed but don't play through the game. I don't have a feel for what performance is expected for an adventure game on vintage kit. On a Master 128 using a PiTubeDirect 2nd processor it runs really well at ~273Mhz.

Jeremy
fredrikr
Posts: 65
Joined: Sat Jul 18, 2020 11:20 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by fredrikr »

EdwardianDuck wrote:
Wed Jul 21, 2021 8:34 am
I went through the GAG at the weekend and applied the recommended optimisations saving about 3Kb (down to about 80Kb now). I'm still working on other tweaks, so this hasn't been released yet.
Great!

Note: The most important thing you can do for speed is to start using OPTIONAL_MANUAL_SCOPE.
EdwardianDuck wrote:
Wed Jul 21, 2021 8:34 am
I'm also interested to know if players think the PunyInform version (latest beta) plays at an acceptable speed on whatever configuration you are using, even if players just try a few locations to gauge speed but don't play through the game. I don't have a feel for what performance is expected for an adventure game on vintage kit. On a Master 128 using a PiTubeDirect 2nd processor it runs really well at ~273Mhz.
It should run well at 273 MHz... The challenge is in getting it to run well at 1-2 MHz. :D

Not sure what config you've tested on. While Infocom games could be played on 32 KB machines, games were never fast on those machines. The computer typically needs ~2KB for system stuff. The Z-code interpreter is ~10 KB. Parts of the story file that are needed every turn (object data, input buffers, the parser and vocabulary etc) is ~30 KB for an early Infocom game. Just adding all this up, you can see that the interpreter will have to swap from disk constantly. With 48 KB of RAM it's much better, and 64 KB works quite well. Early Infocom releases didn't even bother about using the last 12 KB of RAM on the C64, as they're slightly harder to access, and these games worked quite well.

Also note that Ozmoo isn't the tiniest interpreter around. Our goal was to write the best interpreter we could for the C64, thus sometimes opting for solutions that take up more space but are faster or make for a better presentation. If we had aimed to make the smallest possible z3 interpreter, we could probably have shaved off ~2 KB.

The PunyInform library has about the same memory footprint as Infocom's original "library" (they didn't really have a library, but they had a bunch of code which was copied from game to game, which worked much like a library). The Inform 6 library adds ~35 KB to this, and most of it is used every turn. This is the biggest reason why Inform 6 games can't be expected to perform well on 8-bit machines.

Compare the speed of your game to playing Zork 1, built with Ozmoo, on the same machine. If your game is about as fast, there's not much more you can do to improve the speed.
fredrikr
Posts: 65
Joined: Sat Jul 18, 2020 11:20 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by fredrikr »

If you want more beta-testers, you may want to publish the beta as a z3 file as well.

Once you're ready for a production release, you could use https://github.com/ByteProject/Puddle-BuildTools to build 25 different disk images, covering all sorts of retro systems.
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

Thank you for the guidance. After working through the rest of the recommended optimisations and disabling a couple of things I'd added which are clearly slow, I was able to get about the same speed as Zork 1, so I'm moving in the right direction. The worst offender is my code to implement variable light levels. Having compared this to the semidark example, I have clearly overengineered this. I'll look into the semidark example and see how I can modify it to suit my needs. It seems pretty straightforward.

Jeremy
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

No new public beta yet, as having removed the variable light level code, the game is no longer completable!

Jeremy
fuzzel
Posts: 818
Joined: Sun Jan 02, 2005 1:16 pm
Location: Cullercoats, North Tyneside
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by fuzzel »

I've just completed Duck! Me? I very much enjoyed it and am looking forward to the sequel. I got stumped a couple of times - I was lucky that I blundered across the pryrel after activating the znpuvar whilst looking for something else. Am I right in thinking that the fbnc, crevfpbcr and fcvprf are erq ureevatf ? Also, I couldn't find a use for the ynetr ebpx apart from getting a clue when gnxvat vg.
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

Well done! I'm glad you enjoyed it. Just out of curiosity, which beta did you play?

Yes, the items mentioned are <erq ureevatf> and the <ynetr ebpx> is just hiding a clue.

The crevfpbcr is slightly interactive, but is mostly there for the benefit of a colleague who plays adventure games. You can <ybbx guebhtu crevfpbcr> if you like.

Jeremy
fuzzel
Posts: 818
Joined: Sun Jan 02, 2005 1:16 pm
Location: Cullercoats, North Tyneside
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by fuzzel »

I used beta 10 which I assumed was the most up to date. The only bug I encountered was when cvpxvat hc gur ebpx you get the zrffntr jurerire lbh cvpx vg hc.
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure – Call for beta testers

Post by EdwardianDuck »

That's the last beta I wrote from scratch in 6502 assembler. The latest beta is 12 which has been rewritten in PunyInform and has been extended (watch out for pesky <frpbaqnel irtrgnoyr zngrevnyvfngvbaf>) as I wasn't entirely satisfied with some of the puzzles.

For some reason, perhaps a forum limit, I wasn't able to upload more files to the top post, so beta 12 is attached to the first post on page 3.

While the 6502 version was an interesting project, I've identified a number of design issues which would require a major rethink and rewrite to resolve, which is a shame, hence the move to PunyInform.

I'm currently working on resolving some performance issues with this version.

Jeremy
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by EdwardianDuck »

I've uploaded the latest beta (13) to the top post. I've removed the earlier betas (1-10) to allow adding the latest one. I imagine that if anyone is collecting these, they've already downloaded them. They can always be reposted should the need arise.

As per @fredrikr's suggestion, I've also posted the Z3 version (zipped) in case anyone wants to play it on more modern equipment (I know, heresy).

Changes since beta 12 include:
  • A complete rewrite of the way partial darkness is implemented. This was far too slow originally. The current implementation uses the "semidark" example as a starting point.
  • The "exits" display has also been reimplemented to be faster and can now be toggled using the EXITS ON and EXITS OFF commands.
  • Change from Inform 6.34 to 6.35 as this fixes a bug which made the game hard/impossible to complete in Z3 format.
  • Changed to Z3 format (was Z5).
  • Various performance improvements as per the PunyInform documentation.
Changes since beta 10 include:
  • gur arrqyr naq guernq ner abg whfg ylvat nebhaq
  • gurer'f n snve ovg zber gb gur pryrel/qevax chmmyr
  • n arj chmmyr va gur fghql
I felt the game was a little empty/flat as it stood and needed a bit more depth.

I'm fairly happy with it now as a game and the performance seems reasonable on a basic Master 128. On a Master Turbo (4Mhz) it's really quite nippy.

From here onwards I think it will just be a case of fixing reported bugs and perhaps tweaking some of the text.

Now, where did I put those scraps of paper with the ideas for the sequel?

Jeremy
SteveF
Posts: 1008
Joined: Fri Aug 28, 2015 9:34 pm
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by SteveF »

I'm glad you got to a satisfactory point with the optimisations! I've had a *very* quick play with this and it looks very nicely done.

Some of the information in the first post is a bit out of date now, though. The Ozmoo version of the game will run on all sorts of Acorn machines, not just a Master, and the RAMSAVE/RAMLOAD/VERBS/CO40 commands aren't recognised. It might be worth tweaking that, so as not to put the model B purists off. :-)
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by EdwardianDuck »

Good point, thank you. Top post updated.

Jeremy
User avatar
BigEd
Posts: 4238
Joined: Sun Jan 24, 2010 10:24 am
Location: West Country
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by BigEd »

(I'd be very interested to hear reflections on the differences between implementing in 6502 and in Ozmoo. Perhaps here, or perhaps at a dev night ABUG?)
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by EdwardianDuck »

I've replaced the files attached to the top post with those for beta 14.

Lots of cosmetic changes (so many new lines added), added some extra responses (trying to get or move static objects now shows more tailored messages) and some minor fixes.

Special thanks to @fredrikr for the test report, advice and an overnight =D> fix for a PunyInform bug which was impacting the sequel.

Jeremy
EdwardianDuck
Posts: 191
Joined: Thu Aug 10, 2017 9:07 pm
Contact:

Re: Duck! Me? – A text adventure in PunyInform – Call for beta testers

Post by EdwardianDuck »

I've replaced the files attached to the top post with those for beta 15 in response to further testing by @fredrikr.

I've also created a basic page (mostly a placeholder) for this here.

Jeremy
Post Reply

Return to “new projects and releases: text and graphic adventures”