SCI studio problem

Robin_Gravel When I add a new picture to the template, I get
"You are attempting to load and sci game which not
sci0" message.

And the sci studio refuses to load the template again after that.

I'm using win98.

Robin Gravel


Brian_Provinciano I found this problem as well. It will be fixed by the next release (tomorrow).
Robin_Gravel Hi Brian.

I downloaded your lastest version of sci studio today.

Now. I get "param
Brian_Provinciano
Robin_Gravel wrote:

Hi Brian.

I downloaded your lastest version of sci studio today.

Now. I get "param
Robin_Gravel Thanks Brian. I removed the view.999 from the template. Now I have sci programming problem. I changed one line in script 000 and I get this message "Segment name expected" somewhere at "EXPORTED Procedure #6" area and can't be compiled. string_0C52 "mygame" // was lsl3 the only line I changed string_0C57 "Iitem" string_0C5D "Nothing" string_0C65 "statusCode" string_0C70 "ego" string_0C74 "scoreSound" EXPORTED Procedure #6 (procedure proc_09D0
Brian_Provinciano The compiler does not compile disassembled scripts made with SCI Disassembler. They are different in a different lanuage. The disassembled scripts are for reference when coding your own scripts.

Disassembled scripts use "SCI Byte Code". while SCI Studio compiles "SCI Source Code".
Robin_Gravel There's a way to convert from sci byte code to sci source code?

Or the template is not complete yet at the moment?

Robin Gravel
Brian_Provinciano I created the template by manually reading the SCI Byte Code, and programming the SCI Source code by hand.

For example, I read...
pushi 234 // $EA canControl
pushi 1 // $1 superClass
pushi 0 // $0 species
pushi 226 // $E2 canInput
pushi 1 // $1 superClass
pushi 0 // $0 species
class User
send 12

pushi 210 // $D2 setMotion
pushi 1 // $1 superClass
pushi 0 // $0 species < here's the problem
lal global_0000
send 6
and then write...
(User:
canControl(FALSE)
canInput(FALSE)
)
(send gEgo:setMotion(0))

It's all done by hand, line by line though.
Robin_Gravel I should left sci programming for a while. Thanks again Brian for the help.

Robin Gravel
Mokalus_of_Borg I don't know if it supports the same disassembled syntax as Brian's Disassembler, but the SCI Toolchain listed at the Ultimate AGI & SCI Website contains an SCI assembler. That would be the tool to use for recompiling disassembled bytecode.

Mokalus of Borg

PS - I wouldn't recommend it for performing anything but small changes, though.
PPS - Otherwise, you could be risking your sanity.
Brian_Provinciano Don't worry about the SCI Byte Code. You will never need to use it. The lanuage you will be making SCI games with is nothing like that.

The SCI Byte Code cannot be recompiled. It is only there for reference (kind of like pseudocode).

The Toolchain is incredibly incomplete and not only uses a different syntax, but doesn't even support objects.
Mokalus_of_Borg If we want to make script changes to existing games (for which we have no source code), then we'll need a complete SCI assembler. But I guess you have no plans to do that, Brian?

Mokalus of Borg

PS - No biggie.
PPS - It just might be what someone else needs, though.
Brian_Provinciano SCI Studio is for making games, not editing them.

I wrote an assembler once, but it was about 80% done, and I decided to start the compiler instead. I knew that no one would actually be able to make a game in byte code (it would take serious time and skill), and the compiler is all part of me making SCI Studio as simple as possible.

It would be possible to create an assembler that can compile disassembled scripts back to their original state, but it would be a fair amount of work. Not the assembler as much as the disassembler. The disassembler would need a built in virtual machine (basicly a CPU emulator) to properly disassemble the scripts so they can be reassembled. It would execute the code like the interpreter to figure out how everything fits together.

The fact is, this is a lot of work. SCI is just like a computer. Making a disassembler for SCI scripts is the same challenge it would be to make a PC EXE disassembler. The disassembler's not the real hard part. The difficulty comes when you try to make a disassembler that can make reassembleable files.

SCI is designed completely different from AGI. You really can't just hop into a development studio and edit Leisure Suit Larry 3, or Quest for Glory I.

People are also getting confused by the SCI byte code, not realizing that it's just a reference sheet. I want to keep SCI game creation as simple as possible, which is exactly why I didn't include the disassembler as part of SCI Studio. Too many (more) people would try to compile the disassembled scripts with the compiler. Some people even see the byte code and think "SCI looks too hard, I'm going to try something else to make my game", not realizing that the real code you make SCI games with is nothing like that, and very simple.

The next version of SCI Studio I'm working on is doing just that, making it as simple as possible. It allows the users to have project files for their SCI games. With these, they can name their resources whatever they want. For example, View.000 can be "Ego", Script.997 can be "Menu bar script". It also will display these projects with a simpler interface with just the resource name, number and size, rather than number, map offset, package, decoded len, encoded len, package offset, method, etc.

I really think SCI Studio 2.1 will be very easy to use, even for newbies.
Robin_Gravel I guess sci template is not a real template without its sci source codes.

Robin Gravel
Brian_Provinciano I have the source codes done. I just need to finish the documentation on how to use them. If I release the source codes without any documentation, no one will be able to use them. When I'm done the tutorial/help file, I will release them.
Robin_Gravel Alright then Brian.

I lock this topic. I don't need it again.

Robin Gravel