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 - lskovlun

Pages: [1] 2 3 ... 38
1
Is there any way to detect what the color of a pixel is (or the index # of the palette) when clicking on a view?  I have several views that are very large and irregularly shaped and I'd like it so that the view only responds to a click when that click isn't on a transparent portion of it.
IsItSkip kernel function detects whether a pixel in a cel is transparent. Usage something like:
Code: [Select]
(if (IsItSkip (view loop cel (- (event x?) (candidate nsLeft?)) (- (event y?) (candidate nsTop?))) ...then...)(more code/checks are needed to avoid garbage results)
This code gets the x and y of the event being processed from an event variable, and the top/left corner of the view you're testing against. IsItSkip returns a simple TRUE if the pixel is transparent, FALSE otherwise.
This unfortunately will only work on the skip (transparent) color and not other colors.

Requires the LSL6 interpreter.

2
SCI Development Tools / Re: How to extract SCR and HEP files?
« on: October 10, 2021, 07:02:56 AM »
Technically you only need to extract the script, not the heap.
in this case. Not a good habit to get into.

3
SCI Syntax Help / Re: ShakeScreen problems
« on: September 21, 2021, 01:54:52 PM »
I'm hoping someone can clarify an issue I've been struggling with for awhile now. I'm having trouble with calls to ShakeScreen. I can't get them to work on any game I've tested through SCICompanion or DosBox.
I just noticed that you're not a regular. Welcome!

How many parameters do you give to ShakeScreen? All versions of ShakeScreen will accept two, SSCI requires at least one, ScummVM seems to be fine with none, but the latter may cause erratic behavior in SSCI. For best results, specify both.

4
SCI Development Tools / Re: Decompilation Archive
« on: August 07, 2021, 12:41:11 PM »
It still amuses me that they basically rewrote the whole damn game, and still left the "poisonous snake" line.
They did this because even Guybrush Threepwood thinks snakes are poisonous. And he's a mighty pirate.

5
SCI Development Tools / Re: Decompilation Archive
« on: August 01, 2021, 04:54:08 PM »
Code: [Select]
(if (== (inventory indexOf: (theIconBar curInvIcon?)) 28)
And there's one thing that I've wondered about. Making an O(n) pass through a list (calling FirstNode/NextNode) to see what the current item is. Could be done in a single ScriptID call. It doesn't even hit the disk; they know that script 0 is in memory. For even faster execution, special-case (ScriptID 0). There are worse things they could special-case.

6
SCI Development Tools / Re: Decompilation Archive
« on: July 05, 2021, 03:25:30 PM »
Well, it's quite easy to write a vocab file from scratch without the original tools. And the system classes are known, for the most part. So if these weren't just ripped-out parts of games that we can decompile, a custom tool to fill in parts of the puzzle would be quite doable. As it is, I'm not sure it's worth the trouble.

7
EricOakford's new comment in the other thread pretty much settles it, doesn't it? If the KQ7 demo can be compiled from scratch, then with some huffing and puffing, GK1 should as well. I dunno why GKNarrator is broken.

8
SCI Development Tools / Re: Is there a SCI32 compiler? If not - why?
« on: July 04, 2021, 05:11:39 AM »
There are minor changes to the script format in SCI2 (which may or may not prevent SCI Companion from generating code for it as is). SCI3 is a major overhaul of the script format but only comprises the last few games (not GK1).

9
SCI Development Tools / Re: Is there a SCI32 compiler? If not - why?
« on: July 02, 2021, 06:09:03 PM »
I was thinking of descriptions here and here (ok, so the latter one is more like an honorable mention...).

10
If all you want is to mess around with the GK1 class library, I guess you could grab the demo and work with that. It's SCI1.1.

11
SCI Development Tools / Re: Is there a SCI32 compiler? If not - why?
« on: July 02, 2021, 12:09:01 PM »
V56/P56 definitely changed. Kawa has some blog entries about it. CSC is the new script format in SCI3. Very different format, the main advantage seems to be that you can have huge scripts in it (> 64K), somewhat counterbalanced by the fact that scripts simply are bigger in that format. Makes you wonder if it was worthwhile to change it. We used to have a complete list of huge scripts (there aren't many) in ScummVM because we couldn't load them.

12
SCI Development Tools / Re: Is there a SCI32 compiler? If not - why?
« on: July 01, 2021, 08:45:16 AM »
There are opcode differences in SCI32:
Code: [Select]
#ifdef ENABLE_SCI32
// In SCI32, some arguments are now words instead of bytes
if (getSciVersion() >= SCI_VERSION_2) {
g_sci->_opcode_formats[op_calle][2] = Script_Word;
g_sci->_opcode_formats[op_callk][1] = Script_Word;
g_sci->_opcode_formats[op_super][1] = Script_Word;
g_sci->_opcode_formats[op_send][0] = Script_Word;
g_sci->_opcode_formats[op_self][0] = Script_Word;
g_sci->_opcode_formats[op_call][1] = Script_Word;
g_sci->_opcode_formats[op_callb][1] = Script_Word;
}
I don't think anyone has a ready list of what it would take to make Companion compile SCI32 scripts.

13
SCI Development Tools / Wolfenstein 3D fizzlefade (SCI-related)
« on: May 05, 2021, 01:38:33 PM »
So today I learned why Sierra's DISSOLVE algorithm (aka dpOPEN_CHECKBOARD) works. Shame on me for not realizing earlier, but I'm not a graphics guy. It is described here in terms of Wolfenstein 3D, but it is easy to see that it is the same thing.

https://fabiensanglard.net/fizzlefade/index.php

14
Some of the old Sierra games had WORDS.TOK with odd file sizes (KQ3 in particular). If WinAGI couldn't open them, we would have heard about it, right?

15
Hadn't seen the sluicebox blog before. Excellent!

Pages: [1] 2 3 ... 38

SMF 2.0.14 | SMF © 2017, Simple Machines
Simple Audio Video Embedder

Page created in 0.11 seconds with 21 queries.