Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Kawa

Pages: 1 2 [3] 4 5 ... 114
A noble project, I have a particular interest in that as the fan of Zork.
Among somewhat lesser well-made text adventures, hmmmm?

SCI Development Tools / Re: SCI32 Templates
« on: March 12, 2022, 11:41:01 AM »
So sci companion has no issues rendering resource files for sci1 compatible games which use the vector based rendering and priorities. But for later sci1.1 and sci2 when sci starts using bmp style backgrounds, it has no way of saving the draw cells from the priority map?
Considering how the priority and control maps work...

In the original SCI 0.0 and 0.1, you had three bitmaps (visual, priority, control), painted in by vector commands. These can be freely edited in SCI Companion.

SCI 1.0 added a "draw image" command which painted a bitmap in the same format as a single View cel to the visual bitmap, but you could still draw on the visual bitmap in the old style, just in 256 colors instead of 16, and there was no more dithering. Some SQ4 screens are entirely vector-drawn, and the Jones game board has its inside border drawn that way. All of this also goes for the 16-color SCI 1.0 games. This is why most SCI 1.0 Picture resources have one big "draw image" command and then draw the priority and control bitmaps the old way.

Around SCI 1.1, the control bitmap was deprecated -- you could still use it, but the later games used Polygon objects exclusively for both walkable areas and Feature hotspots.

In SCI 2.0, the control bitmap was removed, along with every single vector drawing command. You could no longer directly draw on the priority bitmap; instead each layer of the image would have its own "draw image" command, with a position and priority value:

So what SCI Companion needs to properly and fully support SCI 2.x Picture resources is a way to change these position and priority values.

It seems that when I pull up resources from a game like QFG4 and pull up the pic file, the priority map is shown and recognized by sci companion. But when I export / save that resource as a patch file it is corrupted. My thoughts were maybe it was a conversion issue from p26 p56 but I was not sure.
There was a bug involving exported pics that may be in play here. Past tense.

SCI Development Tools / Re: SCI32 Templates
« on: March 12, 2022, 05:07:58 AM »
Far as I can tell, literally the only 16-bit game resource that uses an un-editable feature is the game board in Jones in the Fast Lane. There's nothing illegal about it, SCI Companion just assumes you have one "draw image" command, making it unclear how to add more and if you do have multiple you can't change their position like in Jones. Priorities seem to be fine, being drawn the old vector way in all 16-bit SCIs.

It's 32-bit SCI where the fun begins, since its priority screen isn't vectors at all -- you need a clear way to add multiple bitmap layers, and position and prioritize them. That this would let you reproduce the Jones game board is just a bonus. But from what I can tell, what it shows is basically correct. Not that it matters much if you can't edit it to check...

Of course, that's just pictures, and discounts any weird but obvious bugs like views coming out all black or obviously with the wrong stride.

SCI Development Tools / Re: SCI32 Templates
« on: March 11, 2022, 04:54:59 PM »
* queue and uh... as far as I know, nothing is in it. I've looked into loading RESSCI volumes without having to rename them but the code scared me off. As far as picture editing goes, the main deal is that you can't change the position and priority of a given "draw image" command.

(Note that the position part of that sentence also applies to Jones in the Fast Lane because that is a strange, strange game.)

Anyway, I for one welcome any and all PRs about this.

1. Have you tried with ScummVM?
That'd be cheating.

SCI Syntax Help / Re: SCI0 - Globalizing my local death sheet Script
« on: February 21, 2022, 09:00:23 AM »
If I had competence, it would've worked 😺

SCI Syntax Help / Re: SCI0 - Globalizing my local death sheet Script
« on: February 21, 2022, 08:18:32 AM »
I did write that off the top of my head without testing. Try doit: 0?

SCI Syntax Help / Re: SCI0 - Globalizing my local death sheet Script
« on: February 20, 2022, 04:52:30 PM »
Just pick a number that isn't taken by a script yet, I guess? As for how to do a custom Dialog, I'd say study the Print function.

The Print function uses temporary variables to hold a Dialog instance, one DText, one icon, one DEdit, and up to six DButtons, plus a bunch of things to track all that. It first instantiates a new Dialog ((= hDialog (Dialog new:))) and DText, then figures out what text to put in there (is it a Text tuple or a script pointer?), and finally adds the DText to the Dialog ((hDialog add: hDText)). It then goes through all the other arguments, if any, adding icons, setting titles, adding and tracking buttons, and moving things around. Finally, it opens the Dialog, calls Dialog::doit to get the user's response, and disposes it again ((hDialog open: nwNORMAL -1 doit: dispose:), to simplify).

Therefore, here's what I'd do, off the top of my head:
Code: [Select]
(procedure (DeathReport &tmp hDialog hText [str 512] theY)
(= hDialog (Dialog new:))

(Format @str {You have died %u times:} [gDeaths 0])
(= hText (DText new:))
text: @str
moveTo: 4 4
font: 0
(hDialog add: hText)
(= theY (+ 4 (hText nsBottom?)))

;;; The iteration starts here
; Put something new in str
(= hText (DText new:))
text: @str
moveTo: 4 theY
font: 4
(hDialog add: hText)
(= theY (+ 4 (hText nsBottom?)))
;;; Repeat that part until you're done.

text: {Death Count}
open: nwTITLE -1
doit: ; This should block until you click the dialog. Or a button, which we didn't add.

You might wonder if it's safe to reuse hText like that. Well, SCI10's PrintD does it, and that does in fact allow more arbitrary layouts than SCI0's Print.

SCI Syntax Help / Re: SCI0 - Globalizing my local death sheet Script
« on: February 20, 2022, 02:59:18 PM »
1. Something like a death screen doesn't need to be a Room per se, but you certainly don't want it as part of Main — there's no reason to keep a large script that may not be needed for a long time in memory.

2. Display or Print... why not a third option? Print is just a convenience function that populates a Dialog, after all, so why not use a Dialog but not Print? That'll take care of both dismissing the window and having a complicated layout inside of it.

It does not.

SCI Syntax Help / Re: SCI 1.1 - Game class, newRoom method
« on: February 12, 2022, 09:18:14 AM »
I *am* orchestrating room changes via mouse clicks, so this does make some sense that I've got a rogue mouse click that is giving me trouble.
Well ain't that interesting, hmm? What if you commented out the mice-eating?

SCI Syntax Help / Re: SCI 1.1 - Game class, newRoom method
« on: February 12, 2022, 07:09:50 AM »
What this does is eat any pending mouse clicks so you can't "buffer" any actions before the new room appears. Here's what it looks like in the original Larry 5 code:
Code: [Select]
;Eat all mice downs and mice up.
(while ((= evt (Event new: (| mouseDown mouseUp))) type?)
(evt dispose:)
(evt dispose:)
Input events are produced by the engine and queued up. The Event::new method calls the GetEvent kernel to fetch the next event from that queue, of the given type if specified. So "eating the mice" just repeatedly fetches a mouse click event from the queue, leaving the keyboard stuff, and tosses them out, until there are no more mouse clicks left.

SCI Development Tools / Re: QFG1VGA - picture format problem?
« on: February 12, 2022, 06:57:41 AM »
Tested it myself and found it working. Thanks, your changes are on the git repo now.

Interesting. Good thing it has quick fix though, but too bad it requires no other changes or you lose stuff.

By the way, 3.2.4 has been out for a few months now. Who knows?

Forum Support and Suggestions / Re: HTTPS/TLS
« on: February 11, 2022, 02:00:54 PM »
All this talk about SMF updates and how much XenForo and its add-ons cost, and I'm just sitting here with my own board software that I made...

Pages: 1 2 [3] 4 5 ... 114

SMF 2.0.19 | SMF © 2021, Simple Machines
Simple Audio Video Embedder

Page created in 0.043 seconds with 20 queries.