I'm beginning artwork on a game and before I begin actual plot design I need to know about some possible limitations.|
Can actors in the game be set up to wander along a set path that takes them out of a room? On a time table? Can they be set up to pick up and drop inventory items at timed intervals?
I want to set about 60 characters up on (10 minute) loops. I want to have them "live their lives" while you walk through the game. Of course if you talk to them, they will come out of the loop, interact with you, and then return to the loop.
It seems like this should be possible. I'm just afraid the only way to do it is through triggers (meaning: you pick up item A and now character B is in room C). I want it to be time dependant instead.
See: King's Quest 4, the mansion at night w/ the ghosts. It seems to me that they can wander from room to room, so I know it's possible...|
The best way I can think of to do this is to somehow keep calling the actor's motion script when it's outside of the room. Of course, this would require the actor to be a global object, and the code to switch it from room to room would also have to be contained within the object.
There is a class called RegionPath in SCI1. If Brian has written that script, it should be immediately (or with minor changes) usable in SCI0 as well. Brian?|
Re inventory items: Yes, this is possible, even with the default classes. Each inventory item has an 'owner' property.
This is usually set to either a room number or the address of an actor.
By including the appropriate logic in your rooms (if you use it a lot, consider
making a derived room class or a region), you can keep track of inventory items.
KEWL! Thanks. No hurry on actually getting the script. I still have a lot of work to do before I get to the point where I need it. Brian, could you confirm that I will be able to use RegionPath in SCI Studio EGA? |
I've just had a look... it appears that RegionPath is not included in LSL1VGA (which Brian uses for the template).|
This means that we'll have to write it separately (or make our own). I've verified that it doesn't depend on any SCI1-specific features, though.
This being my first game and all I'm not sure how I feel about "writing our own". Then again you did say "our" and I'm sure this would be helpful to others. For now I may design the game based around the "Colonel's Bequest" time features. As I recall you had to do things within a certain time frame. I'm sure this could somehow be used to at least make it "look" like my characters are following an activity loop. Maybe even easier to set up. Oh, by the way, has anyone here ever played Brataccas for the Atari ST/Amiga/Mac. It was made in 1985. I am writing a sequel to this game. In Brataccas you had complete freedom to do whatever you wanted. While the other characters went about doing their thing. I want to recreate this using SCI studio. Perhaps the context of what I'm trying to do will help.|
My SCI1 template should work on SCI0 with minor modifications (removal/replacement of PolyPath and other different kernels). I would definitely encourage people to take SCI beyond it's general limits, and do things even Sierra themselves didn't do!|
For one, SCI is so flexible, with some adjustments to the class system, you could have an authentic SCUMM (Monkey Island, Indiana Jones, Loom) interface. The bottom buttons, inventory, and even glowing text above the actors! The iconbar for SCI1 games and input window for SCI0 games are 100% done by the scripts. That being said, absolutely any interface can be done. Just compare LSL3, LSL5, LSL6, and LSL7. They all have totally different interfaces, all of which are scripted, all the games are SCI, and they all use the same opcodes!
Brian: This is slightly off-topic here, but I'm curious:|
Could the SCI0 interpreter be hacked to support 256 color pictures like you did with AGI? because that way we'll have a 256 color engine with a built-in parser (and a builit-in debugger as well...) !
Higher resolution along with MP3 support would be really great. However, I'm concerned about the idea of preserving the real SCI format. |
My impression is that Brian wants to stick to that exact format.
I'm curious as to how others feel about this...?
I guess it would be nice to have the option of going high res and adding mp3's....
Perhaps after SCI VGA is complete it will be easier to examine the sourcecode and figure out how to do this. Personally, I would be bummed to see Brian come away from developing Sierra engines as they originally were. I think there is still a fair amount of work to go before SCI EGA is perfected. Based on the number of SCI EGA releases my impression is that Brian wants it to be perfect. If anyone would like to try to help me pick apart the sourcecode and create a add on for mp3 and VGA support I would be willing to provide any help I can (which is pretty much none, I have VERY limited C++ experience).
Back to the wandering actors thing: I guess I figured this out. It will be all time based and easy to do I believe. I have the concept but I don't know how it will work out when it comes time to code it. If anyone is interested I will explain the concept I have. Otherwise, you can wait and check out the source itself. I hope to have a 2 screen demo ready for release soon...hope...
junc: good luck with that!|
about enhancing the SCI engine - Brian's current work is on the SCI studios, not the SCI interpreters.
The FresSCI team is working on a portable SCI interpreter.
but I was talking about hacking the original sierra SCI0 interpreter to supporting VGA graphics. I asked that because Brian already hack the AGI interpreter to support 256 colors.
doing so will also still leave the original SCI feel because it will still look like SCI1 games, but will support parsing. I think it might be easier than adding a script-based parser to an SCI1 game.
But I can be totally wrong here....
For 99% of programmers, it would be far easier to just script a parser. C++ knowledge won't enable you to do any reverse engineering, you need to know machine code. |
I could hack it, but there's so much to be done on SCI Studio VGA, it's far from a priority. I actually have no plans at all. The way I see it, why hack an old interpreter when we can just reverse engineer a newer one with most of the features we need anyway? Of course the parse issue is an exception, but like I say, I think that there's probably a VGA SCI01 interpreter that still has the parser, like a couple still have the debugger. They could even likely be installed on my computer right now, but I just haven't inspected them (too busy with the other VGA stuff). For one, I've found MANY SCI1 interpreters that still have all the vocabs King's Quest I SCI01 had.