Development of Blake's 7 (was OASIS development)

Want to talks about games you like, would like to see developed on the Oric, it's here.
User avatar
Hialmar
Flight Lieutenant
Posts: 349
Joined: Tue Mar 04, 2014 11:25 am
Location: Toulouse, France
Contact:

Re: OASIS development

Post by Hialmar »

Damn you sir, now I'm drooling on my keyboard. :D
Hialmar
CEO and Silicium member.
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Ah darn! I have been very busy lately so little advance on the engine or game. I have been thoroughly thinking about several design points and about the overall plot of the game, so this does not mean I am stuck or anything.

The last thing I did was changing my engine so it could manage the new sprites, which are bigger. At least that is working nicely now (hopefully). I plan to move onto implementing the dialog puzzles. These did not appear until Monkey Island (IIRC), but I think they would be a nice addition to the game. I already have some designed. I don't want to make them too complex (I particularly did not like to go through all the set of endless possibilities just to find I did not miss anything), but enough as to present the player with some options and, as the dialog evolves, some disappear and some other appear.

These will be mostly used to give background information, some fun conversations and, perhaps, make things happen (clues that appear, new posibilites,...).

I have ideas about how to implement all the system, but need some time to dedicate to it. I was hoping to have it finished before this weekend, but it was finally impossible :( Let's see if this weekend I can work a bit on it.

Oh, and if you also want to be part of this just ask. There are several things yet to be done. For instance I am in need of a font for the game. I'd like it to be 6x5, 6x6 or 6x7 and most important thing is it is clear to read. The menu is done by doubling the height of the characters, so it should also look good at that size.

If you are good at drawing, I will also need images for objects and sketches for some rooms. Designing a room is not easy, as there are many details and quirks to consider, but the initial sketch is of great help for me. For objects it is enough to edit them in a bmp/png/whatever file, using pure green color for what will be transparent background, black ink and white paper. I can convert them nearly automatically.

And your name will appear in the credits :)
User avatar
Dbug
Site Admin
Posts: 4461
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OASIS development

Post by Dbug »

I guess the font should be relevant to the one in the series, like the end credits?
https://www.youtube.com/watch?v=6Ku3orSWNCE

Are you doing the doubled size font manually, or using the hardware doubling?
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Yeah, making it similar to the one in the series would be nice, but I think it is more important that it is readable.

And I am doubling it by software, drawing each scan twice. That area is hires.
User avatar
Symoon
Archivist
Posts: 2310
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France

Re: OASIS development

Post by Symoon »

Chema wrote:If you are good at drawing, I will also need images for objects and sketches for some rooms. Designing a room is not easy, as there are many details and quirks to consider, but the initial sketch is of great help for me. For objects it is enough to edit them in a bmp/png/whatever file, using pure green color for what will be transparent background, black ink and white paper. I can convert them nearly automatically.
I'm not telling I'll contribute (time, time), but do you have an idea (even approximate) of the scale of the objects?
And also, what kind of objects? :D
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Size depends on the object itself. Up to the character's size. Of course even the image depend on where the object is to be located, what it is there for, if it has different frames... a typical size could be 12 or 18 pixels wide and 16-24 pìxels high, could be more. The surveillance cameras are objects, as well as the animation to open a door.

And I would not want to spoil anything of the game by making a list here, but there will be things like a coffee mug, a sandwich... You know, the usual things in these kind of games :)
User avatar
Dbug
Site Admin
Posts: 4461
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OASIS development

Post by Dbug »

Chema wrote:Yeah, making it similar to the one in the series would be nice, but I think it is more important that it is readable.
And I am doubling it by software, drawing each scan twice. That area is hires.
So, why not have an actual 6x16 font?

If you use that one only for the menus, you can restrict it to just upper and lower case letters to restrict the memory usage, but at least you can have nicer looking characters :)

I did a quick test from one of your screenshots:
FontTEst.png
FontTEst.png (3.47 KiB) Viewed 12242 times
On the left side the original doubled font, on the right side the same but using the extra pixels to round stuff.
Godzil
Squad Leader
Posts: 774
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

Re: OASIS development

Post by Godzil »

Dbug wrote:
Chema wrote:Yeah, making it similar to the one in the series would be nice, but I think it is more important that it is readable.
And I am doubling it by software, drawing each scan twice. That area is hires.
So, why not have an actual 6x16 font?

If you use that one only for the menus, you can restrict it to just upper and lower case letters to restrict the memory usage, but at least you can have nicer looking characters :)

I did a quick test from one of your screenshots:
FontTEst.png
On the left side the original doubled font, on the right side the same but using the extra pixels to round stuff.
Dbug's version seems more easy to read
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Yeah, it looks much nicer. I doubled it by software to have something to start with. No problem in having a special big font (except for the memory usage, that is). But what concerns me now is the normal size font. I am using the one for 1337 (6x5) but I find it a bit difficult to read in the dialogues, item names, and so on...
User avatar
Dbug
Site Admin
Posts: 4461
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OASIS development

Post by Dbug »

Chema wrote:Yeah, it looks much nicer. I doubled it by software to have something to start with. No problem in having a special big font (except for the memory usage, that is). But what concerns me now is the normal size font. I am using the one for 1337 (6x5) but I find it a bit difficult to read in the dialogues, item names, and so on...
Is the menu dynamic, or are the available options always the same?
If they are always the same, then the entire menu could just be a bitmap that you load to the screen on the start, that would make it possible to for example add icons.
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Hehe.. that is something I thought about. And I don't have a clear answer yet. The idea of making it a bitmap is nice, because we could add, as you say, icons, but also because we can have a nice lettering without worrying too much for memory space.

But I am not sure if I will allow dynamic changes. I currently can de-activate some actions from a script, but that could also be done with a bitmap. I also thought about making a game easy to translate, but again it won't be an issue. The only thing is if I am going to include changes in the verbs themselves. Some games do it, and I don't know if I will do it yet.

So maybe better stick to a temporary solution for now.

On another thing, I have the dialog system nearly finished. Still need to load a particular dialog data from a resource, but the system is there. From a script function you can Start a Dialog, and options are printed on the bottom of the screen (verbs disappear and other interactions are disabled).

Options are taken from a list where only some may be active. One option per line. They are highlighted as verbs are when the cursor hovers over them and, when the user clicks on one, the character speaks the sentence and a given script code is run.

In that code the designer may do whatever he likes: make another character speak, make a character do something, put some values in flags or variables AND activate/deactivate dialog options. He also can keep on running the dialog or end it so the interface gets back to the usual menu (verbs, inventory...).

This should suffice for laying nice dialog in the game.

Oh, and I have to update my compiler so dialogues are also easily managed :)
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Okay, the system seems to be working and now dialogs are resources loaded from disk too.

Started with the addition of this into the compiler. Halfway done. The syntax is something such as:

Code: Select all

dialog 200: script 205 stringpack 208
{
    option 0 active -> codeA;
    option 1 active -> codeB;
    option 2 inactive -> codeA;
}

stringpack 208
{
   "Sentence for option 0";
   "Sentence for option 1";
   "Sentence for option 2";
}

script 205
{
    exports codeA:
          <code to run if user selects options 0 or 2>
    exports codeB:
          <code to run if user selects option 1>
}
If this dialog is Loaded and Run the texts "Sentence for option 0" and "Sentence for option 1" are presented to the player to chose which one to say. Once one is chosen, the ego says it and the code starting at label codeA or codeB is run, which may do anything, including activating the third option or deactivating option 1. It can also include anything a script can do, such as loops, jumps, conditionals...

And yes, I know those constants for the IDs are ugly, but I have not yet decided how to manage this, because I need to have control about which IDs are used outside the compiler. For the time being, it is something I will have to live with :/
User avatar
Dbug
Site Admin
Posts: 4461
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OASIS development

Post by Dbug »

An easy way to deal with constants is to just use the C preprocessor as a first pass: Use #define with named values, use the names in the scripts, and the preprocessor will just replace all the names by the values.

Dirty but could work :)
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Yeah, that is the idea. I am already using the pre processor included in the OSDK in my script compiling batch file :)
User avatar
Chema
Game master
Posts: 3020
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OASIS development

Post by Chema »

Couldn't resist longer... Dialog system is working. Still needs some bits to be polished (such as auto-selecting the option if there is only one) but it is basically there. Along with support by the compiler.

You can see it working in this small demo. I am using Jenna Stannis' character for both, because it is the only one I have with the necessary frames, but it serves the purpose of giving a rough idea about how this will look in the end :)

Enjoy and please comment (for good or bad).

https://youtu.be/_1p2xtgmAJk

P.S. It took me half an hour to program the dialogue including testing everything behaved as expected, and there are still some glitches... Good to give an idea about the complexity of the project. Nah... as I gain experience everything will go faster :)
Post Reply